Messages

Messages

This page lists every current ChatFlow message API with a curl command, JSON body, and response example. Use a connected dashboard session before testing these endpoints.

Endpoints

Method Endpoint
POST https://chatflow.zeltacode.com/api/v1/messages/text
POST https://chatflow.zeltacode.com/api/v1/messages/event
POST https://chatflow.zeltacode.com/api/v1/messages/media
POST https://chatflow.zeltacode.com/api/v1/messages/seen
PUT https://chatflow.zeltacode.com/api/v1/messages/edit
DELETE https://chatflow.zeltacode.com/api/v1/messages/delete
POST https://chatflow.zeltacode.com/api/v1/messages/voice
POST https://chatflow.zeltacode.com/api/v1/messages/video
POST https://chatflow.zeltacode.com/api/v1/messages/list
POST https://chatflow.zeltacode.com/api/v1/messages/link-preview
POST https://chatflow.zeltacode.com/api/v1/messages/location
POST https://chatflow.zeltacode.com/api/v1/messages/typing/start
POST https://chatflow.zeltacode.com/api/v1/messages/typing/stop
POST https://chatflow.zeltacode.com/api/v1/messages/presence
PUT https://chatflow.zeltacode.com/api/v1/messages/reaction
POST https://chatflow.zeltacode.com/api/v1/messages/star
POST https://chatflow.zeltacode.com/api/v1/messages/contact
GET https://chatflow.zeltacode.com/api/v1/messages/history
GET https://chatflow.zeltacode.com/api/v1/messages/check-number
POST https://chatflow.zeltacode.com/api/v1/messages/poll
POST https://chatflow.zeltacode.com/api/v1/messages/poll-vote
POST https://chatflow.zeltacode.com/api/v1/messages/media/convert/voice
POST https://chatflow.zeltacode.com/api/v1/messages/media/convert/video

1. Send text message

API name

Send text message

Purpose

Use this endpoint to send text message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/text
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/text" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "text": "Test text message"
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "text": "Test text message"
}
Example response
{
    "success": true,
    "message": "Message sent successfully.",
    "data": {
        "session": "{session}",
        "message_response": {}
    }
}

2. Send event message

API name

Send event message

Purpose

Use this endpoint to send event message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/event
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/event" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "event": "booking",
    "header": "Booking Test",
    "text": "Your booking is confirmed.",
    "location": "Office"
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "event": "booking",
    "header": "Booking Test",
    "text": "Your booking is confirmed.",
    "location": "Office"
}
Example response
{
    "success": true,
    "message": "Message sent successfully.",
    "data": {
        "session": "{session}",
        "message_response": {}
    }
}

3. Send media message

API name

Send media message

Purpose

Use this endpoint to send media message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/media
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/media" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "type": "image",
    "url": "https://picsum.photos/600/400",
    "caption": "Test image"
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "type": "image",
    "url": "https://picsum.photos/600/400",
    "caption": "Test image"
}
Example response
{
    "success": true,
    "message": "Message sent successfully.",
    "data": {
        "session": "{session}",
        "message_response": {}
    }
}

4. Mark messages as seen

API name

Mark messages as seen

Purpose

Use this endpoint to mark messages as seen from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/seen
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/seen" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}"
}'
JSON body
{
    "session": "{session}",
    "to": "{number}"
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "seen"
    }
}

5. Edit message

API name

Edit message

Purpose

Use this endpoint to edit message from a connected session.

Endpoint

PUT https://chatflow.zeltacode.com/api/v1/messages/edit
curl
curl -X PUT "https://chatflow.zeltacode.com/api/v1/messages/edit" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "message_id": "false_{number}@c.us_MESSAGE_ID",
    "payload": {
        "text": "Updated message text"
    }
}'
JSON body
{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "message_id": "false_{number}@c.us_MESSAGE_ID",
    "payload": {
        "text": "Updated message text"
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "edit"
    }
}

6. Delete message

API name

Delete message

Purpose

Use this endpoint to delete message from a connected session.

Endpoint

DELETE https://chatflow.zeltacode.com/api/v1/messages/delete
curl
curl -X DELETE "https://chatflow.zeltacode.com/api/v1/messages/delete" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "message_id": "false_{number}@c.us_MESSAGE_ID"
}'
JSON body
{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "message_id": "false_{number}@c.us_MESSAGE_ID"
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "delete"
    }
}

7. Send voice message

API name

Send voice message

Purpose

Use this endpoint to send voice message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/voice
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/voice" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "file": {
            "url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"
        }
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "file": {
            "url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"
        }
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "voice"
    }
}

8. Send video message

API name

Send video message

Purpose

Use this endpoint to send video message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/video
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/video" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "file": {
            "url": "https://samplelib.com/lib/preview/mp4/sample-5s.mp4"
        },
        "caption": "Test video"
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "file": {
            "url": "https://samplelib.com/lib/preview/mp4/sample-5s.mp4"
        },
        "caption": "Test video"
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "video"
    }
}

9. Send list message

API name

Send list message

Purpose

Use this endpoint to send list message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/list
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/list" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "title": "Choose an option",
        "description": "Please select one item",
        "button": "Open list",
        "sections": [
            {
                "title": "Options",
                "rows": [
                    {
                        "title": "Option 1",
                        "description": "First option",
                        "rowId": "option_1"
                    }
                ]
            }
        ]
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "title": "Choose an option",
        "description": "Please select one item",
        "button": "Open list",
        "sections": [
            {
                "title": "Options",
                "rows": [
                    {
                        "title": "Option 1",
                        "description": "First option",
                        "rowId": "option_1"
                    }
                ]
            }
        ]
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "list"
    }
}

