Pular para o conteúdo

Raio X do negócio

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

Tudo sobre um negócio num pedido só: fatos do CRM, etapa lida nas conversas, temperatura com a conta e o diagnóstico, destaques, empresa, pessoas, reuniões com resumo, objeções, compromissos, próximo passo, processo de decisão, concorrentes, linha do tempo e sugestões de campo em revisão. Leituras vêm rotuladas. 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 raio X do negócio

Media typeapplication/json
object
forecast
required

The seller forecast of the deal

object
asked
required

True when the deal is at or past the stage from which its funnel asks for the declaration

boolean
status
required

Not_asked before that stage; pending when the category or a future date is missing

string
Allowed values: not_asked declared pending
category
required

Category in force: the Nexo declaration, else the CRM forecast category

string
nullable
Allowed values: commit upside pipeline omitted
closeDate
required

Close date in force: the declared date, else the CRM close date

string
nullable /^\d{4}-\d{2}-\d{2}$/
source
required

Nexo when declared in Nexo; crm when only the CRM has a category

string
nullable
Allowed values: nexo crm
declaration
required

Latest declaration made in Nexo

object
category
required

Category declared in Nexo

string
closeDate
required

Close date declared in Nexo

string
/^\d{4}-\d{2}-\d{2}$/
reason
required

The seller “why”, when given

string
nullable
declaredAt
required

When it was declared

string format: date-time
declaredByUserId
required

Who declared

string format: uuid
nullable
declaredByName
required

Name of who declared

string
nullable
crmSync
required

Pending = going to the CRM; written = in the CRM too; nexo_only = the CRM cannot take it (no forecast category or no write access), kept only in Nexo; failed = the CRM refused it (see crmDetail); superseded = a newer declaration replaced it before it went up

string
Allowed values: pending written nexo_only failed superseded
crmDetail
required

Why it did not reach the CRM, when it did not

string
nullable
crmWrittenAt
required

When the CRM accepted it

string format: date-time
nullable
pending
required

Present while the declaration is due

object
reason
required

What is missing: the category, the date, or the declared date already passed

string
Allowed values: missing_category missing_date date_passed
askedSince
required

Day the deal reached the stage that asks for the declaration

string
/^\d{4}-\d{2}-\d{2}$/
pendingSince
required

Day the declaration became due (or was asked again, when the date passed)

string
/^\d{4}-\d{2}-\d{2}$/
pendingDays
required

Days without a valid declaration

integer
escalation
required

Step of the escalation ladder reached: task (Meu dia), email (daily e-mail), late (manager list and 1:1)

string
nullable
Allowed values: task email late
daysUntilLate
required

Days left before it becomes late for the manager (0 when already late)

integer
snoozedUntil
required

Set while the seller asked to be reminded tomorrow (“Lembrar amanhã”): the start of the next day in the company time zone. Until then the pop-up and the Meu dia task stay hidden; the days, the escalation step and the late list do not change

string format: date-time
nullable
snoozable
required

True when “Lembrar amanhã” can be used now: not snoozed today yet and not late for the manager

boolean
weights
required

Category weights in force for the company (Calibração)

object
commit
required

Weight of commit, in percent

integer
upside
required

Weight of upside, in percent

integer
pipeline
required

Weight of pipeline, in percent

integer
history
required

Declarations made in Nexo, newest first (last 10)

Array<object>
object
category
required

Category declared in Nexo

string
closeDate
required

Close date declared in Nexo

string
/^\d{4}-\d{2}-\d{2}$/
reason
required

The seller “why”, when given

string
nullable
declaredAt
required

When it was declared

string format: date-time
declaredByUserId
required

Who declared

string format: uuid
nullable
declaredByName
required

Name of who declared

string
nullable
crmSync
required

Pending = going to the CRM; written = in the CRM too; nexo_only = the CRM cannot take it (no forecast category or no write access), kept only in Nexo; failed = the CRM refused it (see crmDetail); superseded = a newer declaration replaced it before it went up

string
Allowed values: pending written nexo_only failed superseded
crmDetail
required

Why it did not reach the CRM, when it did not

string
nullable
crmWrittenAt
required

When the CRM accepted it

string format: date-time
nullable
commitReading
required

Nexo reading of a commit against the conversations (same rule as the Forecast tab); null when the category is not commit. Never changes the category

