Pular para o conteúdo

Estado compilado do negócio

GET
/v1/deals/{dealId}/state
curl --request GET \
--url https://developers.nexo.winningsales.com.br/v1/deals/example/state \
--header 'Authorization: Bearer <token>'

O que as conversas do negócio dizem, somado por regra: pessoas e papéis, objeções, compromissos, próximo passo, processo de decisão, sinais de compra, adiamentos, concorrentes e a etapa sustentada pelas conversas, cada item apontando a conversa e os trechos de origem, mais a temperatura (0 a 100) e o diagnóstico. O vendedor só enxerga os próprios negócios; admin e líder de vendas enxergam os da empresa, como no app.

dealId
required
string

Id do negócio no Nexo

O estado compilado do negócio

Media typeapplication/json
object
dealId
required
string
stateVersion
required
integer
compiledAt
required
string format: date-time
conversationCount
required
integer
lastConversationAt
required
string format: date-time
nullable
temperature
required

Leitura do Nexo: temperatura de 0 a 100 somada de contribuições nomeadas, por regra

object
rulesVersion
required

Versão da tabela de pesos

string
score
required
integer
<= 100
band
required

Frio até 33, quente a partir de 67

string
Allowed values: cold warm hot
contributions
required

A conta da temperatura, item por item

Array<object>
object
code
required

Regra que contribuiu (prolonged_silence, absent_decision_maker, buying_signals…)

string
points
required

Pontos somados à temperatura; negativos esfriam

integer
label
required

O porquê, em português, pronto para a tela

string
diagnosis
required

Diagnóstico que esta contribuição representa, quando é um

string
nullable
evidence
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
diagnosis
required

O diagnóstico de maior impacto: decisor ausente, silêncio prolongado, data escorregando, compromisso não cumprido ou concorrente sem resposta

object
code
required
string
label
required
string
points
required
integer
evidence
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
signals
required
object
crmPhase
required
string
nullable
closeDateSlips
required
integer
lastBuyerActivityAt
required

Última fala do comprador numa reunião ou mensagem dele no WhatsApp

string
nullable
buyerActivitySource
required
string
nullable
Allowed values: meeting whatsapp
unansweredFollowUps
required

Mensagens do vendedor no WhatsApp depois da última atividade do comprador

integer
silenceThresholdDays
required

20% do ciclo mediano da lente, no mínimo 7 dias; 10 sem lente

integer
stageEnteredAt
required
string
nullable
state
required
object
asOf
required
string
conversations
required
Array<object>
object
channel
required
string
Allowed values: meeting note call email whatsapp crm_whatsapp
conversationId
required
string
at
required
string
title
required
string
nullable
readPhase
required
string
nullable
bullets
required
Array<object>
object
text
required
string
excerptRefs
required
Array<string>
people
required
Array<object>
object
key
required

Chave estável da pessoa no negócio: e-mail, nome ou menção

string
name
required
string
nullable
descriptor
required

Como foi descrita quando citada (“sócio”, “o conselho”)

string
nullable
email
required
string
nullable
jobTitle
required
string
nullable
contactId
required

Contato do CRM, quando a pessoa está nele

string
nullable
buyingRole
required

Papel na compra lido nas conversas; unknown sem evidência

string
roleEvidence
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
attended
required

Conversas lidas em que a pessoa falou

Array<string>
crmMeetings

Reuniões passadas do CRM em que o contato estava; sem conversa lida e sem reunião = nunca participou

Array<object>
object
meetingId
required
string
at
required

Início da reunião

string
mentions
required

Conversas em que foi citada

Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
objections
required
Array<object>
object
code
required
string
status
required

Estado na menção mais recente

string
Allowed values: open handled
statement
required
string
firstAt
required
string
lastAt
required
string
mentions
required
Array<object>
object
evidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
status
required
string
Allowed values: open handled
statement
required
string
raisedBy
required

Chave da pessoa que levantou

string
nullable
responseExcerptRefs
required
Array<string>
nullable
pains
required
Array<object>
object
code
required
string
statements
required
Array<string>
evidence
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
commitments
required
Array<object>
object
key
required

Chave estável do combinado lido (conversa + texto), usada para confirmar, corrigir ou descartar

string
owner
required
string
Allowed values: rep buyer
what
required
string
dueText
required
string
nullable
dueDate
required
string
nullable
status
required

Overdue: data vencida sem entrega mencionada em conversa posterior; superseded: um combinado posterior do mesmo lado sobre o mesmo assunto tomou o lugar; discarded: o vendedor disse que não era um combinado

string
Allowed values: open delivered overdue superseded discarded
speaker
required
string
nullable
evidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
delivery
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
supersededBy
required

