Skip to main content

Fetch Conversation Messages

warning

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

Overview​

The Fetch Conversation Messages endpoint returns the Social Inbox message thread for a specific conversation, sorted from newest to oldest. When the platform creates duplicate conversation IDs for the same participant, their messages are combined and duplicate provider message_id values are removed.

Base URL:

https://message.oneupapp.io

Endpoint​

GET /api/conversations/{id}/messages

Request Parameters​

ParameterRequiredDescription
apiKeyYesYour personal API key generated from the API Access page. Passed as a query parameter.
idYesThe conversation ID returned by Fetch Conversations. Passed in the URL path. Use id, not conversation_id.
per_pageNoNumber of results per page. Default: 20. Maximum: 100.
cursorNoThe meta.next_cursor value from the previous response. Omit for the first page.

Reading messages does not mark them as read. Use Mark Conversation Read to update their read status.

Sample Request​

curl --location --request GET \
"https://message.oneupapp.io/api/conversations/123/messages?apiKey=YOUR_API_KEY"

With pagination:

curl --location --request GET \
"https://message.oneupapp.io/api/conversations/123/messages?apiKey=YOUR_API_KEY&per_page=20&cursor=NEXT_CURSOR"

Sample Response​

{
"message": "OK",
"error": false,
"data": [
{
"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"
}
],
"meta": {
"next_cursor": null,
"has_more": false
}
}

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.

Pagination​

Use the meta.next_cursor value from the response as the next request’s cursor parameter. It returns null when there are no more results. This retrieves stored messages; it does not fetch older history from the platform.

Response Fields​

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.
FieldDescription
meta.next_cursorThe cursor for the next page, or null.
meta.has_moreWhether more messages are available.

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 or missing parameters.
429The limit of 60 requests per minute per API key was exceeded. Wait for the Retry-After interval.
503API key verification or account sync is temporarily unavailable.

✅ Result: You have successfully retrieved the messages for the conversation!