Saltar al contenido principal
POST
/
api
/
chat
/
pinMessage
/
:instance
Fijar mensaje
curl --request POST \
  --url https://api.example.com/api/chat/pinMessage/:instance \
  --header 'Content-Type: application/json' \
  --data '
{
  "pin": true,
  "messageId": "<string>",
  "duration": "<string>"
}
'
Auth: TokenAccount o TokenInstanceRate-limit: Global (100/min) • Idempotente:

Descripción

Fija (pin: true) o desfija (pin: false) un mensaje dentro de un chat. El chat, el autor del mensaje y la dirección (fromMe) se resuelven automáticamente a partir del messageId, solo necesitas indicar el mensaje.
A diferencia de marcar como favorito (que es privado y silencioso), fijar un mensaje es una acción visible para todos los participantes de la conversación: WhatsApp muestra “fijó un mensaje”. El protocolo solo ofrece “fijar para todos”, no existe fijar solo para ti.
El mensaje debe existir en la base de datos de la instancia (haber sido recibido/enviado por ella). De lo contrario, la API devuelve message with ID ... not found.

Ejemplos

Fijar

Con pin: true, el mensaje se fija en la parte superior del chat durante el tiempo definido en duration.
curl -X POST "https://ryzeapi.cloud/api/chat/pinMessage/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{
    "pin":       true,
    "messageId": "3EB0XXXXXXXXXXXXXXXX",
    "duration":  "7d"
  }'

Desfijar

Con pin: false, el mensaje se desfija. El campo duration se ignora.
cURL
curl -X POST "https://ryzeapi.cloud/api/chat/pinMessage/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{
    "pin":       false,
    "messageId": "3EB0XXXXXXXXXXXXXXXX"
  }'

Respuesta de éxito

chat_jid se resuelve a partir del messageId, pinned refleja el estado final y duration se devuelve solo al fijar. El message cambia según pin: "Message pinned successfully" o "Message unpinned successfully".
200 OK
{
  "success": true,
  "message": "Message pinned successfully",
  "chat_jid": "5511999999999@s.whatsapp.net",
  "message_id": "3EB0XXXXXXXXXXXXXXXX",
  "pinned": true,
  "duration": "7d"
}

Parámetros de ruta

instance
string
requerido
Nombre de la instancia.

Headers

NombreObligatorioEjemploDescripción
Content-Typeapplication/json,
tokensí (o Authorization)a1b2c3d4-...TokenAccount o TokenInstance.

Request body

pin
boolean
requerido
true fija, false desfija.
messageId
string
requerido
ID del mensaje a fijar/desfijar. El chat y el autor se resuelven automáticamente a partir de él.
duration
string
predeterminado:"7d"
Cuánto tiempo permanece fijado el mensaje: "24h", "7d" o "30d". Solo se usa cuando pin: true; se ignora al desfijar.

Respuestas de error

HTTPerror.messageCuándo ocurre
400Instance name is required,
400Invalid request body: <...>JSON malformado.
400messageId is required,
401Invalid token,
404Instance not found,
500message with ID <...> not foundEl mensaje no existe en la base de datos de la instancia.
500invalid duration "<...>": use "24h", "7d" or "30d"Valor de duration inválido.
500WhatsApp client is not connectedInstancia desconectada.
Error 400
{
  "success": false,
  "error": { "message": "messageId is required" }
}

Relacionados

Fijar chat

POST /api/chat/pinChat/:instance

Favorito

POST /api/chat/favorite/:instance