Create Organization
POST
/v1/organizationsCreate a new organization to manage WhatsApp channels, templates, flows, and team settings.
Request
Content-Type: application/json
{
"name": "Acme Digital Agency",
"timezone": "America/Sao_Paulo",
"currency": "BRL",
"industry": "Marketing",
"website": "https://acme.digital"
}Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Name of the organization |
| timezone | string | Yes | Timezone (e.g., America/Sao_Paulo) |
| currency | string | No | Currency code (e.g., BRL, USD) |
| industry | string | No | Industry or business category |
| website | string | No | Organization website URL |
Response
201 Created{
"id": "org_9fJb2c1a8d4e",
"name": "Acme Digital Agency",
"timezone": "America/Sao_Paulo",
"currency": "BRL",
"industry": "Marketing",
"website": "https://acme.digital",
"created_at": "2025-05-21T10:15:30Z"
}Send Message
POST
/v1/messagesSend a WhatsApp message to a contact.
Request
Content-Type: application/json
{
"to": "+5511999999999",
"type": "text",
"text": {
"body": "Hello from SalePilot! 👋"
}
}Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| to | string | Yes | Recipient phone number in E.164 format |
| type | string | Yes | Message type: text, template, media |
| text.body | string | Yes | Message text content (max 4096 chars) |
Response
202 Accepted{
"id": "msg_8e7d6f4c2b1a",
"status": "accepted",
"to": "+5511999999999",
"type": "text",
"created_at": "2025-05-21T10:16:45Z"
}Webhook Example
POST
/v1/webhooksWe send event notifications to your webhook URL. Example payload for message.received event.
{
"event": "message.received",
"organization_id": "org_9fJb2c1a8d4e",
"channel_id": "wa_12345678",
"data": {
"message_id": "msg_8e7d6f4c2b1a",
"from": "+5511999999999",
"type": "text",
"text": {
"body": "Hi, I need help with pricing."
},
"timestamp": "2025-05-21T10:18:22Z"
}
}