Skip to main content
GET
/
cast-members
{
  "cast_members": [
    {
      "id": "<string>",
      "person_id": "<string>",
      "production_id": "<string>",
      "role_id": "<string>",
      "role_type": "<string>",
      "billing_order": 123,
      "person": {},
      "production": {},
      "role": {}
    }
  ]
}

Overview

Returns a list of all cast member assignments linking people to productions. Includes nested data for the person, production, and role. Optionally filter by person ID.

Query Parameters

person_id
string
Filter cast members by person ID to see all their roles

Request

# Get all cast members
curl https://entertheatre.com/api/cast-members

# Filter by person
curl https://entertheatre.com/api/cast-members?person_id=person-001

Response

cast_members
array
Array of cast member objects

Example Response

[
  {
    "id": "cast-001",
    "person_id": "person-001",
    "production_id": "prod-001",
    "role_id": "role-001",
    "role_type": "principal",
    "billing_order": 1,
    "person": {
      "id": "person-001",
      "name": "Elaine Paige",
      "bio": "Legendary West End star...",
      "image": "https://example.com/elaine.jpg"
    },
    "production": {
      "id": "prod-001",
      "show": {
        "name": "Cats",
        "type": "musical"
      }
    },
    "role": {
      "id": "role-001",
      "name": "Grizabella"
    }
  },
  {
    "id": "cast-002",
    "person_id": "person-002",
    "production_id": "prod-002",
    "role_id": "role-005",
    "role_type": "principal",
    "billing_order": 1,
    "person": {
      "id": "person-002",
      "name": "Michael Ball",
      "bio": "Award-winning musical theatre actor...",
      "image": "https://example.com/michael.jpg"
    },
    "production": {
      "id": "prod-002",
      "show": {
        "name": "Les Miserables",
        "type": "musical"
      }
    },
    "role": {
      "id": "role-005",
      "name": "Marius"
    }
  }
]

Status Codes

StatusDescription
200Success - returns array of cast members
500Server error