Pular para o conteúdo principal
POST
/
api
/
chat
/
pinMessage
/
:instance
Fixar mensagem
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 ou TokenInstanceRate-limit: Global (100/min) • Idempotente: sim

Descrição

Fixa (pin: true) ou desfixa (pin: false) uma mensagem dentro de um chat. O chat, o autor da mensagem e a direção (fromMe) são resolvidos automaticamente a partir do messageId, você só precisa informar a mensagem.
Ao contrário de favoritar (que é privado e silencioso), fixar uma mensagem é uma ação visível para todos os participantes da conversa: o WhatsApp exibe “fixou uma mensagem”. O protocolo só oferece “fixar para todos”, não existe fixar apenas para você.
A mensagem precisa existir no banco da instância (ter sido recebida/enviada por ela). Caso contrário a API retorna message with ID ... not found.

Exemplos

Fixar

Com pin: true, a mensagem é fixada no topo do chat pelo tempo definido em 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"
  }'

Desfixar

Com pin: false, a mensagem é desfixada. O campo duration é ignorado.
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"
  }'

Resposta de sucesso

chat_jid é resolvido a partir do messageId, pinned reflete o estado final e duration é ecoado apenas quando se fixa. A message muda conforme o pin: "Message pinned successfully" ou "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 rota

instance
string
obrigatório
Nome da instância.

Headers

NomeObrigatórioExemploDescrição
Content-Typesimapplication/json,
tokensim (ou Authorization)a1b2c3d4-...TokenAccount ou TokenInstance.

Request body

pin
boolean
obrigatório
true fixa, false desfixa.
messageId
string
obrigatório
ID da mensagem a fixar/desfixar. O chat e o autor são resolvidos automaticamente a partir dele.
duration
string
padrão:"7d"
Por quanto tempo a mensagem fica fixada: "24h", "7d" ou "30d". Usado apenas quando pin: true; ignorado ao desfixar.

Respostas de erro

HTTPerror.messageQuando ocorre
400Instance name is required,
400Invalid request body: <...>JSON malformado.
400messageId is required,
401Invalid token,
404Instance not found,
500message with ID <...> not foundMensagem não existe no banco da instância.
500invalid duration "<...>": use "24h", "7d" or "30d"Valor de duration inválido.
500WhatsApp client is not connectedInstância desconectada.
Erro 400
{
  "success": false,
  "error": { "message": "messageId is required" }
}

Relacionados

Fixar chat

POST /api/chat/pinChat/:instance

Favoritar

POST /api/chat/favorite/:instance