English

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.

152 schemas · Generated from vendor_v0_6_5.yaml Each field is listed as name, then type, then description. A type that names another schema links to it.

AdditionalIdentifier

one of AdditionalIdentifierTypeISBN | AdditionalIdentifierTypeISSN | AdditionalIdentifierTypeEAN | AdditionalIdentifierTypeBibsentBibbi

AdditionalIdentifierTypeBibsentBibbi

typerequired
string enumbibsentBibbi
valuerequired
string

AdditionalIdentifierTypeEAN

digitsrequired
string enum13
typerequired
string enumean
valuerequired
string

AdditionalIdentifierTypeISBN

digitsrequired
string enum10 · 13
typerequired
string enumisbn
valuerequired
string

AdditionalIdentifierTypeISSN

typerequired
string enumissn
valuerequired
string

Agent

one of AgentTypePerson | AgentTypeCollective

AgentPersonActiveLiteral

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.

typerequired
string enumliteral
valuerequired
string

AgentRole

one of AgentRoleMarcRelator

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

AgentRoleMarcRelator

roleCoderequired
stringA contribution role code from the MARC Code List for Relators.
typerequired
string enummarcRelatorIdentifies 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

AgentTypePerson

all of BaseAgent + object

Amount

integer

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

BaseAgent

description
stringThis is a description of the agent.
fullNamerequired
stringThis is the full name of the agent.
id
stringThis 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 ImageAgentImages of the agent.

BaseEventItem

eventIdrequired
stringA unique identifier for the event.
typerequired
stringThe type of event.

BasicTitle

language
LanguageThe language of the titles in the object.
mainrequired
stringThis is the main title.
part
objectThis contains the information to distinguish the work.
remainder
stringThis is the remainder of the title.

Binding

one of BindingTypeLiteral

BindingTypeLiteral

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

typerequired
string enumliteral
valuerequired
stringA displayable (human readable) representation of the binding.

CheckinField

acquiredFrom
PatronLoanAcquiredFrom
dueDate
string (date)This is the due date of the checkin item, meaning the date where item should (at the latest) be returned.
itemIdrequired
stringThis is the item ID of the checked in item.
loanIdrequired
LoanId
patronId
stringThis is the patron ID of the patron that made the checkin.
publicationId
stringThis is the publication ID of the checkin item.
publicationMetadata
PublicationFallback
sortingCode
stringThis 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.
transactionDateTimerequired
string (date-time)This is the registered time and date of the checkin.

CheckinFieldWithRequiredPatronId

all of CheckinField + object

CheckinResponseBody

checkinrequired
CheckinField
completed
booleanThis tells if the checkin was completed or not. It is only true if the checkin was completed, else it is false.
message
CheckOutOrInMessage
requestIdrequired
stringThis is a unique identifier for the checkout request. This will change for each request.
statusrequired
string enumcompleted · failedThis 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

CheckoutAcknowledgementType

typerequired
stringThis is the type of what is to be acknowledged.

CheckoutAcknowledgementTypeFee

all of CheckoutAcknowledgementType + object

CheckoutAcknowledgementTypePreviouslyCheckedOut

all of CheckoutAcknowledgementType + object

CheckoutField

acquiredFrom
PatronLoanAcquiredFrom
dueDaterequired
string (date)This is the due date of the checked out item.
itemIdrequired
stringThis is the item ID of the checkout item.
loanIdrequired
LoanId
patronIdrequired
stringThis is the patron ID of the patron that made the checkout.
publicationId
stringThis is the publication ID of the checkout item.
publicationMetadata
PublicationFallback
renew
LoanRenewInfo
transactionDateTimerequired
string (date-time)This is the registered time and date of the checkout.

CheckOutOrInLocationWithoutNames

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

branchIdrequired
stringThe branch ID where the checkout or checkin was made.
sections
array of LocationSectionElementWithIdNameAndTypeThis is specifying the location more precisely.

CheckOutOrInMessage

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

