Skip to main content
POST
Send conversationId to reply in a conversation. Send contactId or phone to start one. Send exactly one of the three. Plans with WhatsApp (Pro and up) can use this endpoint. On other plans it returns 403. WhatsApp lets you send text only within 24 hours of the contact’s last message. Outside that window, send an approved template with templateId. A text send outside the window is refused with 400, and nothing is sent. See Reply windows.
Every send checks Do Not Disturb (DND) first. If the contact has DND on, or the number is on the opt-out list, the send is refused with 403 and nothing is sent. If DND can’t be checked, the send is refused too.
string
Workspace UUID (required for account API keys, optional for workspace API keys)
string
Reply in this conversation. It must be a WhatsApp conversation in the workspace.
string
Start a conversation with this contact. The contact needs a phone number.
string
Start a conversation with this number, in E.164 format. Nedzo finds the contact with this number, or makes one.
string
Name for a contact this send makes. Ignored when the contact exists.
string
The text. Send content, templateId, or both. With a template, content is the text Nedzo shows for the message in Unibox.
string
An approved WhatsApp template from your workspace’s template list
object
Values for the template’s numbered placeholders, for example { "1": "Jane" }. Needs templateId.
string
Start from this WhatsApp sender. By default Nedzo uses the workspace’s first active sender. Ignored on a reply.

When messageId is null

Sometimes the message goes out but Nedzo can’t save it. The answer is still 201, and messageId is null. The contact got the message, so don’t send it again. Then conversationId is the conversation you sent into. If that conversation had ended, the message may have gone out on a new thread that does not show in the log.

Errors