Publieke API
De endpoints die de loader en jouw CMS kunnen aanroepen.
GET /api/public/config/[websiteId]
Geeft de volledige banner-DTO terug: config, vertalingen, categorieën, geo-regels en uitsluitingslijsten. CORS is permissief (*); responses worden 60s aan de edge gecachet met een s-maxage van 300s.
POST /api/public/consent-event
Ontvangt een consent-event van de loader. Valideert de payload met Zod, bepaalt het land via edge-geo-headers, hasht het IP met een per-website pepper en schrijft naar consent_events. Slaat nooit ruwe IP-adressen op.
GET /api/public/cookie-declaration/[websiteId]
Geeft de nieuwste verklaring terug als JSON, HTML of Markdown afhankelijk van de ?format=-query. Gebruik dit om de verklaring op de cookiepagina van je klant te embedden.
GET /api/export/consent/[websiteId]?range=30d
Geauthenticeerde CSV-export van dagelijkse consent-statistieken, via RLS beperkt tot je eigen organisatie.