Den grænseflade et bibliotekssystem stiller til rådighed, så tjenester kan arbejde med lånere, lån, reservationer, beholdning og betaling.

22 grupper · 59 operationer · 45 stier · 420 skemaer Genereret fra provider_v0_6_7.yaml · OpenAPI 3.0.0 Hent OpenAPI-filen
Implementeres af
Bibliotekssystemet
Kaldes af
Tjenesterne — apps, hjemmesider, selvbetjening og medarbejderværktøjer
Profiler af Provider API
Search API · Content API

Provider API’et er PLAS’ hovedindgang. Implementerer et bibliotekssystem det, kan en tjeneste der taler PLAS, arbejde med biblioteket uden at kende systemet underneden.

Det dækker det et bibliotek gør hver dag: låneren og lånerens samtykker, lån og fornyelser, reservationer, gebyrer og betaling, beholdning og lokationer, udlån og aflevering, søgning i værker og udgivelser, og bibliotekets arrangementer. Hver del har sin egen gruppe i menuen.

Sådan integrerer du

Tre ting skal på plads, i den rækkefølge du møder dem:

  1. Base-URL’en. Specifikationen har ingen servers-blok, så adressen er providerens og aftales med den. Regn ikke med at den er den samme fra bibliotek til bibliotek, heller ikke hos samme provider.
  2. En token. POST /authentication/oauth2/token med client_id, client_secret og grant_type=client_credentials giver en Bearer-token, som sendes med på kaldene derefter. Kun GetVersion, AuthenticateClient og RevokeToken klarer sig uden.
  3. Versionen. Klienten kan sende den version den forventer, i query-parameteren version. Understøtter provideren den ikke, svarer den med fejlkode 600.

Vejen til det første kald, med eksempler, står i Kom i gang.

Forholdet til de andre API’er

Search API og Content API er profiler af Provider API’et: hver af deres operationer findes også her, med samme operationId, metode og sti. De kan implementeres selvstændigt, så et system kan stille søgning eller arrangementer til rådighed uden hele Provider API’et. Implementerer du Provider API’et, har du allerede dem begge.

Vendor API’et går den modsatte vej: det er den flade tjenesten selv stiller til rådighed, så bibliotekssystemet kan sende hændelser og sende låneren tilbage efter et login.

Fælles for operationerne

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

Autentificering

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

Parametre

  • version i query · Version · valgfri · bruges af 56 af 59 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 i query · string · valgfri · bruges af 10 af 59 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/

Fejlsvar

  • HttpCode400 Errors · bruges af 58 af 59 The list of errors.
  • HttpCode401Bearer Intet indhold i svaret. · bruges af 56 af 59 Bearer token invalid, missing, or expired.
  • HttpCode404 Intet indhold i svaret. · bruges af 35 af 59 Resource not found.
  • HttpCode429 Intet indhold i svaret. · bruges af 3 af 59 Too many requests. The provider is rate limiting and did not carry out the request. The response should have a `Retry-After` header saying how many seconds to wait. Show the patron "try again later", not an error about what they sent.
  • HttpCode401UnauthorizedOAuthLogin Intet indhold i svaret. · bruges af 1 af 59 Unauthorized login.