text
stringMessage to the patron.
type
stringThis 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

acknowledgement
objectIf this is set, the checkout needs to be acknowledged to be completed.
checkoutrequired
CheckoutField
message
CheckOutOrInMessage
requestIdrequired
stringThis is an unique identifier for the checkout request. This will change for each request.
statusrequired
string enumcompleted · failedThis 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

agentrequired
Agent
roles
array of AgentRoleList 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

DateTypeCentury

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

beforeTheCommonEra
booleanThe default value is *false*, meaning common era, otherwise before the common era.
centuryrequired
integerThe century e.g. 19 century CE (meaning 1801 CE to 1900 CE), 3 century BCE (meaning 300 BCE to 201 BCE)
typerequired
string enumcentury

DateTypeLiteral

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

typerequired
string enumliteral
valuerequired
string

DateTypeRFC3339

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

daterequired
string (date)RFC3339 _full-date_ format (YYYY-MM-DD).
typerequired
string enumrfc3339

DateTypeYear

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

typerequired
string enumyear
yearrequired
integerEg. 1924

DateTypeYearRange

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
integerEg. 1924
to
integerEg. 1979
typerequired
string enumyearRange

Edition

one of EditionTypeLiteral | EditionTypeNumbering

EditionTypeLiteral

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

typerequired
string enumliteral
valuerequired
stringA displayable (human readable) representation of the edition.

EditionTypeNumbering

display
stringA displayable (human readable) representation of the edition.
numberrequired
integerThe edition number.
printing
integerThe printing number of the edition.
typerequired
string enumnumbering

Error

coderequired
ErrorCode
inforequired
ErrorInfo

ErrorCode

integer enum

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>

500 · 600

ErrorInfo

string

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

Errors

errorsrequired
array of ErrorThe first error should always be the most relevant.

EventConsentChanged

all of BaseEventItem + object

EventFeeDueDateIsApproaching

all of BaseEventItem + object

EventItemAddedToLoanHistory

all of BaseEventItem + object

EventItemCheckin

all of BaseEventItem + object

EventItemCheckout

all of BaseEventItem + object

EventItemPatronListCreated

all of BaseEventItem + object

EventItemPatronListDeleted

all of BaseEventItem + object

EventItemPatronListItemAddedToList

all of BaseEventItem + object

EventItemPatronListItemMovedOnList

all of BaseEventItem + object

EventItemPatronListItemRemovedFromList

all of BaseEventItem + object

EventItemPatronListUpdated

all of BaseEventItem + object

EventItemRemovedFromLoanHistory

all of BaseEventItem + object

EventLoanDueDateIsApproaching

all of BaseEventItem + object

EventPatronDeleted

all of BaseEventItem + object

EventReadyReservationExpiresSoon

all of BaseEventItem + object

EventReceiverRequest

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

EventReservationExpiresSoon

all of BaseEventItem + object

EventReservationReadyForPickup

all of BaseEventItem + object

EventReservationReminder

all of BaseEventItem + object

Extent

one of ExtentTypeLiteral | ExtentTypePages | ExtentTypePlaytime | ExtentTypeUnits

ExtentTypeLiteral

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

typerequired
string enumliteral
valuerequired
stringA displayable (human readable) representation of the extent.

ExtentTypePages

pagesrequired
integerNumber of physical pages.
typerequired
string enumpages

ExtentTypePlaytime

playtimerequired
integerThe total playtime in seconds.
typerequired
string enumplaytime

ExtentTypeUnits

typerequired
string enumunits
unitTyperequired
string enumvolume · dvd · cd · bluRay · cassette · lp
unitsrequired
integerNumber of physical units (volumes, dvd, cd, ...)

FeeAmount

integer

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

FeeCreatedTime

string (date-time)

The date and time the fee was created.

FeeCurrency

string

ISO 4217

FeeDueDate

string (date)

The due date of the fee.

FeeId

string

This is the fee ID.

