Skip to main content

📤 Chatting

Methods for sending messages through the Noxivo Engine.

Send Message (Synchronized)​

Sends a message and ensures it is tracked by the engine with full delivery lifecycle.

Endpoint​

POST /api/v1/messages/send

Request Body​

FieldTypeDescription
agencyIdstringRequired.
tenantIdstringRequired.
tostringRequired. Phone or contactId.
textstringMessage content.
attachmentsarrayOptional list of media.

Full Attachment Example​

{
"agencyId": "64a1b2c3...",
"tenantId": "64a1b2c3...",
"text": "Hi! Check this invoice.",
"attachments": [
{
"url": "https://example.com/invoice_101.pdf",
"kind": "document",
"mimeType": "application/pdf",
"fileName": "invoice_101.pdf",
"caption": "Your monthly invoice"
}
]
}

Example cURL​

curl -X POST https://api-workflow-engine.noxivo.app/api/v1/messages/send \
-H "X-API-Key: YOUR_ENGINE_KEY" \
-H "Content-Type: application/json" \
-d '{
"agencyId": "64a1b2c3...",
"tenantId": "64a1b2c3...",
"to": "1234567890",
"text": "Hello World"
}'

Send Interactive Buttons (Raw)​

Sends a message with reply buttons or URL links.

Endpoint​

POST /api/v1/sendButtons

JSON Body​

{
"session": "my-session",
"chatId": "[email protected]",
"header": "Welcome",
"body": "Please select your department:",
"footer": "Noxivo Support",
"buttons": [
{ "type": "reply", "text": "Technical", "id": "dept_tech" },
{ "type": "reply", "text": "Billing", "id": "dept_bill" }
]
}

Send Interactive List (Raw)​

Sends a menu with sections and selectable rows.

Endpoint​

POST /api/v1/sendList

JSON Body​

{
"session": "my-session",
"chatId": "[email protected]",
"message": {
"title": "Main Menu",
"description": "How can we help?",
"button": "Open Menu",
"sections": [
{
"title": "Options",
"rows": [
{ "title": "Option 1", "rowId": "opt_1" },
{ "title": "Option 2", "rowId": "opt_2" }
]
}
]
}
}