clone

a terminal ui for alamo drafthouse showtimes, as movie cards or a timeline of every screen

main
showings / schema.md
schema.md 12.5K source

Alamo Drafthouse Schedule/Venue API Response Schema

This document provides a comprehensive breakdown of the JSON response structure from the Alamo Drafthouse theater schedule/venue API.

https://drafthouse.com/s/mother/v2/schedule/venue/westminster


1. Top-Level Structure

The response has a single top-level key data containing all information:

{
  "data": { ... }
}

Top-Level Keys in data

Key Type Description
presentations Array List of movie/show presentations (47 items)
relatedPresentations Array Related presentations (empty in this response)
market Array Market/region information (Denver area)
sessions Array Showtime sessions (209 items)
presentationAttributes Array Attributes like "first-run", "Alamo Exclusive" (4 items)
sessionAttributes Array Session types like "Baby Day", "Kid Friendly" (6 items)
formats Array Screening formats like "2D Digital", "The Big Show" (2 items)
agePolicies Array Age rating policies (5 items)
queues Array Queue information (empty in this response)

2. Presentations

The presentations array contains 47 items, each representing a movie or special event screening.

Presentation Object Structure

Field Type Description
slug String Unique identifier for the presentation (e.g., "wuthering-heights-2026")
legacySlug String|null Legacy identifier for backward compatibility
show Object Core movie/show information
event Object|null Special event details (if applicable)
eventType String|null Type of special event
formatSlugs Array[String] Screening formats (e.g., ["2d-digital", "the-big-show"])
presentationAttributeSlugs Array[String] Presentation tags (e.g., ["first-run", "alamo-exclusive"])
associatedPresentationSlugs Array[String] Related presentations (e.g., book club screenings)
openingDateClt String|null Opening date in local time
openingDateDisplay String|null Display-friendly opening date
superTitle String|null Additional title context
isHidden Boolean Whether the presentation is hidden
primaryCollectionSlug String|null Collection grouping
isAvailableForPersonalTheater Boolean Personal theater availability

Nested: show Object

The show object contains the core movie metadata:

Field Type Description
slug String Show identifier
legacySlug String|null Legacy identifier
title String Movie title (e.g., "Wuthering Heights (2026)")
vistaHoCodes Array[String] Vista POS internal codes (e.g., ["A000035278", ...])
headline String Marketing headline/synopsis
landscapeHeroImage Object Wide aspect ratio hero image
portraitHeroImage Object Portrait aspect ratio hero image
posterImages Array[Object] Movie poster images
certification String MPAA rating (e.g., "R", "PG", "PG-13", "NR")

Image Object Structure

{
  "uri": "https://img-assets.drafthouse.com/images/shows/...",
  "altText": "WUTHERING HEIGHTS (2026)"
}
Field Type Description
uri String Full URL to the image
altText String Accessibility text

Nested: event Object (when present)

Special events like Book Club screenings have additional metadata:

Field Type Description
slug String Event identifier
title String Event title (may contain HTML like <show-title>)
eventTypeSlug String Type of event (e.g., "book-club-screening")
eventTypeTitleOverride String|null Custom event type title
headline String Event marketing headline
description String Full event description (HTML)

3. Sessions

The sessions array contains 209 showtime entries, linking presentations to specific theaters and times.

Session Object Structure

Field Type Description
cinemaId String Theater identifier (e.g., "0403")
sessionId String Unique session ID (e.g., "78490")
presentationSlug String Reference to presentation
legacySlug String Legacy presentation reference
status String Session status ("ONSALE" or "PAST")
businessDateClt String Business date in local time (ISO 8601: "2026-02-17")
showTimeClt String Showtime in local time (ISO 8601: "2026-02-17T19:15:00")
cinemaTimeZoneName String Timezone (e.g., "America/Denver")
showTimeUtc String Showtime in UTC (ISO 8601: "2026-02-18T02:15:00")
ticketTypesLoyaltyCount Integer Loyalty ticket availability
ticketTypesVoucherCount Integer Voucher ticket availability
ticketTypesNormalCount Integer Standard ticket availability
reservedSeating Boolean Whether seating is reserved
screenNumber String Screen/theater number (e.g., "7")
formatSlug String Format being shown (e.g., "2d-digital")
isClosedCaptioningAvailable Boolean CC availability
isDescriptiveAudioAvailable Boolean Audio description availability
isAssistedListeningAvailable Boolean Assistive listening availability
sessionAttributeSlugs Array[String] Session tags (e.g., ["BD", "KF"])
recognitionIds Array Recognition/tracking IDs
agePolicySlug String Age policy (e.g., "rated-pg-13")
isHidden Boolean Whether session is hidden
ticketingExperience String Ticket flow type (e.g., "DEFAULT")

4. Market

The market array contains region/theater group information (currently Denver area).

Market Object Structure

Field Type Description
id String Market ID (e.g., "0400")
slug String Market identifier (e.g., "denver")
name String Display name (e.g., "Denver Area")
status String Market status ("OPEN")
subscriptionProgramStatus String Subscription program status ("OPEN")
isOpenAccessSeasonPassMarket Boolean Season pass availability
isOpenForBusiness Boolean Whether market is operational
isFoodPreorderRequired Boolean Food preorder requirement
foodPreorderAvailability String Food preorder status ("NONE")
isMaxSafetyOperation Boolean Safety operation flag
cinemas Array[Object] List of theaters in this market
marketStrings Array[Object] Localized policy descriptions