10. Send link preview

API name

Send link preview

Purpose

Use this endpoint to send link preview from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/link-preview
curl
JSON body
Example response

11. Send location

API name

Send location

Purpose

Use this endpoint to send location from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/location
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/location" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "latitude": 24.8607,
        "longitude": 67.0011,
        "title": "Test Location"
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "latitude": 24.8607,
        "longitude": 67.0011,
        "title": "Test Location"
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "location"
    }
}

12. Start typing

API name

Start typing

Purpose

Use this endpoint to start typing from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/typing/start
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/typing/start" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}"
}'
JSON body
{
    "session": "{session}",
    "to": "{number}"
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "typing/start"
    }
}

13. Stop typing

API name

Stop typing

Purpose

Use this endpoint to stop typing from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/typing/stop
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/typing/stop" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}"
}'
JSON body
{
    "session": "{session}",
    "to": "{number}"
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "typing/stop"
    }
}

14. Update presence

API name

Update presence

Purpose

Use this endpoint to update presence from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/presence
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/presence" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "presence": "available"
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "presence": "available"
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "presence"
    }
}

15. React to message

API name

React to message

Purpose

Use this endpoint to react to message from a connected session.

Endpoint

PUT https://chatflow.zeltacode.com/api/v1/messages/reaction
curl
curl -X PUT "https://chatflow.zeltacode.com/api/v1/messages/reaction" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "payload": {
        "messageId": "false_{number}@c.us_MESSAGE_ID",
        "reaction": "LIKE"
    }
}'
JSON body
{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "payload": {
        "messageId": "false_{number}@c.us_MESSAGE_ID",
        "reaction": "LIKE"
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "reaction"
    }
}

16. Star message

API name

Star message

Purpose

Use this endpoint to star message from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/star
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/star" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "payload": {
        "messageId": "false_{number}@c.us_MESSAGE_ID",
        "star": true
    }
}'
JSON body
{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "payload": {
        "messageId": "false_{number}@c.us_MESSAGE_ID",
        "star": true
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "star"
    }
}

17. Send contact

API name

Send contact

Purpose

Use this endpoint to send contact from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/contact
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/contact" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "contacts": [
            {
                "fullName": "Test Contact",
                "organization": "ChatFlow",
                "phoneNumber": "{number}"
            }
        ]
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "contacts": [
            {
                "fullName": "Test Contact",
                "organization": "ChatFlow",
                "phoneNumber": "{number}"
            }
        ]
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "contact"
    }
}

18. Message history

API name

Message history

Purpose

Use this endpoint to message history from a connected session.

Endpoint

GET https://chatflow.zeltacode.com/api/v1/messages/history
curl
curl -X GET "https://chatflow.zeltacode.com/api/v1/messages/history?session={session}&chat_id={number}@c.us&limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"
Query parameters
{
    "session": "{session}",
    "chat_id": "{number}@c.us",
    "limit": 10
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "history"
    }
}

19. Check number

API name

Check number

Purpose

Use this endpoint to check number from a connected session.

Endpoint

GET https://chatflow.zeltacode.com/api/v1/messages/check-number
curl
curl -X GET "https://chatflow.zeltacode.com/api/v1/messages/check-number?session={session}&to={number}" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"
Query parameters
{
    "session": "{session}",
    "to": "{number}"
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "check-number"
    }
}

20. Send poll

API name

Send poll

Purpose

Use this endpoint to send poll from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/poll
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/poll" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "name": "Choose one option",
        "options": [
            "Option 1",
            "Option 2"
        ],
        "multipleAnswers": false
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "name": "Choose one option",
        "options": [
            "Option 1",
            "Option 2"
        ],
        "multipleAnswers": false
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "poll"
    }
}

21. Poll vote

API name

Poll vote

Purpose

Use this endpoint to poll vote from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/poll-vote
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/poll-vote" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "pollMessageId": "false_{number}@c.us_POLL_MESSAGE_ID",
        "votes": [
            "Option 1"
        ]
    }
}'
JSON body
{
    "session": "{session}",
    "to": "{number}",
    "payload": {
        "pollMessageId": "false_{number}@c.us_POLL_MESSAGE_ID",
        "votes": [
            "Option 1"
        ]
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "poll-vote"
    }
}

22. Convert media to voice

API name

Convert media to voice

Purpose

Use this endpoint to convert media to voice from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/media/convert/voice
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/media/convert/voice" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "payload": {
        "file": {
            "url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"
        }
    }
}'
JSON body
{
    "session": "{session}",
    "payload": {
        "file": {
            "url": "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3"
        }
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "media/convert/voice"
    }
}

23. Convert media to video

API name

Convert media to video

Purpose

Use this endpoint to convert media to video from a connected session.

Endpoint

POST https://chatflow.zeltacode.com/api/v1/messages/media/convert/video
curl
curl -X POST "https://chatflow.zeltacode.com/api/v1/messages/media/convert/video" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "session": "{session}",
    "payload": {
        "file": {
            "url": "https://samplelib.com/lib/preview/mp4/sample-5s.mp4"
        }
    }
}'
JSON body
{
    "session": "{session}",
    "payload": {
        "file": {
            "url": "https://samplelib.com/lib/preview/mp4/sample-5s.mp4"
        }
    }
}
Example response
{
    "success": true,
    "message": "Message action completed.",
    "data": {
        "session": "{session}",
        "message_response": {},
        "action": "media/convert/video"
    }
}