API, Data Model, and XSDs
A public API is available to query all published QC Test definitions (including links to the famous 'Card' images).
Example API v1 calls
https://ebu.io/qc/api/v1/items returns all published (and any deprecated) Test Items, including detailed information for the latest published/deprecated one!
https://ebu.io/qc/api/v1/items/0001F returns a specific Test Item
https://ebu.io/qc/api/v1/items/0001F/versions/2.0 returns a specific version of a Test Item
Fair use (rate limiting)
The API calls are limited in time & amount.
Requests also can be cached, so you may get a 429 if you already got the latest information. See the API documentation for more details.
API v1 documentation
The API documentation consists of a description and an XML Schema document:
Additional functionality
Since 01 June 2023, a flag is available that allows the export of all Items in CSV or JSON:
https://qc.ebu.io/api/v1/items?output-format=csv
https://qc.ebu.io/api/v1/items?output-format=json
If you specify an unrecognized output-format, XML will be used as the default.
If you use an unrecognized query format (e.g. misspelled 'outputformat'), you will get an emtpy result.
EBU.IO/QC Data model
The data model that forms the basis for the EBU.IO/QC system is described in the following publications:
Feedback
We welcome your feedback (questions, issues, ideas, etc.) via tech@ebu.ch
Git used for development
The data model and API specs are developed using this git (accessible to EBU QC Group participants).
API v2 (in test!)
In QC.EBU.IO release v.4.50.0 API v2 functionality has been introduced for the first time.
Note that this functionality is provided FOR TESTING only and is NOT expected to be stable, yet.
You can find the related API v2 documentation at: https://qc.ebu.io/swagger-ui/
- Example: https://qc.ebu.io/api/v2/items/
- Especially note that exported Items by default ONLY include Item versions that are 'Published' or 'Withdrawn' and only the latest one is shown with details.
- To override the Items' status values to include versions with other statusses in the result, use additional parameters (NOT documented in Swagger). Note this is different from the core API!
- Example: https://qc.ebu.io/api/v2/items/?status[]=drafting&status[]=published
- This will show all QC Item versions (incl. details) that have status 'drafting' or 'published'. Note this can be a huge list!
- You can also query all published and withdrawn versions of a specific QC Item.
- Example: https://qc.ebu.io/api/v2/items/?version_main__ebu_qc_id=0017W
- If you add the status[]=... field you can access to non-published/deprecated versions.
- Example: https://qc.ebu.io/api/v2/items/?version_main__ebu_qc_id=0017W&status[]=drafting&status[]=published
- Contrary to before (API v1) the 'patch' (third) part of the QC Item version number is also included (this allows distinguishing between e.g. two subsequent versions of QC Items in drafting).
- Exported Parameters (Types, Representations, Units, Ranges) ONLY include the parameters flagged as 'official' in QC.EBU.IO.
- As shown in the swagger documentation, it is possible to query where specific parameter (versions) are used.
- Example: https://qc.ebu.io/api/v2/representations/6/versions/1/items/