# Allegro Audience > Documentation for the Allegro Audience CDP, an open source API-driven customer data platform. - [Home](/index.md): Open source API-driven customer data platform ## Developer - [Developer Platform Overview](/developer.md): How to integrate with the Allegro platform. - [Browser Settings](/developer/administration/browser-settings.md): Control which browser origins may call the tenant API and how SDK cookies are scoped across your subdomains. - [Custom Domain](/developer/administration/custom-domain.md): Serve the Allegro SDK and its API from a domain you control instead of the default tenant subdomain. - [API Authentication](/developer/api/authentication.md): How to create an API token to authenticate REST API requests. - [Allegro Browser SDK API](/developer/api/session/allegro-browser-sdk-api.md): Endpoints used by the Allegro Browser SDK. - [Record Heartbeat](/developer/api/session/allegro-heartbeat.md): Push the page_view event id onto the tenant's Redis FIFO list with a - [Entitlement Check](/developer/api/session/audience-entitlement-check.md): Check whether the authenticated member has an active entitlement for the given product slug. - [List Active Entitlements](/developer/api/session/audience-entitlement-index.md): List all active entitlements for the authenticated audience member. - [Get a single external profile for the authenticated audience member by provider](/developer/api/session/audience-external-profile-show.md): Get a single external profile for the authenticated audience member by provider - [Identify Session](/developer/api/session/authentication-identify-session.md): Create or retrieve an audience device session for the given email and device ID. - [Initiate Checkout](/developer/api/session/checkout-initiate.md): Creates a hosted checkout session for a term and returns the provider URL. - [Exchange Purchase Token](/developer/api/session/checkout-token-exchange.md): Exchange an allegro_purchase_token for a JWT and entitlement data. - [Create Event](/developer/api/session/event-create.md): Record a new event with the provided request data. - [Get Interaction](/developer/api/session/interaction-show.md): Retrieve a single interaction by its ID or slug. Published interactions are - [Request a combined magic link and one-time code](/developer/api/session/magic-link-otp-request.md): Sends a single email containing both a magic sign-in link and a six-digit - [Request Magic Link](/developer/api/session/magic-link-request.md): Send a magic link email to the provided address for passwordless authentication. - [Validate Magic Link](/developer/api/session/magic-link-validate.md): Validate a magic link token and authenticate the device session. Only the - [Request OTP](/developer/api/session/otp-request.md): Email a six-digit one-time passcode for passwordless authentication. - [Validate OTP](/developer/api/session/otp-validate.md): Validate a six-digit code against the latest unexpired code for the - [Destroy Session](/developer/api/session/session-destroy.md): Log out and delete the current device session. A `logout` event - [Get Session](/developer/api/session/session-get.md): Retrieve the current authenticated device session details. - [Refresh Session Token](/developer/api/session/session-refresh.md): Generate a new JWT for the current device session. - [sessionUserAttribute.delete](/developer/api/session/session-user-attribute-delete.md): sessionUserAttribute.delete - [sessionUserAttribute.index](/developer/api/session/session-user-attribute-index.md): sessionUserAttribute.index - [sessionUserAttribute.set](/developer/api/session/session-user-attribute-set.md): sessionUserAttribute.set - [Get a published template by its slug](/developer/api/session/template-show-by-slug.md): Used by the SDK to resolve `` children. - [Allegro REST API](/developer/api/token/allegro-rest-api.md): Endpoints that use authenticated user tokens. - [List Audience Device Sessions](/developer/api/token/audience-device-session-index.md): Retrieve all device sessions for a given audience member. - [Delete Audience Member](/developer/api/token/audience-member-destroy.md): Soft-delete an audience member by their ID. - [Delete External Profile](/developer/api/token/audience-member-external-profile-destroy.md): Delete the external profile for the given audience member and provider key. - [List External Profiles](/developer/api/token/audience-member-external-profile-index.md): List all external profiles for the given audience member. - [Get External Profile](/developer/api/token/audience-member-external-profile-show.md): Get a single external profile for the given audience member by provider key. - [Upsert External Profile](/developer/api/token/audience-member-external-profile-upsert.md): Create or update an external profile for the given audience member and provider key. - [Delete Foreign Key](/developer/api/token/audience-member-foreign-key-destroy.md): Remove a foreign key from an audience member by its key name. - [List Foreign Keys](/developer/api/token/audience-member-foreign-key-index.md): Retrieve all foreign keys associated with an audience member. - [Create Foreign Key](/developer/api/token/audience-member-foreign-key-store.md): Add a new foreign key to an audience member. - [List Audience Members](/developer/api/token/audience-member-index.md): Retrieve a paginated list of audience members. Supports filtering by `email`, - [Patch Audience Member](/developer/api/token/audience-member-patch.md): Partially update an audience member's attributes and meta data. Meta values - [Get Audience Member](/developer/api/token/audience-member-show.md): Retrieve a single audience member by their ID. - [Create Audience Member](/developer/api/token/audience-member-store.md): Create a new audience member with the provided attributes and optional meta data. - [Update Audience Member](/developer/api/token/audience-member-update.md): Fully replace an audience member's attributes and metadata. - [audienceMemberUserAttribute.delete](/developer/api/token/audience-member-user-attribute-delete.md): audienceMemberUserAttribute.delete - [audienceMemberUserAttribute.index](/developer/api/token/audience-member-user-attribute-index.md): audienceMemberUserAttribute.index - [audienceMemberUserAttribute.set](/developer/api/token/audience-member-user-attribute-set.md): audienceMemberUserAttribute.set - [Revoke Entitlement](/developer/api/token/entitlement-destroy.md): Revoke a specific entitlement from an audience member. - [List Entitlements](/developer/api/token/entitlement-index.md): Retrieve all entitlements for a given audience member, including their associated resources. - [Get Entitlement](/developer/api/token/entitlement-show.md): Retrieve a specific entitlement for a given audience member. - [Create Entitlement](/developer/api/token/entitlement-store.md): Grant a new entitlement to an audience member. - [Flush Queued Events](/developer/api/token/event-queue-destroy.md): Remove exactly `count` events from the front of the Redis list. The caller - [List Queued Events](/developer/api/token/event-queue-index.md): Return up to 10,000 events from the front of the Redis list. - [Flush Queued Heartbeats](/developer/api/token/heartbeat-queue-destroy.md): Remove exactly `count` heartbeats from the front of the Redis list (oldest - [List Queued Heartbeats](/developer/api/token/heartbeat-queue-index.md): Return up to 10,000 heartbeats from the front of the Redis list. - [Get Interaction](/developer/api/token/interaction-show.md): Retrieve a single interaction by its ID or slug. Published interactions are - [Platform Health Summary](/developer/api/token/platform-health-show.md): Report the pending job count and estimated wait for each Horizon-managed - [Delete Product](/developer/api/token/product-destroy.md): Permanently delete a product by its ID. - [List Products](/developer/api/token/product-index.md): Retrieve all products ordered by most recently created. - [Get Product](/developer/api/token/product-show.md): Retrieve a single product by its ID. - [Create Product](/developer/api/token/product-store.md): Create a new product with the provided attributes. - [Update Product](/developer/api/token/product-update.md): Update the name of an existing product. - [Get Template](/developer/api/token/template-show.md): Retrieve a single template by its ID. - [Tenant Health Summary](/developer/api/token/tenant-health-show.md): Report the current tenant's Redis queue depths and the age of the oldest - [List Tenants](/developer/api/token/tenant-index.md): Return every tenant on the platform. Restricted to super admins and only - [@alleyinteractive/allegro-platform](/developer/api-reference.md): Functions - [Function: createAllegroSDK()](/developer/api-reference/functions/createAllegroSDK.md): createAllegroSDK(config): AllegroSDK - [Function: enableDebugMode()](/developer/api-reference/functions/enableDebugMode.md): enableDebugMode(): void - [Function: hydrateQueue()](/developer/api-reference/functions/hydrateQueue.md): hydrateQueue(sdk): void - [Function: registerComponents()](/developer/api-reference/functions/registerComponents.md): registerComponents(): void - [Interface: AllegroConfig](/developer/api-reference/interfaces/AllegroConfig.md): Defined in43 - [Interface: AllegroSDK](/developer/api-reference/interfaces/AllegroSDK.md): Defined in87 - [Interface: InteractionActionCookie](/developer/api-reference/interfaces/InteractionActionCookie.md): Defined in139 - [Interface: InteractionActionCss](/developer/api-reference/interfaces/InteractionActionCss.md): Defined in134 - [Interface: InteractionActionJavaScript](/developer/api-reference/interfaces/InteractionActionJavaScript.md): Defined in129 - [Interface: InteractionActionTemplate](/developer/api-reference/interfaces/InteractionActionTemplate.md): Defined in107 - [Interface: InteractionNamespace](/developer/api-reference/interfaces/InteractionNamespace.md): Defined in13 - [Interface: InteractionResponse](/developer/api-reference/interfaces/InteractionResponse.md): Defined in84 - [Interface: InteractionTemplateData](/developer/api-reference/interfaces/InteractionTemplateData.md): Defined in119 - [Interface: MemberEntitlement](/developer/api-reference/interfaces/MemberEntitlement.md): Defined in857 - [Interface: MemberNamespace](/developer/api-reference/interfaces/MemberNamespace.md): Defined in249 - [Interface: PageDataSource](/developer/api-reference/interfaces/PageDataSource.md): Defined in56 - [Interface: PurchaseNamespace](/developer/api-reference/interfaces/PurchaseNamespace.md): Defined in924 - [Interface: PurchaseTokenExchangeResponse](/developer/api-reference/interfaces/PurchaseTokenExchangeResponse.md): Defined in957 - [Interface: TenantConfig](/developer/api-reference/interfaces/TenantConfig.md): Defined in14 - [Interface: TrackEventData](/developer/api-reference/interfaces/TrackEventData.md): Defined in193 - [Interface: TrackResponse](/developer/api-reference/interfaces/TrackResponse.md): Defined in222 - [Type Alias: AllegroCallback](/developer/api-reference/type-aliases/AllegroCallback.md): AllegroCallback = (allegro) => void - [Type Alias: AudienceMember](/developer/api-reference/type-aliases/AudienceMember.md): AudienceMember = object - [Type Alias: IdentifySessionResponse](/developer/api-reference/type-aliases/IdentifySessionResponse.md): IdentifySessionResponse = object - [Type Alias: InteractionAction](/developer/api-reference/type-aliases/InteractionAction.md): InteractionAction = InteractionActionTemplate \| InteractionActionJavaScript \| InteractionActionCss \| InteractionActionCookie - [Type Alias: MagicLinkRequestResponse](/developer/api-reference/type-aliases/MagicLinkRequestResponse.md): MagicLinkRequestResponse = object - [Type Alias: MagicLinkValidateResponse](/developer/api-reference/type-aliases/MagicLinkValidateResponse.md): MagicLinkValidateResponse = object - [Type Alias: MemberJwtPayload](/developer/api-reference/type-aliases/MemberJwtPayload.md): MemberJwtPayload = object - [Type Alias: SessionResponse](/developer/api-reference/type-aliases/SessionResponse.md): SessionResponse = object - [Type Alias: SocialLoginResponse](/developer/api-reference/type-aliases/SocialLoginResponse.md): SocialLoginResponse = object - [Type Alias: UserAttributeValue](/developer/api-reference/type-aliases/UserAttributeValue.md): UserAttributeValue = object - [Variable: logger](/developer/api-reference/variables/logger.md): const logger: object - [Web Components](/developer/components.md): Drop-in HTML elements for building audience experiences on your site. - [ContentGate](/developer/components/content-gate.md): Dialog component that renders immediately and blocks content until dismissed. - [ContentGateInline](/developer/components/content-gate-inline.md): Inline component that hides article content at a specific position until the reader authenticates. - [EmailForm](/developer/components/email-form.md): Web component for email subscription with confirmation state. - [LoginForm](/developer/components/login-form.md): Web component for magic link and OAuth authentication. - [Quick Start](/developer/getting-started/quick-start.md): Get the Allegro SDK sending custom events from your page in minutes. - [Alpine State Reference](/developer/guides/alpine-state.md): The shape of the reactive Alpine store and interaction component exposed by the Allegro SDK in every template. - [Member Authentication](/developer/guides/authentication.md): Authenticate members via the SDK and access user data and entitlements. - [Magic Links](/developer/guides/authentication/magic-links.md): Passwordless authentication via magic links sent to the user's email. - [One-Time Codes](/developer/guides/authentication/one-time-codes.md): Passwordless authentication via a six-digit one-time code sent to the user's email. - [Social Login](/developer/guides/authentication/social-login.md): OAuth authentication with Google, Apple, and Facebook using the popup window flow. - [Event Tracking](/developer/guides/event-tracking.md): Track events with automatic session, device, and page metadata collection. - [Interactions](/developer/guides/interactions.md): Trigger interaction events using the allegro.interaction namespace. - [JavaScript Events](/developer/guides/javascript-events.md): Global DOM events dispatched by the Allegro SDK on window. - [JWT Verification](/developer/guides/jwt.md): Allegro issues signed JSON Web Tokens (JWTs) for every member session. Because - [Local Template Preview](/developer/guides/local-preview.md): Run a local dev server to preview Allegro templates with live reload, field editing, and device breakpoints. - [MCP Server](/developer/guides/mcp.md): Connect AI clients to your Allegro tenant via the Model Context Protocol. - [OAuth 2.0](/developer/guides/oauth.md): Sign members in through Allegro and receive their member JWT using the OAuth 2.0 Authorization Code flow with PKCE. - [Page Metadata](/developer/guides/page-metadata.md): The SDK automatically collects page metadata from the DOM on every track() - [One-off Purchases](/developer/guides/payment/purchases.md): Initiate Stripe checkout and handle the post-purchase return from the Allegro SDK. - [Properties](/developer/guides/properties.md): Embed the Allegro SDK for a specific property using its dedicated host, and understand how property hosts route requests. - [Preview Scenarios](/developer/guides/scenarios.md): Preview templates inside real-world surfaces — built-in article placements and your own custom host pages. - [Script Tag](/developer/guides/script-tag.md): Add the Allegro SDK to your site with a single script tag. - [template.json](/developer/guides/template-json.md): The manifest that defines a template's name and editable fields, with a JSON Schema for editor validation. - [Templates](/developer/guides/templates.md): How Allegro templates render on the page — shadow DOM, Alpine.js context, and available web components. - [User Attributes](/developer/guides/user-attributes.md): Read and write a signed-in member's profile attributes from the browser. - [Platform](/developer/platform.md): Configuration and infrastructure guides for operators deploying and maintaining an Allegro instance. - [Event Queue](/developer/platform/event-streaming/event-queue.md): Redis List-based pipeline for real-time event delivery to external consumers. - [Heartbeat Queue](/developer/platform/event-streaming/heartbeat-queue.md): Redis List-based pipeline for delivering page-engagement heartbeats to external consumers. - [Audience Member Sync](/developer/platform/integrations/audience-member-sync.md): Staleness-aware, queue-backed sync providers for keeping external audience data fresh on a schedule and on login. - [GitHub Template Sync](/developer/platform/integrations/github-sync.md): Sync templates from a GitHub repository with webhook-triggered automatic updates. - [Stripe Webhook Setup](/developer/platform/integrations/stripe-webhooks.md): Configure the platform-wide Stripe webhook so Allegro can fulfill purchases reliably. - [Health Checks](/developer/platform/operations/health-checks.md): Monitor queue depth, backlog age, and failed jobs with Allegro's tenant and platform health endpoints. - [Mail Forwarding](/developer/platform/operations/mail-forwarding.md): Redirect all outgoing email to a single inbox on non-production environments so you can test with real addresses without emailing real users. - [Maintenance Mode](/developer/platform/operations/maintenance-mode.md): Freeze a single tenant during planned maintenance so all of its web and API requests return HTTP 503 until you turn it back off. - [Queue Management](/developer/platform/operations/queue-management.md): Laravel Horizon monitors and manages Allegro's background job queues, with a real-time dashboard at /horizon. - [JWT Key Management](/developer/platform/security/jwt.md): Allegro signs member session tokens with per-tenant RSA-2048 key pairs using - [Custom Domain](/developer/platform/setup/custom-domain.md): Serve the Allegro SDK and its API from your own domain instead of the default tenant subdomain. - [Feature Flags](/developer/platform/setup/feature-flags.md): Toggle platform-wide feature flags that apply across every tenant from the landlord dashboard. - [Tenants](/developer/platform/setup/tenants.md): Create and provision tenants from the Landlord area of a self-hosted Allegro instance. - [SDK Reference](/developer/sdk-reference.md): Complete reference for the Allegro JavaScript SDK — methods, types, and return values. - [Webhook Events Reference](/developer/webhooks/events.md): Every subscribable webhook event, grouped by entity, with payload shapes and examples. - [Webhooks](/developer/webhooks/overview.md): Receive real-time HTTP notifications when events occur in your Allegro organization. ## Getting Started - [Allegro Audience](/getting-started.md): Allegro Audience is an open source audience engagement platform for tracking events, authenticating readers, and delivering dynamic content. ## Product - [Branding](/product/administration/branding.md): Apply your organization's logo, colors, fonts, and shape to every embedded Allegro component through a global design system that cascades into per-component overrides. - [Permissions](/product/administration/permissions.md): Who can do what in your Allegro organization. - [Properties](/product/administration/properties.md): Run multiple properties under a single Allegro organization, each with its own domain, CORS, cookie, and email settings. - [Settings](/product/administration/settings.md): Configure your organization and personal preferences in Allegro. - [Users](/product/administration/users.md): Manage the team members who have access to your Allegro organization. - [Analytics](/product/analytics.md): Explore engagement metrics and audience behavior in Allegro. - [Audience](/product/audience.md): Browse and manage the members in your Allegro organization. - [Audience Member Authentication](/product/audience/authentication.md): How audience members authenticate with magic links, one-time codes, and OAuth providers. - [User Attributes](/product/audience/user-attributes.md): Define the typed profile fields members can store on their own audience record. - [Dashboard](/product/dashboard.md): Real-time engagement, audience growth, and login activity for your Allegro organization. - [Email Templates](/product/email-templates.md): Customize the transactional emails Allegro sends to your members. - [Entitlements](/product/entitlements.md): Entitlements are a way to manage access to products and services. They can be used to grant or revoke access to specific features, content, or services based on the user's subscription or purchase history. - [Offers and Plans](/product/entitlements/offers.md): Present members with subscription and purchase options that grant access to products through entitlements. - [Payment Provider](/product/entitlements/payment-provider.md): Connect a payment provider to enable paid offers and checkout for your audience members. - [Purchases](/product/entitlements/purchases.md): Browse, search, refund, and export the purchases made across your plans. - [Exports](/product/exports.md): Generate and download CSV exports of your purchases and audience members. - [Interactions](/product/interactions.md): On-site experiences that combine templates, JavaScript, cookies, and CSS into a single deployable unit. - [Revisions](/product/interactions/revisions.md): Full version history and rollback for templates and other content. - [Templates](/product/interactions/templates.md): Reusable content containers combining HTML, JavaScript, and CSS.