Resolve Conversation
Change a conversation's status. Supply its conversation_id in the path and agent_id in the JSON body. Obtain these IDs from List Conversations and List Agents. Set status to resolved to resolve the conversation, or unresolved to mark it unresolved.
POST https://developers.chatway.app/api/v1/conversations/{conversation_id}/resolveExample request
curl -X POST "https://developers.chatway.app/api/v1/conversations/0f46c0a1-8938-40e3-b2b5-bb56f569fcab/resolve" \
-H "X-API-KEY: your_api_key" \
-H "Content-Type: application/json" \
-d '{
"agent_id": "26fa75f2-7ac1-47b4-84e1-b943491ba4da",
"status": "resolved"
}'Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
conversation_id | path | Yes | string | Conversation ID Example: 0f46c0a1-8938-40e3-b2b5-bb56f569fcab |
Request body
application/json
agent_id (string, required)— Agent IDstatus (string enum: resolved, unresolved, contact_blocked, contact_unblocked, ended, reopened, required)— Use `resolved` to resolve the conversation or `unresolved` to mark it unresolved. If the conversation is already in that state, the request succeeds and nothing is changed or sent again. The other accepted values, `contact_blocked`, `contact_unblocked`, `ended` and `reopened`, mark the conversation unresolved in the same way as `unresolved` and add a system message for that status to the conversation. They do not block or unblock the contact, and they do not end or reopen the conversation in any other way. The response message is `Conversation resolved.` for every value.
Responses
200
To mark the same conversation unresolved, use the same endpoint and agent_id with status set to unresolved. You can check its current is_resolved value in List Conversations. Replace the example IDs with IDs from your own workspace before sending either request.
application/json
message (string, required)data (object, required)type (string, required)id (string|null, required)attributes (object, required)
429
Conversation action limit reached. Each account can resolve up to 30 conversations and unresolve up to 30 conversations per minute. Wait for the number of seconds in the Retry-After header before retrying.
application/json
message (string, required)retry_after (integer, required)
404
Conversation not found
application/json
message (string, required)
422
Examples
Request body example
{
"agent_id": "26fa75f2-7ac1-47b4-84e1-b943491ba4da",
"status": "resolved"
}Response 200 example
{
"message": "Conversation resolved.",
"data": {
"type": "conversations",
"id": "0f46c0a1-8938-40e3-b2b5-bb56f569fcab",
"attributes": {
"is_resolved": true,
"contact_id": "9b0c5fe6-35ad-459d-b6ba-4288191f84f1",
"agents": {
"26fa75f2-7ac1-47b4-84e1-b943491ba4da": "Mock Agent Alpha"
},
"contact_name": "John Doe",
"unread_messages": 0,
"created_at": "2026-02-04T10:30:00Z",
"latest_message": {
"content": "Hello, I need help",
"url": null
}
}
}
}