# Vendor API v0.6.5

3 grupper · 3 operationer · 3 stier · 152 skemaer
Kilde: https://plas.redia.dk/vendor/v0.6.5/

Den anden vej. Hvor Provider API er det bibliotekssystemet stiller til rådighed, er dette det biblioteksproduktet stiller til rådighed tilbage.

Genereret fra `vendor_v0_6_5.yaml` · OpenAPI 3.0.0

- **Implementeres af:** Biblioteksproduktet — leverandørens egen tjeneste
- **Kaldes af:** Bibliotekssystemet, når noget er sket eller skal fuldføres

De tre andre API'er beskriver hvad du kan HENTE fra bibliotekssystemet. Dette
beskriver hvad systemet kan SENDE til dig — og det er derfor du implementerer
det, ikke kalder det.

To ting bruger det. Bibliotekssystemet sender **events** når noget er sket, så
dit produkt ikke behøver at spørge igen og igen; og det kalder et **callback**
når en låner har logget ind hos biblioteket og skal sendes tilbage til dit
produkt som godkendt.

## Sådan integrerer du

1. **Stil endpointet til rådighed.** `POST /events/receiver` skal tage imod og
   svare. Adressen er din egen; den aftales med provideren, præcis som
   Provider API'ets base-URL aftales den anden vej.
2. **Verificér afsenderen.** Kaldet bærer en delt hemmelighed i headeren
   `X-OLA-SECRET` (`EventReceiverSecretAuth` i specifikationen). Matcher den
   ikke, svar `401` — det er den eneste ting der adskiller bibliotekssystemet
   fra alle andre der kan nå din adresse.
3. **Tag imod versionen.** `version` sendes som query-parameter på to af de tre
   operationer. Understøtter du den ikke, svarer du med fejlkode `600` — samme
   kontrakt som den anden vej, bare med dig som modtager.

## Forholdet til de andre API'er

Vendor Consumer API er en **indgang** på linje med Provider API, ikke en
delmængde af det: kun `GET /version` findes begge steder. De to er retningerne
i det samme samarbejde, og et produkt der både læser og modtager implementerer
dette og kalder Provider.

## Fælles for operationerne

Disse definitioner refereres af mange operationer. De er dokumenteret ét sted her; en operation viser kun det der er dens eget, plus de koder den kan svare med.

### Autentificering

- `EventReceiverSecretAuth` · `apiKey`

### Parametre

- `version` (i `query`, [`Version`](https://plas.redia.dk/vendor/v0.6.5/schemas/#Version), valgfri, bruges af 2 af 3) — 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.

### Fejlsvar

- `HttpCode400` ([`Errors`](https://plas.redia.dk/vendor/v0.6.5/schemas/#Errors), bruges af 1 af 3) — The list of errors.
- `HttpCode401Secret` (`Intet indhold i svaret.`, bruges af 1 af 3) — Secret is invalid.

## Alle grupper

- [Callback](https://plas.redia.dk/vendor/v0.6.5/callback/) — 1 operation
- [Event](https://plas.redia.dk/vendor/v0.6.5/event/) — 1 operation
- [Version](https://plas.redia.dk/vendor/v0.6.5/version/) — 1 operation
- [Skema-indeks](https://plas.redia.dk/vendor/v0.6.5/schemas/) — 152 skemaer