string
nullable
Allowed values: supported doubt unread
deal
required
object
id
required
string
name
required
string
nullable
amountInCents
required
integer
nullable
currency
required
string
nullable
status
required
string
source
required
string
nullable
crmUrl
required

Link do negócio no HubSpot, quando a conexão é HubSpot

string
nullable
owner
required
object
id
required
string
name
required
string
nullable
kind
required

queue or system when an admin confirmed the owner is not a person: show “sem dono (fila: )”

string
Allowed values: person queue system
stage
required
object
crmStageName
required
string
nullable
crmPhase
required
string
nullable
readPhase
required

Etapa mais avançada que as conversas sustentam

string
nullable
divergence
required

Aviso do raio X quando o CRM e as conversas não batem

string
nullable
Allowed values: crm_ahead crm_behind
divergenceEvidence
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>
dates
required
object
createdAt
required
string
nullable
daysOpen
required
integer
nullable
stageEnteredAt
required
string
nullable
daysInStage
required
integer
nullable
lastBuyerActivityAt
required
string
nullable
stalledDays
required

Days since the last real activity (CRM activity, last meeting held, entry in the stage), same as activity.days; null for a closed deal

integer
nullable
stalled
required

True when nothing is scheduled (CRM next activity or future meeting) and the last real activity is older than the deadline of the stage: the same rule as noNextActivity in the risks and stalled in the portfolio

boolean
stalledReason
required

Why the deal is stalled, citing the source, e.g. “último contato no CRM há 12 dias, nada agendado, prazo da etapa 7 dias”; null when not stalled

string
nullable
activity
required

Last and next activity with the deadline of the stage, as in risks.deals[].activity; null for a closed deal

object
source
required

Latest real activity: crm = last contact or activity recorded in the CRM; meeting = last meeting linked to the deal; stage_change = entry in the current stage; created = nothing recorded since the deal was created

string
Allowed values: crm meeting stage_change created
lastActivityOn
required

Day of that activity, YYYY-MM-DD, company time zone

string
days
required

Days since that activity

integer
deadlineDays
required

Deadline of the stage in days, between 3 and 30

integer
deadlineBasis
required

Stage = median days deals stay in this stage; pipeline = median cycle to win of the pipeline × 1.5; ceiling = no measured cycle, 30 days

string
Allowed values: stage pipeline ceiling
deadlineBase
required

Deals the deadline was measured on; 0 for ceiling

integer
nextActivityOn
required

Next scheduled activity (CRM field or future meeting), YYYY-MM-DD; null when nothing is scheduled

string
nullable
nextSource
required

Where the next activity comes from

string
nullable
Allowed values: crm meeting
expectedCloseDate
required
string
nullable
closeDateSlips
required

Quantas vezes a data de fechamento mudou

integer
estimatedCloseDate
required

Estimated close date, YYYY-MM-DD, only for an open deal without close date in the CRM: entry in the current stage plus the median days from that stage to won, else creation plus the median cycle of the pipeline; never written to the CRM

string
nullable
closeDateEstimated
required

True when estimatedCloseDate is set: show it labeled as estimated

boolean
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
highlights
required

As três contribuições de maior peso, para os selos do cabeçalho

Array<object>
object
tone
required
string
Allowed values: crit warn good
label
required
string
points
required
integer
narrative
required

Leitura da negociação: parágrafo escrito por modelo a partir do estado, reescrito só quando o estado muda; nula sem conversa lida

string
nullable
narrativeAt
required

Quando a leitura da negociação foi escrita ou conferida

string
nullable
company
required
object
name
required
string
domain
required
string
nullable
industry
required
string
nullable
employeeCount
required
integer
nullable
annualRevenueInCents
required
number
nullable
city
required
string
nullable
state
required
string
nullable
country
required
string
nullable
site
required

Site of the company as a CRM fact, from the standard field or from any property that holds one

object
domain
required
string
url
required
string
property
required

CRM property that holds the site; null when it is the standard field

string
nullable
propertyLabel
required

Label of that property as the CRM shows it

string
nullable
instagram
required

Instagram of the company as a CRM fact, read from any property, even without research

object
handle
required
string
url
required
string
property
required

CRM property that holds the handle

string
propertyLabel
required

Label of that property as the CRM shows it

string
accountResearch
required

Research of the customer company in background: a reading with source and date

object
id
required

Id of this version of the research

string format: uuid
accountId
required

CRM account (company of the customer) the research is about

string format: uuid
version
required

Version of the research of this account; a new one starts at each new domain, refresh or request

