# Cookie consent

Probo provides a cookie-consent service and the `@probo/cookie-banner` client package. Together they publish a versioned banner, collect a visitor’s choices, and control configured tracker resources.

## System model

- A **banner** contains defaults, presentation settings, and translations.
- **Categories** group trackers by purpose. Necessary and uncategorized categories have system behavior; custom categories can be added and reordered.
- **Tracker patterns** identify resources and cookies. Tracker resources can be moved between categories.
- A **published version** is the configuration delivered to visitors.
- A **consent record** stores the action, category choices, banner version, client context, and timestamp reported to Probo.

Draft changes do not alter the configuration already shown to visitors. Publish a new version after reviewing categories, translations, resources, and defaults.

## Browser behavior

The JavaScript client fetches published configuration from `/api/cookie-banner/v1`, resolves language, regulation, and layout (presentation), reads existing consent, and renders the selected UI. It can block configured scripts, iframes, images, and other resources until their category is allowed.

The client shows the least the visitor's jurisdiction allows. A banner opens on first load only where a law requires a proactive disclosure — opt-in regimes such as the GDPR, plus Mexico's visible-notice rule. Everywhere else nothing opens and the `<probo-settings-link>` you place in your footer carries the visitor's choices, which is why that link is required on every embed.

The package supports a ready-made banner and lower-level web components for custom interfaces. The Consent Manager API exposes current choices and change events to other application code.

## Privacy and legal responsibility

Geolocation, presentations (opt-in, opt-out, and notice), Global Privacy Control handling, version history, and consent records help teams implement a consent program. They do not determine which law applies, classify every tracker automatically, or guarantee legal compliance. The site operator remains responsible for tracker inventory, category purpose, copy, retention, and legal review.

## Next steps

- [Geolocation and regulations](/docs/product/cookie-banner/geolocation) — Understand how location determines presentation and consent mode
- [JavaScript SDK](/docs/product/cookie-banner/javascript-sdk) — Reference installation forms, components, events, and language behavior
- [Consent Manager API](/docs/product/cookie-banner/consent-manager) — Read consent and subscribe to changes from application code
- [Blocking resources](/docs/product/cookie-banner/blocking-resources) — Control third-party resources according to category consent

## Automation

- [CLI cookie banner](/docs/developers/cli/commands/cookie-banner) — Manage banners and published versions with prb
- [MCP cookie consent](/docs/developers/api/mcp/tools/catalog/cookie-consent) — Operate cookie consent from supported AI tools
- [n8n Cookie Banner](/docs/developers/api/n8n/resources/cookie-banner) — Automate banner configuration in n8n