A conversa do combinado que tomou o lugar deste

object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
review
required

Presente quando o vendedor confirmou, corrigiu ou descartou a leitura

object
outcome
required

O que o vendedor disse sobre a leitura

string
Allowed values: confirmed corrected discarded
at
required

Quando disse

string
nextStep
required

O próximo passo da conversa mais recente

object
description
required
string
owner
required
string
Allowed values: rep buyer both none
dateText
required
string
nullable
date
required
string
nullable
agreedByBuyer
required
boolean
evidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
sellerNextStep

Próximo passo registrado por uma pessoa no Nexo

object
id
required

Id do registro do próximo passo

string
what
required

O que foi combinado

string
dueDate
required

Data do próximo passo (AAAA-MM-DD)

string
owedBy
required

Quem deve o próximo passo: seller = o vendedor (Você); client = o cliente

string
Allowed values: seller client
note
required

Observação de quem registrou, por exemplo o que foi combinado por telefone

string
nullable
setAt
required

Quando foi registrado

string
setByUserId
required

Quem registrou

string
nullable
decisionProcess
required
Array<object>
object
kind
required
string
statement
required
string
amountInCents
required
integer
nullable
date
required
string
nullable
evidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
buyingSignals
required
Array<object>
object
kind
required
string
statement
required
string
evidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
postponements
required
Array<object>
object
reason
required
string
newDate
required
string
nullable
newDateProposedBy
required
string
Allowed values: buyer rep none
evidence
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
companies
required
Array<object>
object
name
required
string
kind
required
string
comparisons
required
Array<string>
mentions
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
customerTools
required
Array<object>
object
name
required
string
category
required
string
usage
required
string
evidence
required
Array<object>
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
repOffers
required
Array<object>
object
topic
required
string
statement
required
string
speakerName
required
string
nullable
evidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
stage
required
object
read
required

A etapa mais avançada que as conversas sustentam

string
nullable
readEvidence
required
object
channel
required

Canal da conversa: reunião gravada, sessão de WhatsApp, ou nota, ligação, e-mail e WhatsApp (crm_whatsapp) do CRM

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

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

string
at
required

Quando a conversa aconteceu

string
excerptRefs
required

Trechos da conversa que sustentam o item (e1, e2…)

Array<string>
crm
required

A etapa do CRM na hora da compilação

string
nullable
divergence
required
string
nullable
Allowed values: crm_ahead crm_behind

Example

{
"temperature": {
"band": "cold",
"contributions": [
{
"evidence": [
{
"channel": "meeting"
}
]
}
],
"diagnosis": {
"evidence": [
{
"channel": "meeting"
}
]
},
"signals": {
"buyerActivitySource": "meeting"
}
},
"state": {
"conversations": [
{
"channel": "meeting"
}
],
"people": [
{
"roleEvidence": [
{
"channel": "meeting"
}
],
"mentions": [
{
"channel": "meeting"
}
]
}
],
"objections": [
{
"status": "open",
"mentions": [
{
"evidence": {
"channel": "meeting"
},
"status": "open"
}
]
}
],
"pains": [
{
"evidence": [
{
"channel": "meeting"
}
]
}
],
"commitments": [
{
"owner": "rep",
"status": "open",
"evidence": {
"channel": "meeting"
},
"delivery": {
"channel": "meeting"
},
"supersededBy": {
"channel": "meeting"
},
"review": {
"outcome": "confirmed"
}
}
],
"nextStep": {
"owner": "rep",
"evidence": {
"channel": "meeting"
}
},
"sellerNextStep": {
"owedBy": "seller"
},
"decisionProcess": [
{
"evidence": {
"channel": "meeting"
}
}
],
"buyingSignals": [
{
"evidence": {
"channel": "meeting"
}
}
],
"postponements": [
{
"newDateProposedBy": "buyer",
"evidence": [
{
"channel": "meeting"
}
]
}
],
"companies": [
{
"mentions": [
{
"channel": "meeting"
}
]
}
],
"customerTools": [
{
"evidence": [
{
"channel": "meeting"
}
]
}
],
"repOffers": [
{
"evidence": {
"channel": "meeting"
}
}
],
"stage": {
"readEvidence": {
"channel": "meeting"
},
"divergence": "crm_ahead"
}
}
}

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

Estado ainda não compilado, ou negócio 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": "deals.state_unavailable",
"title": "DealStateUnavailableError",
"status": 404,
"detail": "O Nexo ainda não compilou o estado deste negócio.",
"requestId": "019fcae7-3e54-755a-8458-bdb605b324bb",
"meta": {
"dealId": "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
}
}