Referência da API (OpenAPI)

A API REST completa da Certivant como um documento OpenAPI 3.1 — uma especificação JSON pública que você pode importar no Postman ou usar em um gerador de código, além de uma referência interativa com todos os endpoints, esquemas, escopos e eventos de webhook.

Todo endpoint que uma chave de API pode chamar é descrito em um único documento OpenAPI 3.1. Ele é público: não exige login nem chave, e pode ser baixado com segurança a partir de um CI ou de um gerador de código.

Documento OpenAPI/api/v1/openapi.json (alias /api/openapi.json)
Referência interativa/api/v1/docs
FormatoOpenAPI 3.1.0, JSON
AutenticaçãoAuthorization: Bearer <chave de API> — veja Autenticação
CacheCache-Control: public, max-age=300 e um ETag; envie If-None-Match para receber 304 quando nada tiver mudado

O documento contém apenas a superfície de chaves de API (/api/v1/...). As rotas do painel e de administração não fazem parte dele.

A referência interativa da API em /api/v1/docs — a lista de operações agrupada por tag à esquerda, a introdução com a URL base e a autenticação no centro, e os painéis de servidor, autenticação e bibliotecas cliente à direita.

O que o documento informa

  • Cada operação tem uma tag (Verifications, KYB, Documents, Forms, Deliveries, Live verification, Fraud signals, EDD, Privacy, Analytics, Audit, Reuse), um operationId estável para clientes gerados, e os esquemas de requisição e resposta.
  • Escopos. Cada operação lista o escopo que exige em x-required-scope e todos os escopos que também a satisfazem em x-accepted-scopes — os escopos amplos kyc:* e os escopos por recurso, como verifications:read ou forms:write. Uma operação sem x-required-scope aceita qualquer chave válida.
  • Erros. Cada operação lista as respostas de erro que pode retornar (400, 401, 402, 403, 404, 409, 429, 502), e todas usam o mesmo envelope de erro descrito em Erros.
  • Limites de requisições. As respostas de sucesso declaram os cabeçalhos X-RateLimit-*; veja Limites de requisições.
  • Webhooks. A seção webhooks lista todos os eventos que enviamos, com o esquema do payload e como verificar a assinatura. Veja Eventos de webhook e Verificação de assinatura.

Referência interativa

Navegue por todos os endpoints, leia os esquemas e monte requisições diretamente aqui. Use o painel Autenticação para colar uma chave de API e enviar requisições reais.

Se o quadro não carregar, abra a referência diretamente em /api/v1/docs.

Baixar o documento OpenAPI

# Save the spec
curl -sS https://app.certivant.com/api/v1/openapi.json -o certivant-openapi.json

# Only download again when it changed
curl -sS -D - -o /dev/null \
  -H 'If-None-Match: "<etag from your last download>"' \
  https://app.certivant.com/api/v1/openapi.json
import { writeFile } from "node:fs/promises";

const res = await fetch("https://app.certivant.com/api/v1/openapi.json");
if (!res.ok) throw new Error(`Spec download failed: ${res.status}`);

const spec = await res.json();
console.log(spec.info.title, spec.info.version, Object.keys(spec.paths).length, "paths");

await writeFile("certivant-openapi.json", JSON.stringify(spec, null, 2));
import json
import urllib.request

with urllib.request.urlopen("https://app.certivant.com/api/v1/openapi.json") as res:
    spec = json.load(res)

print(spec["info"]["title"], spec["info"]["version"], len(spec["paths"]), "paths")

with open("certivant-openapi.json", "w") as f:
    json.dump(spec, f, indent=2)

Como usar

Postman, Insomnia, Bruno. Importe a URL https://app.certivant.com/api/v1/openapi.json. Defina uma variável de ambiente para a sua chave e use-a como token Bearer na coleção.

Gere um cliente. Qualquer gerador compatível com OpenAPI 3.1 funciona. Por exemplo, com o OpenAPI Generator CLI:

npx @openapitools/openapi-generator-cli generate \
  -i https://app.certivant.com/api/v1/openapi.json \
  -g typescript-fetch \
  -o ./certivant-client

Os operation ids, como createVerification, submitVerification e getVerification, viram os nomes dos métodos. Defina a URL do servidor e um token Bearer na configuração do cliente gerado.

Chame sem um cliente. Uma primeira requisição precisa apenas da chave:

curl -sS https://app.certivant.com/api/v1/kyc/requests?limit=5 \
  -H "Authorization: Bearer $CERTIVANT_API_KEY"

Acompanhando as mudanças

O documento é gerado a partir da API em execução, por isso sempre corresponde aos endpoints publicados. Baixe-o novamente (com o ETag) sempre que gerar um cliente de novo. Trate os objetos de resposta como abertos: ignore os campos que você não conhece, porque novos campos opcionais podem surgir.