REST endpoints
Conversations
List an agent's conversations from every channel, and read one conversation with all its messages.
Send your API key in the Authorization: Bearer af_live_… header. See Authentication.
List conversations
GET
/api/v1/agents/{id}/conversationsQuery parameters
pagenumberPage number, starting at 1. Default
1.limitnumberConversations per page, 1–100. Default
50.channelstringOnly one channel:
WIDGET, WHATSAPP, MESSENGER, INSTAGRAM, TELEGRAM, EMAIL, SLACK, ANYCHAT, API or PLAYGROUND.Newest activity first (by last_message_at).
Shell
curl "https://anytimereply.com/api/v1/agents/AGENT_ID/conversations?limit=20&channel=WHATSAPP" \
-H "Authorization: Bearer af_live_YOUR_KEY"200 OK
{
"data": [
{
"id": "8b1d6c2e-…",
"channel": "WHATSAPP",
"status": "CLOSED",
"contact_name": "Nadia",
"contact_email": null,
"contact_phone": "8801711111111",
"external_id": "8801711111111",
"mood": "happy",
"sentiment": "positive",
"topic": "Delivery time",
"summary": "Asked about delivery to Sylhet; got the price and timing.",
"tags": ["vip"],
"priority": "normal",
"csat": 5,
"created_at": "2026-10-18T10:02:11.000Z",
"last_message_at": "2026-10-18T10:09:45.000Z"
}
],
"page": 1,
"limit": 20
}Fields
statusstringAI (the AI is answering), HUMAN (handed to your team) or CLOSED.external_idstring | nullThe channel's ID for the customer (phone number, Telegram chat, your API
user_id…).moodstring | nullThe customer's latest mood:
calm, happy, confused, frustrated, angry or urgent.sentiment, topic, summary string | nullFilled a couple of minutes after the chat goes quiet.
sentiment is positive, neutral or negative.prioritystringlow, normal, high or urgent.csatnumber | nullThe customer's rating, 1–5.
Get a conversation
GET
/api/v1/conversations/{conversation_id}Any conversation of any agent in your workspace, with all its messages in order.
Shell
curl https://anytimereply.com/api/v1/conversations/CONVERSATION_ID -H "Authorization: Bearer af_live_YOUR_KEY"200 OK
{
"data": {
"id": "8b1d6c2e-…",
"agent_id": "3f2c9a8e-…",
"channel": "API",
"status": "AI",
"contact_name": "Rafi",
"contact_email": "[email protected]",
"contact_phone": null,
"mood": "calm",
"summary": null,
"tags": [],
"priority": "normal",
"csat": null,
"created_at": "2026-10-19T09:12:03.000Z",
"last_message_at": "2026-10-19T09:12:06.000Z",
"messages": [
{ "id": "m1…", "role": "user", "content": "Do you deliver to Sylhet?", "confidence": null, "media_kind": null, "mood": "calm", "created_at": "2026-10-19T09:12:03.000Z" },
{ "id": "m2…", "role": "assistant", "content": "Yes! We deliver across Bangladesh…", "confidence": 0.82, "media_kind": null, "mood": null, "created_at": "2026-10-19T09:12:06.000Z" }
]
}
}Message fields
rolestringuser (the customer), assistant (the AI) or human (your team). Internal notes are never returned by the API.contentstringThe text. Voice notes contain their transcript.
confidencenumber | nullFor AI replies: how well your knowledge matched.
media_kindstring | nullvoice or image when the customer sent one.moodstring | nullThe customer's mood at that message.
Errors
| Status | Error |
|---|---|
404 | Agent not found · Conversation not found |
Was this page helpful?
Still stuck? Contact us