IBDB APIibdb.com ↗
Access current and upcoming Broadway productions from IBDB, including opening/closing dates, theatres, current cast, and opening-night cast via 2 endpoints.
What is the IBDB API?
The IBDB API covers current and upcoming Broadway productions through 2 endpoints, returning production names, slugs, dates, theatres, and cast data sourced from the Internet Broadway Database. The list_productions endpoint returns a full listing of running or announced productions in one call, and get_production returns per-production details including 9 named fields such as opening_date, closing_date, current_cast, and production_type.
curl -X GET 'https://api.parse.bot/scraper/d15c098b-a884-48d8-9b1f-2e1e2888905c/list_productions?status=current' \ -H 'X-API-Key: $PARSE_API_KEY'
Returns the Broadway (NYC) productions IBDB lists as either currently running or upcoming, one row per production with its name and the production_slug that get_production consumes. One page load; not paginated (the site shows the full list at once). Dates and casts are not on the listing and require get_production per production.
| Param | Type | Description |
|---|---|---|
| status | string | Which listing to return: productions currently running, or announced/upcoming productions. |
{
"type": "object",
"fields": {
"count": "number of productions returned",
"status": "the listing requested (current or upcoming)",
"productions": "array of productions; each has production_slug (identifier for get_production), name, and url (IBDB production page)"
},
"sample": {
"data": {
"count": 19,
"status": "upcoming",
"productions": [
{
"url": "https://www.ibdb.com/broadway-production/860-547321",
"name": "860",
"production_slug": "860-547321"
},
{
"url": "https://www.ibdb.com/broadway-production/a-few-good-men-547369",
"name": "A Few Good Men",
"production_slug": "a-few-good-men-547369"
}
]
},
"status": "success"
}
}About the IBDB API
What the API Returns
The IBDB API gives structured access to Broadway production data from the Internet Broadway Database. list_productions accepts an optional status parameter — current or upcoming — and returns an array of productions, each with a name, a url, and a production_slug. That slug is the input to get_production and serves as the stable identifier across both endpoints.
Production Detail Fields
get_production accepts a production_slug and returns a detailed record for one Broadway production. Key fields include opening_date and closing_date (ISO date strings; closing_date is null for open-ended runs), first_preview_date, has_opened (a boolean derived from whether the opening date is today or earlier), production_type (e.g. "Broadway Musical" or "Broadway Play"), and production_kind (e.g. "Original" or "1996 Revival"). The theatres field is an array of venue names the production has played.
Cast Data
Cast information is split into two arrays. current_cast lists the cast as currently shown on the production's IBDB page, with each entry containing name, person_slug, role, role_dates, and note. opening_cast follows the same shape but reflects the company as of opening night. Both arrays may be empty if the production page lists no cast. The person_slug field can identify individual performers across multiple productions.
Coverage Scope
Both endpoints cover Broadway (NYC) productions only, consistent with what IBDB lists under its current and upcoming shows. The listing is not paginated — list_productions returns all matching productions in a single response. Productions that have closed are not surfaced by list_productions, though their detail pages remain accessible via get_production if the slug is known.
The IBDB API is a managed, monitored endpoint for ibdb.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when ibdb.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official ibdb.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Check whether a specific Broadway show is still running by reading
closing_dateandhas_openedfromget_production. - Build a Broadway calendar app that lists upcoming productions and their
opening_datefromlist_productionswithstatus=upcoming. - Identify which theatre venues are currently active by aggregating the
theatresfield across all current productions. - Track a performer's Broadway appearances by collecting
person_slugvalues fromcurrent_castandopening_castacross multiple productions. - Compare a show's
current_castagainst itsopening_castto identify cast changes since opening night. - Classify productions by type and era using
production_typeandproduction_kindfor Broadway research or data journalism. - Alert users when a show announces a closing date by monitoring
closing_datechanging fromnullto an ISO date string.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does IBDB offer an official developer API?+
What does `list_productions` return, and how does the `status` parameter affect it?+
status parameter (or with status=current), the endpoint returns productions IBDB currently lists as running, each with a name, production_slug, and url. Setting status=upcoming returns announced productions not yet open. The two lists are mutually exclusive in what the endpoint returns for a given call. Results are not paginated — the full matching list comes back in one response.What does `closing_date` being `null` mean?+
null closing_date means IBDB has not set an end date for that production — typically an open-ended run with no announced closing. Once a closing date is announced or the show closes, the field returns an ISO date string.Does the API return historical or closed Broadway productions?+
list_productions only surfaces productions IBDB currently lists as running or upcoming, so closed shows do not appear there. get_production can retrieve details for any production if the slug is already known, but there is no search or lookup endpoint to discover closed productions by name or date range. You can fork this API on Parse and revise it to add a historical search or lookup endpoint.