# Content API v0.6.5

3 groups · 4 operations · 4 paths · 48 schemas
Source: https://plas.redia.dk/en/content/v0.6.5/

The events a library plans and publishes, with scheduling, location, audiences, pricing and the series they belong to.

Generated from `content_v0_6_5.yaml` · OpenAPI 3.0.0

- **Implemented by:** The library system — or whichever system owns the events
- **Called by:** Anything that shows the library's programme — website, app, screens
- **Profile of Provider API:** [4 of the 54 operations in Provider API](https://plas.redia.dk/en/provider/v0.6.5/)

The Content API covers one area: the library's events. An event carries its
scheduling, its location, its audiences, its pricing and the series it belongs
to — enough for a programme to be shown somewhere other than where it was
created.

The surface is deliberately small: four operations over `content/event`,
`content/event/series/{seriesId}` and the configuration.

## How to integrate

Authentication, base URL and the `version` parameter are the same as in the
Provider API. Read `GET /configuration/content` first — it says what the
provider supports, before you build a view that assumes more.

## How it relates to the Provider API

The Content API is a **profile** of the Provider API: all four operations are
there too, with the same `operationId`, method and path. It exists so a system
can expose its programme without implementing the rest of the Provider API — and
so a product that only shows events has a shorter reference to read.

One detail that says something about the source: the `Content Event` group is
DECLARED here, while the Provider API uses the same tag without declaring it.
The groups are the same; it is the specification's tag list that is not.

## Shared across operations

These definitions are referenced by many operations. They are documented once here; an operation lists only what is specific to it, plus the codes it can return.

### Authentication

- `BearerAuth` · `oauth2` · Flow: `clientCredentials` · Token URL: `/authentication/oauth2/token`

### Parameters

- `version` (In `query`, [`Version`](https://plas.redia.dk/en/content/v0.6.5/schemas/#Version), optional, used by 3 of 4) — The version of Open Library the vendor expects to receive, if this version isn't supported by the provider an error code 600 (Unsupported Open Library API version) is returned.
- `ui_language` (In `query`, `string`, optional, used by 2 of 4) — The UI language the provider will return the content in.

All ui language codes should be on this list https://www.loc.gov/marc/languages/


### Error responses

- `HttpCode400` ([`Errors`](https://plas.redia.dk/en/content/v0.6.5/schemas/#Errors), used by 3 of 4) — The list of errors.
- `HttpCode401Bearer` (`No response body.`, used by 3 of 4) — Bearer token invalid, missing, or expired.
- `HttpCode404` (`No response body.`, used by 1 of 4) — Resource not found.
- `HttpCode401UnauthorizedOAuthLogin` (`No response body.`, used by 0 of 4) — Unauthorized login.

## All groups

- [Version](https://plas.redia.dk/en/content/v0.6.5/version/) — 1 operation
- [Configuration](https://plas.redia.dk/en/content/v0.6.5/configuration/) — 1 operation
- [Content Event](https://plas.redia.dk/en/content/v0.6.5/content-event/) — 2 operations
- [Schema index](https://plas.redia.dk/en/content/v0.6.5/schemas/) — 48 schemas
