Pular para o conteúdo

Sugestões de campo de um negócio

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

Uma etapa por sugestão em aberto: a propriedade do CRM com tipo e opções, o valor no CRM agora, o valor que o Nexo leu, o motivo e as evidências. O vendedor vê os próprios negócios; admin e líder de vendas veem todos e podem filtrar por dono.

dealId
required
string

Id do negócio no Nexo

O negócio com as etapas de revisão

Media typeapplication/json
object
deal
required
object
dealId
required

Deal id

string format: uuid
externalId
required

Id of the deal in the CRM

string
name
required

Deal name

string
ownerId
required

Owner id

string format: uuid
nullable
ownerName
required

Owner name

string
nullable
amountInCents
required

Deal amount in cents

number
nullable
currency
required

Currency code

string
steps
required

One step per open suggestion, oldest first

Array<object>
object
id
required

Suggestion id

string format: uuid
concept
required

Concept id

string
label
required

Concept label, pt-BR

string
description
required

What the concept means

string
targetType
required

Record the value goes to

string
Allowed values: deal company contact meeting
status
required

Where the suggestion is in its life

string
Allowed values: pending approved rejected writing written failed invalid superseded awaiting_field held reverting reverted
kind
required

How to edit it: text, number, money, date, datetime, bool, enum, stage, contact, or meeting_note for the note of a meeting

string
editable
required

Whether the person may edit the value before approving

boolean
property
required

Mapped CRM property; null when the concept lost its mapping

object
name
required

Internal name of the CRM property

string
label
required

Label as the CRM shows it

string
type
required

CRM value type

string
fieldType
required

CRM widget

string
options
required

Allowed values when it is a list

Array<string>
currentValue
required
One of:
string
currentLabel
required

Stage name when the kind is stage

string
nullable
proposedValue
required
One of:
string
proposedLabel
required

Stage name when the kind is stage

string
nullable
finalValue
required
One of:
string
value
required
One of:
string
reason
required

Why, in one line

string
nullable
origin
required

Who produced it

string
Allowed values: ai rule person account_research
confidence
required

Confidence of the reading

number
nullable
evidences
required

Excerpts and facts

Array<object>
object
kind
required

quote is something a person said; fact is something the CRM or the timeline shows

string
Allowed values: quote fact
text
required

The excerpt or the fact, in pt-BR

string
>= 1 characters
channel
required

Where it came from: call, whatsapp, email, crm

string
nullable
who
required

Who said it, when it is a quote

string
nullable
at
required

When, as the screen should show it

string
nullable
position
required

Minute in the call, when there is one

string
nullable
ref
required

Id of the meeting, message or record the excerpt belongs to

string
nullable
conversation
required

The conversation that produced the value; groups the steps for “approve all from this conversation”

object
id
required

Id of the meeting or CRM engagement the value was read from

string format: uuid
channel
required

Meeting, call, note, email

string
nullable
at
required

When the conversation happened, ISO 8601

string
nullable
crmChangedValue
required
One of:
string
crmChangedAt
required

When that change was detected

string format: date-time
nullable
decidedByUserId
required

Who decided

string format: uuid
nullable
approvedAutomatically
required

Approved by Nexo because the company turned on the automatic approval; no person decided

boolean
decidedAt
required

When

string format: date-time
nullable
writtenAt
required

When it reached the CRM

string format: date-time
nullable
failureReason
required

Why the CRM refused it, readable

string
nullable
failureOptions
required

Allowed values, when the refusal was about a list

Array<string>
nullable
version
required

Bumped on every decision

integer
createdAt
required

When the suggestion was made

string format: date-time
note
required

For the meeting note item (kind meeting_note): the meeting and the contacts the note goes to; null for a field

object
meetingId
required

Meeting the note summarizes

string format: uuid
meetingTitle
required

Meeting title

string
nullable
meetingAt
required

When the meeting happened

string format: date-time
nullable
contacts
required

Names of the CRM contacts present, the ones the note is associated with besides the deal

Array<string>
contact
required

The contact Nexo proposes to create; only for kind contact

object
firstName
required

First name

string
lastName
required

Last name

string
nullable
jobTitle
required

Job title said in the conversation

string
nullable
buyingRole
required

Buying role, as the CRM option value, when the field is mapped

string
nullable
accountName
required

Company the contact is linked to, besides the deal

string
nullable
edited
required

True when the person edited the name or job title

boolean
pending
required

Steps still waiting

integer
approved
required

Steps approved and not written yet

integer

Example

{
"steps": [
{
"targetType": "deal",
"status": "pending",
"origin": "ai",
"evidences": [
{
"kind": "quote"
}
]
}
]
}

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 não encontrado ou de outro vendedor

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

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