FeeItem

Item information related to a fee.

acquiredFrom
PatronLoanAcquiredFrom
itemIdrequired
stringThe item identifier of the item that the fee is about.
publicationMetadatarequired
PublicationFallback

FeePayableState

string enum

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.

payable · not_payable

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).

FeeType

string enum

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.

fee · compensation · send_to_debt_collector

GetVersionResponseBody

versionrequired
VersionThis is recommended (by the vendor) version of the Open Library API, that is supported by the vendor.

ImageAgent

one of ImageTypeAgent

ImagePublication

one of ImageTypeFrontCover | ImageTypeBackCover

ImageTypeAgent

all of ImageUrl + object

ImageTypeBackCover

all of ImageUrl + object

ImageTypeFrontCover

all of ImageUrl + object

ImageUrl

height
integerThe image height in px.
mime
string enumpng · jpeg
urlrequired
string
width
integerThe image width in px.

Language

coderequired
stringA 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
stringA displayable (human readable) value of the language.

LoanCreatedTime

string (date-time)

The date and time the loan was made.

LoanDueDate

string (date)

The latest date on which the loan must be returned.

LoanId

string

This is the loan ID.

LoanItemId

string

This is the item identifier of the checkout item.

LoanPublicationId

string

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

LoanRenewableState

string enum

This tells the renewable state of the loan.

renewable · not_renewable · renewable_later · unknown

LoanRenewInfo

This contain information about renewal of the loan.

count
integerThe number of times this loan can still be renewed. If the field is missing, this information is unknown.
lastDate
string (date)The date when the loan was last renewed. If the field is missing, this information is unknown.
staterequired
LoanRenewableState

LocationSectionElementType

string

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

LocationSectionElementWithId

idrequired
stringThis is the section (element) ID

LocationSectionElementWithIdAndName

all of LocationSectionElementWithId + object

LocationSectionElementWithIdNameAndType

all of LocationSectionElementWithIdAndName + object

MediaType

code
MediaTypeType
namerequired
stringA displayable (human readable) representation of the media type.

MediaTypeEnum

string enum book · eBook · audiobook

MediaTypeLiteral

string

MediaTypeType

any of MediaTypeEnum | MediaTypeLiteral

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

PatronConsent

availablerequired
array of objectThe array must only contain one consent of each type.
evaluatedrequired
PatronEvaluatedConsents

PatronConsentType

string enum loan_history

PatronEvaluatedConsent

givenrequired
boolean
typerequired
PatronConsentType
versionrequired
stringThe 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.

PatronFee

amountrequired
FeeAmount
createdTimerequired
FeeCreatedTime
currencyrequired
FeeCurrency
dueDate
FeeDueDate
idrequired
FeeId
items
array of FeeItemThe items this fee covers, if they are known.
payableStaterequired
FeePayableState
remainingAmount
FeeRemainingAmount
typerequired
FeeType

PatronList

idrequired
stringThe ID of the list.
namerequired
stringThe name of the list.

PatronListBaseItem

idrequired
stringThe unique ID of the item in the list.

PatronListItem

one of PatronListItemWorkAndPublication

PatronListItemWorkAndPublication

all of PatronListBaseItem + object

PatronLoan

acquiredFrom
PatronLoanAcquiredFrom
createdTimerequired
LoanCreatedTime
dueDaterequired
LoanDueDate
idrequired
LoanId
itemIdrequired
LoanItemId
location
CheckOutOrInLocationWithoutNames
publicationIdrequired
LoanPublicationId
publicationMetadata
PublicationFallback
renewrequired
LoanRenewInfo

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.

PatronLoanAcquiredFromTypeInterlibraryLoan

typerequired
string enuminterlibrary_loan

PatronLoanAcquiredFromTypeLocalCirculation

typerequired
string enumlocal_circulation

PatronLoanAcquiredFromTypeUnknown

typerequired
string enumunknown

PatronLoanHistory