integer
status
required

Queued/reading = in progress; done = read, result filled; no_domain = no site in any CRM field, no company e-mail and no Instagram to start from; not_found = the pages could not be read or are not this company; failed = the model failed

string
Allowed values: queued reading done no_domain not_found failed
trigger
required

Why this version exists: first open deal, a new domain, the 90-day refresh or a request from the raio X

string
Allowed values: open_deal new_domain refresh requested
label
required

Always a reading: inferred from public pages, never a CRM fact

string
Allowed values: reading
domain
required

Domain that was read; null without domain

string
nullable
domainSource
required

Where the starting point came from: the account domain or website in the CRM, any CRM property that holds a site, the e-mails of its contacts, the public Instagram profile, or a search by name and city

string
nullable
Allowed values: crm_domain crm_website crm_property contact_email instagram name_search
domainProperty
required

Name of the CRM property that held the site or the Instagram handle; null when it came from a standard field

string
nullable
instagramHandle
required

Instagram handle found in the CRM, without the @; a CRM fact, kept even when the research read the site

string
nullable
sourceUrls
required

Pages read that back the result

Array<string>
pagesRead
required

Every page the reader tried

Array<object>
object
url
required

Page address

string
title
required

Page title

string
status
required

Read, failed or unsafe

string
detail
required

Why the page was not read (timeout, ENOTFOUND, http 403, dns: EAI_AGAIN); empty when it was read

string
result
required

What was read; null until done

object
what
required

What the company does; empty when no page says

string
sells
required

What it sells; empty when no page says

string
size
required

Declared size, with the source

object
declared
required

Headcount the site declares; null when not declared

integer
nullable
evidence
required

Passage that declares it

string
sourceUrl
required

Page that declares it

string
nullable
sector
required

Sector the site places the company in; empty when not stated

string
region
required

Where it is or operates; empty when not stated

string
roles
required

Job titles or departments mentioned in the pages; never people

Array<string>
signals
required

Recent signals, each with its page

Array<object>
object
text
required

Recent fact stated in a page (open job, new product, expansion, news)

string
url
required

Page that states it

string
date
required

Date the page gives, YYYY-MM-DD or YYYY-MM; null when none

string
nullable
model
required

Model that read the pages

string
nullable
promptVersion
required

Version of the research prompt

string
costInMicros
required

Cost of the model call in micros of BRL

integer
nullable
researchedAt
required

When the research finished; null while in progress

string format: date-time
nullable
createdAt
required

When this version was requested

string format: date-time
origins
required

De onde veio cada traço preenchido: traço sem valor não aparece aqui

Array<object>
object
trait
required

Traço da empresa a que esta origem se refere

string
Allowed values: industry employeeCount annualRevenue city state domain
origin
required

account: veio da conta no CRM; deal: veio de um campo do negócio, e a tela rotula “do negócio”

string
Allowed values: account deal
fieldName
required

Nome interno do campo do negócio que completou o traço

string
nullable
fieldLabel
required

Rótulo do campo do negócio que completou o traço (“[AQ] Segmento”)

string
nullable
fields
required

Campos preenchidos do negócio como fatos do CRM: só os personalizados que não viraram conceito mapeado nem apareceram em outro bloco, agrupados pelo grupo do CRM e com o valor formatado pelo tipo

object
inAnalysis
required

Campos que o admin confirmou como em uso nas análises, em Campos do CRM

Array<object>
object
group
required

Grupo do campo no CRM; “Outros campos” quando o CRM não dá um

string
fields
required
Array<object>
object
name
required

Nome interno do campo no CRM

string
label
required

Rótulo do campo, como o time vê no CRM

string
value
required

Valor formatado pelo tipo do campo (data em dd/mm/aaaa, opção pelo rótulo, texto encurtado)

string
meaning
required

O que o campo quer dizer, quando alguém já revisou o campo em Campos do CRM

string
nullable
others
required

Os demais campos preenchidos, para a tela mostrar recolhidos

Array<object>
object
group
required

Grupo do campo no CRM; “Outros campos” quando o CRM não dá um

string
fields
required
Array<object>
object
name
required

Nome interno do campo no CRM

string
label
required

Rótulo do campo, como o time vê no CRM

string
value
required

Valor formatado pelo tipo do campo (data em dd/mm/aaaa, opção pelo rótulo, texto encurtado)

string
meaning
required

O que o campo quer dizer, quando alguém já revisou o campo em Campos do CRM

