Pular para o conteúdo principal

Erros da API

Toda resposta de erro das APIs do IaaS tem o mesmo corpo. O status HTTP e o code dizem o que aconteceu; o prefixo do code diz em que área.

Formato do corpo de erro​

CampoTipoDescrição
titlestringNome curto do erro, em inglês.
descriptionstringDescrição em inglês. Em erros de validação, traz o campo que falhou.
translationstringDescrição em português.
codestringTrês letras que indicam a área, seguidas de seis dígitos. Use este campo no seu tratamento de erro.

Exemplo: uma integração de gestora sem a permissão de escrita chamando um POST.

{
"title": "Manager does not have permission to access this endpoint",
"description": "Manager does not have permission to access this endpoint",
"translation": "Gestor nao tem permissão para acessar esse endpoint",
"code": "MIT000017"
}

Trate o erro pelo status HTTP e pelo code. Os textos de title, description e translation podem mudar.

Prefixo do code​

PrefixoOnde o erro aconteceu
MITHost da gestora (manager-api): autenticação, permissão e roteamento.
CITHost da consultoria (consultant-api): autenticação, permissão e roteamento.
AITHost do cedente (assignor-api): autenticação, permissão e roteamento.
QITErro genérico, em qualquer host ou serviço: rota inexistente, método não aceito, body inválido, erro interno.
SETLiquidação de ativos (/settlement).
TRCCessão de recebíveis (/trade_receivables).
TRFArquivos de cessão (/trade_receivables_files).
TRRVenda e recompra de ativos (/trade_resolve).
TTRBoletador de títulos públicos (/trade_treasury).
ASRHomologação de cedente (/assignor_registry).
ASSCedentes (/assignor).
ACTContrato de cessão (/assignment_contract).
AAMAditamento de recebíveis (/asset_amendment).
ADFDocumentos de ativos (/asset_document_files).
BSCBoletos (/bankslip_collection).
CSHContas e extrato (/cash_account).
TSFTransferência interna (/transfer).
TRVEstorno de transação (/transaction_reversal).
CMPComposição de carteira (/composition).
WLTCarteira (/wallet).
EXPDespesas (/expense).
IVRCadastro de investidor (/investor_registry).
IADTermo de adesão (/investor_adhesion).
QTACotas (/quota).
QOFControle de oferta (/quota_offering_control).
TFQCotas de fundo como ativo (/trade_fund_quota).

Um 400 com code QIT000001 indica corpo da requisição inválido: o campo com problema vem em description.

Autenticação​

Os erros de header, chave de API e assinatura (*000007 a *000016 e *000020) e como corrigir cada um estão em Teste de autenticação.

Permissão e rota​

Depois de autenticar a requisição, o host confere se a sua integração pode chamar aquela rota. Falta de permissão volta como 401, não 403: não procure erro de assinatura quando o code for um destes.

StatuscodeQuando aconteceO que fazer
401MIT000017A integração da gestora não tem a permissão que a rota exige: Leitura, Escrita ou as duas.Confira a permissão no bloco "Disponível em" da página do endpoint e o status em Permissões, na tela da integração. Veja liberação das permissões.
401CIT000018A consultoria não tem vínculo ativo com o fundo (fund_class_key) ou não tem, nesse fundo, a permissão que a rota exige.Confira o fund_class_key e a permissão indicada em "Disponível em". As permissões da consultoria são dadas por fundo. Se a permissão aparece como Liberada pelo time de integração, ela não é configurável no portal: peça a liberação em integracao.dtvm@qitech.com.br.
401AIT000017A integração do cedente não tem a permissão de leitura ou escrita que a rota exige.Fale com integracao.dtvm@qitech.com.br.
400*000009A integração está desativada.Reative a integração (como) ou fale com o time de integração.
404QIT000404O host não expõe esse caminho.Numa rota documentada, quase sempre é a URL base de outro perfil: confira o bloco "Disponível em" da página e a URL base do seu perfil. Confira também o caminho, sem a base_url.
405QIT000405O caminho existe no host, mas não com esse método.Confira o método na página do endpoint.

Reenvio e duplicidade​

Em caso de erro, reenvie a requisição. Se o recurso já existir, a criação devolve um erro de duplicidade em vez de criar outro: consulte o recurso existente.

Criaçãocode de duplicidadeStatusComo consultar o recurso existente
Lote de pagamento (liquidação)SET000009409Recuperação do lote, pelo external_id do lote.
Liquidação dentro de um loteSET000013400Recuperação da liquidação, pelo external_id da liquidação.
Lote de venda ou recompraTRR000015409GET /trade_resolve/fund_class/{fund_class_key}/assignment/{assignment_external_id}, exposto só no host do cedente. Gestora e consultoria não têm essa consulta.
Operação do boletador de títulos públicosTTR000044409GET /trade_treasury/fund_class/{fund_class_key}/operations, procurando o seu external_id na lista.
Boletador: sempre envie external_id

No boletador o external_id é opcional. Envie-o sempre: sem ele, a API não reconhece uma operação já criada.

Erro interno​

500 com QIT000500 é erro do lado da QI. Se persistir, envie a requisição (sem a chave privada), o horário em UTC e o code para integracao.dtvm@qitech.com.br.