Um pedido de ZIP
const url = 'https://developers.nexo.winningsales.com.br/v1/downloads/bundles/example';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/downloads/bundles/example \ --header 'Authorization: Bearer <token>'A situação do pedido (building, ready ou failed com o motivo) e, quando pronto, uma URL assinada nova.
Authorizations
Seção intitulada “Authorizations”Parameters
Seção intitulada “Parameters”Path Parameters
Seção intitulada “Path Parameters”Id do pedido
Responses
Seção intitulada “Responses”O pedido
object
Id do lote
Montando, pronto para baixar ou falhou
Quantas conversas entraram no pedido, somando reuniões, WhatsApp e e-mail
Se o pedido incluiu os áudios
Tamanho do ZIP quando pronto
Por que falhou: lote acima do limite de tamanho, nenhuma conversa com conteúdo para baixar, ou erro inesperado
Nome sugerido para o ZIP
URL assinada do ZIP quando pronto, válida por poucos minutos; null antes disso
Quando a URL deixa de funcionar
Quando o lote foi pedido
Quando o ZIP ficou pronto
Example
{ "status": "building", "failureReason": "too_large"}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" }}Pedido inexistente ou de outra pessoa
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": "downloads.not_found", "title": "DownloadNotFoundError", "status": 404, "detail": "Download não encontrado.", "requestId": "019fcae7-3e54-755a-8458-bdb605b324bb", "meta": { "downloadId": "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 }}