Schemas
Every named schema in the specification, one level deep. A field that points at another schema links to it rather than being expanded, so each schema is described in one place.
154 schemas · Generated from vendor_v0_6_6.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
- string
A contribution role code from the MARC Code List for Relators.
- typerequired
- string enummarcRelator
Identifies the role code as being part of MARC Code List for Relators.
AgentTypeCollective
all of BaseAgent + object AgentTypePerson
all of BaseAgent + object Amount
integerThe amount is in minor unit (see ISO 4217).
BaseAgent
- description
- string
This is a description of the agent.
- fullNamerequired
- string
This is the full name of the agent.
- id
- string
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.agentto search on this agent.
- images
- array of ImageAgent
Images of the agent.
BaseEventItem
- eventIdrequired
- string
A unique identifier for the event.
- typerequired
- string
The type of event.
BasicTitle
- language
- Language
The language of the titles in the object.
- mainrequired
- string
This is the main title.
- part
- object
This contains the information to distinguish the work.
- remainder
- string
This 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
- string
A 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
- string
This is the item ID of the checked in item.
- loanIdrequired
- LoanId
- patronId
- string
This is the patron ID of the patron that made the checkin.
- publicationId
- string
This is the publication ID of the checkin item.
- publicationMetadata
- PublicationFallback
- sortingCode
- string
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.
- transactionDateTimerequired
- string (date-time)
This is the registered time and date of the checkin.
CheckinFieldWithRequiredPatronId
all of CheckinField + object CheckinResponseBody
- checkinrequired
- CheckinField
- completed
- boolean
This tells if the checkin was completed or not. It is only true if the checkin was completed, else it is false.
- message
- CheckOutOrInMessage
- requestIdrequired
- string
This is a unique identifier for the checkout request. This will change for each request.
- statusrequired
- string enumcompleted · failed
This tells the status of the checkin.
The status are:
completedmeans that the checkin went well and was completed.failedmeans that the checkin failed, and the item was not checked in.
CheckinWithRequiredPatronIdResponseBody
all of CheckinResponseBody + object CheckoutAcknowledgementType
- typerequired
- string
This 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
- string
This is the item ID of the checkout item.
- loanIdrequired
- LoanId
- patronIdrequired
- string
This is the patron ID of the patron that made the checkout.
- publicationId
- string
This 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
- string
The branch ID where the checkout or checkin was made.
- sections
- array of LocationSectionElementWithIdNameAndType
This is specifying the location more precisely.
CheckOutOrInMessage
Both type and text are optional, but at least one of them must be set.
- text
- string
Message to the patron.
- type
- string
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
- acknowledgement
- object
If this is set, the checkout needs to be acknowledged to be completed.
- checkoutrequired
- CheckoutField
- message
- CheckOutOrInMessage
- requestIdrequired
- string
This is an unique identifier for the checkout request. This will change for each request.
- statusrequired
- string enumcompleted · failed
This tells the status of the checkout.
The status are:
completedmeans that the checkout went well and was completed.failedmeans that the checkout failed, and the item was not checked out.
Contributor
- agentrequired
- Agent
- roles
- array of AgentRole
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 DateTypeCentury
The *century* date can be used if we only know which century an event happened.
- beforeTheCommonEra
- boolean
The default value is false, meaning common era, otherwise before the common era.
- centuryrequired
- integer
The 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
- integer
Eg. 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
- integer
Eg. 1924
- to
- integer
Eg. 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
- string
A displayable (human readable) representation of the edition.
EditionTypeNumbering
- display
- string
A displayable (human readable) representation of the edition.
- numberrequired
- integer
The edition number.
- printing
- integer
The printing number of the edition.
- typerequired
- string enumnumbering
Error
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 Error
The 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
- string
A displayable (human readable) representation of the extent.
ExtentTypePages
- pagesrequired
- integer
Number of physical pages.
- typerequired
- string enumpages
ExtentTypePlaytime
- playtimerequired
- integer
The total playtime in seconds.
- typerequired
- string enumplaytime
ExtentTypeUnits
- typerequired
- string enumunits
- unitTyperequired
- string enumvolume · dvd · cd · bluRay · cassette · lp
- unitsrequired
- integer
Number 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
- string
The 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
- Version
This 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
- integer
The image height in px.
- mime
- string enumpng · jpeg
- urlrequired
- string
- width
- integer
The image width in px.
Language
- coderequired
- string
A id that (if set) can be used with the filter
plas.languageto search on this genre.Codes can be found at <https://www.loc.gov/marc/languages/>
- name
- string
A 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
- integer
The 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
- string
This is the section (element) ID
LocationSectionElementWithIdAndName
all of LocationSectionElementWithId + object LocationSectionElementWithIdNameAndType
all of LocationSectionElementWithIdAndName + object MediaType
- code
- MediaTypeType
- namerequired
- string
A 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 object
The array must only contain one consent of each type.
- evaluatedrequired
- PatronEvaluatedConsents
PatronConsentType
any of PatronConsentTypeEnum | PatronConsentTypeLiteral PatronConsentTypeEnum
string enum loan_history PatronConsentTypeLiteral
string PatronEvaluatedConsent
- givenrequired
- boolean
- typerequired
- PatronConsentType
- versionrequired
- string
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.
PatronFee
- amountrequired
- FeeAmount
- createdTimerequired
- FeeCreatedTime
- currencyrequired
- FeeCurrency
- dueDate
- FeeDueDate
- idrequired
- FeeId
- items
- array of FeeItem
The items this fee covers, if they are known.
- payableStaterequired
- FeePayableState
- remainingAmount
- FeeRemainingAmount
- typerequired
- FeeType
PatronList
- idrequired
- string
The ID of the list.
- namerequired
- string
The name of the list.
PatronListBaseItem
- idrequired
- string
The 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
- string
This is the loan history ID (not the loan ID).
- itemId
- LoanItemId
- loanId
- LoanId
- manuallyAddedrequired
- boolean
Was 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
- string
The branch ID where a reservation should be picked up.
- branchNamerequired
- string
This is the name of the branch.
- sections
- array of LocationSectionElementWithIdNameAndType
This 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
- Date
Date of publication.
- publishers
- array of PublisherAndPlaces
List 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 · embodiesPublisher
- id
- string
The unique identifier of the publisher. It can be used to search for the other entries by the publisher
- namerequired
- string
The publisher's name.
PublisherAndPlaces
- places
- array of PublisherPlace
Place 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 · postponedTitle
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
stringOpen Library API version.