Download OpenAPI specification:Download
The Open Repertoire Interchange Format (ORIF) enables theaters to share comprehensive information about their productions and events in a machine-readable, standardized format. This specification provides a structured approach to exchanging theatrical repertoire data across different institutions and platforms. It is intended as a reference for both, users that want to provide their repertoire data in a machine-readable format (i.e. theaters) and users who want to work with the data from different theaters (e.g. event platforms, archives, researchers, etc.).
Implementing the Open Repertoire Interchange Format (ORIF) enables your theater to automatically distribute your performance schedule to multiple platforms through a standardized export interface. I.e. in addition to presenting your schedule in a human-readable fashion on your website, you will also provide it in a machine-readable format through an API endpoint. External platforms, archives, and event aggregators can then call this API endpoint and access your current repertoire in an automated fashion, without the need for human interaction. The data returned through this API endpoint should follow the ORIF specification to ensure it can be properly processed by these external data consumers.
As an implementer, your primary task is to create an endpoint on your website that returns your current performance schedule as JSON data in the ORIF format. This can typically be integrated with your existing Content Management System, ticketing platform, or custom website backend.
Both required and recommended fields are specified in the documentation. While only required fields are necessary for basic compatibility, implementing the recommended fields provides a richer data set that benefits both your theater and downstream consumers. This leads to better presentation of your productions on third-party platforms and more comprehensive data collection for cultural research and archiving purposes.
For reference, we provide an example dataset that includes all recommended fields to help guide your implementation. We also provide two tools to validate and view the data returned from your API endpoint.
Required fields are marked by a "required" tag below the field name and MUST be present in the data returned by your API endpoint, to conform to the ORIF data format:
Recommended fields are marked by a "recommended" tag in their description and SHOULD be present in the data returned by your API endpoint,
especially if the information is readily available in your system:
Including these recommended fields in your data will make your repertoire data much more useful for consumers of your API endpoint and will lead to better representation of your
events, e.g. in online event calendars.
All other fields are optional, i.e. they can be omitted from your data. However, including them will still provide value, so you should add them, if the information is already available in your system.
To guide your implementation, we provide an example dataset, with one production and one event, that contains all required and recommended fields.
For each production, you can provide a list of (promotional) photos in your data.
These photos should be provided as links (through the contentUrl
field) and should have a maximum width and height of 1500px.
identifier
and dateModified
fields (when available)Some of the fields (e.g. name
and description
on a production), can either contain a simple string or an InternationalizedString
object.
This object can be used to include the same text in different translations.
ORIF emerged from the need to standardize theatrical repertoire data exchange as a precursor to the Datenraum Kultur. By building upon schema.org (in particular, the existing types CreativeWork and Event), the format ensures:
@context required | string Value: "https://schema.org" | ||||||||||||||||||||||||||||||||||||||||||||||
version required | string Value: "v2" The API version that is being used. MUST be the string "v2" for now. | ||||||||||||||||||||||||||||||||||||||||||||||
required | object (Organization) | ||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||
required | Array of objects (Production) A list of all current productions in the repertoire. | ||||||||||||||||||||||||||||||||||||||||||||||
Array
|
{- "version": "v2",
- "organization": {
- "@type": "Organization",
- "identifier": "836",
- "name": "Staatstheater Augsburg",
- "address": {
- "@type": "PostalAddress",
- "postalCode": "86156",
- "streetAddress": "Am Alten Gaswerk 7",
- "addressLocality": "Augsburg",
- "addressCountry": "Germany"
},
}, - "productions": [
- {
- "@type": "CreativeWork",
- "identifier": "123",
- "dateModified": "2019-08-24T14:15:22Z",
- "name": "Hedwig and the Angry Inch",
- "subtitle": "US-amerikanisches Off-Broadway-Rock-Musical",
- "description": "Hedwig, die Queen des Glamrock, kommt auf ihrer Tournee in Augsburg vorbei! Gemeinsam mit ihrer Band The Angry Inch gibt sie eines ihrer mitreißenden Konzerte. Zwischen den Songs, die – mal Rocknummer, mal Country-Ballade – von ihrem Leben und der Suche nach der eigenen Identität erzählen, kommt sie dem Publikum so nah wie nie.\\nDiese Show sollten Sie nicht verpassen!",
- "abstract": "Das Kult-Rockmusical »Hedwig and the Angry Inch« wurde innerhalb weniger Jahre vom Off-Broadway-Geheimtipp zu einem Hit am Broadway selbst. 2023 erobert Hedwig, die »weltweit ignorierte Queen of Glamrock« endlich auch die Herzen des Augsburger Publikums – mit dem langjährigen Schauspiel-Ensemble-Mitglied Thomas Prazak in der Hauptrolle. Die Live-Musik steuern Stefan Leibold, Jonas Horche, Tilman Herpichböhm und Niklas Rehle als Band »The Angry Inch« bei.",
- "isBasedOn": [
- {
- "@type": "CreativeWork",
- "name": "Hedwig and the Angry Inch",
- "author": [
- {
- "@type": "Person",
- "name": "Stephen Trask"
}, - {
- "@type": "Person",
- "name": "John Cameron Mitchell"
}
], - "translator": [
- {
- "@type": "Person",
- "name": "Mona Mustermann"
}
]
}
], - "workPerformed": [
- {
- "@type": "MusicComposition",
- "name": "La Bohème",
- "composer": [
- {
- "@type": "Person",
- "name": "Giacomo Puccini"
}
], - "lyricist": [
- {
- "@type": "Person",
- "name": "Giuseppe Giacosa"
}, - {
- "@type": "Person",
- "name": "Luigi Illica"
}
]
}
], - "events": [
- {
- "@type": "Event",
- "identifier": "345",
- "dateModified": "2019-08-24T14:15:22Z",
- "startDate": "2019-08-24T14:15:22Z",
- "endDate": "2019-08-24T14:15:22Z",
- "doorTime": "2019-08-24T14:15:22Z",
- "duration": 90,
- "intermission": 1,
- "subtitleLanguage": [
- "en-US"
], - "location": [
- {
- "@type": "Place",
- "identifier": "835",
- "name": "brechtbühne im Gaswerk",
- "address": {
- "@type": "PostalAddress",
- "postalCode": "86156",
- "streetAddress": "Am Alten Gaswerk 7",
- "addressLocality": "Augsburg",
- "addressCountry": "Germany"
}, - "wheelChairPlaces": {
- "count": 2,
- "hasSpaceForAssistant": false,
- "wheelchairUserCapacity": 0
}, - "latitude": -90,
- "longitude": -180
}
], - "performer": [
- {
- "@type": "PerformanceRole",
- "performer": [
- {
- "@type": "Person",
- "name": "Max Mustermann"
}
], - "characterName": "Hedwig"
}, - {
- "@type": "PerformanceRole",
- "performer": [
- {
- "@type": "Organization",
- "name": "Dÿse"
}
], - "roleName": "Band"
}
], - "offers": [
- {
- "@type": "Offer",
- "name": "Normalpreis",
- "availability": "InStock",
- "priceSpecification": {
- "@type": "PriceSpecification",
- "minPrice": 25.5,
- "maxPrice": 45.5,
- "priceCurrency": "EUR"
},
}
], - "eventType": [
- "Premiere"
], - "eventStatus": "EventScheduled",
- "previousStartDate": "2019-08-24T14:15:22Z",
- "subEvent": [
- {
- "@type": "Event",
- "name": "30-minütige Einführung vor der Vorstellung",
- "description": "string",
- "location": "Foyer",
- "startDate": "2019-08-24T14:15:22Z",
- "endDate": "2019-08-24T14:15:22Z",
- "duration": 30,
- "inLanguage": [
- "de"
]
}
], - "superEvent": {
- "@type": "Event",
- "name": "Festival",
- "description": "string",
- "location": "Ballhaus",
- "startDate": "2019-08-24T14:15:22Z",
- "endDate": "2019-08-24T14:15:22Z",
- "duration": 2880,
- "inLanguage": [
- "de"
]
}
}
], - "genre": [
- "musical"
], - "productionType": "WorldPremiere",
- "image": [
- {
- "@type": "ImageObject",
- "height": 768,
- "width": 1024,
- "focalPoint": {
- "@type": "ImageCoordinates",
- "x": "string",
- "y": "string"
}, - "copyrightHolder": {
- "@type": "Person",
- "identifier": "836",
- "name": "Max Mustermann"
}, - "copyrightNotice": "string",
- "copyrightYear": 2024,
}
], - "video": [
- {
- "@type": "VideoObject",
- "copyrightHolder": {
- "@type": "Person",
- "identifier": "836",
- "name": "Max Mustermann"
}, - "copyrightNotice": "string",
- "copyrightYear": 2024,
}
], - "accessibilityHazard": [
- "flashingHazard"
], - "accessibilitySummary": "Dieses Stück enthält Stroboskoplicht",
- "contentWarning": [
- "This play includes depictions of violent crimes and psychological violence."
], - "inLanguage": [
- "de"
], - "audience": {
- "@type": "PeopleAudience",
- "suggestedMinAge": 8,
- "suggestedMaxAge": 15,
- "requiredMinAge": 16,
- "requiredMaxAge": 65,
- "audienceType": "Kinder und Jugendliche"
}, - "creator": [
- {
- "@type": "Role",
- "creator": [
- {
- "@type": "Person",
- "identifier": "836",
- "name": "Max Mustermann"
}
], - "roleName": "Regie"
}
], - "creditText": "Dieses Projekt wurde gefördert durch Mittel aus dem Fonds Darstellende Künste.",
- "funder": [
- {
- "@type": "Organization",
- "name": "A Funding Organization",
}
], - "sponsor": [
- {
- "@type": "Organization",
- "name": "A Sponsoring Organization",
}
]
}
]
}