string
nullable
hidden
required

Quantos campos preenchidos ficaram de fora por terem sido classificados como “não usar” (ids, datas técnicas, links)

integer
customerProfile
required

Classe do negócio contra o perfil de cliente da empresa; null quando não há critério declarado nem sugerido para o funil

object
profileClass
required

Dentro, parcial, fora ou sem dado suficiente para a tag de ICP do cabeçalho

string
Allowed values: inside partial outside unknown
source
required

Declared: critérios fixados pelo admin; suggested: lidos do histórico pelo Nexo

string
Allowed values: declared suggested
criteria
required
Array<object>
object
label
required

Nome do critério, como “Faturamento mensal médio”

string
matched
required

Se o negócio bate o critério; null quando o campo está em branco

boolean
nullable
missingFields
required

Rótulos dos campos em branco que impedem saber se o negócio bate algum critério

Array<string>
inferred
required

Leitura com valor inferido pelo site; null quando não há nenhum valor inferido para o negócio

object
profileClass
required

Classe do negócio quando o valor inferido pela pesquisa entra no lugar do campo vazio

string
Allowed values: inside partial outside unknown
criteria
required
Array<object>
object
label
required

Nome do critério, como “Faturamento mensal médio”

string
matched
required

Se o negócio bate o critério; null quando ainda sem dado

boolean
nullable
source
required

Crm: valor do CRM; inferred: valor inferido pela pesquisa; missing: sem valor

string
Allowed values: crm inferred missing
bandLabel
required

Faixa inferida, como “Acima de 150 mil por mês”; null quando não veio de inferência

string
nullable
confidence
required

Confiança de 0 a 1 do valor inferido; null quando veio do CRM ou falta

number
nullable
sourceUrl
required

Endereço da página que serviu de base

string
nullable
sourceLabel
required

Como a tela nomeia a fonte, por exemplo “pesquisa de aguiacalcados.com.br”

string
researchedAt
required

Quando a pesquisa que serviu de base rodou

string
nullable
expectedFields
required

Campos que o time costuma preencher na etapa atual e este negócio deixou em branco, do mais preenchido para o menos. Campo esperado é o que o time preenche em pelo menos 60% dos negócios ganhos que passaram pela etapa, com base mínima de 20 ganhos; campos técnicos e “não usar” ficam fora. É conta sobre fatos do CRM, com a base junto

Array<object>
object
name
required

Nome interno do campo no CRM

string
label
required

Rótulo do campo, como o time vê no CRM

string
teamFillRate
required

Fração de 0 a 1 dos negócios que passaram por esta etapa nos últimos 12 meses com o campo preenchido

number
teamBase
required

Quantos negócios passaram pela etapa nos últimos 12 meses: a base da conta

integer
people
required
Array<object>
object
key
required
string
name
required
string
nullable
descriptor
required
string
nullable
email
required
string
nullable
phone
required

Telefone do contato no CRM em E.164 só com dígitos (5511987654321), pronto para wa.me; null sem telefone ou quando não dá para normalizar com segurança

string
nullable
jobTitle
required
string
nullable
contactId
required
string
nullable
buyingRole
required
string
conversations
required

Conversas lidas em que falou e reuniões do CRM em que estava

integer
lastConversationAt
required
string
nullable
neverParticipated
required

Citada nas conversas ou contato do negócio, sem ter falado numa conversa lida nem estado numa reunião do CRM

boolean
meetings
required

Reuniões lidas, da mais recente para a mais antiga

Array<object>
object
channel
required
string
Allowed values: meeting note call email whatsapp crm_whatsapp
conversationId
required

Id da conversa: os trechos ficam em GET /conversations/:channel/:id/excerpts

string
at
required
string
title
required
string
nullable
readPhase
required
string
nullable
bullets
required
Array<object>
object
text
required
string
excerptRefs
required
Array<string>
objections
required
Array<object>
object
code
required
string
status
required
string
Allowed values: open handled
statement
required
string
raisedBy
required
string
nullable
firstAt
required
string
lastAt
required
string
mentions
required
integer
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>
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
commitmentHistory
required

Histórico de combinados do negócio: o que foi prometido, por quem, quando, prazo, status e fonte (leitura com trecho, ou registro do vendedor). Do mais recente para o mais antigo por quando foi dito

Array<object>
object
key
required

Chave estável do combinado, do prazo do cliente ou do próximo passo

