Skip to main content
POST
/
v2
/
notify
/
reply
import Prelude from "@prelude.so/sdk";

const client = new Prelude();

async function main() {
  const response = await client.notify.reply({
    to: "+33612345678",
    text: "Thanks for reaching out! We'll look into your request.",
    reply_to: "im_01k8aq2zggeyssvt53zgvpx63a",
  });

  console.log(response.id);
}

main();
{
  "id": "<string>",
  "to": "<string>",
  "text": "<string>",
  "reply_to": "<string>",
  "created_at": "2023-11-07T05:31:56Z",
  "callback_url": "<string>",
  "correlation_id": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.prelude.so/llms.txt

Use this file to discover all available pages before exploring further.

import Prelude from "@prelude.so/sdk";

const client = new Prelude();

async function main() {
  const response = await client.notify.reply({
    to: "+33612345678",
    text: "Thanks for reaching out! We'll look into your request.",
    reply_to: "im_01k8aq2zggeyssvt53zgvpx63a",
  });

  console.log(response.id);
}

main();
Replies are delivered as native WhatsApp quoted messages and must be sent within the 24-hour conversation window that follows the latest inbound message from the same user. See WhatsApp 2-Way Messaging for the full flow.

Request fields

to
string
required
The recipient’s phone number in E.164 format. Must match the phone number that sent the original inbound message — otherwise a phone_number_mismatch error is returned.
text
string
required
The reply message body. Sent as a free-form WhatsApp text, not as a template.
reply_to
string
required
The inbound message ID (prefixed with im_) to reply to. This ID is provided in the inbound.message.received webhook event.
callback_url
string
The URL where webhooks will be sent for delivery events of this reply.
correlation_id
string
A user-defined identifier to correlate this reply with your internal systems. It is returned in the response and any webhook events that refer to this message.

Error Handling

The reply endpoint returns specific error codes for 2-way messaging failures:
Error CodeDescriptionAction
window_expiredThe 24-hour WhatsApp conversation window has closedUse a template-based message via Send a message instead
invalid_reply_contextThe inbound message ID in reply_to was not foundVerify the message ID from the inbound.message.received webhook
phone_number_mismatchThe to number does not match the inbound message senderUse the phone number from the inbound webhook
missing_textThe text field is emptyProvide a reply message body
invalid_phone_numberPhone number format is invalidValidate phone number format
insufficient_balanceAccount balance is too lowTop up your account
For a complete list of errors, see the Error documentation.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
to
string
required

The recipient's phone number in E.164 format. Must match the phone number that sent the original inbound message.

Example:

"+33612345678"

text
string
required

The reply message body sent as a free-form WhatsApp text.

Example:

"Thanks for reaching out! We'll look into your request."

reply_to
string
required

The inbound message ID (prefixed with im_) to reply to. This ID is provided in the inbound.message.received webhook event.

Example:

"im_01k8aq2zggeyssvt53zgvpx63a"

callback_url
string

The URL where webhooks will be sent for delivery events of this reply.

Example:

"https://your-app.com/webhooks/notify"

correlation_id
string

A user-defined identifier to correlate this reply with your internal systems. It is returned in the response and any webhook events that refer to this message.

Maximum string length: 80
Example:

"support-ticket-42"

Response

OK

id
string
required

The reply message identifier.

Example:

"tx_01k8ap1btqf5r9fq2c8ax5fhc9"

to
string
required

The recipient's phone number in E.164 format.

Example:

"+33612345678"

text
string
required

The reply message body that was sent.

Example:

"Thanks for reaching out! We'll look into your request."

reply_to
string
required

The inbound message ID this reply was sent in response to.

Example:

"im_01k8aq2zggeyssvt53zgvpx63a"

created_at
string<date-time>
required

The reply creation date in RFC3339 format.

Example:

"2025-10-24T12:00:00Z"

callback_url
string

The callback URL where webhooks will be sent.

Example:

"https://your-app.com/webhooks/notify"

correlation_id
string

The user-defined correlation identifier echoed back from the request.

Maximum string length: 80
Example:

"support-ticket-42"