Skip to main content

In-App Campaigns

Product Boundary

In-app campaigns are platform-operated product experiences. Campaign design and copy are authored in code; the Platform surface controls delivery. This is intentionally not a content or layout builder.

The first registered campaign is welcome_beta, an organization-surface onboarding story. The same delivery model can later support code-authored announcements without giving operators arbitrary presentation controls.

Operator Contract

Platform administrators can:

  • preview the exact product experience
  • launch or resume a campaign
  • pause automatic delivery
  • create a new delivery version so eligible users see it again
  • review seen and completed counts for the current delivery

Creating a new delivery version is explicit because it interrupts users who may already have completed an earlier delivery.

Recipient Contract

  • Live campaigns appear automatically for an eligible authenticated organization user.
  • A user receives each delivery version at most once automatically.
  • Closing records a dismissed receipt; finishing records a completed receipt.
  • Manual replay remains available from the organization account menu and does not change delivery metrics.
  • Campaign eligibility is persisted by user, campaign key, and delivery version rather than browser storage.

Current Presentation

welcome_beta uses the shared animated theme backdrop with a readable content panel, four localized slides, reduced-motion behavior inherited from the theme backdrop, keyboard-accessible dialog navigation, and links to What’s new, Terms, and Privacy.

Deliberate Non-Goals

  • no drag-and-drop builder
  • no arbitrary HTML or visual editing
  • no organization-authored announcements
  • no portal campaign delivery
  • no element-anchored guided tours
  • no legal acceptance implied by completing or dismissing a campaign