Consultar o resultado
Estado da consulta. Quando conclui, a mesma resposta traz dados, o bloco veiculo e o link do PDF.
https://api.zapcarconsulta.com.br/v1/consultas/{id}Devolve o estado atual da consulta criada com POST /v1/consultas. É gratuito: repita a cada 3 a 5 segundos enquanto o status for processando, com teto de 5 minutos. Quando conclui, a mesma resposta traz o resultado.
"concluido" e "erro" são terminais
status: "erro" nunca produz resultado. Uma nova tentativa é um POST novo.Um id que não pertence à chave (outra conta, outro ambiente, consulta de teste com mais de 24 h) responde 404 CONSULTA_NOT_FOUND, nunca o dado.
curl "https://api.zapcarconsulta.com.br/v1/consultas/6f1c2e2a-1b3d-4a9e-8f7c-2a1b3c4d5e6f" \
-H "Authorization: Bearer $ZAPCAR_API_KEY"{
"id": "6f1c2e2a-1b3d-4a9e-8f7c-2a1b3c4d5e6f",
"servico": "consulta",
"placa": "ABC1D23",
"status": "concluido",
"schema_version": "1.0",
"valor_cobrado": 5.98,
"criado_em": "2026-10-18T09:14:02-03:00",
"dados": { "dados_do_veiculo": { "...": "..." }, "restricoes_e_impedimentos": { "...": "..." } },
"veiculo": {
"placa": "ABC1D23", "marca": "VW", "modelo": "POLO SENSE", "ano_modelo": 2020,
"restricoes": [{ "tipo": "FINANCEIRA", "ativa": false, "descricao": null }],
"debitos": [],
"debitos_total_centavos": 0,
"...": "..."
},
"proprietario": { "nome": "JOAO DA SILVA", "documento": "12345678901" },
"ultimo_licenciamento": 2024,
"nao_verificado": [],
"pdf_url": "/v1/consultas/6f1c2e2a-1b3d-4a9e-8f7c-2a1b3c4d5e6f/pdf"
}Requisição
Parâmetros de caminho
idstring (uuid)obrigatórioCabeçalhos
AuthorizationstringobrigatórioBearer zc_live_… (produção) ou Bearer zc_test_… (teste). O cabeçalho X-API-Key também é aceito. Ver Autenticação.Exemplo: Bearer zc_test_…
Respostas
- 200Estado da consulta (qualquer um dos três status).Corpo: ConsultaResponse
- 401Chave ausente, inválida ou revogada.Corpo: ApiError
- 404Não encontrado, ou não pertence a esta conta (um id de outro cliente responde 404, nunca o dado).Corpo: ApiError
- 429Rate limit excedido. Respeite o header
Retry-After(segundos) antes de repetir. Não consome saldo.Corpo: ApiError - 500Falha interna inesperada. É transitória (
retryable: true); informe orequest_idao suporte se persistir.Corpo: ApiError
Cabeçalhos da resposta
RateLimit-Limitintegerpode não virRateLimit-Remainingintegerpode não virRateLimit-Resetintegerpode não virX-Request-Idstring (uuid)pode não virOs três status
| status | O que vem junto | Próximo passo |
|---|---|---|
| processando | Só o envelope. | Consulte de novo em 3 a 5 s. |
| concluido | dados, pdf_url e, conforme o serviço, veiculo, proprietario, ultimo_licenciamento, risco e nao_verificado. | Use os dados. O id não muda mais. |
| erro | erro, erro_codigo e retryable (os dois últimos podem faltar em consultas antigas). | O valor foi estornado. Com retryable: true, crie uma consulta nova. |
CRLV, ATPV-e e código de segurança
dados: o resultado é só o documento, em pdf_url.Como ler cada bloco (o que significa null, as três camadas de dado, o bloco veiculo) está em Resultados e relatórios; os códigos de erro_codigo, em Tratamento de erros; o formato de dados de cada serviço, em Serviços disponíveis.