For developers
Send and receive WhatsApp messages from any application.
Link a WhatsApp number once, then send text, images and documents over a documented REST API and react to delivery receipts and incoming messages through signed webhooks. Built for products that serve many tenants.
curl -X POST https://api.whatstig.com/v1/messages \
-H "Authorization: Bearer $WHATSTIG_API_KEY" \
-H "Idempotency-Key: order-4512-shipped" \
-H "Content-Type: application/json" \
-d '{
"instanceId": "wa_01jq8x7y2z3a4b5c6d7e8f9g0h",
"recipient": "923001234567",
"type": "text",
"content": { "text": "Your order has shipped." },
"clientReference": "order-4512"
}'HTTP/1.1 202 Accepted
{ "id": "msg_01jq…", "status": "QUEUED", "clientReference": "order-4512" }app / Marketplace API / Messages

Messaging API & webhooks
What you get
- Connect by QR or pairing code
- Create an instance, scan a QR code or enter a pairing code, and follow its status live. Sessions survive restarts and deployments without a new scan.
- Text, images and documents
- Upload media or import it from a public URL, then reference it when sending. Inbound media can be stored for you.
- Idempotent sends
- Retry any send safely with an Idempotency-Key: duplicates return the original response instead of a second message.
- Honest delivery tracking
- Queued, sent, delivered and read statuses with a per-message history that marks each step confirmed or inferred.
- Signed webhooks
- At-least-once delivery from a transactional outbox, HMAC signatures, retries with backoff, delivery logs and replay.
- Scoped API keys
- Least-privilege scopes, rotation and instant revocation. Secrets are shown once and stored only as keyed hashes.
- Multi-tenant by design
- Map each of your tenants to an instance with externalReference. Projects isolate products and environments.
- Events for everything
- Messages, conversations, campaigns, leads, deals and follow-ups all emit webhook events, so your systems stay in sync.
- SDKs and OpenAPI
- Official TypeScript (@whatstig/sdk) and .NET (WhatsTig.Client) clients generated from the OpenAPI 3.1 contract, plus a Postman collection.
How it works
- 01Create an API keyPick only the scopes your integration needs.
- 02Link a numberCreate an instance and scan its QR code, or send your customer a connect link.
- 03Send over HTTPPOST /v1/messages with an Idempotency-Key. Messages are durably queued and sent asynchronously.
- 04React to eventsVerify the signature of each webhook and handle delivery receipts and incoming messages.
Plans
Included on every plan
Free
$0
- 1 WhatsApp numbers
- 1,000 messages / month
- 120 API requests / min
Starter
$19 / mo
- 3 WhatsApp numbers
- 20,000 messages / month
- 600 API requests / min
Business
$99 / mo
- 25 WhatsApp numbers
- 250,000 messages / month
- 3,000 API requests / min
Enterprise
Custom
- Unlimited WhatsApp numbers
- Unlimited messages / month
- 10,000 API requests / min
Documentation
Works with
Team inboxAnswer your WhatsApp numbers together, without double replies.
AI assistantAnswer customers instantly from your own business knowledge.
Contacts & campaignsSend personalized, consent-based messages to the right audience.
CRMTurn WhatsApp conversations into qualified leads and won deals.
Follow-ups & remindersFollow up automatically, and stop the moment they reply.
Get started
Link a number. Send the first message. Bring your team in when you are ready.
The free plan includes the full API, webhooks and dashboard. Paid plans are activated by our team on request.