curl --request POST \
--url https://api.wppfy.com/message/react \
--header 'Content-Type: application/json' \
--header 'token: <api-key>' \
--data '
{
"number": "5511999999999@s.whatsapp.net",
"text": "👍",
"id": "3EB0538DA65A59F6D8A251"
}
'import requests
url = "https://api.wppfy.com/message/react"
payload = {
"number": "5511999999999@s.whatsapp.net",
"text": "👍",
"id": "3EB0538DA65A59F6D8A251"
}
headers = {
"token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {token: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
number: '5511999999999@s.whatsapp.net',
text: '👍',
id: '3EB0538DA65A59F6D8A251'
})
};
fetch('https://api.wppfy.com/message/react', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wppfy.com/message/react",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'number' => '5511999999999@s.whatsapp.net',
'text' => '👍',
'id' => '3EB0538DA65A59F6D8A251'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wppfy.com/message/react"
payload := strings.NewReader("{\n \"number\": \"5511999999999@s.whatsapp.net\",\n \"text\": \"👍\",\n \"id\": \"3EB0538DA65A59F6D8A251\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.wppfy.com/message/react")
.header("token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"number\": \"5511999999999@s.whatsapp.net\",\n \"text\": \"👍\",\n \"id\": \"3EB0538DA65A59F6D8A251\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wppfy.com/message/react")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"number\": \"5511999999999@s.whatsapp.net\",\n \"text\": \"👍\",\n \"id\": \"3EB0538DA65A59F6D8A251\"\n}"
response = http.request(request)
puts response.read_body{
"id": "owner:generated_message_id",
"messageid": "generated_message_id",
"content": {},
"messageTimestamp": 1672531200000,
"messageType": "reaction",
"status": "Pending",
"owner": "instance_owner"
}{
"error": "Missing Id in Payload"
}{
"error": "No session"
}{
"error": "Message not found"
}{
"error": "Error sending message"
}Enviar reação a uma mensagem
Envia uma reação (emoji) a uma mensagem específica. Este endpoint permite:
-
Adicionar ou remover reações em mensagens
-
Usar qualquer emoji Unicode válido
-
Reagir a mensagens em chats individuais ou grupos
-
Remover reações existentes
-
Verificar o status da reação enviada
Tipos de reações suportados:
-
Qualquer emoji Unicode válido (👍, ❤️, 😂, etc)
-
String vazia para remover reação
Exemplo de requisição básica:
{
"number": "5511999999999@s.whatsapp.net",
"text": "👍",
"id": "3EB0538DA65A59F6D8A251"
}
Exemplo de requisição para remover reação:
{
"number": "5511999999999@s.whatsapp.net",
"text": "",
"id": "3EB0538DA65A59F6D8A251"
}
Exemplo de resposta:
{
"success": true,
"message": "Reaction sent",
"reaction": {
"id": "3EB0538DA65A59F6D8A251",
"emoji": "👍",
"timestamp": 1672531200000,
"status": "sent"
}
}
Exemplo de resposta ao remover reação:
{
"success": true,
"message": "Reaction removed",
"reaction": {
"id": "3EB0538DA65A59F6D8A251",
"emoji": null,
"timestamp": 1672531200000,
"status": "removed"
}
}
Parâmetros disponíveis:
-
number: Número do chat no formato internacional (ex: 5511999999999@s.whatsapp.net)
-
text: Emoji Unicode da reação (ou string vazia para remover reação)
-
id: ID da mensagem que receberá a reação
Erros comuns:
-
401: Token inválido ou expirado
-
400: Número inválido ou emoji não suportado
-
404: Mensagem não encontrada
-
500: Erro ao enviar reação
Limitações:
-
Só é possível reagir a mensagens enviadas por outros usuários
-
Não é possível reagir a mensagens antigas (mais de 7 dias)
-
O mesmo usuário só pode ter uma reação ativa por mensagem
curl --request POST \
--url https://api.wppfy.com/message/react \
--header 'Content-Type: application/json' \
--header 'token: <api-key>' \
--data '
{
"number": "5511999999999@s.whatsapp.net",
"text": "👍",
"id": "3EB0538DA65A59F6D8A251"
}
'import requests
url = "https://api.wppfy.com/message/react"
payload = {
"number": "5511999999999@s.whatsapp.net",
"text": "👍",
"id": "3EB0538DA65A59F6D8A251"
}
headers = {
"token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {token: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
number: '5511999999999@s.whatsapp.net',
text: '👍',
id: '3EB0538DA65A59F6D8A251'
})
};
fetch('https://api.wppfy.com/message/react', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wppfy.com/message/react",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'number' => '5511999999999@s.whatsapp.net',
'text' => '👍',
'id' => '3EB0538DA65A59F6D8A251'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wppfy.com/message/react"
payload := strings.NewReader("{\n \"number\": \"5511999999999@s.whatsapp.net\",\n \"text\": \"👍\",\n \"id\": \"3EB0538DA65A59F6D8A251\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.wppfy.com/message/react")
.header("token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"number\": \"5511999999999@s.whatsapp.net\",\n \"text\": \"👍\",\n \"id\": \"3EB0538DA65A59F6D8A251\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wppfy.com/message/react")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"number\": \"5511999999999@s.whatsapp.net\",\n \"text\": \"👍\",\n \"id\": \"3EB0538DA65A59F6D8A251\"\n}"
response = http.request(request)
puts response.read_body{
"id": "owner:generated_message_id",
"messageid": "generated_message_id",
"content": {},
"messageTimestamp": 1672531200000,
"messageType": "reaction",
"status": "Pending",
"owner": "instance_owner"
}{
"error": "Missing Id in Payload"
}{
"error": "No session"
}{
"error": "Message not found"
}{
"error": "Error sending message"
}Autorizações
Corpo
Resposta
Reação enviada com sucesso
ID único da mensagem de reação
"owner:generated_message_id"
ID gerado para a mensagem de reação
"generated_message_id"
Detalhes da reação
Timestamp da mensagem em milissegundos
1672531200000
Tipo da mensagem
"reaction"
Status atual da mensagem
"Pending"
Proprietário da instância
"instance_owner"
