Trechos de uma conversa
const url = 'https://developers.nexo.winningsales.com.br/v1/conversations/example/example/excerpts';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/conversations/example/example/excerpts \ --header 'Authorization: Bearer <token>'A conversa em trechos, na ordem original, com quem falou ou escreveu, o lado (empresa ou cliente) e, nas reuniões, o instante na gravação. Com refs (e1,e4), só os trechos citados por uma leitura; sem refs, a conversa inteira. O vendedor só enxerga as conversas dos próprios negócios e as próprias; admin e líder de vendas enxergam as da empresa. Conteúdo de conversa na íntegra: exige o escopo conversations:read e cada leitura fica registrada na atividade da empresa.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”Id da conversa no canal
Canal: meeting, note, call, email, whatsapp ou crm_whatsapp
Query Parameters
Seção intitulada “Query Parameters”Referências a resolver, separadas por vírgula (e1,e4). Ausente: a conversa inteira
Referências a resolver, separadas por vírgula (e1,e4). Ausente: a conversa inteira
Responses
Seção intitulada “Responses”Os trechos pedidos
object
Canal da conversa: reunião gravada (meeting), nota do CRM (note), ligação registrada (call), e-mail (email) ou sessão de WhatsApp (whatsapp)
Id da reunião, do engajamento do CRM ou da sessão de WhatsApp
Quando a conversa aconteceu
Título da reunião, assunto do e-mail ou nome do contato no WhatsApp; nota do CRM não tem título
Quem escreveu a nota, a ligação ou o e-mail; vazio nas reuniões e no WhatsApp
Os trechos, na ordem da conversa
object
Referência curta do trecho (e1, e2…), a mesma que as leituras do Nexo citam
Ordem do trecho na conversa, a partir de 1
Quem falou ou escreveu o trecho
Lado de quem falou: da empresa (internal), do cliente (external) ou sem como saber (unknown)
Início do trecho na gravação, em milissegundos; nulo fora das reuniões
Fim do trecho na gravação, em milissegundos; nulo fora das reuniões
Quando a mensagem foi enviada, no WhatsApp; nulo nos outros canais
O texto do trecho, como foi dito ou escrito
Example
{ "channel": "meeting", "excerpts": [ { "side": "internal" } ]}Canal ou refs inválidos
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 generated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "requestId": "example", "meta": { "additionalProperty": "example" }}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" }}Conversa 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": "conversations.conversation_unavailable", "title": "ConversationUnavailableError", "status": 404, "detail": "Esta conversa não está disponível.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "channel": "whatsapp", "conversationId": "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 }}