Próximo passo registrado no negócio
const url = 'https://developers.nexo.winningsales.com.br/v1/deals/example/next-step';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/deals/example/next-step \ --header 'Authorization: Bearer <token>'O último próximo passo registrado por uma pessoa no negócio, se ele ainda vale (inEffect) e os registros mais recentes, cada um com quem, quando, por onde e o que aconteceu no CRM. Mesma visibilidade do negócio.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”Id do negócio no Nexo
Responses
Seção intitulada “Responses”O próximo passo registrado e o histórico
object
Id do negócio
O último próximo passo registrado por uma pessoa; nulo se ninguém registrou
object
Id do registro
O que foi combinado
Data do próximo passo (AAAA-MM-DD)
Quem deve o próximo passo: seller = o vendedor (Você); client = o cliente
Observação de quem registrou
Quando foi registrado
Quem registrou
Por onde foi registrado: app, API (rest), CLI ou MCP
O que aconteceu com o registro no CRM
object
Pending: subindo para o CRM em segundo plano; written: gravado no CRM; nexo_only: o CRM não tem o campo de próximo passo mapeado ou não aceita escrita, então fica só no Nexo; failed: o CRM recusou (motivo em detail); superseded: um registro mais novo substituiu este antes de subir
Por que não subiu, quando não subiu
Quando foi gravado no CRM
True quando o último registro ainda é o próximo passo do negócio no Radar e em Negócios; false quando uma conversa posterior trouxe outro próximo passo, ou quando ninguém registrou
Os registros mais recentes, do mais novo para o mais antigo (até 10)
object
Id do registro
O que foi combinado
Data do próximo passo (AAAA-MM-DD)
Quem deve o próximo passo: seller = o vendedor (Você); client = o cliente
Observação de quem registrou
Quando foi registrado
Quem registrou
Por onde foi registrado: app, API (rest), CLI ou MCP
O que aconteceu com o registro no CRM
object
Pending: subindo para o CRM em segundo plano; written: gravado no CRM; nexo_only: o CRM não tem o campo de próximo passo mapeado ou não aceita escrita, então fica só no Nexo; failed: o CRM recusou (motivo em detail); superseded: um registro mais novo substituiu este antes de subir
Por que não subiu, quando não subiu
Quando foi gravado no CRM
Example
{ "current": { "owedBy": "seller", "surface": "app", "crm": { "status": "pending" } }, "history": [ { "owedBy": "seller", "surface": "app", "crm": { "status": "pending" } } ]}Id inválido
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" }}Negócio inexistente ou fora da visibilidade do dono do token
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": "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
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 }}