Pular para o conteúdo

Trechos de uma conversa

GET
/v1/conversations/{channel}/{conversationId}/excerpts
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.

conversationId
required

Id da conversa no canal

channel
required

Canal: meeting, note, call, email, whatsapp ou crm_whatsapp

refs

Referências a resolver, separadas por vírgula (e1,e4). Ausente: a conversa inteira

string
>= 1 characters <= 400 characters

Referências a resolver, separadas por vírgula (e1,e4). Ausente: a conversa inteira

Os trechos pedidos

Media typeapplication/json
object
channel
required

Canal da conversa: reunião gravada (meeting), nota do CRM (note), ligação registrada (call), e-mail (email) ou sessão de WhatsApp (whatsapp)

string
Allowed values: meeting note call email whatsapp crm_whatsapp
conversationId
required

Id da reunião, do engajamento do CRM ou da sessão de WhatsApp

string
at
required

Quando a conversa aconteceu

string format: date-time
title
required

Título da reunião, assunto do e-mail ou nome do contato no WhatsApp; nota do CRM não tem título

string
nullable
authorName
required

Quem escreveu a nota, a ligação ou o e-mail; vazio nas reuniões e no WhatsApp

string
nullable
excerpts
required

Os trechos, na ordem da conversa

Array<object>
object
ref
required

Referência curta do trecho (e1, e2…), a mesma que as leituras do Nexo citam

string
position
required

Ordem do trecho na conversa, a partir de 1

integer
speakerName
required

Quem falou ou escreveu o trecho

string
nullable
side
required

Lado de quem falou: da empresa (internal), do cliente (external) ou sem como saber (unknown)

string
Allowed values: internal external unknown
startMs
required

Início do trecho na gravação, em milissegundos; nulo fora das reuniões

integer
nullable
endMs
required

Fim do trecho na gravação, em milissegundos; nulo fora das reuniões

integer
nullable
at
required

Quando a mensagem foi enviada, no WhatsApp; nulo nos outros canais

string format: date-time
nullable
text
required

O texto do trecho, como foi dito ou escrito

string

Example

{
"channel": "meeting",
"excerpts": [
{
"side": "internal"
}
]
}

Canal ou refs inválidos

Media typeapplication/json
object
type
required

Stable machine-readable error code (e.g. identity.email_already_in_use)

string
title
required

Error class name

string
status
required

HTTP status code

integer
detail
required

Human-readable message, safe to display to end users

string
requestId
required

Correlation id — send it to support to locate the full trail

string
nullable
meta

Structured details safe for the frontend (field errors, ids)

object
key
additional properties

Example generated

{
"type": "example",
"title": "example",
"status": 1,
"detail": "example",
"requestId": "example",
"meta": {
"additionalProperty": "example"
}
}

Token ausente, inválido, expirado ou revogado

Media typeapplication/json
object
type
required

Stable machine-readable error code (e.g. identity.email_already_in_use)

string
title
required

Error class name

string
status
required

HTTP status code

integer
detail
required

Human-readable message, safe to display to end users

string
requestId
required

Correlation id — send it to support to locate the full trail

string
nullable
meta

Structured details safe for the frontend (field errors, ids)

object
key
additional properties

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

Media typeapplication/json
object
type
required

Stable machine-readable error code (e.g. identity.email_already_in_use)

string
title
required

Error class name

string
status
required

HTTP status code

integer
detail
required

Human-readable message, safe to display to end users

string
requestId
required

Correlation id — send it to support to locate the full trail

string
nullable
meta

Structured details safe for the frontend (field errors, ids)

object
key
additional properties

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

Media typeapplication/json
object
type
required

Stable machine-readable error code (e.g. identity.email_already_in_use)

string
title
required

Error class name

string
status
required

HTTP status code

integer
detail
required

Human-readable message, safe to display to end users

string
requestId
required

Correlation id — send it to support to locate the full trail

string
nullable
meta

Structured details safe for the frontend (field errors, ids)

object
key
additional properties

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

Media typeapplication/json
object
type
required

Stable machine-readable error code (e.g. identity.email_already_in_use)

string
title
required

Error class name

string
status
required

HTTP status code

integer
detail
required

Human-readable message, safe to display to end users

string
requestId
required

Correlation id — send it to support to locate the full trail

string
nullable
meta

Structured details safe for the frontend (field errors, ids)

object
key
additional properties

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
}
}