Help & documentation
Get unstuck in minutes.
Guides, references, and how-tos for every WhautX feature — from connecting your first WhatsApp number to wiring automations and the REST API.
Get help
Four ways to get unstuck
Email a human, browse the docs, or integrate WhautX into your own stack.
Email support[email protected] — real humans, one business day reply.
DocumentationSetup guides, API reference, and how-tos for every feature.
REST API referenceAuthenticated endpoints for contacts, messages, campaigns, and forms.
Webhooks & API keysPush events to your systems; scoped keys authenticate your server.
Feature
Conversations
The day-to-day messaging surface — talk to contacts, reach segments, run flows.
Inbox
Read and reply to WhatsApp conversations from a shared team inbox. Templates, media, and variables work the same way they do in automation.Templates
Meta-approved message formats. Three categories — Marketing, Utility, Authentication — each with their own intent, slots, and validity rules.Campaigns
Broadcast a template to a segment, on demand or on a schedule. Force-retry, inspect per-recipient status, and surface Meta rejects inline.Automations
Event-driven flows. Triggers (MESSAGE_RECEIVED, KEYWORD_DETECTED, SCHEDULE, CONTACT_BIRTHDAY, …) and actions (SEND_TEMPLATE, SEND_INTERACTIVE_BUTTONS, DELAY, WEBHOOK, …).Interactive messages
Up to 3 reply buttons or a multi-row list picker. Button and list replies re-trigger automation runs via BUTTON_REPLY_RECEIVED and LIST_REPLY_RECEIVED.Feature
Audience
People and the lists you can message. Everything is tenant-scoped and keyed by phone.
Contacts
One row per person. Created from imports, lead forms, inbound messages, or the API. Find-or-create by phone prevents duplicate rows.Segments
Dynamic filters over your contacts — match combinations of tags, custom fields, and opt-in status. Segments are reused by campaigns and automations.Tags
Free-form labels on contacts. Tags fire CONTACT_TAG_ADDED triggers and act as the optional filter for segments.Lead forms
Hosted capture forms that create or update a contact on submit. Share a public link, embed on your site, or ingest via the API.Feature
Selling & support
The surfaces that turn a contact into a customer, and a customer into a booking.
Bookings
Appointment system with services, resources, weekly availability, and a hosted booking page. Calendar view for staff; ledger view for ops.Pipelines (CRM)
Lane-based deal tracking. Stages, weighted value, and contact linking. DEAL_STAGE_CHANGED fires automations when a deal moves.AI assistant
BYOK chatbot grounded on your knowledge base. LLM calls hit your provider; knowledge snippets stay in your tenant. Hands off to humans when asked.Feature
Workspace & config
Settings, integrations, and the surfaces that make the workspace yours.
WhatsApp connection
Embedded signup links a WABA to your workspace. Each phoneNumberId gets its own WhatsApp account row; you can connect multiple businesses.Knowledge base
Documents the AI assistant grounds itself on. Snippets are embedded per-tenant and surfaced only when the LLM asks — never raw payloads.Flows
Reusable message and configuration flows used by templates and automations. Shared form definitions and interactive-message builders.Email
Per-tenant SMTP for transactional emails. Note: security emails (OTP, signup verification) always come from the platform sender.White-label
Custom domain, brand color, and logo. Public booking pages and the ops shell both pick up your brand assets.Team & roles
Invite teammates, assign roles (OWNER, ADMIN, AGENT, VIEWER), and scope API keys to the permissions they actually need.Documentation
Deep dives
Longer-form docs for the surfaces that need more than a card.
WhatsApp setupEmbedded signup, phone verification, multi-account workspaces, and how phoneNumberId maps to your WhautX account rows.
ContactsThe field model, how find-or-create works, opt-in/consent, and CSV import behavior.
Templates & campaignsMeta categories, parameter formats (named vs positional), 24h window, and campaign life cycle.
AutomationsTriggers, actions, key recipes, and the variable substitution rules per step type.
API keys & webhooksScopes, event catalog, signing, and replay protection for inbound webhooks.
REST APIEndpoints, request shape, find-or-create semantics, and pagination.
Quick start
From signup to first campaign
01Connect a WhatsApp Business account via Settings → WhatsApp — the embedded signup takes about 10 minutes. Settings → WhatsApp →
02Import or upload your contacts, then organize them with tags and segments. Contacts →
03Create a template in Templates, submit it to Meta for approval, and wait for the APPROVED status. Templates →
04Launch your first campaign from Campaigns → New, or build a welcome automation with a 24h DELAY step. New campaign →
FAQ
Things people ask often
Why is my template rejected with #132012?
Either the parameter format (named vs positional) doesn’t match what Meta approved, or a media handle (like a 4:… Resumable Upload id) is being sent as an integer. Re-sync templates, or recreate the template with explicit parameter_names.Template docsCan I message a contact outside the 24h window?
Only with a Meta-approved template. Free-form text replies work only inside the 24h customer-service window. The inbox and automation actions both enforce this.24h window ruleHow do I delay a follow-up by a custom amount?
In an automation, add a DELAY step and set the minutes field. The built-in 24h follow-up template uses minutes=1440; a 1-minute follow-up uses minutes=1.DELAY stepWhy isn’t my birthday automation firing?
Two common causes: the contact has no dob set, or the workspace timezone is wrong. Automations run against the tenant’s timezone at the configured send-hour.CONTACT_BIRTHDAY triggerCan I have multiple WhatsApp numbers on one workspace?
Yes. Each phoneNumberId from Meta gets its own WhatsApp account row. Automations can target a specific account or stay tenant-wide.WhatsApp setupHow do API keys get scoped?
At creation. Each key is bound to a list of scopes (contacts.read, campaigns.write, …). Unscoped endpoints return 403.API key scopes