# CoproScan — API reference for LLM agents CoproScan analyses French condominium AGM minutes (PV d'assemblée générale) before a purchase: voted/discussed works, litigation, unpaid charges, red flags with page citations, cross-checked with public building data (DPE ADEME, Géorisques, DVF). The LLM runs locally (Ollama) — documents never leave the server. Launch beta: reports are free (payment bypassed), limited to 3 analyses per email per rolling 24 h. Base URL: https://coproscan.atomservices.fr ## Endpoints ### POST /api/analyses Create an analysis. multipart/form-data: - email (required) — used to retrieve the report, no account needed - address (required) — building address, 5..500 chars - kinds (optional) — comma-separated, aligned with files: pv_ag | charges | reglement - files (required) — 1..12 PDF files, max 25 MB each 201 → {"id": "", "email", "address", "status": "pending|paid", "created_at", "report_ready": false, "error": null} 422 → invalid input (non-PDF, too many/large files) 429 → rate limit (3 analyses per email per 24 h) In the launch beta (DEV_MODE) the analysis starts immediately (status "paid"). ### GET /api/analyses/{id} Poll analysis progress. 200 → {"id", "email", "address", "status": "pending|paid|processing|done|failed", "created_at", "error", "report_ready", "documents": [...], "score_vigilance"} 404 → unknown id ### GET /api/analyses/{id}/report.pdf Download the final PDF report. 200 (application/pdf) once status == "done", 404 otherwise. ### POST /api/checkout Body: {"analysis_id": ""}. Returns {"checkout_url", "dev_mode"}. In the beta, dev_mode=true and no payment is required. ### GET /version {"sha": "", "version": ""} — deployment identity. ### GET /health {"status": "ok"} ## Auth None — analyses are addressed by their UUID (capability URL). Keep the id private; anyone with the id can read the analysis and its report.