Skip to main content

Documentation Index

Fetch the complete documentation index at: https://orbit-docs.devotel.io/llms.txt

Use this file to discover all available pages before exploring further.

WhatsApp API

Manage everything that surrounds WhatsApp Business messaging — your WABA connection, business profile, product catalogs, voice calls, and block lists. Sending messages themselves uses the unified Messaging API (POST /v1/messages/whatsapp); this surface is for the configuration that backs those sends. Base path: /v1/whatsapp Authentication: API key (X-API-Key) or session JWT.

Connections

Each Orbit organization can attach one or more WABA phone numbers. Connections are managed via Meta’s Embedded Signup; the connect endpoint exchanges the resulting code for a long-lived token.
MethodPathPurpose
POST/v1/whatsapp/connectExchange Embedded Signup code → connection
GET/v1/whatsapp/statusConnection summary for the calling org
GET/v1/whatsapp/connectionsList all connected phone numbers
PUT/v1/whatsapp/connections/{phoneNumberId}/defaultMark one connection as default
PATCH/v1/whatsapp/connections/{phoneNumberId}Update display name or routing
DELETE/v1/whatsapp/connections/{phoneNumberId}Unlink a single number
DELETE/v1/whatsapp/disconnectRemove the entire WABA connection

Business profile

The about line, address, vertical, websites, and profile photo that appear in the customer’s WhatsApp client.
MethodPathPurpose
GET/v1/whatsapp/business-profileRead the current profile
PUT/v1/whatsapp/business-profileUpdate the profile (subject to Meta review)

Catalogs & products

Used by template messages and the in-WhatsApp shopping experience.
MethodPathPurpose
GET/v1/whatsapp/businesses/{businessId}/catalogsList catalogs on a Meta business
POST/v1/whatsapp/catalogsCreate a catalog
GET/v1/whatsapp/catalogsList catalogs in this org
DELETE/v1/whatsapp/catalogs/{catalogId}Remove a catalog
GET/v1/whatsapp/catalogs/{catalogId}/productsList products in a catalog

Calls — Business Calling

WhatsApp Business Calling lets a customer place a voice call to your business from inside the WhatsApp client, and lets your business call any contact who has granted call permission. See the WhatsApp Business Calling guide for end-to-end setup, country gates, billing, and lifecycle webhooks.

Provisioning (per phone number)

MethodPathPurpose
GET/v1/whatsapp/connections/{phoneNumberId}/callingRead calling state for one phone number (5-min cached)
POST/v1/whatsapp/connections/{phoneNumberId}/calling/enableEnable calling on a phone number (owner / admin)
POST/v1/whatsapp/connections/{phoneNumberId}/calling/disableDisable calling (owner / admin)
POST/v1/whatsapp/connections/{phoneNumberId}/calling/register-webhookSubscribe the WABA to the calls webhook field — idempotent (owner / admin)

Outbound calls + permissions

MethodPathPurpose
POST/v1/whatsapp/calling/callsInitiate an outbound call (owner / admin / developer)
GET/v1/whatsapp/calling/permissions?contact_id=…List call permissions for a contact
POST/v1/whatsapp/calling/calls/{metaCallId}/acceptAccept an inbound call (operator-tier)
POST/v1/whatsapp/calling/calls/{metaCallId}/declineDecline an inbound call

Dashboard surfaces

MethodPathPurpose
GET/v1/whatsapp/calling/callsPaginated wa_call_logs for the dashboard. PII-masked for viewer-tier roles.
GET/v1/whatsapp/calling/analytics30-day KPIs (volume, accept rate, duration, spend).

Block list

MethodPathPurpose
GET/v1/whatsapp/block-usersList blocked WhatsApp users
POST/v1/whatsapp/block-usersBlock one or more contacts
POST/v1/whatsapp/unblock-usersUnblock one or more contacts

Inbound webhook

The platform also exposes the inbound Meta webhook at GET/POST /v1/whatsapp/webhook — Meta verifies it on subscription (GET, with the hub.challenge token) and posts message + status events to the POST handler. This endpoint is not callable by your application; it’s listed here for completeness.

Example — read current profile

curl https://orbit-api.devotel.io/api/v1/whatsapp/business-profile \
  -H "X-API-Key: dv_live_sk_your_key_here"

See also