Skip to main content

Overview

The Enter Theatre API provides programmatic access to West End theatre data. This RESTful API allows you to retrieve, create, update, and delete information about shows, theatres, people, productions, cast members, and roles.

Base URL

https://entertheatre.com/api

Available Resources

ResourceDescription
ShowsTheatre shows (musicals, plays, comedies, dramas)
TheatresWest End venue information
PeoplePerformers and crew members
ProductionsShow runs at specific theatres
Cast MembersPeople linked to productions
RolesCharacter definitions

HTTP Methods

MethodDescription
GETRetrieve resources (public, no auth required)
POSTCreate new resources (requires auth)
PUTUpdate existing resources (requires auth)
DELETERemove resources (requires auth)

Request Format

For POST and PUT requests, send JSON data with the Content-Type: application/json header:
curl -X POST https://entertheatre.com/api/shows \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{
    "name": "New Musical",
    "type": "musical",
    "description": "A brand new West End show"
  }'

Response Format

Success Responses

Successful requests return JSON data:
{
  "id": "abc123",
  "name": "Hamilton",
  "type": "musical",
  "description": "The story of America's founding father",
  "image": "https://example.com/hamilton.jpg",
  "booking_until": "2025-12-31"
}
List endpoints return arrays:
[
  { "id": "abc123", "name": "Hamilton", ... },
  { "id": "def456", "name": "Wicked", ... }
]

Error Responses

Errors return a JSON object with an error message:
{
  "error": "Show not found"
}

HTTP Status Codes

CodeDescription
200Success
201Created (for POST requests)
400Bad request (invalid data)
401Unauthorized (invalid API key)
404Resource not found
429Rate limit exceeded
500Server error

Rate Limiting

All API requests are rate-limited:
Access LevelLimit
Public (no API key)100 requests/day
With API key10,000 requests/day
Every response includes rate limit headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1701388800
Get an API key from entertheatre.com/dashboard/api-keys for higher limits.

Data Types

Show Types

Shows are categorized into four types:
  • musical - Musical theatre productions
  • play - Dramatic plays
  • comedy - Comedy productions
  • drama - Dramatic productions

Role Types

Cast members have different role types:
  • principal - Lead performers
  • ensemble - Ensemble cast
  • understudy - Understudies
  • swing - Swing performers
  • standby - Standbys
  • alternate - Alternate performers

Pagination

Currently, all list endpoints return complete datasets. Pagination may be added in future versions for larger datasets.

CORS

The API supports Cross-Origin Resource Sharing (CORS), allowing you to make requests from browser-based applications.