# Lån

2 av 2 støttet
Kilde: https://plasapi.com/no/funksjoner/patron/loans/

La lånerne holde oversikt over hva de har lånt og når det skal leveres, og fornye lånene selv.

## 2.4.1 Se lån — Støttet

Vis lånerens aktive lån, og når hvert av dem skal leveres.

### Dette kan du bygge

En oversikt som får lånene som krever handling, til å skille seg ut: forfalte, de som skal leveres i dag, og de som snart skal. Hvert lån forteller om det kan fornyes, så klienten kan tilby fornyelse ved siden av.

### Typisk flyt

1. Klienten henter lånene med `GetPatronLoans`.
2. Hvert lån vises med utgaven og innleveringsdatoen, og klienten markerer lån som er forfalt eller snart skal leveres.
3. Låneren åpner et lån for å se detaljene eller fornye det (2.4.3).

### Dette leverer API-et

- `dueDate` er den seneste datoen lånet skal leveres. `createdTime` er når lånet ble gjort.
- `renew.state` er `renewable`, `not_renewable`, `renewable_later` eller `unknown`. `renew.count` er hvor mange fornyelser som er igjen, når det er kjent.
- `acquiredFrom` forteller om lånet kommer fra `local_circulation` eller et `interlibrary_loan`, eller er `unknown`.
- `publicationMetadata` er bare reservedata, for når provideren ikke kan levere utgaven gjennom `GetPublications`, for eksempel ved fjernlån.

### Kall i API-et

Forutsetter: 2.2.1

- [GET /patron/{patronId}/loan](https://plasapi.com/no/provider/v0.6.7/patron-loan/#GetPatronLoans) — Get patron loans

## 2.4.3 Forny lån — Støttet

Forleng et lån i stedet for å levere tilbake materialet.

### Dette kan du bygge

Lånerne fornyer fra listen over lån eller fra selve lånet. Blir en fornyelse avvist, gir svaret grunnen, så klienten kan fortelle låneren hvorfor.

### Typisk flyt

1. Klienten leser `renew.state` for hvert lån fra `GetPatronLoans`.
2. Låneren velger et lån som kan fornyes.
3. Klienten kaller `RenewPatronLoan` med lånets `id`.
4. Lykkes det, er svaret det fornyede lånet med `dueDate`.

### Dette leverer API-et

- Sjekk alltid `status` i svaret: `success` eller en grunn som `too_many_renewals`, `reservation_blocked_renewal`, `renewal_blocked_by_fees`, `user_blocked` eller `denied`.
- Et lån kan ikke fornyes når en annen låner har reservert materialet. Noen bibliotek tillater bare fornyelse et bestemt antall dager før innleveringsdatoen.
- `RenewPatronLoan` fornyer ett lån. Flere lån betyr ett kall per lån.

### Kall i API-et

Forutsetter: 2.2.1

I denne rekkefølgen

1. [GET /patron/{patronId}/loan](https://plasapi.com/no/provider/v0.6.7/patron-loan/#GetPatronLoans) — Get patron loans
2. [PUT /patron/{patronId}/loan/{loanId}](https://plasapi.com/no/provider/v0.6.7/patron-loan/#RenewPatronLoan) — Renew loan
