Skip to main content

Labels & Quick Replies

App State Sync (syncd, regular collection) — labels, quick replies and account settings (whatsapp-rust 5e084b9b feat(appstate): #1250).

Labels

Labels are created/edited via label_edit (["label_edit", labelId]) and associations via label_jid / label_message.

Create Label

POST /api/v1/sessions/{session_id}/labels
{
"label_id": "my-label-id",
"name": "My Label",
"color_id": 5
}

color_id 0–19 matches WA Web palette. Upsert — same call renames/recolors.

Delete Label

DELETE /api/v1/sessions/{session_id}/labels/{label_id}

Add / Remove Chat Label

POST /api/v1/sessions/{session_id}/labels/{label_id}/chats/{chat_jid}
DELETE /api/v1/sessions/{session_id}/labels/{label_id}/chats/{chat_jid}

Example:

curl -X POST http://localhost:3451/api/v1/sessions/my-session/labels/label-1/chats/5599@s.whatsapp.net \
-H "Authorization: Bearer YOUR_TOKEN"

Add / Remove Message Label

POST /api/v1/sessions/{session_id}/labels/{label_id}/messages
POST /api/v1/sessions/{session_id}/labels/{label_id}/messages/remove

Request body:

{
"chat_jid": "5599@s.whatsapp.net",
"message_id": "ABCD1234"
}

Quick Replies

Business canned responses (quick_reply ["quick_reply", id]).

Upsert Quick Reply

PUT /api/v1/sessions/{session_id}/quick-replies
{
"id": "qr-id-1",
"shortcut": "/hello",
"message": "Hello! How can I help?",
"keywords": ["hi", "hello"],
"count": 0
}

count is a usage counter (0 for new). Mirrors WAWebQuickRepliesSync.

Delete Quick Reply

DELETE /api/v1/sessions/{session_id}/quick-replies/{id}

Account-level setting_disableLinkPreviews (["setting_disableLinkPreviews"]).

POST /api/v1/sessions/{session_id}/settings/link-previews
{ "disabled": true }

Replicated to linked devices via App State. Does not block explicitly-requested previews.