# Schemas — Vendor API v0.6.5

152 schemas
Source: https://plas.redia.dk/en/vendor/v0.6.5/schemas/

Every named schema in the specification, one level deep. A field that points at another schema links to it rather than being expanded — the specification references itself in cycles, so expanding would not terminate.

## AdditionalIdentifier

`one of AdditionalIdentifierTypeISBN | AdditionalIdentifierTypeISSN | AdditionalIdentifierTypeEAN | AdditionalIdentifierTypeBibsentBibbi`

No properties in the specification — see the schema index for its form.

## AdditionalIdentifierTypeBibsentBibbi

`object`

- `type` (`string enum`, required) — `bibsentBibbi`
- `value` (`string`, required)

## AdditionalIdentifierTypeEAN

`object`

- `digits` (`string enum`, required) — `13`
- `type` (`string enum`, required) — `ean`
- `value` (`string`, required)

## AdditionalIdentifierTypeISBN

`object`

- `digits` (`string enum`, required) — `10` · `13`
- `type` (`string enum`, required) — `isbn`
- `value` (`string`, required)

## AdditionalIdentifierTypeISSN

`object`

- `type` (`string enum`, required) — `issn`
- `value` (`string`, required)

## Agent

`one of AgentTypePerson | AgentTypeCollective`

No properties in the specification — see the schema index for its form.

## AgentPersonActiveLiteral

`object`

Date or date range the person was active.
This is usually only recorded for historical persons where the birth and death dates are uncertain or unknown.
A literal value, meaning there are no expected structure or format.


- `type` (`string enum`, required) — `literal`
- `value` (`string`, required)

## AgentRole

`one of AgentRoleMarcRelator`

Telling the role of an agent, e.g. author, illustrator, editor.

No properties in the specification — see the schema index for its form.

## AgentRoleMarcRelator

`object`

- `roleCode` (`string`, required) — A contribution role code from the MARC Code List for Relators.
- `type` (`string enum`, required) — `marcRelator` — Identifies the role code as being part of [MARC Code List for Relators](https://www.loc.gov/marc/relators/relaterm.html).

## AgentTypeCollective

`all of BaseAgent + object`

No properties in the specification — see the schema index for its form.

## AgentTypePerson

`all of BaseAgent + object`

No properties in the specification — see the schema index for its form.

## Amount

`integer`

The amount is in minor unit (see ISO 4217).

No properties in the specification — see the schema index for its form.

## BaseAgent

`object`

- `description` (`string`, optional) — This is a description of the agent.
- `fullName` (`string`, required) — This is the full name of the agent.
- `id` (`string`, optional) — This isn't required, but if it's set:
- The agent is searchable through the GET /agent endpoint.
- Or you can search using the filter `plas.agent` to search on this agent.

- `images` ([`array of ImageAgent`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ImageAgent), optional) — Images of the agent.

## BaseEventItem

`object`

- `eventId` (`string`, required) — A unique identifier for the event.
- `type` (`string`, required) — The type of event.

## BasicTitle

`object`

- `language` ([`Language`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Language), optional) — The language of the titles in the object.
- `main` (`string`, required) — This is the main title.
- `part` (`object`, optional) — This contains the information to distinguish the work.
- `remainder` (`string`, optional) — This is the remainder of the title.

## Binding

`one of BindingTypeLiteral`

No properties in the specification — see the schema index for its form.

## BindingTypeLiteral

`object`

A literal binding, meaning there are no expected structure or format.

- `type` (`string enum`, required) — `literal`
- `value` (`string`, required) — A displayable (human readable) representation of the binding.

## CheckinField

`object`

- `acquiredFrom` ([`PatronLoanAcquiredFrom`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronLoanAcquiredFrom), optional)
- `dueDate` (`string (date)`, optional) — This is the due date of the checkin item, meaning the date where item should (at the latest) be returned.
- `itemId` (`string`, required) — This is the item ID of the checked in item.
- `loanId` ([`LoanId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanId), required)
- `patronId` (`string`, optional) — This is the patron ID of the patron that made the checkin.
- `publicationId` (`string`, optional) — This is the publication ID of the checkin item.
- `publicationMetadata` ([`PublicationFallback`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationFallback), optional)
- `sortingCode` (`string`, optional) — This is the sorting code, and can be used to sort checked in items, on e.g. a self service machine by reserved and not-reserved items.
- `transactionDateTime` (`string (date-time)`, required) — This is the registered time and date of the checkin.

## CheckinFieldWithRequiredPatronId

`all of CheckinField + object`

No properties in the specification — see the schema index for its form.

## CheckinResponseBody

`object`

- `checkin` ([`CheckinField`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#CheckinField), required)
- `completed` (`boolean`, optional) — This tells if the checkin was completed or not. It is only true if the checkin was completed, else it is false.
- `message` ([`CheckOutOrInMessage`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#CheckOutOrInMessage), optional)
- `requestId` (`string`, required) — This is a unique identifier for the checkout request. This will change for each request.
- `status` (`string enum`, required) — `completed` · `failed` — This tells the status of the checkin.

The status are:
- `completed` means that the checkin went well and was completed.
- `failed` means that the checkin failed, and the item was not checked in.


## CheckinWithRequiredPatronIdResponseBody

`all of CheckinResponseBody + object`

No properties in the specification — see the schema index for its form.

## CheckoutAcknowledgementType

`object`

- `type` (`string`, required) — This is the type of what is to be acknowledged.

## CheckoutAcknowledgementTypeFee

`all of CheckoutAcknowledgementType + object`

No properties in the specification — see the schema index for its form.

## CheckoutAcknowledgementTypePreviouslyCheckedOut

`all of CheckoutAcknowledgementType + object`

No properties in the specification — see the schema index for its form.

## CheckoutField

`object`

- `acquiredFrom` ([`PatronLoanAcquiredFrom`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronLoanAcquiredFrom), optional)
- `dueDate` (`string (date)`, required) — This is the due date of the checked out item.
- `itemId` (`string`, required) — This is the item ID of the checkout item.
- `loanId` ([`LoanId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanId), required)
- `patronId` (`string`, required) — This is the patron ID of the patron that made the checkout.
- `publicationId` (`string`, optional) — This is the publication ID of the checkout item.
- `publicationMetadata` ([`PublicationFallback`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationFallback), optional)
- `renew` ([`LoanRenewInfo`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanRenewInfo), optional)
- `transactionDateTime` (`string (date-time)`, required) — This is the registered time and date of the checkout.

## CheckOutOrInLocationWithoutNames

`object`

The object tells the location where a checkout or checkin was made.  
The `sections` is for specifying the location more precisely.


- `branchId` (`string`, required) — The branch ID where the checkout or checkin was made.
- `sections` ([`array of LocationSectionElementWithIdNameAndType`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LocationSectionElementWithIdNameAndType), optional) — This is specifying the location more precisely.

## CheckOutOrInMessage

`object`

Both type and text are optional, but at least one of them must be set.

- `text` (`string`, optional) — Message to the patron.
- `type` (`string`, optional) — This can be used instead of the text field to identify the message type.  
This can be used by a vendor to handle the message or control the content of the message.


## CheckoutResponseBody

`object`

- `acknowledgement` (`object`, optional) — If this is set, the checkout needs to be acknowledged to be completed.
- `checkout` ([`CheckoutField`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#CheckoutField), required)
- `message` ([`CheckOutOrInMessage`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#CheckOutOrInMessage), optional)
- `requestId` (`string`, required) — This is an unique identifier for the checkout request. This will change for each request.
- `status` (`string enum`, required) — `completed` · `failed` — This tells the status of the checkout.

The status are:
- `completed` means that the checkout went well and was completed.
- `failed` means that the checkout failed, and the item was not checked out.


## Contributor

`object`

- `agent` ([`Agent`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Agent), required)
- `roles` ([`array of AgentRole`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#AgentRole), optional) — List of roles (e.g. author, illustrator, editor) that the agent played in the creation of this entity.


## Date

`one of DateTypeLiteral | DateTypeRFC3339 | DateTypeYear | DateTypeYearRange | DateTypeCentury`

No properties in the specification — see the schema index for its form.

## DateTypeCentury

`object`

The *century* date can be used if we only know which century an event happened.

- `beforeTheCommonEra` (`boolean`, optional) — The default value is *false*, meaning common era, otherwise before the common era.
- `century` (`integer`, required) — The century e.g. 19 century CE (meaning 1801 CE to 1900 CE), 3 century BCE (meaning 300 BCE to 201 BCE)
- `type` (`string enum`, required) — `century`

## DateTypeLiteral

`object`

A literal date, meaning there are no expected structure or format.

- `type` (`string enum`, required) — `literal`
- `value` (`string`, required)

## DateTypeRFC3339

`object`

The *rfc3339* date can be used if we now the date.

- `date` (`string (date)`, required) — RFC3339 _full-date_ format (YYYY-MM-DD).
- `type` (`string enum`, required) — `rfc3339`

## DateTypeYear

`object`

The *year* date can be used if we only know which year an event happened.

- `type` (`string enum`, required) — `year`
- `year` (`integer`, required) — Eg. 1924

## DateTypeYearRange

`object`

The *yearRange* date can be used if we only know approx when an event happened.
This can also be used give an open ended year range.
*from* and *to* isn't required, but a least one of them should be set.


- `from` (`integer`, optional) — Eg. 1924
- `to` (`integer`, optional) — Eg. 1979
- `type` (`string enum`, required) — `yearRange`

## Edition

`one of EditionTypeLiteral | EditionTypeNumbering`

No properties in the specification — see the schema index for its form.

## EditionTypeLiteral

`object`

A literal edition, meaning there are no expected structure or format.

- `type` (`string enum`, required) — `literal`
- `value` (`string`, required) — A displayable (human readable) representation of the edition.

## EditionTypeNumbering

`object`

- `display` (`string`, optional) — A displayable (human readable) representation of the edition.
- `number` (`integer`, required) — The edition number.
- `printing` (`integer`, optional) — The printing number of the edition.
- `type` (`string enum`, required) — `numbering`

## Error

`object`

- `code` ([`ErrorCode`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ErrorCode), required)
- `info` ([`ErrorInfo`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ErrorInfo), required)

## ErrorCode

`integer enum`
`500` · `600`

A number representing the type of error.

List of error codes: 
- \<error code\>: \<error description\>  
- 500: System error
- 600: Unsupported Open Library API version</br>


No properties in the specification — see the schema index for its form.

## ErrorInfo

`string`

Starts with the text matching the error code field (defined above), and a describing text could be added.

No properties in the specification — see the schema index for its form.

## Errors

`object`

- `errors` ([`array of Error`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Error), required) — The first error should always be the most relevant.

## EventConsentChanged

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventFeeDueDateIsApproaching

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemAddedToLoanHistory

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemCheckin

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemCheckout

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemPatronListCreated

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemPatronListDeleted

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemPatronListItemAddedToList

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemPatronListItemMovedOnList

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemPatronListItemRemovedFromList

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemPatronListUpdated

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventItemRemovedFromLoanHistory

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventLoanDueDateIsApproaching

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventPatronDeleted

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventReadyReservationExpiresSoon

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventReceiverRequest

`one of EventConsentChanged | EventPatronDeleted | EventReservationReadyForPickup | EventReadyReservationExpiresSoon | EventReservationExpiresSoon | EventReservationReminder | EventLoanDueDateIsApproaching | EventFeeDueDateIsApproaching | EventItemCheckout | EventItemCheckin`

No properties in the specification — see the schema index for its form.

## EventReservationExpiresSoon

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventReservationReadyForPickup

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## EventReservationReminder

`all of BaseEventItem + object`

No properties in the specification — see the schema index for its form.

## Extent

`one of ExtentTypeLiteral | ExtentTypePages | ExtentTypePlaytime | ExtentTypeUnits`

No properties in the specification — see the schema index for its form.

## ExtentTypeLiteral

`object`

A literal extent, meaning there are no expected structure or format.

- `type` (`string enum`, required) — `literal`
- `value` (`string`, required) — A displayable (human readable) representation of the extent.

## ExtentTypePages

`object`

- `pages` (`integer`, required) — Number of physical pages.
- `type` (`string enum`, required) — `pages`

## ExtentTypePlaytime

`object`

- `playtime` (`integer`, required) — The total playtime in seconds.
- `type` (`string enum`, required) — `playtime`

## ExtentTypeUnits

`object`

- `type` (`string enum`, required) — `units`
- `unitType` (`string enum`, required) — `volume` · `dvd` · `cd` · `bluRay` · `cassette` · `lp`
- `units` (`integer`, required) — Number of physical units (volumes, dvd, cd, ...)

## FeeAmount

`integer`

The amount is in minor unit (see ISO 4217).

No properties in the specification — see the schema index for its form.

## FeeCreatedTime

`string (date-time)`

The date and time the fee was created.

No properties in the specification — see the schema index for its form.

## FeeCurrency

`string`

ISO 4217

No properties in the specification — see the schema index for its form.

## FeeDueDate

`string (date)`

The due date of the fee.

No properties in the specification — see the schema index for its form.

## FeeId

`string`

This is the fee ID.

No properties in the specification — see the schema index for its form.

## FeeItem

`object`

Item information related to a fee.

- `acquiredFrom` ([`PatronLoanAcquiredFrom`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronLoanAcquiredFrom), optional)
- `itemId` (`string`, required) — The item identifier of the item that the fee is about.
- `publicationMetadata` ([`PublicationFallback`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationFallback), required)

## FeePayableState

`string enum`
`payable` · `not_payable`

This state tells if the fee can be paid and finalized through this API.  
- *payable*: The fee is payable, and can be finalized through this API.
- *not_payable*: The fee cannot be finalized through this API.


No properties in the specification — see the schema index for its form.

## FeeRemainingAmount

`Amount`

The remaining amount is the amount that is still payable. If this is not equal to amount, part of the fee has been paid.

The amount is in minor unit (see ISO 4217).


No properties in the specification — see the schema index for its form.

## FeeType

`string enum`
`fee` · `compensation` · `send_to_debt_collector`

Defines the type of fee being applied. All fees indicate that the patron should pay, never the other way around.

The possible values are:
- *fee*: Indicates a regular fee, typically for a late checked-in loan.
- *compensation*: Indicates a compensation fee, typically applied due to a damaged or lost item.
- *send_to_debt_collector*: Indicates that the fee has been sent to a debt collector because it was not paid in time.


No properties in the specification — see the schema index for its form.

## GetVersionResponseBody

`object`

- `version` ([`Version`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Version), required) — This is recommended (by the vendor) version of the Open Library API, that is supported by the vendor.

## ImageAgent

`one of ImageTypeAgent`

No properties in the specification — see the schema index for its form.

## ImagePublication

`one of ImageTypeFrontCover | ImageTypeBackCover`

No properties in the specification — see the schema index for its form.

## ImageTypeAgent

`all of ImageUrl + object`

No properties in the specification — see the schema index for its form.

## ImageTypeBackCover

`all of ImageUrl + object`

No properties in the specification — see the schema index for its form.

## ImageTypeFrontCover

`all of ImageUrl + object`

No properties in the specification — see the schema index for its form.

## ImageUrl

`object`

- `height` (`integer`, optional) — The image height in px.
- `mime` (`string enum`, optional) — `png` · `jpeg`
- `url` (`string`, required)
- `width` (`integer`, optional) — The image width in px.

## Language

`object`

- `code` (`string`, required) — A id that (if set) can be used with the filter `plas.language` to search on this genre.

Codes can be found at <https://www.loc.gov/marc/languages/>

- `name` (`string`, optional) — A displayable (human readable) value of the language.

## LoanCreatedTime

`string (date-time)`

The date and time the loan was made.

No properties in the specification — see the schema index for its form.

## LoanDueDate

`string (date)`

The latest date on which the loan must be returned.

No properties in the specification — see the schema index for its form.

## LoanId

`string`

This is the loan ID.

No properties in the specification — see the schema index for its form.

## LoanItemId

`string`

This is the item identifier of the checkout item.

No properties in the specification — see the schema index for its form.

## LoanPublicationId

`string`

This is the publication ID of the loan. If this is empty, the publication is unknown.

No properties in the specification — see the schema index for its form.

## LoanRenewableState

`string enum`
`renewable` · `not_renewable` · `renewable_later` · `unknown`

This tells the renewable state of the loan.

No properties in the specification — see the schema index for its form.

## LoanRenewInfo

`object`

This contain information about renewal of the loan.

- `count` (`integer`, optional) — The number of times this loan can still be renewed. If the field is missing, this information is unknown.
- `lastDate` (`string (date)`, optional) — The date when the loan was last renewed. If the field is missing, this information is unknown.
- `state` ([`LoanRenewableState`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanRenewableState), required)

## LocationSectionElementType

`string`

This should be the section type of the section (element) ID.

No properties in the specification — see the schema index for its form.

## LocationSectionElementWithId

`object`

- `id` (`string`, required) — This is the section (element) ID

## LocationSectionElementWithIdAndName

`all of LocationSectionElementWithId + object`

No properties in the specification — see the schema index for its form.

## LocationSectionElementWithIdNameAndType

`all of LocationSectionElementWithIdAndName + object`

No properties in the specification — see the schema index for its form.

## MediaType

`object`

- `code` ([`MediaTypeType`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#MediaTypeType), optional)
- `name` (`string`, required) — A displayable (human readable) representation of the media type.

## MediaTypeEnum

`string enum`
`book` · `eBook` · `audiobook`

No properties in the specification — see the schema index for its form.

## MediaTypeLiteral

`string`

No properties in the specification — see the schema index for its form.

## MediaTypeType

`any of MediaTypeEnum | MediaTypeLiteral`

A code that (if set) can be used with the filter `plas.mediaTypes` to search on this media type.

No properties in the specification — see the schema index for its form.

## PatronConsent

`object`

- `available` (`array of object`, required) — The array must only contain one consent of each type.
- `evaluated` ([`PatronEvaluatedConsents`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronEvaluatedConsents), required)

## PatronConsentType

`string enum`
`loan_history`

No properties in the specification — see the schema index for its form.

## PatronEvaluatedConsent

`object`

- `given` (`boolean`, required)
- `type` ([`PatronConsentType`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronConsentType), required)
- `version` (`string`, required) — The version of the consent that the patron has made a choice for or against.

## PatronEvaluatedConsents

`array of PatronEvaluatedConsent`

The array must only contain one consent of each type.

No properties in the specification — see the schema index for its form.

## PatronFee

`object`

- `amount` ([`FeeAmount`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeAmount), required)
- `createdTime` ([`FeeCreatedTime`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeCreatedTime), required)
- `currency` ([`FeeCurrency`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeCurrency), required)
- `dueDate` ([`FeeDueDate`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeDueDate), optional)
- `id` ([`FeeId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeId), required)
- `items` ([`array of FeeItem`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeItem), optional) — The items this fee covers, if they are known.
- `payableState` ([`FeePayableState`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeePayableState), required)
- `remainingAmount` ([`FeeRemainingAmount`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeRemainingAmount), optional)
- `type` ([`FeeType`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#FeeType), required)

## PatronList

`object`

- `id` (`string`, required) — The ID of the list.
- `name` (`string`, required) — The name of the list.

## PatronListBaseItem

`object`

- `id` (`string`, required) — The unique ID of the item in the list.

## PatronListItem

`one of PatronListItemWorkAndPublication`

No properties in the specification — see the schema index for its form.

## PatronListItemWorkAndPublication

`all of PatronListBaseItem + object`

No properties in the specification — see the schema index for its form.

## PatronLoan

`object`

- `acquiredFrom` ([`PatronLoanAcquiredFrom`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronLoanAcquiredFrom), optional)
- `createdTime` ([`LoanCreatedTime`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanCreatedTime), required)
- `dueDate` ([`LoanDueDate`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanDueDate), required)
- `id` ([`LoanId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanId), required)
- `itemId` ([`LoanItemId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanItemId), required)
- `location` ([`CheckOutOrInLocationWithoutNames`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#CheckOutOrInLocationWithoutNames), optional)
- `publicationId` ([`LoanPublicationId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanPublicationId), required)
- `publicationMetadata` ([`PublicationFallback`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationFallback), optional)
- `renew` ([`LoanRenewInfo`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanRenewInfo), required)

## PatronLoanAcquiredFrom

`one of PatronLoanAcquiredFromTypeLocalCirculation | PatronLoanAcquiredFromTypeInterlibraryLoan | PatronLoanAcquiredFromTypeUnknown`

This tells from where (the material for) this loan was acquired.  
If this field are missing, the default value **local_circulation** should be assumed. 
* **local_circulation**: Meaning that this loan was acquired from the customers own inventory.
* **interlibrary_loan**: Meaning that this loan was acquired as a interlibrary loan.
* **unknown**: Meaning that this information is unknown.


No properties in the specification — see the schema index for its form.

## PatronLoanAcquiredFromTypeInterlibraryLoan

`object`

- `type` (`string enum`, required) — `interlibrary_loan`

## PatronLoanAcquiredFromTypeLocalCirculation

`object`

- `type` (`string enum`, required) — `local_circulation`

## PatronLoanAcquiredFromTypeUnknown

`object`

- `type` (`string enum`, required) — `unknown`

## PatronLoanHistory

`object`

- `acquiredFrom` ([`PatronLoanAcquiredFrom`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronLoanAcquiredFrom), optional)
- `addedToHistoryTime` (`string (date-time)`, required) — The date and time when the loan was added to the patron loan history.
- `checkinTime` (`string (date-time)`, optional) — The date and time the loan was checkin.
- `checkoutTime` ([`LoanCreatedTime`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanCreatedTime), optional)
- `dueDate` (`string (date)`, optional) — The due date of the loan at the time of checkin.
- `id` (`string`, required) — This is the loan history ID (not the loan ID).
- `itemId` ([`LoanItemId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanItemId), optional)
- `loanId` ([`LoanId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanId), optional)
- `manuallyAdded` (`boolean`, required) — Was the loan added manually by the patron.
- `publicationId` ([`LoanPublicationId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LoanPublicationId), required)
- `publicationMetadata` ([`PublicationFallback`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationFallback), optional)

## PatronReservation

`object`

- `createdTime` ([`ReservationCreatedTime`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationCreatedTime), required)
- `expirationDate` ([`ReservationExpirationDate`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationExpirationDate), optional)
- `fulfillmentBy` ([`PatronReservationFulfillmentBy`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PatronReservationFulfillmentBy), optional)
- `id` ([`ReservationId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationId), required)
- `itemId` ([`ReservationItemId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationItemId), optional)
- `pickup` (`object`, required)
- `publicationId` ([`ReservationPublicationId`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationPublicationId), required)
- `publicationMetadata` ([`PublicationFallback`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationFallback), optional)
- `queueNumber` ([`ReservationQueueNumber`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationQueueNumber), optional)
- `state` ([`ReservationState`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#ReservationState), required)

## PatronReservationFulfillmentBy

`one of PatronReservationFulfillmentByTypeLocalCirculation | PatronReservationFulfillmentByTypeInterlibraryLoan | PatronReservationFulfillmentByTypePurchase | PatronReservationFulfillmentByTypeUnknown`

This tells from where the material that are expected to fulfill this reservation will be acquired from.
If this field are missing, the default value **local_circulation** should be assumed. 
* **local_circulation**: (default) Meaning that this reservation will be fulfilling from the customers own inventory.
* **interlibrary_loan**: Meaning that this reservation will be fulfilled as a interlibrary loan.
* **purchase**: Meaning that reservation can not be fulfilled right away, but a request to purchase the material has been submitted.
* **unknown**: Meaning that this information is unknown.


No properties in the specification — see the schema index for its form.

## PatronReservationFulfillmentByTypeInterlibraryLoan

`object`

- `type` (`string enum`, required) — `interlibrary_loan`

## PatronReservationFulfillmentByTypeLocalCirculation

`object`

- `type` (`string enum`, required) — `local_circulation`

## PatronReservationFulfillmentByTypePurchase

`object`

- `type` (`string enum`, required) — `purchase`

## PatronReservationFulfillmentByTypeUnknown

`object`

- `type` (`string enum`, required) — `unknown`

## PickupLocation

`object`

The object tells a location where a reservation item can be picked up.
The `sections` is for specifying the location more precisely.

The branch name and section names are included in the response to make it easier to display the location. They are the same values as from the /locations endpoint.


- `branchId` (`string`, required) — The branch ID where a reservation should be picked up.
- `branchName` (`string`, required) — This is the name of the branch.
- `sections` ([`array of LocationSectionElementWithIdNameAndType`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#LocationSectionElementWithIdNameAndType), optional) — This are specifying the location more precisely.

## Publication

`object`

- `additionalIdentifiers` ([`PublicationAdditionalIdentifiers`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationAdditionalIdentifiers), optional)
- `binding` ([`Binding`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Binding), optional)
- `contributors` ([`PublicationContributors`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationContributors), optional)
- `creators` ([`PublicationCreators`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationCreators), optional)
- `edition` ([`Edition`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Edition), optional)
- `extent` ([`PublicationExtent`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationExtent), optional)
- `identifier` ([`PublicationIdentifier`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationIdentifier), required)
- `images` ([`PublicationImages`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationImages), optional)
- `language` ([`PublicationLanguage`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationLanguage), optional)
- `mediaTypes` ([`PublicationMediaTypes`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationMediaTypes), optional)
- `publicationDate` ([`Date`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Date), optional) — Date of publication.
- `publishers` ([`array of PublisherAndPlaces`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublisherAndPlaces), optional) — List of publishers and associated place(s) of publication.
- `titles` ([`PublicationTitles`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationTitles), required)
- `works` ([`array of PublicationWork`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationWork), required)

## PublicationAdditionalIdentifiers

`array of AdditionalIdentifier`

Other identifiers, like: ISBN, ISSN, ...


No properties in the specification — see the schema index for its form.

## PublicationContributors

`array of Contributor`

The contributor(s) to the publication.

No properties in the specification — see the schema index for its form.

## PublicationCreators

`array of Contributor`

The creator(s) of the publication.

No properties in the specification — see the schema index for its form.

## PublicationExtent

`array of Extent`

Together all the Extents in the array describes the total extent of the publication.

No properties in the specification — see the schema index for its form.

## PublicationFallback

`Publication`

This metadata is only intended as fallback data, for when the provider is not able to serve the metadata through the GET /publication endpoint. 

This can for some provider be the case when working with e.g. interlibrary loans.


No properties in the specification — see the schema index for its form.

## PublicationIdentifier

`string`

Publication identifier. This is searchable through the GET /publication endpoint.

No properties in the specification — see the schema index for its form.

## PublicationImages

`array of ImagePublication`

Images to use with the publication.

No properties in the specification — see the schema index for its form.

## PublicationLanguage

`array of Language`

This is the language(s) of the this publication. If the publication uses multi languages this will also contain them.

No properties in the specification — see the schema index for its form.

## PublicationMediaTypes

`array of MediaType`

No properties in the specification — see the schema index for its form.

## PublicationTitles

`array of Title`

Title of the publication.

No properties in the specification — see the schema index for its form.

## PublicationWork

`object`

- `identifier` ([`PublicationWorkIdentifier`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationWorkIdentifier), required)
- `relation` ([`PublicationWorkRelation`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublicationWorkRelation), optional)

## PublicationWorkIdentifier

`string`

Work identifier of this publication. This is searchable through the GET /work endpoint.

No properties in the specification — see the schema index for its form.

## PublicationWorkRelation

`string enum`
`contains` · `embodies`

Describes the publications relation to a work.  
- contains: The publication contains this work, meaning the work is part of the publication.  
- embodies: The publication embodies this work, meaning the publication is the entire work.


No properties in the specification — see the schema index for its form.

## Publisher

`object`

- `id` (`string`, optional) — The unique identifier of the publisher. It can be used to search for the other entries by the publisher
- `name` (`string`, required) — The publisher's name.

## PublisherAndPlaces

`object`

- `places` ([`array of PublisherPlace`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#PublisherPlace), optional) — Place of publication. Usually one place, but can be multiple.
- `publisher` ([`Publisher`](https://plas.redia.dk/en/vendor/v0.6.5/schemas/#Publisher), required)

## PublisherPlace

`object`

- `place` (`string`, required)

## ReservationCreatedTime

`string (date-time)`

The date and time the reservation was created.

No properties in the specification — see the schema index for its form.

## ReservationExpirationDate

`string (date)`

The date when the reservation expires. If this is missing, the value is unknown.

No properties in the specification — see the schema index for its form.

## ReservationId

`string`

This is the reservation ID.

No properties in the specification — see the schema index for its form.

## ReservationItemId

`string`

This is the item identifier that actually fulfills the reservation. This can often only be set when the reservation is ready for pickup. If the reservation is on item level, it can be set earlier.

No properties in the specification — see the schema index for its form.

## ReservationPickupExpirationDate

`string (date)`

The date for the last chance to pick up the reservation. If this is missing, the value is unknown.

No properties in the specification — see the schema index for its form.

## ReservationPickupNote

`string`

This is the note that is used to tell the patron where to get the reservation.  
E.g. 
- a shelf number, e.g. "Shelf 9".
- an instruction, e.g. "Front desk"
- an identifier, e.g. "10/114"


No properties in the specification — see the schema index for its form.

## ReservationPublicationId

`string`

This is the publication ID of the reservation. If this is empty, the publication is unknown.

No properties in the specification — see the schema index for its form.

## ReservationQueueNumber

`integer`

The queue number tells what number in the queue the patron is. If this is missing, it represents that the queue number is unknown.

No properties in the specification — see the schema index for its form.

## ReservationState

`string enum`
`ready_for_pickup` · `in_queue` · `postponed`

This represents where in the acquiring process this reservation is.

No properties in the specification — see the schema index for its form.

## Title

`one of TitleTypePreferred | TitleTypeVariant | TitleTypeParallel | TitleTypeOriginal`

No properties in the specification — see the schema index for its form.

## TitleTypeOriginal

`all of BasicTitle + object`

No properties in the specification — see the schema index for its form.

## TitleTypeParallel

`all of BasicTitle + object`

No properties in the specification — see the schema index for its form.

## TitleTypePreferred

`all of BasicTitle + object`

No properties in the specification — see the schema index for its form.

## TitleTypeVariant

`all of BasicTitle + object`

No properties in the specification — see the schema index for its form.

## Version

`string`

Open Library API version.

No properties in the specification — see the schema index for its form.
