Pular para o conteúdo

Como ler os erros

Os erros retornam como application/problem+json, no estilo da RFC 7807. O type é uma URI identificadora estável, e cada uma tem uma página explicativa em https://docs.d2b.dev/errors/<slug>.

{
"type": "https://docs.d2b.dev/errors/validation",
"title": "Transform validation failed",
"detail": "Avoid hard-coding source names in the template …",
"status": 400,
"trace_id": "8f3c…",
"suggested_fix": "Use {{ arg }} placeholders and bind via `args`. See /api/v1/workbooks/{cid}/artifacts to discover names.",
"alternative_tools": ["get_lineage"]
}

O suggested_fix é escrito como uma frase que um LLM pode ler diretamente para decidir a próxima ação — o padrão recomendado é passar a mensagem de exceção inteira para o loop do agente. O SDK lança exceções com o suggested_fix incluído, e a CLI imprime a mesma frase no stderr.

typeStatus típicoSignificado
validation400 / 422A entrada não cumpre o contrato (falha de SQL, nome proibido, referência hard-coded no template etc.)
propagation-failed400A transformação foi salva e materializada; em seguida, a reconstrução de uma transformação downstream falhou
unauthorized401PAT ausente, inválido ou revogado
forbidden403Scope insuficiente, recusa por política (mask / deny), fora do scope do workbook
unknown-workbook404O workbook não existe ou não está visível
unknown-artifact404A tabela / o artifact não existe, ou é de um tipo não exposto em /api/v1
conflict409Lock otimista (expected_version defasado), workbook em processamento, nome duplicado
rate-limited429Rate limit atingido. Siga o Retry-After
internal5xxFalha do lado do servidor. Entre em contato informando o trace_id

Respostas 5xx usam o mesmo problem+json. O trace_id (também no header X-D2B-Trace-Id) corresponde 1:1 ao stack trace do servidor — inclua-o ao reportar. Jobs de ingest assíncrono que falharam também carregam trace_id e a fase da falha (phase).

Para superfícies onde o vocabulário REST (GET /api/...) não se encaixa, os erros aplicáveis também trazem suggested_fix_cli (vocabulário d2b ...). A CLI exibe essa variante automaticamente.