acquiredFrom
PatronLoanAcquiredFrom
addedToHistoryTimerequired
string (date-time)The date and time when the loan was added to the patron loan history.
checkinTime
string (date-time)The date and time the loan was checkin.
checkoutTime
LoanCreatedTime
dueDate
string (date)The due date of the loan at the time of checkin.
idrequired
stringThis is the loan history ID (not the loan ID).
itemId
LoanItemId
loanId
LoanId
manuallyAddedrequired
booleanWas the loan added manually by the patron.
publicationIdrequired
LoanPublicationId
publicationMetadata
PublicationFallback

PatronReservation

createdTimerequired
ReservationCreatedTime
expirationDate
ReservationExpirationDate
fulfillmentBy
PatronReservationFulfillmentBy
idrequired
ReservationId
itemId
ReservationItemId
pickuprequired
object
publicationIdrequired
ReservationPublicationId
publicationMetadata
PublicationFallback
queueNumber
ReservationQueueNumber
staterequired
ReservationState

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.

PatronReservationFulfillmentByTypeInterlibraryLoan

typerequired
string enuminterlibrary_loan

PatronReservationFulfillmentByTypeLocalCirculation

typerequired
string enumlocal_circulation

PatronReservationFulfillmentByTypePurchase

typerequired
string enumpurchase

PatronReservationFulfillmentByTypeUnknown

typerequired
string enumunknown

PickupLocation

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.

branchIdrequired
stringThe branch ID where a reservation should be picked up.
branchNamerequired
stringThis is the name of the branch.
sections
array of LocationSectionElementWithIdNameAndTypeThis are specifying the location more precisely.

Publication

additionalIdentifiers
PublicationAdditionalIdentifiers
binding
Binding
contributors
PublicationContributors
creators
PublicationCreators
edition
Edition
extent
PublicationExtent
identifierrequired
PublicationIdentifier
images
PublicationImages
language
PublicationLanguage
mediaTypes
PublicationMediaTypes
publicationDate
DateDate of publication.
publishers
array of PublisherAndPlacesList of publishers and associated place(s) of publication.
titlesrequired
PublicationTitles
worksrequired
array of PublicationWork

PublicationAdditionalIdentifiers

array of AdditionalIdentifier

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

PublicationContributors

array of Contributor

The contributor(s) to the publication.

PublicationCreators

array of Contributor

The creator(s) of the publication.

PublicationExtent

array of Extent

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

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.

PublicationIdentifier

string

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

PublicationImages

array of ImagePublication

Images to use with the publication.

PublicationLanguage

array of Language

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

PublicationMediaTypes

array of MediaType

PublicationTitles

array of Title

Title of the publication.

PublicationWork

identifierrequired
PublicationWorkIdentifier
relation
PublicationWorkRelation

PublicationWorkIdentifier

string

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

PublicationWorkRelation

string enum

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.

contains · embodies

Publisher

id
stringThe unique identifier of the publisher. It can be used to search for the other entries by the publisher
namerequired
stringThe publisher's name.

PublisherAndPlaces

places
array of PublisherPlacePlace of publication. Usually one place, but can be multiple.
publisherrequired
Publisher

PublisherPlace

placerequired
string

ReservationCreatedTime

string (date-time)

The date and time the reservation was created.

ReservationExpirationDate

string (date)

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

ReservationId

string

This is the reservation ID.

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.

ReservationPickupExpirationDate

string (date)

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

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"

ReservationPublicationId

string

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

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.

ReservationState

string enum

This represents where in the acquiring process this reservation is.

ready_for_pickup · in_queue · postponed

Title

one of TitleTypePreferred | TitleTypeVariant | TitleTypeParallel | TitleTypeOriginal

TitleTypeOriginal

all of BasicTitle + object

TitleTypeParallel

all of BasicTitle + object

TitleTypePreferred

all of BasicTitle + object

TitleTypeVariant

all of BasicTitle + object

Version

string

Open Library API version.