Mudar uma seção da Calibração
const url = 'https://developers.nexo.winningsales.com.br/v1/calibration/example';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"additionalProperty":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://developers.nexo.winningsales.com.br/v1/calibration/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "additionalProperty": "example" }'Como o salvar da tela: cada grupo ou limite enviado substitui o valor em vigor, os outros ficam. A mudança entra no histórico da seção com quem fez e por onde (api), e na atividade da API. Mudar o forecast recalcula os indicadores. Enviar os valores em vigor não grava nada. Só administradores, como a tela Calibração; o papel é relido a cada chamada, e para mudar o token precisa do escopo calibration:write.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”Seção da Calibração: forecast, customer-profile, losses, risk-reading ou crm-fill (a lista completa vem de GET /v1/calibration)
Request Bodyrequired
Seção intitulada “Request Bodyrequired”A mudança da seção, no formato de changesSchema em GET /v1/calibration/{section}: só os grupos ou limites enviados mudam, os outros ficam como estão
object
Example generated
{ "additionalProperty": "example"}Responses
Seção intitulada “Responses”A seção depois da mudança
object
False quando a mudança não mudava nada e nada foi gravado
Grupos ou limites que a mudança moveu
A seção depois da mudança
object
Nome estável da seção, usado nas rotas e nas ferramentas
Nome do subitem na tela Calibração
O que a seção decide
True quando algum valor difere do padrão
A última mudança, ou null quando a seção nunca foi calibrada
object
Quando a mudança foi salva
Quem salvou
Nome de quem salvou
Where the change was made: app (the Calibração screen), api (public REST /v1), cli or mcp (the hosted MCP)
Grupos ou limites que esta mudança moveu, contra os valores em vigor antes dela
Valores em vigor na empresa
object
Valores que o Nexo usa quando nada foi calibrado; a volta ao padrão grava estes
object
JSON Schema da mudança aceita pela seção (corpo do PUT e changes das ferramentas)
object
O que a tela mostra além dos valores: no forecast, os funis com as etapas para escolher e as regras fixas; no perfil de cliente, a faixa e o passo de cada limite
object
Últimas mudanças, das mais novas para as mais antigas
object
Quando a mudança foi salva
Quem salvou
Nome de quem salvou
Where the change was made: app (the Calibração screen), api (public REST /v1), cli or mcp (the hosted MCP)
Grupos ou limites que esta mudança moveu, contra os valores em vigor antes dela
Example
{ "section": { "lastChange": { "surface": "app" }, "history": [ { "surface": "app" } ] }}Mudança fora do formato da seção (detalhes em meta.errors)
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" }}Seção inexistente
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": "calibration.section_not_found", "title": "CalibrationSectionNotFoundError", "status": 404, "detail": "Esta seção da Calibração não existe. Veja as seções em meta.available.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "section": "perdas", "available": [ "forecast", "customer-profile" ] }}A mudança quebra uma regra da seçã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": "calibration.profile_multipliers", "title": "CalibrationProfileMultipliersError", "status": 422, "detail": "O limite do anti-ICP precisa ficar abaixo do limite do ICP.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "icpMultiplier": 0.8, "antiIcpMultiplier": 0.85 }}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 }}