You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With the data model changing quite significantly in some ways, there is the obvious question of how to expose that to the world. Opencast currently has a number of APIs (external API, search API, ...). We talked about this on 2025-07-31.
We decided already:
We want a new API!
Advantage: this clearly communicates that the data model has changed. Reusing and adjusting the old API runs the risk of lots of small breaking changes going unnoticed.
Additionally: new API allows for a fresh clean start without baggage. It allows us to switch to some other API framework if we so wish.
Of course, not all old APIs are deleted. Some are important to keep around, like ingest and CA APIs.
We also said that a single OC release will: introduce new data model, new API and remove old API. We might want to support (via updates) the previous version for longer.
We want to listen to feedback for the API more and adjust over time until we're happy to stabilize.
The API should be "self-describing":
Meaning, the API has well typed responses and parameters. GraphQL has this out of the box: you always know exactly what the response JSON looks like. We don't need to use GraphQL, but we want this property. JSON-Schema is a potential alternative. For example, would be great to generate Typescript bindings for the API automatically to type check frontend code. Also: it would be great if the API explorer UI lets you look at the exact response type as well.
What APIs do we want to combine? E.g. merge all functionality of the search API into "the one new API"? Are there problems with the micro-architecture of it all? "Read only mode" is relevant here maybe.
With the data model changing quite significantly in some ways, there is the obvious question of how to expose that to the world. Opencast currently has a number of APIs (external API, search API, ...). We talked about this on 2025-07-31.
We decided already:
Open questions
searchAPI into "the one new API"? Are there problems with the micro-architecture of it all? "Read only mode" is relevant here maybe.Previous discussions: