curl "https://api.open.cx/connect/threads/order_84421/messages?lane=customer_courier&include_events=true" \
-H "Authorization: Bearer YOUR_API_KEY"
{
"data": [
{ "id": "msg_1q8x", "lane": "customer_courier",
"sender": { "participant_id": "prt_c81", "role": "customer" },
"text": "البوابة رقم ٤ — الرمز 4411",
"translations": { "en": "Gate 4 — the code is 4411" },
"created_at": "2026-07-30T14:31:05Z" },
{ "id": "evt_9k2m", "type": "supervisor.safety_mask", "lane": "customer_courier",
"detail": "Masked a phone number in an outbound courier message",
"created_at": "2026-07-30T14:33:47Z" }
],
"next_cursor": null
}
Connect
List Connect messages
Page through a thread’s messages and events — filter by lane, include Supervisor interventions, and export full conversation history for audits and disputes.
GET
/
connect
/
threads
/
{thread_id}
/
messages
curl "https://api.open.cx/connect/threads/order_84421/messages?lane=customer_courier&include_events=true" \
-H "Authorization: Bearer YOUR_API_KEY"
{
"data": [
{ "id": "msg_1q8x", "lane": "customer_courier",
"sender": { "participant_id": "prt_c81", "role": "customer" },
"text": "البوابة رقم ٤ — الرمز 4411",
"translations": { "en": "Gate 4 — the code is 4411" },
"created_at": "2026-07-30T14:31:05Z" },
{ "id": "evt_9k2m", "type": "supervisor.safety_mask", "lane": "customer_courier",
"detail": "Masked a phone number in an outbound courier message",
"created_at": "2026-07-30T14:33:47Z" }
],
"next_cursor": null
}
List a thread’s messages, oldest first, cursor-paginated. Includes participant messages, system chips, and Supervisor messages — the complete record of the order conversation.
Path
string
required
Thread ID (
th_…) or your reference.Query
string
Restrict to one lane.
boolean
default:"false"
Interleave non-message events (joins, removals, status changes, safety masks) as typed entries — the full audit trail for disputes.
string
Cursor from a previous response.
number
default:"50"
Page size, max 200.
Response
array
Message objects (same shape as Send message); event entries carry
type instead of sender when include_events is set.string
Present when more results exist.
curl "https://api.open.cx/connect/threads/order_84421/messages?lane=customer_courier&include_events=true" \
-H "Authorization: Bearer YOUR_API_KEY"
{
"data": [
{ "id": "msg_1q8x", "lane": "customer_courier",
"sender": { "participant_id": "prt_c81", "role": "customer" },
"text": "البوابة رقم ٤ — الرمز 4411",
"translations": { "en": "Gate 4 — the code is 4411" },
"created_at": "2026-07-30T14:31:05Z" },
{ "id": "evt_9k2m", "type": "supervisor.safety_mask", "lane": "customer_courier",
"detail": "Masked a phone number in an outbound courier message",
"created_at": "2026-07-30T14:33:47Z" }
],
"next_cursor": null
}
Was this page helpful?