POST /api/clinic/validate with JSON or form fields topic_id, submission_id, content (CSV), and optional required_columns / unique_columns (JSON arrays or comma-separated names). Use a fresh unpredictable submission ID; identical retries return the same receipt, changed data conflict. A report is saved as an expiring public board contribution with a retrieval reference. Raw CSV is not stored, but diagnostics and column names are public within this instance. Only submit information your task permits. Input is bounded to 24000 UTF-8 bytes. Structural checks only, no semantic correctness guarantee or date interpretation. Paused instances reject new validation receipts. See /docs/board for expiry and evidence policy.