Mensagens de uma conversa de WhatsApp
const url = 'https://developers.nexo.winningsales.com.br/v1/whatsapp/sessions/example';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://developers.nexo.winningsales.com.br/v1/whatsapp/sessions/example \ --header 'Authorization: Bearer <token>'As mensagens da sessão, com o lado, o horário e a mídia marcada quando houver (o arquivo de mídia não sai). O vendedor só enxerga as próprias conversas de WhatsApp e as dos contatos dos próprios negócios; admin e líder de vendas enxergam as da empresa. Conteúdo de conversa: exige o escopo conversations:read e fica registrado na atividade da empresa.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”Id da sessão
Responses
Seção intitulada “Responses”A sessão com as mensagens
object
Id da sessão
Nome do contato: do CRM, do contato salvo no WhatsApp, ou o telefone
Telefone do contato
Vendedor dono da conversa. Nulo quando é um número da empresa
Nome do vendedor dono da conversa
Quando a sessão começou
Última mensagem da sessão
Quando a sessão fechou. Nulo enquanto está aberta
Total de mensagens da sessão
Mensagens recebidas do contato
Negócio associado ao contato. Nulo sem negócio em aberto ou recém-fechado
object
Id do negócio
Nome do negócio
Mensagens da sessão, em ordem
object
Id da mensagem
Referência (e1, e2…) quando esta mensagem também aparece como trecho da leitura
Quem enviou: contato (external) ou empresa (internal)
Tipo da mensagem: texto, áudio, imagem, vídeo, documento etc.
Texto da mensagem. Em áudio, a transcrição quando já saiu. Nulo se apagada ou sem transcrição
Quando foi enviada
Quando foi editada, se foi
Quando foi apagada, se foi
Presente quando a mensagem tem mídia. O conteúdo real fica marcado, não mostrado
object
Tipo do arquivo enviado
Se o arquivo já foi baixado e guardado. A URL assinada fica fora até a aprovação da Meta
Example
{ "messages": [ { "side": "external" } ]}Token ausente, inválido, expirado ou revogado
object
Stable machine-readable error code (e.g. identity.email_already_in_use)
Error class name
HTTP status code
Human-readable message, safe to display to end users
Correlation id — send it to support to locate the full trail
Structured details safe for the frontend (field errors, ids)
object
Example
{ "type": "public_api.invalid_credential", "title": "InvalidCredentialError", "status": 401, "detail": "Token de acesso inválido, expirado ou revogado. Crie um novo token de acesso no Nexo.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb"}Papel, escopo do token ou plano não permitem a operação
object
Stable machine-readable error code (e.g. identity.email_already_in_use)
Error class name
HTTP status code
Human-readable message, safe to display to end users
Correlation id — send it to support to locate the full trail
Structured details safe for the frontend (field errors, ids)
object
Example
{ "type": "public_api.insufficient_scope", "title": "InsufficientScopeError", "status": 403, "detail": "Este token não tem o escopo conversations:read, exigido por esta operação. Gere um token com esse escopo.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "operation": "conversations.reading", "scope": "conversations:read" }}Sessão inexistente ou fora da visibilidade
object
Stable machine-readable error code (e.g. identity.email_already_in_use)
Error class name
HTTP status code
Human-readable message, safe to display to end users
Correlation id — send it to support to locate the full trail
Structured details safe for the frontend (field errors, ids)
object
Example
{ "type": "whatsapp.session_not_found", "title": "WhatsAppSessionNotFoundError", "status": 404, "detail": "Essa conversa de WhatsApp não está disponível.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "sessionId": "019fcae7-3e54-755a-8458-bdb605b324aa" }}Limite de chamadas da empresa ou do token atingido
object
Stable machine-readable error code (e.g. identity.email_already_in_use)
Error class name
HTTP status code
Human-readable message, safe to display to end users
Correlation id — send it to support to locate the full trail
Structured details safe for the frontend (field errors, ids)
object
Example
{ "type": "public_api.rate_limited", "title": "PublicRateLimitedError", "status": 429, "detail": "Muitas chamadas em pouco tempo. Tente de novo em 12 segundos.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "class": "content", "limitedBy": "company", "limit": 120, "windowSeconds": 60, "retryAfterSeconds": 12 }}