API développeurs

Le moteur Reclam en une requête HTTP.
OpenAPI / Swagger

Accéder à l'API

Entrez votre e-mail pour créer ou retrouver votre compte. 100 analyses/mois offertes, 1 000 avec le plan Cabinet.

Analyses (30 j)—via /v1/analyze
Erreurs—documents non lus
Latence moyenne—par document
Quota du mois—

Démarrer en 30 secondes

Ce que renvoie l'API

Une enveloppe unique pour tous les documents : status (clean · findings · recoverable · uncertain · incoherent), summary (montant récupérable, nombre de signalements), findings[] (règle, sévérité, montant, base légale, action, interlocuteur) et claims{} (courriers prêts à envoyer).

Types reconnus automatiquement : relevés bancaires (PDF, photo, CSV/OFX — UE, UK, Golfe), tableaux d'amortissement, factures d'énergie, télécom, eau/électricité/gaz/cooling, factures de services, avis d'impôt, tickets de caisse.

Vos clés

Envoyez-la dans l'en-tête X-API-Key (ou Authorization: Bearer).
NomPréfixeUtilisé / quotaCrééeDernier appel

Appels par jour (30 j)

Par type de document

TypeAppels

Derniers appels

DateCléTypeStatutmsRésultat

Référence

Version 2026-09-22 · base

Authentification

Chaque requête porte X-API-Key: rk_live_…. Une clé est liée à votre compte ; révoquez-la à tout moment. Quota mensuel par compte (100 / 1 000), réponse 429 quota_exceeded au-delà.

Endpoints

RouteDescription
POST /v1/analyzeAnalyse un document. Multipart : file (PDF, PNG/JPG, CSV, OFX), options include_report (rapport Markdown), include_letters (courriers, défaut true), include_transactions (relevés), cancellations (JSON {libellé: "YYYY-MM-DD"} pour détecter les prélèvements après résiliation).
GET /v1/document-typesTypes pris en charge et contrôles effectués.
GET /v1/pingVérifie la clé et renvoie le quota.

Réponse

{
  "api_version": "2026-09-22",
  "document_type": "statement",          // statement · loan_schedule · energy_invoice · telecom_invoice · utility_invoice · service_invoice · tax_notice · receipt
  "title": "Relevé Wise", "subtitle": "01/08 → 22/09/2026 · 89 opérations",
  "currency": "EUR",
  "status": "findings",                // clean · findings · recoverable · uncertain · incoherent
  "integrity": "Chaîne des soldes vérifiée sur 89 opérations.",
  "summary": { "recoverable": "0.00", "high": 0, "medium": 0, "low": 6 },
  "findings": [ { "rule": "fx_conversion_spread", "title": "…", "severity": "low", "amount_recoverable": "0",
                  "confidence": 0.8, "explanation": "…", "legal_basis": "…", "action": "…", "counterparty": "Wise" } ],
  "claims": { "Wise": "Madame, Monsieur, …" },   // courriers, uniquement si un montant est à réclamer
  "details": { … },                       // champs propres au type (période, kWh, index, historique…)
  "processing_ms": 1840, "quota": { "month": 100, "used": 12 }
}

Erreurs

401 invalid_api_key · 429 quota_exceeded · 400 bad_request · 422 (fichier manquant) · 500 analysis_failed (document illisible : le corps donne la cause). Les erreurs comptent dans l'usage mais pas dans le quota.

Bonnes pratiques

Un document par appel, 20 Mo max. Les photos de relevés passent par OCR : privilégiez le PDF d'origine quand il existe. Les données ne sont pas conservées côté API (aucun document n'est stocké pour les appels /v1).