OptProof documentation
OptProof records consent wherever you collect it, gives every decision a signed receipt, and tells your other tools when someone changes their mind. These docs cover the widget, the server API, webhooks, connectors and how anyone can verify a receipt.
Start here#
- Quick startCreate a property, add one script tag and see your first consent in the log.
- Web widgetLayouts, inline form consent, script blocking, Google Consent Mode and CSP.
- Server APIRecord and check consent from your backend with a secret key.
- Receipts and verificationThe exact bytes we hash and sign, and how to check them yourself.
How the pieces fit#
- Capture. The widget, your backend, a QR poster, a kiosk, WhatsApp or a CSV import sends a decision to the API.
- Record. The API appends an event to the property's hash chain and signs a receipt. Nothing in the receipt identifies the person.
- Propagate. Webhooks and connectors tell your CRM, store and messaging tools about the change.
- Prove. A daily anchor fixes the chain in write-once storage, and anyone can check a receipt at
verify.optproof.in.
Base URLs#
| What | URL |
|---|---|
| API | https://api.optproof.in/v1 |
| Widget script | https://cdn.optproof.in/w.js |
| Receipt verifier | https://verify.optproof.in |
| Public signing keys (JWKS) | https://api.optproof.in/.well-known/optproof-keys.json |
bash
curl https://api.optproof.in/healthNote
Test keys (
pk_test_, sk_test_) write to a separate sandbox chain. Nothing you do with them shows up in your live consent log.