{"service":"ProbaFide","purpose":"Verify Brazilian public facts server-side and receive tamper-evident evidence receipts from an append-only ledger.","disclaimer":"ProbaFide is not a cartório, notary, legal authority, government service, or substitute for legal advice.","base_url":"https://api.probafide.ai","authentication":"none — the public API requires no account or API key","rate_limit":"10 requests per 10 seconds per IP. On HTTP 429, wait 10 seconds and retry once; do not loop aggressively.","endpoints":[{"method":"GET","path":"/","description":"This machine-readable usage guide."},{"method":"GET","path":"/healthz","description":"Service health."},{"method":"GET","path":"/v1/connectors/status","description":"Readiness of each verification rail."},{"method":"POST","path":"/v1/verify/cnpj","example_body":{"cnpj":"11222333000181"},"description":"Verify a Brazilian company registration (CNPJ) via BrasilAPI."},{"method":"POST","path":"/v1/verify/cep","example_body":{"cep":"01310930"},"description":"Verify a Brazilian postal code (CEP) via BrasilAPI."},{"method":"POST","path":"/v1/verify/cpf","example_body":{"cpf":"08958905930"},"description":"CPF certificate check; fails closed without partner credentials."},{"method":"POST","path":"/v1/verify/bank","example_body":{"code":"1"},"description":"Look up a Brazilian bank by central-bank code."},{"method":"POST","path":"/v1/verify/municipalities","example_body":{"uf":"SP"},"description":"List IBGE municipalities for a state."},{"method":"GET","path":"/v1/reference/pix-participants","description":"List institutions participating in PIX."},{"method":"POST","path":"/v1/verify/holidays","example_body":{"year":2026},"description":"Brazilian national holidays for a year."},{"method":"POST","path":"/v1/verify/rate","example_body":{"name":"selic"},"description":"Official rate lookup (selic, cdi, ipca)."},{"method":"POST","path":"/v1/gazettes/search","example_body":{"querystring":"licitação","size":10},"description":"Search Brazilian official gazettes (Querido Diário)."},{"method":"POST","path":"/v1/verify/contracts","example_body":{"cnpj_orgao":"02928213000103","data_inicial":"20260101","data_final":"20260610"},"description":"PNCP public contracts for a government entity (dates AAAAMMDD)."},{"method":"POST","path":"/v1/verify/sanctions","example_body":{"cnpj":"11222333000181"},"description":"CEIS/CNEP federal sanctions check; fails closed without a Portal da Transparência key."},{"method":"POST","path":"/v1/signature/validate","example_body":{"filename":"signature.p7s","size":123,"sha256":"<64 hex chars>"},"description":"Record signature metadata; fails closed (no external validation)."},{"method":"POST","path":"/v1/datajud/search","example_body":{"tribunal_alias":"tjsp","query":{}},"description":"Tribunal case search; fails closed until configured."},{"method":"POST","path":"/v1/handoffs","example_body":{"kind":"signature_recognition","subject":"Example","payload":{}},"description":"Create a pending notarial handoff packet (server-side, local-only)."},{"method":"POST","path":"/v1/enotariado/assina/handoff","example_body":{"subject":"Example","documents":[]},"description":"Create a pending e-Not Assina handoff packet (no external submission)."},{"method":"GET","path":"/v1/receipts/{receipt_id}","description":"Fetch any receipt for independent verification."}],"response_shape":{"ok":"true when a verification result was produced, false on fail-closed errors","result":"the verified data, or null","error":"null, or {code, message} explaining the fail-closed outcome","source":"which rail produced the observation (e.g. brasilapi)","legal_assurance_level":"e.g. public_api_observation; never a legal conclusion","receipt_id":"id of the append-only ledger entry recording this exchange","request_sha256":"SHA-256 of the canonical JSON request payload","response_sha256":"SHA-256 of the canonical JSON response payload","timestamp_utc":"when the receipt was written","limitations":"plain-language statement of what this observation is NOT"},"error_codes":{"INVALID_CNPJ / INVALID_CEP / INVALID_CPF":"the input was malformed","UPSTREAM_NOT_FOUND":"the record does not exist in the public source","UPSTREAM_ERROR / UPSTREAM_TIMEOUT":"the public source failed; retry later","PARTNER_CREDENTIALS_REQUIRED":"CPF certificate checks need partner cartório credentials and are not publicly enabled","DATAJUD_NOT_CONFIGURED":"the DataJud rail is disabled","EXTERNAL_VALIDATION_DISABLED":"external signature validation is disabled"},"rules":["Always report receipt_id, request_sha256, response_sha256, and limitations alongside any fact cited from ProbaFide.","Never present ProbaFide output as a cartório, notary, government, or legal conclusion; quote the limitations faithfully.","A response with ok=false and an error code is a receipted fail-closed answer, not an outage. Do not retry PARTNER_CREDENTIALS_REQUIRED, DATAJUD_NOT_CONFIGURED, or EXTERNAL_VALIDATION_DISABLED.","Treat notarial handoffs as pending local packets until handled by a qualified authority.","To let a third party verify a claim, hand over the receipt_id and the GET /v1/receipts/{receipt_id} URL; hashes are SHA-256 over canonical (sorted-keys, compact) JSON payloads."],"example":"curl -s https://api.probafide.ai/v1/verify/cnpj -H 'Content-Type: application/json' -d '{\"cnpj\":\"00000000000191\"}'"}