Get started

Tyxter Messaging

An agent-first, developer-friendly WhatsApp Business Platform API. Send messages, receive webhooks, run sandbox scenarios, and route inbound automation — all with a single key.

Tyxter Messaging is the messaging product of the Tyxter platform. Use it to send transactional templates, run marketing broadcasts, receive inbound messages from WhatsApp users, and optionally hand automation off to an LLM you control.

These are the official Tyxter Messaging docs. Build from the routes and payload schemas in /openapi.json, /api-reference, and /llms.txt; public API calls use /v1/*.

Explore the docs

How it works

Tyxter Messaging is a modular monolith written in TypeScript. You talk to one HTTP API; we own the queue topology, the WhatsApp Cloud API integration, Brazilian number provisioning, billing, and the webhook delivery pipeline behind it.

Two environments, one key prefix

Every project has a sandbox environment and a production environment. Keys are strictly scoped by their prefix:

tx_sandbox_...  →  sandbox environment (free, deterministic)
tx_live_......  →  production environment (billed in BRL)

One HTTP base

Read the current API base URL from /.well-known/tyxter.json or from the servers list in /openapi.json.

Auth

Authorization: Bearer $TYXTER_API_KEY

Base URL: read api_base_url from /.well-known/tyxter.json or use the first server listed in /openapi.json. Public API calls use routes under /v1 as listed in the Tyxter OpenAPI document and API reference. Do not assume a hard-coded production host or invent routes outside the Tyxter discovery surfaces.

Authentication uses Authorization: Bearer <api_key>. Sandbox keys start with tx_sandbox_... and production keys start with tx_live_.... The key prefix must match the target environment.

Core objects: message, message_batch, media_asset, template, flow, contact, audience, phone_number, webhook_endpoint, payment_request, credit_balance, usage_record, and llm_route.

Core objects

ObjectDescription
messageAn outbound or inbound WhatsApp message with its timeline of status events.
message_batchA broadcast of one template to many recipients. Runs on an isolated queue.
templatePre-approved marketing / utility / authentication copy. Submitted to Meta.
flowA WhatsApp Flow form; submissions fan out as flow.completed.
phone_numberSalvy-provisioned or customer-connected WhatsApp number.
contactMinimal consent ledger. Opt-out blocks sends to that phone.
llm_routeBYOK Anthropic/OpenAI configuration for inbound automation.
webhook_endpointWhere we deliver events. Signed with HMAC-SHA256.

WhatsApp capabilities include inbound and outbound messaging, status webhooks, template lifecycle, broadcasts, contact consent, phone-number provisioning, and deterministic sandbox simulation. Payment request capabilities are available through the public API: create, list, retrieve, and request approval for BRL customer payment requests. Merchant provider generation runs asynchronously through the configured Abacate Pay connector, so new payment requests can briefly remain link_pending with payment_link_url = null. Pix providers may also return pix_copy_paste and pix_qr_code_base64.

Next steps