Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[BUG] Endpoint /label/handleLabel retorna sucesso mas não aplica a etiqueta no WhatsApp (Problema JID vs LID) #2524

Description

@willzins

Welcome!

  • Yes, I have searched for similar issues on GitHub and found none.

What did you do?

O endpoint de aplicar etiquetas em contatos (/label/handleLabel) retorna sucesso na requisição ("add": true), porém a tag não é refletida no aplicativo do WhatsApp.

Investigando o comportamento e os logs, foi identificado que o erro ocorre devido à exigência atual do WhatsApp (arquitetura multi-device) de usar o formato LID (@lid) para manipulação de etiquetas, enquanto a Evolution API está forçando o envio em JID (@s.whatsapp.net).

Passos para reproduzir:

Fazer um POST para {{base_url}}/label/handleLabel/{{instance}}

Enviar o body:

JSON
{
"number": "5551999999999",
"labelId": "16",
"action": "add"
}
A API retorna 200 OK com o JID formatado:

JSON
[
{
"numberJid": "[email protected]",
"labelId": "16",
"add": true
}
]

A etiqueta não é aplicada no celular. Falso positivo.

Teste adicional realizado (A Causa Raiz):
Tentei forçar o envio do número já no formato LID no body da requisição (ex: "number": "114087400878253@lid" capturado via webhook de grupo).
Ainda assim, a função de formatação interna da Evolution "limpa" a requisição, ignora o @lid e reescreve a saída forçando para @s.whatsapp.net. A biblioteca Baileys processa sem erro, mas o servidor do WhatsApp ignora a ação.

Sugestão de Correção:

A camada de serviço de labels (src/services/whatsapp.service.ts ou label.service.ts) precisa ser ajustada.

Antes de chamar a função do Baileys para aplicar a etiqueta, a Evolution deve consultar/resolver o JID do contato para descobrir o LID correspondente.

Passar o identificador resolvido em @lid para a função de etiquetar do Baileys. Ou, alternativamente, permitir que o endpoint aceite e não sobrescreva a string quando o usuário já enviar com a terminação @lid.

What did you expect?

.

What did you observe instead of what you expected?

.

Screenshots/Videos

.

Which version of the API are you using?

Last, Versão: 2.3.7

What is your environment?

Docker

Other environment specifications

No response

If applicable, paste the log output

No response

Additional Notes

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions