WhatsApp Gateway
API referenceChats

Update a chat (archive/pin/mute)

PATCH
/api/v1/sessions/{session}/chats/{cid}

Apply partial updates to archive, pin, and mute state.

Missing fields are left unchanged. Requires send capability.

Errors: validation_error for invalid body, not_found if chat missing, forbidden if missing send.

Authorization

AuthorizationBearer <token>

Send Authorization: Bearer <token>. The token can be a login JWT from the frontend or an api-key for a script. JWT access comes from the person's organization role. Api-key access comes from the permissions saved on the key.

In: header

Path Parameters

session*string

WhatsApp session id. Must belong to the caller organization.

Example"01HF..."
cid*string

Chat JID to update.

Example"6281234567890@s.whatsapp.net"

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

archived?boolean

Set archived state.

Exampletrue
mutedUntil?integer

Mute until Unix epoch milliseconds.

Formatint64
Example1735689600000
pinned?boolean

Set pinned state.

Examplefalse
unmute?boolean

Set true to clear mute.

Examplefalse

Response Body

application/json

application/json

curl -X PATCH "https://example.com/api/v1/sessions/01HF.../chats/6281234567890@s.whatsapp.net" \  -H "Content-Type: application/json" \  -d '{}'
{  "aliases": [    "205227043110953@lid"  ],  "archived": false,  "id": 3344,  "jid": "6281234567890@s.whatsapp.net",  "lastMessageAt": 1719662400000,  "mutedUntil": 1751198400000,  "name": "Alice",  "pinned": false,  "sessionId": "01J9ZX8K2QHV0M3T6R7P4N5W8C",  "type": "dm",  "unreadCount": 3}
{  "error": {    "code": "not_found",    "details": {      "property1": null,      "property2": null    },    "message": "session not found"  }}