Skip to main content

Unassign Conversation

Release a contact's conversation back to the unassigned pool, clearing its current owner. The same action as removing the assignee in the inbox.

POST /api/v1/conversations/{contact_phone}/unassign

contact_phone is the customer's number, digits only, no +. The request body is optional — send it only to disambiguate which WhatsApp number's conversation you mean.

Request body

FieldTypeRequiredDescription
waba_phone_idstringNoWhich WhatsApp number's conversation to unassign, for multi-number accounts.

Example request

curl -X POST https://server.waplify.io/api/v1/conversations/12125551234/unassign \
-H "Authorization: Bearer wapl_your_api_key" \
-H "Content-Type: application/json" \
-d '{}'

Example response

{
"status": "success",
"message": "Conversation unassigned.",
"data": {
"phone_number": "12125551234",
"waba_phone_id": "123456789012345",
"status": null,
"assigned_to": null,
"assigned_to_name": null,
"assigned_at": null,
"is_reassignment": null,
"previous_assignee_id": null,
"previous_assignee_name": null,
"note": null,
"no_op": null
}
}

After a successful unassign, assigned_to is null.

Behaviour notes

  • Idempotent. Unassigning an already-unassigned conversation returns 200 — safe to retry.
  • Side effects match the inbox. The inbox updates in real time, an audit-log row is written, and a conversation.unassigned webhook fires with actor.source: "api".

Errors

StatusWhen
400Invalid phone, or your account has no WhatsApp number configured
401Invalid or missing API key
403The waba_phone_id you passed doesn't belong to your organisation
429Rate limit exceeded