BetaThe V4 API is in beta — endpoints and functionality may change.
Chatsv4

Update a chat

PATCH/chats/{chatId}

Sets chat state (open/closed) and/or merges metadata. At least one field is required.

Path parameters

chatIdRequiredstring

Unique identifier of the chat, prefixed with chat_. Returned by the List chats endpoint.

Headers

AuthorizationRequiredstring

Your API key, sent as a bearer token: Authorization: Bearer <api_key>. Editing this stays in sync with the API key box on the right.

Bearer

Body parameters

JSON
stateoptionalstring
"open""closed"
metadataoptionalobject

Returns

dataoptionalChat
idoptionalstring

Chat id (chat_...).

channel_idoptionalstring
channel_typeoptionalstring
"blooio""twilio""whatsapp""whatsapp_business""rcs_business""amb"
contact_idoptionalstring | null
identity_idoptionalstring | null
group_idoptionalstring | null
stateoptionalstring
"open""closed""blocked""deprecated"
capabilitiesoptionalobject
window_expires_atoptionalinteger | null
last_message_atoptionalinteger | null
created_atoptionalinteger

Response codes

200Updated chat
401Your API key is missing or invalid. Pass it as a bearer token.
404No chat was found with the provided `chatId`.
422Validation failed — one or more fields in the request are invalid or missing.

Sends a live request with your values and shows the real response below. Your key is stored only in this browser.

Request
curl -X PATCH https://api.blooio.com/v4/chats/chat_a1b2c3d4 \  -H "Authorization: Bearer bl_live_..." \  -H "Content-Type: application/json" \  -d '{    "state": "open",    "metadata": {}  }'
Body object
Response objectexample
{  "data": {    "id": "chat_a1b2c3d4",    "channel_id": "ch_a1b2c3d4",    "channel_type": "blooio",    "contact_id": "ct_a1b2c3d4",    "identity_id": "idn_a1b2c3d4",    "group_id": "grp_a1b2c3d4",    "state": "open",    "capabilities": {},    "window_expires_at": 0,    "last_message_at": 0,    "created_at": 0  }}