string
owner
required
string
Allowed values: rep buyer
ownerLabel
required

Rótulo pronto para a tela

string
Allowed values: você cliente
kind
required

Commitment: combinado ou próximo passo do cliente; deadline: prazo do processo de decisão do cliente

string
Allowed values: commitment deadline
what
required

O que foi combinado ou o prazo

string
who
required

Nome de quem falou, quando dá para saber

string
nullable
promisedAt
required

Quando foi dito, na conversa de origem

string
dueDate
required

Prazo, AAAA-MM-DD

string
nullable
dueText
required

Como o prazo foi dito na conversa (“sexta”, “até o fim do mês”)

string
nullable
status
required

Open/overdue: pendente; delivered: cumprido; rescheduled: a tarefa de cobrar foi remarcada; cancelled: a tarefa de cobrar foi cancelada; superseded: um combinado posterior do mesmo lado tomou o lugar; corrected: o vendedor corrigiu a leitura e ainda está pendente; discarded: o vendedor disse que não era um combinado

string
Allowed values: open delivered overdue rescheduled cancelled superseded corrected discarded
source
required
One of:
object
kind
required

Leitura: o Nexo leu numa conversa, ainda não conferida pelo vendedor

string
Allowed values: reading
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>
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
task
required

A tarefa de cobrar ou entregar mais recente ligada a este combinado, se houver

object
id
required

Id da tarefa mais recente ligada a este combinado

string
day
required

Dia da tarefa, AAAA-MM-DD

string
status
required

Status atual da tarefa

string
Allowed values: open done auto_closed cancelled expired rescheduled
closedReason
required

Por que fechou sozinha (sinal sumiu, dia virou), quando fechou sozinha

string
nullable
rescheduledFromDay
required

Dia de onde esta tarefa foi remarcada; null quando nasceu neste dia

string
nullable
rescheduleCount
required

Quantas vezes esta tarefa já foi remarcada

integer
cancellation
required

Presente quando o vendedor cancelou a tarefa

object
reason
required

Por que a tarefa de cobrança foi cancelada

string
Allowed values: no_longer_makes_sense solved_elsewhere deal_lost_or_paused wrong_reading other
note
required

A justificativa escrita pelo vendedor

string
reschedules
required

Remarcações da tarefa, da mais recente para a mais antiga

Array<object>
object
fromDay
required
string
toDay
required
string
at
required

Quando a tarefa foi remarcada

string
notes
required

Registro do vendedor nas tarefas deste combinado, da mais recente para a mais antiga

Array<object>
object
text
required
string
at
required
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
required

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>
competitors
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>
otherCompanies
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>
deviations
required

Desvios de alinhamento das conversas deste negócio (abertos e já alinhados), do mais recente para o mais antigo

Array<object>
object
id
required

Id do desvio

string format: uuid
status
required

Open = em aberto; aligned = alguém marcou “já foi alinhado”; cleared = a regra mudou e deixou de ser desvio

string
Allowed values: open aligned cleared
deal
required

Negócio da conversa; nulo quando a conversa não tem negócio vinculado

object
id
required

Id do negócio

string
name
required

Nome do negócio no CRM

string
ownerId
required

Dono do negócio no CRM

string
nullable
ownerName
required

Nome do dono

string
nullable
conversation
required

Referência do trecho, no formato que GET /conversations/{channel}/{conversationId}/excerpts resolve

object
channel
required

Canal da conversa

string
Allowed values: meeting note call email crm_whatsapp
conversationId
required

Id da conversa

string
excerptRefs
required

Referências dos trechos onde a promessa foi dita

Array<string>
at
required

Quando a conversa aconteceu

string
spokenAt
required

Quando a promessa foi dita

string
promised
required

O que o vendedor prometeu, como a leitura resumiu

string
excerpt
required

O trecho da conversa, guardado na época da conferência

object
text
required

A fala literal do vendedor

string
speakerName
required

Quem falou

string
nullable
rule
required

A regra contrariada

object
source
required

Knowledge = item da Base de conhecimento; canvas = afirmação do canvas de oferta

string
Allowed values: knowledge canvas
itemId
required

Id do item da Base, quando a regra vem dela

string
nullable
version
required

Versão do item na época da conferência

integer
nullable
text
required

O texto da regra contrariada, como estava na época

string
sourceLabel
required

De onde a regra vem, pronto para a tela

string
nullable
subject
required

Assunto da regra (desconto, prazo, integração…)

