Skip to content

WhatsApp API · Team inbox · Automation

One WhatsApp connection. Everything connected.

Build WhatsApp into your product, answer customers as a team, and automate follow-up — on the same numbers, contacts and conversations.

  • Team inbox
  • Automation
  • API & webhooks
  • CRM
  • REST API · OpenAPI 3.1
  • Signed webhooks
  • TypeScript & .NET SDKs
  • Inbox · AI · Campaigns · CRM · Follow-ups
  • Free: 1 number, 1,000 messages / month

01Connect

A WhatsApp channel your product can call.

Link a number once with a QR or pairing code, then send and receive over a documented REST API. Sends are idempotent, events are signed, and every status says whether it was confirmed or inferred.

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" }

From 202 to read, with no guessing.

  1. QUEUEDStored durably; 202 returnedconfirmed
  2. PROCESSINGA worker is sending itconfirmed
  3. SENTTransmitted to WhatsAppinferred → confirmed
  4. DELIVEREDOn the recipient’s deviceconfirmed
  5. READOpened, if receipts are onconfirmed
FAILEDDefinitely not sent: invalid recipient, missing media, expired. The failure code says why.
UNKNOWNA send was attempted but not confirmed. Flagged for you, never resent automatically.
GET /v1/messages/{id}/events returns every step with its certainty.

One instance per tenant.

Serving many customers? Give each one their own number and map it to your tenant with externalReference. It comes back on every webhook, so you always know whose message it was. Projects keep products and environments apart.

curl -X POST https://api.whatstig.com/v1/instances \
  -H "Authorization: Bearer $WHATSTIG_API_KEY" \
  -H "Idempotency-Key: create-tenant-101" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Green Valley School", "externalReference": "tenant-101" }'
app / Marketplace API / WhatsApp instances
WhatsApp instances for five tenants, each with its number, connection status and external reference.
Five tenants, five numbers, one projectDashboard screenshot · sample business
POST /whatstig/webhooks
WhatsTIG-Signature: t=1791540922,v1=5f8c…
WhatsTIG-Event-Type: message.delivered

{
  "type": "message.delivered",
  "instanceId": "wa_01jq…",
  "externalReference": "tenant-101",
  "data": { "messageId": "msg_01jq…", "status": "DELIVERED" }
}
REST API with an OpenAPI 3.1 contractPOST /v1/messages
Text, images and documents. A 202 means the message is stored durably and sent asynchronously.
Idempotent sendsIdempotency-Key
Retry any send safely: a repeated key returns the original response instead of a second message.
Signed webhooksWhatsTIG-Signature
HMAC-signed, at-least-once delivery from a transactional outbox, with retries, delivery logs and replay.
Scoped API keys
Least-privilege scopes, rotation and instant revocation. Secrets are shown once and stored only as keyed hashes.
SDKs@whatstig/sdk · WhatsTig.Client
TypeScript and .NET clients generated from the contract, plus a Postman collection.
Hosted connect links
Send your customer a short-lived link to a page that shows only their instance’s QR code and status.

02Converse

Every number, one inbox, the whole team.

Everyone who writes to one of your numbers gets a conversation. Assign it, reply, leave a note your customer never sees, and resolve it — while everyone sees changes live.

app / Saffron Home / Inbox
A WhatsApp conversation in the team inbox: customer messages, agent replies with read receipts, an internal note and the reply composer.
An assigned conversation with an internal noteDashboard screenshot · sample business
  1. Assignment that sticks

    Take a conversation, or let round robin or least-busy assignment pick an available agent, with an optional cap per agent.

  2. Notes and @mentions

    Switch the composer to an internal note and mention a teammate to bring them in. The customer never sees it.

  3. Receipts you can read

    Sent, delivered and read ticks on every reply, from the same delivery tracking the API uses.

  4. No double replies

    See who is viewing or typing. If someone answered while you wrote, the inbox asks before sending. Type / for saved replies.

  5. Explore the team inbox

AI assistant

Answers from what you wrote, not from what it guesses.

Write your delivery times, prices and policies the way you would brief a new colleague. The assistant answers only from that knowledge and the conversation, in your customer’s language, and steps back when it is unsure or someone asks for a person.

Knowledge · Custom sofas

Custom sofas are made to order in 3–4 weeks. Fabrics: velvet, linen blend and performance weave in 18 colours.

WhatsApp
How long does it take to make?
Custom sofas take 3–4 weeks. Would you like the olive velvet swatches?
AI assistant · confidence above your minimum
Can you do it in 10 days?
Not in your knowledge → handed to your team
Illustration of the rules the assistant follows. Answers appear in the team inbox, where anyone can take over.
app / Saffron Home / AI assistant
The AI assistant’s business knowledge: entries for delivery, returns, custom sofas and payment, each marked as used.
Business knowledge the assistant may useDashboard screenshot · sample business

03Automate

From first message to won deal, without a spreadsheet of reminders.

  1. 01CaptureA click-to-chat link in your ad opens WhatsApp. The first message creates a lead, attributed to the link.Learn more
  2. 02AnswerThe AI assistant replies from your knowledge and asks for the details your team needs.Learn more
  3. 03Follow upNo reply after a day? A follow-up goes out, and the owner is reminded to call.Learn more
  4. 04CloseYour team picks the conversation up in the inbox and moves the deal to Won.Learn more
app / Saffron Home / CRM / Deals
The CRM deal pipeline with stages from New to Won and Lost, deal values and owners.
Deals move through your pipeline stagesDashboard screenshot · sample business

Follow-ups that stop when they reply.

Sequences of up to 10 steps: messages, team reminders, tags. A reply, a STOP or a won deal ends them.

app / Saffron Home / Follow-ups
A no-reply follow-up sequence: the first step waits one day after enrollment and sends a WhatsApp message, with stop conditions and delivery settings.
A no-reply sequenceDashboard screenshot · sample business

Campaigns for people who opted in.

Segments, personalization and safe pacing per number, with every recipient’s status and the reason anyone was skipped.

app / Saffron Home / Campaigns
A completed campaign sent to opted-in contacts, with recipients, sent, delivered and read totals and a per-recipient status table.
A finished campaignDashboard screenshot · sample business

Security & reliability

Built to be trusted with your customers’ messages.

Before you start

WhatsTIG uses an unofficial implementation of the WhatsApp Web protocol. It is not affiliated with, authorized, or endorsed by WhatsApp or Meta. WhatsApp may restrict accounts, the protocol may change, and delivery is never guaranteed. Only message people who expect to hear from you.

Bulk unsolicited messaging, purchased contact lists and attempts to evade WhatsApp’s limits are not allowed. See the acceptable-use policy.

Encrypted session credentials
Linked WhatsApp sessions are stored encrypted and survive restarts and deployments without a new scan.
Tenant isolation
Every query is scoped to the caller’s project. Other tenants’ resources are indistinguishable from missing ones.
Outbound protection
Webhook and media URLs are checked against private and metadata addresses on every request, after DNS resolution.
Audit log and roles
Owner, admin, developer, agent and viewer. Agents see only the inbox; key and webhook changes are recorded.
Honest delivery semantics
Every status says whether it was confirmed or inferred. Uncertain sends are flagged, never silently retried.

Start on the free plan. Upgrade when the team joins.

Compare plans

Free$0

1 WhatsApp number, 1,000 messages a month. API, webhooks and dashboard.

Starter$19 / mo

3 numbers, 20,000 messages a month, 3 inbox seats.

Business$99 / mo

25 numbers, 250,000 messages a month, 15 inbox seats.

EnterpriseCustom

Negotiated limits for large deployments.

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.