Conversations
React with Emoji
Sends a reaction (emoji) to an existing message. Send an empty emoji to REMOVE the reaction. The id must be the flattened messageId in the format OWNER:MSGID (e.g. 5511991515364:2A6E2F02CE4125FDBA1B): do not use the Baileys format concatenated with the JID, it will return 404. The confirmation webhook arrives with messageType=ReactionMessage and includes the 'reaction' shortcut in the envelope.
POST
https://api.zapzapapi.com/api/v1/{instanceId}/message/reactAuthentication with the x-api-key and x-api-secret headers.
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
number | text | body | Yes | Contact number |
id | text | body | Yes | Message ID (OWNER:MSGID format) |
emoji | text | body | Yes | Reaction emoji (empty = remove): alias: text |
Request example
curl
curl -X POST "https://api.zapzapapi.com/api/v1/{instanceId}/message/react" \
-H "x-api-key: YOUR_API_KEY" \
-H "x-api-secret: YOUR_API_SECRET" \
-H "Content-Type: application/json" \
-d '{"number":"5511999999999","id":"5511991515364:2A6E2F02CE4125FDBA1B","emoji":"👍"}'Node.js
const res = await fetch("https://api.zapzapapi.com/api/v1/{instanceId}/message/react", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"x-api-secret": "YOUR_API_SECRET",
"Content-Type": "application/json",
},
body: JSON.stringify({
"number": "5511999999999",
"id": "5511991515364:2A6E2F02CE4125FDBA1B",
"emoji": "👍"
}),
});
console.log(await res.json());Python
import requests
res = requests.post(
"https://api.zapzapapi.com/api/v1/{instanceId}/message/react",
headers={"x-api-key": "YOUR_API_KEY", "x-api-secret": "YOUR_API_SECRET"},
json={"number":"5511999999999","id":"5511991515364:2A6E2F02CE4125FDBA1B","emoji":"👍"},
)
print(res.json())Response example
JSON
{
"messageType": "ReactionMessage",
"status": "Pending"
}Values are illustrative; the fields follow the real response format.
Other endpoints in this category
Get your API keys
Create your account, connect a number in minutes and start using the API. R$15 per active number/month, with a welcome credit when you create the account, subject to the current campaign.