string
confidence
required

Confiança do Jev na decisão, de 0 a 1

number
checkedAt
required

Quando a conferência foi feita

string
alignedAt
required

Quando alguém marcou “já foi alinhado”

string
nullable
timeline
required

Do mais recente para o mais antigo

Array<object>
object
kind
required
string
Allowed values: deal_created stage_entered seller_note meeting note call email whatsapp crm_whatsapp
at
required
string
title
required
string
detail
required
string
nullable
conversationId
required
string
nullable
read
required

True quando o Nexo já leu essa conversa

boolean
unreadReason
required

Por que o registro do CRM ainda não foi lido. queued = entra na leitura automática (últimos 60 dias ou negócio aberto); outside_window = mais antigo que a janela de leitura, não é lido para poupar custo, e dá para pedir a leitura; too_short = texto curto demais para valer a leitura. Nulo quando já foi lido ou não é conversa

string
nullable
Allowed values: queued outside_window too_short
crmSuggestions
required

Campos lidos das conversas aguardando revisão; reviewPath abre a fila deste negócio

object
pending
required
integer
refusedByCrm
required
integer
reviewPath
required
string
compiledAt
required

Quando o estado foi compilado; nulo enquanto o negócio não tem estado

string
nullable

Example

{
"forecast": {
"status": "not_asked",
"category": "commit",
"source": "nexo",
"declaration": {
"crmSync": "pending"
},
"pending": {
"reason": "missing_category",
"escalation": "task"
},
"history": [
{
"crmSync": "pending"
}
],
"commitReading": "supported"
},
"owner": {
"kind": "person"
},
"stage": {
"divergence": "crm_ahead",
"divergenceEvidence": {
"channel": "meeting"
}
},
"dates": {
"activity": {
"source": "crm",
"deadlineBasis": "stage",
"nextSource": "crm"
}
},
"temperature": {
"band": "cold",
"contributions": [
{
"evidence": [
{
"channel": "meeting"
}
]
}
],
"diagnosis": {
"evidence": [
{
"channel": "meeting"
}
]
},
"signals": {
"buyerActivitySource": "meeting"
}
},
"highlights": [
{
"tone": "crit"
}
],
"company": {
"accountResearch": {
"status": "queued",
"trigger": "open_deal",
"label": "reading",
"domainSource": "crm_domain"
},
"origins": [
{
"trait": "industry",
"origin": "account"
}
]
},
"customerProfile": {
"profileClass": "inside",
"source": "declared",
"inferred": {
"profileClass": "inside",
"criteria": [
{
"source": "crm"
}
]
}
},
"meetings": [
{
"channel": "meeting"
}
],
"objections": [
{
"status": "open",
"evidence": {
"channel": "meeting"
}
}
],
"commitments": [
{
"owner": "rep",
"status": "open",
"evidence": {
"channel": "meeting"
},
"delivery": {
"channel": "meeting"
},
"supersededBy": {
"channel": "meeting"
},
"review": {
"outcome": "confirmed"
}
}
],
"commitmentHistory": [
{
"owner": "rep",
"ownerLabel": "você",
"kind": "commitment",
"status": "open",
"source": {
"kind": "reading",
"evidence": {
"channel": "meeting"
}
},
"review": {
"outcome": "confirmed"
},
"task": {
"status": "open",
"cancellation": {
"reason": "no_longer_makes_sense"
}
}
}
],
"nextStep": {
"owner": "rep",
"evidence": {
"channel": "meeting"
}
},
"sellerNextStep": {
"owedBy": "seller"
},
"decisionProcess": [
{
"evidence": {
"channel": "meeting"
}
}
],
"buyingSignals": [
{
"evidence": {
"channel": "meeting"
}
}
],
"competitors": [
{
"mentions": [
{
"channel": "meeting"
}
]
}
],
"otherCompanies": [
{
"mentions": [
{
"channel": "meeting"
}
]
}
],
"customerTools": [
{
"evidence": [
{
"channel": "meeting"
}
]
}
],
"deviations": [
{
"status": "open",
"conversation": {
"channel": "meeting"
},
"rule": {
"source": "knowledge"
}
}
],
"timeline": [
{
"kind": "deal_created",
"unreadReason": "queued"
}
]
}

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

Negócio inexistente ou fora da visibilidade do dono do token

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.not_found",
"title": "DealNotFoundError",
"status": 404,
"detail": "Negócio não encontrado.",
"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
}
}