whatsapp-messages

Remove your reaction from a WhatsApp message

Takes back the reaction this workspace placed on a message, the same way tapping your own reaction in WhatsApp does. Only your own reaction can be removed; one the contact placed is theirs to take back.

Removing a reaction from a message you have not reacted to changes nothing and still answers 202, so a repeated call is safe.

A removal travels the same path as placing a reaction, so it is refused on the same grounds. A message this workspace sent returns a 422: it could never have carried a reaction of ours to remove, since placing one there is not supported either.

A message Bird can no longer resolve returns a 404 instead, on the same 15-day retention a placement is bounded by. A reaction on a message received in a group addresses the group, so a group this workspace no longer holds returns a 404 WhatsAppGroupNotFound and one that is not active a 409 WhatsAppGroupNotActive, the same as placing one does.

The 202 is the removal accepted rather than applied. The reaction stays in the message's reactions until WhatsApp confirms the removal and then drops out, so one on its way off reads as still standing rather than disappearing before it is gone.

delete/v1/whatsapp/messages/{message_id}/reaction

Request

  • Base URL: https://us1.platform.bird.com
  • URL: https://us1.platform.bird.com/v1/whatsapp/messages/{message_id}/reaction
  • Auth: one of:
    • HTTP bearer
    • API key in cookie bird_session

Path parameters

message_idstring required
Example:wam_01krdgeqcxet5s7t44vh8rt9mg

ID of the message to take your reaction off, as returned in the id field of the message.

Headers

Idempotency-Keystring

Client-supplied key. On operations supporting request deduplication, a retained response is replayed for duplicate requests with the same key within the idempotency window (3 hours by default). This protection requires a workspace, organization, or staff-account scope. User-only and unscoped unauthenticated operations, streams, and operations with a separate replay contract do not use this response replay.

On a supported operation, if idempotency protection is unavailable before execution, the API returns 503 IdempotencyUnavailable (E01033) without executing this attempt. Retry with backoff using the same key and request. An operation that takes effect before its response is retained can still execute again on retry.

Two distinct 409 errors signal misuse:

  • request_in_progress (E01004): The same key is currently being processed by a concurrent request. Wait briefly and retry. The lock expires within 30 seconds.
  • idempotency_key_reuse (E01005): The same key has already completed against a different request body or method. Generate a new key.

Recommended key format is <event-type>/<entity-id> (for example welcome-user/usr_abc123).

X-Workspace-Idstring

Workspace context for the request. Required for dashboard authentication and master keys. Workspace keys and access tokens already identify their workspace; send that workspace or omit the header. A different one is rejected.

X-Organization-Idstring

Organization context for the request. Required for dashboard authentication. An API key or access token carries its own organization, so send either that organization or no header at all; a different one is rejected.

Response

Removal accepted. No body: the reaction is still standing at this point, and on a message this workspace never reacted to there is nothing to return. Read the message's reactions to see it go.

Changes

No recorded changes to this operation across all 2 revisions of this API.