API integration example

Use this flow from your posting application before your real submit handler writes to storage or sends mail.

POST /api/v1/check
{
  "site_id": "main-site",
  "endpoint": "contact_form",
  "client_ip": "203.0.113.10",
  "user_agent": "Mozilla/5.0",
  "email": "person@example.com",
  "cookie_id": "browser-123",
  "payload_hash": "...",
  "js_passed": true
}
if decision == PASS:
    proceed with real submit, include decision_token
elif decision == TRIGGER:
    show challenge, then call /api/v1/verify-trigger
else:
    stop and show retry-later message