Skip to main content

Send Message

warning

Inbox management is not available on the Basic plan. Upgrade to Intermediate, Growth or Business plan to access this endpoint.

Overview​

The Send Message endpoint sends a text reply to an existing Facebook, Instagram, or WhatsApp conversation. This allows you to respond to messages in your inbox via the API.

Base URL:

https://message.oneupapp.io

Endpoint​

POST /api/conversations/{id}/messages

Request Parameters​

ParameterRequiredTypeDescription
apiKeyYesstringYour personal API key generated from the API Access page. Passed as a query parameter.
idYesintegerThe conversation ID returned by Fetch Conversations. Passed in the URL path. Use id, not conversation_id.
messageYesstringThe reply text. Required and cannot be empty. Maximum: 4096 characters; platform limits also apply.

Facebook and Facebook-linked Instagram replies use human-agent messaging. WhatsApp replies require a customer message received within the last 24 hours. To send an approved template, use Create WhatsApp Conversation. Sending a template does not open the 24-hour reply window.

Sample Request​

curl --location --request POST \
"https://message.oneupapp.io/api/conversations/123/messages?apiKey=YOUR_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"message": "Thanks for contacting us!"
}'

Sample Response​

{
"message": "OK",
"error": false,
"data": {
"message": {
"id": 456,
"conversation_id": "t_987654321",
"message_id": "m_123456",
"sender_id": "104040148726689",
"receiver_id": "987654321",
"sender_name": "My Page",
"receiver_name": "Jane Doe",
"message": "Thanks for contacting us!",
"attachments": null,
"template": null,
"profile_image": null,
"is_read": 1,
"created_time": "2026-09-28 10:00:00"
},
"outcome": "accepted"
},
"meta": []
}

If the connected Facebook or Instagram account needs to be synced, the API returns 202 Accepted with Retry-After: 5. Wait at least five seconds, then repeat the request. See the account sync response.

A send returning this setup response has not sent or queued a message. Repeat it after setup completes.

Response Fields​

FieldDescription
messageThe saved message object.
outcomeaccepted when the platform accepts the message. This does not confirm delivery.

Message Object​

FieldDescription
idThe internal message ID.
conversation_idThe platform-specific conversation identity.
message_idThe platform-specific message ID.
sender_idThe sender’s platform ID.
receiver_idThe recipient’s platform ID.
sender_nameThe sender’s display name, when available.
receiver_nameThe recipient’s display name, when available.
messageThe message text.
attachmentsAttachment details, when available.
templateWhatsApp template details, when available.
profile_imageProfile image, when available.
is_readLocal read status: 0 for unread or 1 for read.
created_timeThe message creation time, formatted as YYYY-MM-DD HH:MM:SS.

Error Responses​

StatusWhen
401Missing or invalid apiKey.
403Inbox management is unavailable on the Basic plan.
404The requested resource was not found or does not belong to the authorized user.
422Invalid parameters or the WhatsApp reply window is closed.
429The limit of 60 requests per minute per API key was exceeded. Wait for the Retry-After interval.
500Unexpected error, including failure to save an accepted message.
502The platform rejected the message or returned no message ID.
503API key verification or account sync is temporarily unavailable.
504The send timed out; the platform may have accepted the message.

If a send fails, check data.outcome: rejected, unknown, or accepted. Send failures set retry_safe to false. A timeout may occur after the provider accepts the message. If saving the accepted message fails, the response includes its provider message_id. Check the conversation before resending to avoid duplicates; the API does not provide idempotency keys or automatic send retries.

✅ Result: You have successfully submitted your reply to the platform!