Messages
Send Reaction
React with an emoji to a specific message (or remove the reaction)
POST
Send Reaction
Auth:
TokenAccount or TokenInstance • Rate-limit: Global (100/min) • Idempotent: no
Description
Adds or removes a reaction (emoji) on an existing message. Thereaction field accepts the emoji ("👍", "❤️", "😂", etc.) or the literal string "remove" to remove the reaction. In 1-to-1 chats, messageId + fromMe is enough. In groups, when the original message was not sent by the instance (fromMe: false), you must provide participant with the original author’s JID, without it, WhatsApp can’t locate the target. Reactions do not support delay, replyTo or mention.
Examples
React in a 1-to-1 chat
fromMe: false indicates that the target message was received (not sent) by the instance.
React in a group (message from another participant)
In groups, when you react to a message that isn’t yours (fromMe: false), the participant with the original author’s JID is required. Without it the server returns 400 missing_participant.
Remove a reaction
Sendreaction: "remove" to clear a reaction previously placed on the message.
Success response
The returnedmessageId is for the reaction itself (not the reacted message, that one stays in replyTo.messageId). content carries the applied emoji, or an empty string when the reaction was removed.
200 OK
When the reaction is removed (
reaction: "remove"), the returned message becomes "Reaction removed successfully" and content is empty. The reaction appears on the recipient anchored to the original message, if you react again with another emoji, WhatsApp replaces the previous reaction.Path parameters
string
required
Instance name (e.g.,
$Instance_Name).Headers
string
required
TokenAccount or TokenInstance.string
required
application/jsonRequest body
string
required
Chat where the target message lives: phone (
5511999999999) or JID (@s.whatsapp.net, @lid, @g.us).string
required
ID of the message that will receive the reaction.
string
required
Reaction emoji (e.g.,
"👍", "❤️", "😂", "🔥") or the literal string "remove" to clear an existing reaction.boolean
default:"false"
true when the original message was sent by the instance itself; false when it was received from another contact/participant. WhatsApp uses this flag along with participant to locate the target.string
JID of the original message author (e.g.,
5511888888888@s.whatsapp.net). Required in groups when fromMe: false, without it the server returns 400 missing_participant. In 1-to-1 chats or when fromMe: true, it’s ignored.string
default:"api"
Origin identifier for traceability (e.g.,
crm, support-bot, n8n). Saved on the message record and propagated to webhooks.Notes
- Reactions do not support
delay,replyTo,replyPrivate,mentionormentionAll, only the fields listed above. - To change an existing reaction, just send a new one with another emoji. WhatsApp replaces it automatically.
- In groups, without the correct
participantthe reaction fails withmissing_participanteven if themessageIdexists in the database. fromMemust reflect the actual side of the message. If inverted, WhatsApp may fail to locate the target and the reaction silently disappears on the recipient’s app.
Errors
Error envelope: