Clorian APIclorian.com ↗
Access ticket listings, real-time availability, time slots, and venue data from Clorian-powered ticketing portals like Museo Reina Sofia via 8 endpoints.
What is the Clorian API?
The Clorian API exposes 8 endpoints covering ticket listings, availability calendars, event data, and venue configuration across cultural institutions using the Clorian ticketing platform. Starting with get_ticket_listing, you can retrieve individual admission products with fields like productId, price, slug, and status, then drill into real-time date and time-slot availability with get_ticket_availability — making it straightforward to build booking flows or monitor capacity for museums and galleries.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/7848bdbd-c82d-4cfd-940c-18dd0f675eb6/get_ticket_listing' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace clorian-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.clorian_ticketing_api import Clorian, TicketSummary, Ticket, Availability, TimeSlot, Venue, Event, GroupTicket, Service, SalesGroup
client = Clorian()
# List all individual tickets, navigate to details, check availability
for summary in client.ticketsummaries.list():
print(summary.name, summary.price, summary.status)
# Navigate from summary to full detail
detail = summary.details()
print(detail.name, detail.base_price, detail.min_tickets, detail.max_tickets)
for info in detail.infos:
print(info.name, info.info_type)
# Check availability with the SalesGroup enum
avail = summary.availability(sales_group_id=SalesGroup.INDIVIDUAL)
print(avail.date_queried, len(avail.slots))
for slot in avail.slots:
print(slot.start_datetime, slot.end_datetime, slot.total_availability, slot.capacity)
break
# Fetch a ticket directly by ID
ticket = client.tickets.get(product_id="470")
print(ticket.name, ticket.base_price, ticket.status)
# List group/educational tickets
for group_ticket in client.grouptickets.list():
print(group_ticket.name, group_ticket.sales_group_id, group_ticket.price)
# List events and activities
for event in client.events.list():
print(event.name, event.slug, event.price)
# List all Clorian partner venues
for venue in client.venues.list():
print(venue.name, venue.url, venue.tags)
# List Clorian services
for service in client.services.list():
print(service.title, service.description)
List available individual ticket types for Museo Reina Sofia. Returns all general admission tickets with pricing, descriptions, and images. Single-page response containing all available individual tickets.
No input parameters required.
{
"type": "object",
"fields": {
"items": "array of ticket product objects with productId, name, shortName, slug, price, description, shortDescription, image, and status"
},
"sample": {
"data": {
"items": [
{
"name": "General ticket",
"slug": "general-ticket",
"image": "https://entradas.museoreinasofia.es/cdn/img/clients/MuseoReinaSofia/productos/nouvel_entrada.jpg",
"price": 12,
"status": "enabled",
"productId": 470,
"shortName": "ENTRADA GENERAL",
"description": "<p>...</p>",
"shortDescription": "<p>...</p>"
}
]
},
"status": "success"
}
}About the Clorian API
Ticket Listings and Detail
get_ticket_listing returns an array of general admission ticket objects, each carrying productId, name, shortName, slug, price, description, shortDescription, image, and status. For group visits or school programs, get_groups_ticket_listing exposes a parallel set of products that also includes a salesGroupId field, which you can then pass as the optional sales_group_id parameter in downstream endpoints. To get the full picture of a single ticket — including opening hours, visitor rules, and configuration entries — call get_ticket_detail with the required product_id; the response returns a nested data object containing product, infos (an array of structured informational blocks), and configurations.
Availability and Time Slots
get_ticket_availability accepts a required product_id and optional date, year, month, venue_id, and sales_group_id parameters. The response includes a calendar field — a date-keyed map of availability statuses for the requested month — and a slots array for a specific date, where each slot object contains eventId, startDatetime, endDatetime, and capacity information. If no date is supplied, the API returns slots for the first available date in the calendar automatically.
Events, Activities, and Platform Metadata
get_events_and_activities returns non-admission products such as film screenings, workshops, and courses, using the same core fields (productId, name, slug, price, image, status) as the ticket listing endpoints. For platform-level discovery, get_clorian_clients lists all venues using the Clorian platform — each entry has a name, url, and tags — and get_clorian_services describes available ticketing and hardware services with title and description fields. The venue_id values returned by get_clorian_clients can be fed directly into get_ticket_availability to scope availability queries to a specific portal.
Configuration and Purchase Initiation
initiate_ticket_purchase accepts a product_id and returns the product's configuration entries, including fields like productConfigurationId, email subjects, and PDF names. This is primarily relevant for group or education products; passing an individual ticket ID will return an empty configuration array. This endpoint is most useful when building pre-booking flows that need to customize confirmation messaging or document output per product.
The Clorian API is a managed, monitored endpoint for clorian.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when clorian.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 clorian.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?+
- Display real-time admission availability calendars for museum booking widgets using
get_ticket_availabilitycalendar and slots data. - Aggregate ticket prices and descriptions across all Clorian-powered venues discovered via
get_clorian_clients. - Build a group booking tool that pulls group ticket options and their
salesGroupIdvalues fromget_groups_ticket_listing. - Surface film screenings and workshops alongside standard admission by combining
get_events_and_activitieswithget_ticket_listingresults. - Automate capacity monitoring by polling
get_ticket_availabilityslot objects for specificeventIdentries and their capacity fields. - Pre-populate booking confirmation templates with configuration data from
initiate_ticket_purchasefor group and education products. - Discover which cultural venues use the Clorian platform and map them by tag category using
get_clorian_clientsresponse fields.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Clorian provide an official public developer API?+
What does `get_ticket_availability` return beyond a simple yes/no for a date?+
calendar object mapping each date in the requested month to an availability status, and a slots array for a specific date (or the first available date if none is specified). Each slot includes eventId, startDatetime, endDatetime, and capacity details, giving you enough to present timed-entry options to users.Does the API support completing a ticket purchase or payment processing?+
Are all Clorian venues accessible through the ticket listing and availability endpoints, or is coverage limited?+
get_clorian_clients endpoint lists known venues with their url and venue_id values. Ticket listing and availability endpoints are scoped to specific venues via the venue_id parameter, so coverage depends on which venues are discoverable through that endpoint. Venues not yet indexed in the clients list would not be reachable without adding them. You can fork the API on Parse and revise to extend venue coverage.What is the difference between `get_ticket_listing` and `get_groups_ticket_listing`?+
get_ticket_listing returns individual general admission products. get_groups_ticket_listing returns products under group and educational sales categories and includes a salesGroupId field in each result. That salesGroupId value is what you pass as the optional sales_group_id parameter when calling get_ticket_detail or get_ticket_availability to get group-specific pricing and slot data.