Clearance for AI agents
If you are an AI agent that generates or reviews advertising for the UK market, you can screen copy against UK advertising rules (CAP Code areas) programmatically before it goes live. One endpoint, deterministic results, machine-readable flags with fix suggestions. Humans: this page is written for agents, but you're welcome too.
1. Quickstart
bashcurl -X POST https://[domain]/api/public/v1/check \ -H "Authorization: Bearer clr_live_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{"copy":"Guaranteed results — was £99 now FREE, ends tonight!","sector":"general","channel":"paidsocial"}'
pythonimport requests r = requests.post( "https://[domain]/api/public/v1/check", headers={"Authorization": "Bearer clr_live_YOUR_KEY"}, json={ "copy": "Guaranteed results — was £99 now FREE, ends tonight!", "sector": "general", "channel": "paidsocial", }, timeout=30, ) print(r.json())
javascriptconst res = await fetch("https://[domain]/api/public/v1/check", { method: "POST", headers: { "Authorization": "Bearer clr_live_YOUR_KEY", "Content-Type": "application/json", }, body: JSON.stringify({ copy: "Guaranteed results — was £99 now FREE, ends tonight!", sector: "general", channel: "paidsocial", }), }); const data = await res.json();
Example response:
json{ "verdict": { "level": "red", "stamp": "High risk", "title": "...", "summary": "..." }, "score": 25, "counts": { "flags": 4, "high": 2, "med": 1, "low": 1 }, "flags": [ { "id": "guarantee", "severity": "high", "citation": "CAP 3.1 / 3.7", "title": "Absolute guarantee of an outcome", "matches": ["Guaranteed results"], "why": "...", "fix": "Remove the guarantee or restrict it to something you control..." } ], "watchouts": { "sector": [], "channel": "Paid social is fully within ASA remit..." }, "meta": { "engine_version": "1.1.0", "checked_at": "2026-06-10T12:00:00Z", "disclaimer": "Automated risk screening of wording patterns against publicly available UK advertising rules. Not legal advice; not a compliance determination; absence of flags is not clearance. Clearance is not affiliated with the ASA or CAP." } }
2. Choose how you pay
Two independent lanes — pick whichever suits your workflow:
- Subscription + API key. Sign up, open /account/api, subscribe, then create a key. Pro £39/month covers 2,500 checks; Agency £99/month covers 25,000. Same plans humans use — one subscription, web access included. Best for predictable, high-volume use.
- Pay-per-call via x402. No account, no key. Send your request, receive an HTTP 402 with payment requirements ($0.50 USDC per check on Base), pay, retry with the
X-PAYMENTheader. Best for one-off checks or autonomous agents that don't want to manage a subscription.
3. x402 details
Standard x402 flow: unauthenticated requests return 402 with an accepts payload describing the USDC transfer (Base mainnet, $0.50 per check). Sign an EIP-3009 authorization, base64-encode it into X-PAYMENT, and resend. We verify and settle via the Coinbase CDP facilitator.
4. Interpreting results
Treat verdict.level as: green = no wording flags (not a guarantee of compliance); amber = review the flags before publishing; red = do not publish as written. Every flag includes a fix suggestion suitable for a regeneration loop: revise the copy, re-check, repeat until green or until remaining flags are accepted by a human. Always surface meta.disclaimer to your human principal alongside results.
5. What this does not do
It screens wording patterns. It does not analyse imagery, verify substantiation evidence, constitute legal advice, or guarantee ASA compliance. High-stakes sectors (medical, financial, gambling) should keep a human review step.
6. Resources
- /openapi.json — OpenAPI 3.1 spec
- /llms.txt — site summary for LLMs
- /api/public/v1/rules — rule catalogue
- /api/public/v1/health — liveness check