Positus Architecture - WhatsApp Business API
You can integrate directly with the Positus API (above) or use a customer service platform such as Robbu’s Invenio, without building the integration yourself.
| SDK | ||
|---|---|---|
| https://github.com/positusapps/positus-api-laravel-client | Laravel / PHP | Youtube |
| https://github.com/positusapps/positus-api-php-client | PHP | Youtube |
| https://www.nuget.org/packages/positus-api-csharp-client/ | Nuget .NET / .NET Core | YouTube |
| https://github.com/positusapps/positus-api-csharp-client | Github for .NET |
Production Token: Your token will be generated and provided by Positus; it grants access to all of your WhatsApp Business API numbers. The key will be provided after activation of each WhatsApp Business API number.Sandbox - Development Token: You can generate your token directly through http://studio.posit.us/.
Postman file
The Postman is a tool whose purpose is to test RESTful services (Web APIs) by sending HTTP requests and analyzing their responses. Download Postman AppProduction API
Positus API (2026).postman_collection.json
Development API (Sandbox)
Positus API Sandbox (2026).postman_collection.json
messages
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Use this route to send text messages via WhatsApp
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Content-Type | string | application/json |
| Authorization | string | Authentication using Bearer Token |
Request Body
Response
- 200
- 500
Typing indicator
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages/typing-indicator
Displays the “typing…” indicator to the customer and marks the received message as read. Provide the message_id of the message sent by the customer. The indicator is automatically dismissed after about 25 seconds or as soon as you reply.
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
| Name | Type | Description |
|---|---|---|
| message_id | string | Required. ID of the message received from the customer. |
Response
- 200
- Error
HSM
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Use this route to send notification messages via WhatsApp
HSM - These are message templates pre-approved by Facebook; they can be text, media, or file messages.
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Contact
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share contacts
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Location
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share locations
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Image
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share images
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Document
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share documents
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Video
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share videos
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Audio
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share audios
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
- 500
Sticker
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Share stickers. The sticker format must be exactly 512x512
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
Download Media
GET https://api.positus.global/v2/whatsapp/numbers/{{chave}}/media/{{messages.type.id}}
Download the media files. Use the media id received in the webhook notification.
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
| id | string | Media ID (received in the webhook) |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
Response
- 200
- 404
- 429
Returns the binary content of the media, with the
Content-Type header matching the file type (e.g., image/jpeg, audio/ogg, application/pdf).Interactive Messages - List
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
List Messages: Messages including a menu of up to 10 options. This type of message offers a simpler and more consistent way for users to make a selection when interacting with a business.
List or reply button messages cannot be used as notifications. Currently, they can only be sent within 24 hours of the last message sent by the user. If you try to send a message outside the 24-hour window, you will receive an error message.
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
Full documentation: https://developers.facebook.com/docs/whatsapp/guides/interactive-messages
Interactive Messages - Buttons
POST https://api.positus.global/v2/whatsapp/numbers/{{chave}}/messages
Reply buttons: Messages including up to 3 options — each option is a button. This type of message offers a faster way for users to make a selection from a menu when interacting with a business. Reply buttons provide the same user experience as interactive templates with buttons.
List or reply button messages cannot be used as notifications. Currently, they can only be sent within 24 hours of the last message sent by the user. If you try to send a message outside the 24-hour window, you will receive an error message.
Path Parameters
| Name | Type | Description |
|---|---|---|
| Chave | string | Unique code per WhatsApp number |
Headers
| Name | Type | Description |
|---|---|---|
| Authorization | string | Authentication using Bearer Token |
| Content-Type | string | application/json |
Request Body
Response
- 200
Full documentation: https://developers.facebook.com/docs/whatsapp/guides/interactive-messages