Nested: cinema Object

Each cinema represents a physical theater location:

Field Type Description
id String Cinema ID (e.g., "0402")
loyaltyCinemaId String Loyalty program ID
slug String Cinema identifier (e.g., "sloans-lake")
name String Theater name (e.g., "Sloans Lake")
status String Cinema status ("OPEN")
timeZoneName String Local timezone
latitude Number GPS latitude
longitude Number GPS longitude
street1 String Street address
street2 String|null Address line 2
city String City
state String State code (e.g., "CO")
postalCode String ZIP code
phone String Phone number
email String Contact email
heroImageUrl String Theater image URL
googleMapsUrl String Google Maps link
appleMapsUrl String Apple Maps link
attachedBar Object Bar information
isClosedCaptioningAvailable Boolean CC availability
isDescriptiveAudioAvailable Boolean Audio description availability
isAssistedListeningAvailable Boolean Assistive listening availability
menus Object Food menu PDF URLs
foodPreorderAvailability String Food preorder status
parkingNotice String Parking information (HTML)
postPurchaseNotice Object Post-purchase information
isWageNoticeDisplayed Boolean Wage notice display flag

Attached Bar Object

{
  "name": "BarFly",
  "websiteUrl": "https://drafthouse.com/denver/theater-bar/sloans-lake"
}
{
  "theaterMenuPdf": "https://crafthouse-assets-prod.s3.amazonaws.com/files/venues/..."
}

Market Strings Object

Localized accessibility and policy descriptions:

{
  "key": "closedCaptioning",
  "value": "The personal closed captioning device..."
}

Keys include: closedCaptioning, descriptiveAudio, assistedListening, latePolicy


5. Presentation Attributes

Presentation attributes describe special presentation types.

Field Type Description
slug String Attribute identifier
name String Display name
description String Attribute description
isUserVisible Boolean Whether shown to users
isUserFilterable Boolean Whether filterable

Values in this response:

  • first-run - New Releases
  • alamo-exclusive - Only at the Alamo
  • advance-sales - Advance Sales
  • family-friendly - Family Friendly

6. Session Attributes

Session attributes describe special session types (Baby Day, Kid Friendly, etc.).

Field Type Description
slug String Attribute identifier
name String Display name
description String Attribute description
isUserVisible Boolean Whether shown to users
isUserFilterable Boolean Whether filterable

Values in this response:

  • BD - Baby Day Show
  • Digital - Digital
  • Hidden - Invite Only
  • KF - Kid Friendly
  • QR Menu 4 - Menu Add Special Screening 4
  • QR Stay On - QR Ordering Stays On

7. Formats

Screening format definitions.

Field Type Description
slug String Format identifier
vistaSlug String|null Vista POS code
title String Display title
headline String Marketing headline
description String Format description (HTML)
titleTreatmentImage Object Format logo image
heroImage Object|null Hero image

Values in this response:

  • 2d-digital - Standard 2D digital projection
  • the-big-show - Premium Large Format (PLF)

8. Age Policies

Age rating policy definitions.

Field Type Description
slug String Policy identifier
name String Display name
description String Policy rules

Values in this response:

  • all-ages - All Ages
  • rated-pg - Rated PG
  • rated-pg-13 - Rated PG-13 (Standard)
  • rated-pg-adult-focus - Rated PG with Adult Focus
  • rated-r - Rated R

9. Patterns and Observations

Data Relationships

  1. Presentation to Session: Sessions reference presentations via presentationSlug field
  2. Session to Cinema: Sessions reference theaters via cinemaId
  3. Session to Format: Sessions use formatSlug referencing the formats array
  4. Session to Age Policy: Sessions use agePolicySlug referencing agePolicies
  5. Presentation to Attributes: Presentations use presentationAttributeSlugs referencing presentationAttributes

Date/Time Handling

  • Two timezone-aware time fields are provided:
    • showTimeClt - Local time (client timezone)
    • showTimeUtc - UTC time
  • Sessions span multiple business dates (data shows dates from 2026-02-14 to 2026-03-28)
  • Session status indicates availability: "ONSALE" or "PAST"

Availability Tracking

  • Ticket availability is tracked via three fields:
    • ticketTypesLoyaltyCount - Loyalty member tickets
    • ticketTypesVoucherCount - Voucher holder tickets
    • ticketTypesNormalCount - Standard tickets

Accessibility Features

  • Three accessibility options tracked at both cinema and session level:
    • Closed Captioning
    • Descriptive Audio
    • Assisted Listening

Image Types

  • Landscape Hero: 1920x1080 - Used for wide displays
  • Portrait Hero: 1080x1440 - Used for mobile/vertical
  • Poster: 1080x1620 - Standard movie poster
  • Title Treatment: SVG format - Format logos

Certification Values

Movie ratings found in data: R, PG, PG-13, NR (Not Rated)


10. Summary Statistics

Metric Count
Total Presentations 47
Total Sessions 209
Total Cinemas 3
Total Formats 2
Total Presentation Attributes 4
Total Session Attributes 6
Total Age Policies 5
Total Market Strings 4

Generated from Alamo Drafthouse Schedule/Venue API response