Skip to main content

Ticketmaster Integration

Integration with the Ticketmaster Discovery API.

Overview

Ticketmaster is used for:

  • Event data synchronization
  • Event discovery
  • Event matching with inventory

Authentication

Ticketmaster uses API key authentication:

  • TICKETMASTER_API_KEY - API key for Ticketmaster Discovery API

API Integration

sprout_backend

The backend integrates with Ticketmaster for:

  • Event data queries
  • Event matching
  • Event details

sprout_etl

The ETL service uses Ticketmaster for:

  • Event synchronization
  • Bulk event data fetching
  • Event indexing in MeiliSearch

Data Flow

  1. API Calls: Services call Ticketmaster Discovery API
  2. Data Processing: Event data normalized and processed
  3. Storage: Events stored in PostgreSQL
  4. Indexing: Events indexed in MeiliSearch for search
  5. Matching: Events matched with Skybox inventory

OpenAPI Types

TypeScript types are generated from Ticketmaster OpenAPI schema:

# Generate types
bun run gen:ticketmaster:openapi

Types are stored in:

  • sprout_backend/src/lib/types/ticketmaster-discovery.schema.d.ts
  • sprout_etl/src/lib/types/ticketmaster-discovery.schema.d.ts

Configuration

Ticketmaster API key is stored in Doppler:

  • TICKETMASTER_API_KEY

Rate Limiting

Ticketmaster API has rate limits. Services implement:

  • Rate limiting with p-ratelimit
  • Retry logic with exponential backoff
  • Request queuing

References