API reference

API reference index

A one-page cheatsheet of the whole WhatsApp API surface — each row links to the page with the full request/response detail.


App-key API

Base https://api.telenow.ai/api/app-whatsapp · auth Authorization: Bearer vai_app_….

MethodPathScopePurposeDocs
GET/channelswhatsappList native channelswa-auth
POST/sendwhatsappSend one free-form messagewa-text
POST/send-templatewhatsappSend a pre-approved templatewa-send-template
POST/messages/readwhatsappRead receipt + typingwa-typing
POST/channels/{id}/mediawhatsappUpload/stage media (≤ 101 MB)wa-media
GET/media/{id}whatsappDownload media (by message-row UUID)wa-media
GET/channels/{id}/templateswhatsappList approved templateswa-send-template
POST/channels/{id}/templateswhatsapp:templatesCreate a templatewa-templates
POST/channels/{id}/templates/mediawhatsapp:templatesStage a media-header for a template defwa-templates
PATCH/templates/{tid}whatsapp:templatesEdit/resubmit a template (note: NOT nested under /channels)wa-templates
POST/campaignswhatsapp:campaignCreate + start a broadcastwa-broadcasts
GET/campaigns/{id}whatsapp:campaignBroadcast statuswa-broadcasts
POST/campaigns/{id}/pausewhatsapp:campaignPause a broadcastwa-broadcasts
POST/campaigns/{id}/cancelwhatsapp:campaignCancel a broadcastwa-broadcasts
GET/channels/{id}/threadswhatsappList conversationswa-conversations
GET/threads/{id}/messageswhatsappMessage history for a threadwa-conversations

Webhooks (org key)

Base https://api.telenow.ai/api/v1 · org-key auth · flat JSON (no success/data envelope).

MethodPathPurposeDocs
GET/hooksList subscriptionswa-webhooks
POST/hooksSubscribe a target_url to an eventwa-webhooks
DELETE/hooks/{id}Unsubscribewa-webhooks
GET/events/sampleSample payload for an event typewa-webhooks

Dashboard (JWT) — not app-key

Base https://api.telenow.ai/api/orgs/{orgId}/whatsapp-cloud · Authorization: Bearer <jwt> + X-Org-Id.

MethodPathPurposeDocs
GET/channels/{id}/healthNumber quality / verification / payment healthwa-errors

Channel connect and registration run on the same dashboard-JWT surface — see the Onboarding API.


Scopes are declared in the app manifest — see App scopes. Every failure code and hard limit lives in Errors & limits.