curl -X POST "https://core.wadial.com/api/v1/sessions/{sessionId}/messages" \
-H "Authorization: Bearer $WADIAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-123-ready-v1" \
-d '{"to":"15551234567","content":{"type":"text","text":"Your order is ready."}}'
const response = await fetch("https://core.wadial.com/api/v1/sessions/{sessionId}/messages", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.WADIAL_API_KEY}`,
"Content-Type": "application/json",
"Idempotency-Key": "order-123-ready-v1",
},
body: JSON.stringify({
to: "15551234567",
content: { type: "text", text: "Your order is ready." },
}),
});
const { data } = await response.json();
{
"data": {
"id": "019eff5e-e24e-74ce-a9bb-ccd97e6946b6",
"sessionId": "019eff5e-e24e-74ce-a9bb-ccd97e6946b6",
"userId": "usr_123456",
"to": "15551234567",
"text": "Your order is ready.",
"contentType": "text",
"mediaUrl": null,
"mimetype": null,
"caption": null,
"messageId": "3EB0A1B2C3D4E5F6",
"status": "sent",
"attempts": 1,
"idempotencyKey": "order-123-ready-v1",
"sentAt": "2026-06-29T16:00:00.000Z",
"deliveredAt": null,
"readAt": null,
"errorDetail": null,
"createdAt": "2026-06-29T16:00:00.000Z",
"updatedAt": "2026-06-29T16:00:00.000Z"
}
}
API Reference
Send message
Send a text message from a connected token.
POST
/
api
/
v1
/
sessions
/
{sessionId}
/
messages
curl -X POST "https://core.wadial.com/api/v1/sessions/{sessionId}/messages" \
-H "Authorization: Bearer $WADIAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-123-ready-v1" \
-d '{"to":"15551234567","content":{"type":"text","text":"Your order is ready."}}'
const response = await fetch("https://core.wadial.com/api/v1/sessions/{sessionId}/messages", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.WADIAL_API_KEY}`,
"Content-Type": "application/json",
"Idempotency-Key": "order-123-ready-v1",
},
body: JSON.stringify({
to: "15551234567",
content: { type: "text", text: "Your order is ready." },
}),
});
const { data } = await response.json();
{
"data": {
"id": "019eff5e-e24e-74ce-a9bb-ccd97e6946b6",
"sessionId": "019eff5e-e24e-74ce-a9bb-ccd97e6946b6",
"userId": "usr_123456",
"to": "15551234567",
"text": "Your order is ready.",
"contentType": "text",
"mediaUrl": null,
"mimetype": null,
"caption": null,
"messageId": "3EB0A1B2C3D4E5F6",
"status": "sent",
"attempts": 1,
"idempotencyKey": "order-123-ready-v1",
"sentAt": "2026-06-29T16:00:00.000Z",
"deliveredAt": null,
"readAt": null,
"errorDetail": null,
"createdAt": "2026-06-29T16:00:00.000Z",
"updatedAt": "2026-06-29T16:00:00.000Z"
}
}
The token must be paired and
connected: true.
Use Idempotency-Key for retries so the same request does not send twice.
string
required
Token id returned by
POST /api/v1/sessions.string
Unique key for retrying the same send request safely.
string
required
Recipient phone number with country code.
string
required
Must be
text.string
required
Message text. Maximum
4096 characters.curl -X POST "https://core.wadial.com/api/v1/sessions/{sessionId}/messages" \
-H "Authorization: Bearer $WADIAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-123-ready-v1" \
-d '{"to":"15551234567","content":{"type":"text","text":"Your order is ready."}}'
const response = await fetch("https://core.wadial.com/api/v1/sessions/{sessionId}/messages", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.WADIAL_API_KEY}`,
"Content-Type": "application/json",
"Idempotency-Key": "order-123-ready-v1",
},
body: JSON.stringify({
to: "15551234567",
content: { type: "text", text: "Your order is ready." },
}),
});
const { data } = await response.json();
{
"data": {
"id": "019eff5e-e24e-74ce-a9bb-ccd97e6946b6",
"sessionId": "019eff5e-e24e-74ce-a9bb-ccd97e6946b6",
"userId": "usr_123456",
"to": "15551234567",
"text": "Your order is ready.",
"contentType": "text",
"mediaUrl": null,
"mimetype": null,
"caption": null,
"messageId": "3EB0A1B2C3D4E5F6",
"status": "sent",
"attempts": 1,
"idempotencyKey": "order-123-ready-v1",
"sentAt": "2026-06-29T16:00:00.000Z",
"deliveredAt": null,
"readAt": null,
"errorDetail": null,
"createdAt": "2026-06-29T16:00:00.000Z",
"updatedAt": "2026-06-29T16:00:00.000Z"
}
}
Was this page helpful?
⌘I