Hvert navngitt skjema i spesifikasjonen, ett nivå dypt. Et felt som peker på et annet skjema, lenker til det i stedet for å bli foldet ut, så hvert skjema er beskrevet ett sted.

420 skjemaer · Generert fra provider_v0_6_7.yaml Hvert felt står som navn, deretter type, deretter beskrivelse. En type som navngir et annet skjema, lenker til det.

AddItemToPatronListRequestBody

PatronListItem

AdditionalIdentifier

one of AdditionalIdentifierTypeISBN | AdditionalIdentifierTypeISSN | AdditionalIdentifierTypeEAN | AdditionalIdentifierTypeBibsentBibbi

AdditionalIdentifierTypeBibsentBibbi

typepåkrevd
string enumbibsentBibbi
valuepåkrevd
string

AdditionalIdentifierTypeEAN

digitspåkrevd
string enum13
typepåkrevd
string enumean
valuepåkrevd
string

AdditionalIdentifierTypeISBN

digitspåkrevd
string enum10 · 13
typepåkrevd
string enumisbn
valuepåkrevd
string

AdditionalIdentifierTypeISSN

typepåkrevd
string enumissn
valuepåkrevd
string

AddLoanToPatronLoanHistoryRequestBody

acquiredFrom
PatronLoanAcquiredFrom
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.

itemId
LoanItemId
loanId
LoanId
manuallyAddedpåkrevd
boolean

Was the loan added manually by the patron.

publicationIdpåkrevd
LoanPublicationId
publicationMetadata
PublicationFallback

Address

citypåkrevd
string

This field refers to the city, town, or locality where the address is located.

country
string

This field specifies the name of the country where the address is located.

postalCode
string

This field represents the numeric or alphanumeric code assigned to a specific area for efficient mail sorting and delivery.

streetpåkrevd
string

This field represents the name of the road, street, or thoroughfare where the address is located.
The field should also contain the building number assigned to a building at the location, and the field should also contain identifiers such as apartment numbers, suite numbers, or floor numbers.

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.

typepåkrevd
string enumliteral
valuepåkrevd
string

AgentRole

one of AgentRoleMarcRelator

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

AgentRoleMarcRelator

roleCodepåkrevd
string

A contribution role code from the MARC Code List for Relators.

typepåkrevd
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

AllDayScheduling

All-day event scheduling information

endDatepåkrevd
string (date)

End date in RFC3339 full-date format.

startDatepåkrevd
string (date)

Start date in RFC3339 full-date format.

typepåkrevd
string enumall_day

Type of scheduling for all-day events

Amount

integer

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

Audience

one of AudienceTypeLiteral | AudienceTypeAgeRange | AudienceTypeAgeGroup

AudienceTypeAgeGroup

codepåkrevd
AudienceTypeAgeGroupCode
name
string

A displayable (human readable) audience group name.

typepåkrevd
string enumageGroup

AudienceTypeAgeGroupCode

any of AudienceTypeAgeGroupCodeEnum | AudienceTypeAgeGroupCodeLiteral

A code that (if set) can be used with the filter `plas.audience.ageGroup` to search on this age group.

AudienceTypeAgeGroupCodeEnum

string enum child · youngAdult · adult

AudienceTypeAgeGroupCodeLiteral

string

AudienceTypeAgeRange

*from* and *to* isn't required, but a least one of them should be set.

code
string

A code that (if set) can be used with the filter plas.audience.ageRange to search on this age range.
The formatting is "from:to", "form:*" or "*:to" (replace the form and to value)

from
integer
to
integer
typepåkrevd
string enumageRange

AudienceTypeLiteral

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

code
string

A code that (if set) can be used with the filter plas.audience.literal to search on this audience literal.

typepåkrevd
string enumliteral
valuepåkrevd
string

A displayable (human readable) audience literal.

AuthenticationClientAccessToken

string

The access token string, as issued by the authorization server. It is strongly recommended that this token be a JWT so that it can be validated by a business partner, if e.g. the search API is delegated.

AuthenticationClientCredentialsRequestBody

all of OAuthClientIdAndSecret + object

AuthenticationClientExpiresIn

integer

The duration (in seconds) of time the access token is granted for.

AuthenticationClientResponseBody

access_tokenpåkrevd
AuthenticationClientAccessToken
expires_inpåkrevd
AuthenticationClientExpiresIn
token_typepåkrevd
AuthenticationClientTokenType

AuthenticationClientTokenType

string enum

The type of the token.

Bearer

BaseAgent

description
string

This is a description of the agent.

fullNamepåkrevd
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.agent to search on this agent.
images
array of ImageAgent

Images of the agent.

BaseSuggestionAgent

fullNamepåkrevd
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.

images
array of ImageAgent

Images of the agent.

BasicTitle

language
Language

The language of the titles in the object.

mainpåkrevd
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.

typepåkrevd
string enumliteral
valuepåkrevd
string

A displayable (human readable) representation of the binding.

CallbackConsent

Decoded representation of a callback consent parameter, for use in the registration request body.

typepåkrevd
PatronConsentType
versionpåkrevd
string

The version of the consent, decoded from the callback consent parameter.

ChangePatronCredentialRequestBody

one of ChangePatronPasswordRequestBody | ChangePatronPinRequestBody

Which credential is being changed is told by `credential`, and the current and new values are named after that credential, so that a password and a pin code can never be confused for one another.

ChangePatronPasswordRequestBody

credentialpåkrevd
string enumpassword
currentPasswordpåkrevd
all of PatronPassword + unknown
newPasswordpåkrevd
all of PatronPassword + unknown

ChangePatronPinRequestBody

credentialpåkrevd
string enumpin
currentPinpåkrevd
all of PatronPin + unknown
newPinpåkrevd
all of PatronPin + unknown

CheckinCompleted

all of CheckinResponseBase + object

The item was checked in.

CheckinFailed

all of CheckinResponseBase + object

The item was not checked in, and sending the same checkin again right away will not change that.

CheckinFailureReason

any of CheckinFailureReasonEnum | CheckinFailureReasonLiteral

Why the item was not checked in. This is an open enum, so values other than the known ones are allowed. A vendor that does not know a value should treat it as `unknown` and show `message` to the patron.

CheckinFailureReasonEnum

string enum

The known reasons a checkin can fail: - `item_not_found` the item ID is not known to the provider. - `item_not_on_loan` the item is not on loan, so there is nothing to check in. - `item_belongs_to_other_library` the item cannot be received here, e.g. an interlibrary loan. - `unknown` the provider cannot say why, see `message`. An offline checkin can only fail with `item_not_found` or `item_not_on_loan`, see `checkin.offline`.

item_not_found · item_not_on_loan · item_belongs_to_other_library · unknown

CheckinFailureReasonLiteral

string

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.

fees
array of PatronFee

The fees the library registered on the patron as part of this checkin, e.g. an overdue fine created because the item came back after dueDate. Send an empty array when the checkin created no fee. Leave the field out only when the provider cannot tell whether a fee was created, e.g. when fines are calculated later by a separate process.

itemIdpåkrevd
string

This is the item ID of the checked in item.

loanIdpåkrevd
LoanId
needsStaff
boolean

True when a person has to look at this item, e.g. it is damaged, or it is not the item the provider expected.

Do not set it for a reservation or for an item that belongs to another branch. Those are about where the item goes, not about something being wrong with it.

If the field is missing, the default is false.

patronId
string

The patron who had the item on loan. Leave the field out when the provider does not disclose it, or when the loan was not to a patron, e.g. an interlibrary loan.

permanentLocation
CheckinPermanentLocation
publicationIdpåkrevd
string

This is the publication ID of the checkin item. A vendor needs it to show or print a title.

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.

PLAS defines no values for this field, they are agreed between a provider and the vendors integrating with it. It is for providers whose sorters already run on a code of their own.

A provider that also serves SIP2 can put the same value here that it puts in sort bin (CL). It is the same idea: a bin value that the library, the provider and the sorter supplier agree on between them.

transactionDateTimepåkrevd
string (date-time)

This is the registered time and date of the checkin.

CheckinPermanentLocation

CheckOutOrInLocationWithoutNames

The location where the item is normally kept. A sorter uses it to route the item after a checkin: an item whose permanent location is another branch goes to that branch.

CheckinRequestBody

checkinpåkrevd
object

CheckinResponseBase

message
CheckOutOrInMessage
requestIdpåkrevd
string

This is a unique identifier for the checkin request. This will change for each request.
It is meant for correlating logs.

statuspåkrevd
string

This tells the outcome of the checkin, and which other fields are present.

CheckinResponseBody

one of CheckinCompleted | CheckinFailed

The outcome of the checkin. The `status` field says which shape the rest of the body has: - `completed` the item was checked in, and `checkin` holds the result. - `failed` the item was not checked in, and `reason` says why.

CheckoutAcknowledgement

What the patron must accept before the checkout can be carried out. The `code` covers everything in `conditions`. One code, one round trip: the provider must put every outstanding item in `conditions` rather than asking for them one at a time, and must not answer a checkout carrying a valid code with another `needs_acknowledgement`. The `code` is single use, and the provider must reject it if what `conditions` described has changed since it was issued. `expiresAt` says how long it stays valid. A checkout carrying a code the provider does not accept, expired included, is answered `failed` with the reason `acknowledgement_rejected`, and the vendor starts over by sending the checkout without `acknowledgement`. There is no message field here. Anything the patron has to accept is an entry in `conditions`, including plain text, which is `CheckoutAcknowledgementTypeMessage`. A note about the checkout that the patron does not have to accept goes in `message` on the response instead.

codepåkrevd
string

This code must be included in the checkout request in order for the checkout to be completed.

conditionspåkrevd
array of one of CheckoutAcknowledgementTypeFee | CheckoutAcknowledgementTypePreviouslyCheckedOut | CheckoutAcknowledgementTypeMessage

Everything the patron must accept, in one list. A vendor must show all of it to the patron, and then send the checkout again with the single code that covers the whole list.

A provider that needs the patron to accept something PLAS does not model puts it here as a message entry.

expiresAtpåkrevd
string (date-time)

When the code stops being valid.

CheckoutAcknowledgementType

typepåkrevd
string

This is the type of what is to be acknowledged.

CheckoutAcknowledgementTypeFee

all of CheckoutAcknowledgementType + object

A lending fee the patron must accept before the item is checked out.

CheckoutAcknowledgementTypeMessage

all of CheckoutAcknowledgementType + object

Something the patron must accept that PLAS does not model as its own type, e.g. a local lending condition. The text is shown to the patron as it is, so it must be in the language asked for in `ui_language`.

CheckoutAcknowledgementTypePreviouslyCheckedOut

all of CheckoutAcknowledgementType + object

The patron has had this title before and must accept borrowing it again.

CheckoutCompleted

all of CheckoutResponseBase + object

The item was checked out, and the loan exists.

CheckoutFailed

all of CheckoutResponseBase + object

The item was not checked out, and sending the same checkout again right away will not change that.

CheckoutFailureReason

any of CheckoutFailureReasonEnum | CheckoutFailureReasonLiteral

Why the item was not checked out. This is an open enum, so values other than the known ones are allowed. A vendor that does not know a value should treat it as `unknown` and show `message` to the patron.

CheckoutFailureReasonEnum

string enum

The known reasons a checkout can fail: - `item_not_found` the item ID is not known to the provider. - `item_not_lendable` the item exists, but is not for loan. - `item_on_loan` the item is already on loan to another patron. - `item_reserved_for_other_patron` the item is reserved for someone else. - `item_belongs_to_other_branch` the item cannot be lent out from this branch. - `patron_not_found` the patron ID is not known to the provider. Only for a `patron` sent as `patron_id`, never for one sent as `identifier`. - `patron_authentication_failed` the patron could not be authenticated from the `identifier` that was sent. It covers an identifier the provider does not know, a credential that does not match, and a missing credential where one is required, and the provider must not let a vendor tell those apart. - `patron_blocked` the patron may not borrow at the moment. - `patron_owes_fees` the patron owes more than the library allows. - `patron_loan_limit_reached` the patron already has as many loans as the library allows. - `patron_expired` the patron's library card has expired. - `acknowledgement_rejected` the provider did not accept `acknowledgement.code`: it is unknown, expired, already used, belongs to a different `checkout`, or what it covered has changed. Send the checkout again without `acknowledgement` to get the current conditions and a new code. - `unknown` the provider cannot say why, see `message`. An offline checkout can only fail on an identity that cannot be resolved, see `checkout.offline`. `patron_blocked`, `patron_owes_fees`, `patron_loan_limit_reached` and `patron_expired` all say that the patron is real, so they are only sent once the patron has been authenticated. A patron identified by `identifier` must not be able to learn whether that identifier belongs to a real patron. Three rules keep that true: - Everything that goes wrong while identifying them is `patron_authentication_failed`, whether the identifier is unknown, the credential is wrong, or a required credential was left out. - The answer must take the same time whether or not the identifier matched, since looking a patron up and then failing is slower than failing at once. - Rate limiting must work the same way for an identifier that matches and one that does not, so a 429 says nothing either.

item_not_found · item_not_lendable · item_on_loan · item_reserved_for_other_patron · item_belongs_to_other_branch · patron_not_found · patron_authentication_failed · patron_blocked · patron_owes_fees · patron_loan_limit_reached · patron_expired · acknowledgement_rejected · unknown

CheckoutFailureReasonLiteral

string

CheckoutField

acquiredFrom
PatronLoanAcquiredFrom
dueDatepåkrevd
string (date)

This is the due date of the checked out item.

fees
array of PatronFee

The fees the library registered on the patron as part of this checkout, e.g. a lending fee the patron accepted through acknowledgement. Send an empty array when the checkout created no fee. Leave the field out only when the provider cannot tell whether a fee was created.

itemIdpåkrevd
string

This is the item ID of the checkout item.

loanIdpåkrevd
LoanId
patronIdpåkrevd
string

This is the patron ID of the patron that made the checkout.

publicationIdpåkrevd
string

This is the publication ID of the checkout item. A vendor needs it to show or print a title.

publicationMetadata
PublicationFallback
renewed
boolean

True when the patron already had this item on loan, so this checkout extended the existing loan instead of creating a new one.

If the field is missing, this information is unknown.

transactionDateTimepåkrevd
string (date-time)

This is the registered time and date of the checkout.

CheckoutNeedsAcknowledgement

all of CheckoutResponseBase + object

The item was not checked out. The patron must accept everything in `acknowledgement.conditions` first, and the checkout must then be sent again carrying the single `acknowledgement.code` that covers it.

CheckOutOrInLocationWithoutNames

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

branchIdpåkrevd
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.

PLAS defines no values for this field, they are agreed between a provider and the vendors integrating with it. A vendor that does not recognise a value should fall back to text.

CheckoutPatron

one of CheckoutPatronById | CheckoutPatronByIdentifier

Who the checkout is for, told by `identifiedBy`. Either the patron ID from a successful authentication, or the same identification that is sent to POST /patron/authentication and POST /patron/authentication/no-password. The second form exists because an offline checkout cannot use the first. When the patron is identified by `identifier`, the provider applies the same rules as the authentication endpoints, as configured in `patron.login` from the GET /configuration endpoint.

CheckoutPatronById

The patron as a patron ID, which the vendor has because the patron authenticated through POST /patron/authentication, POST /patron/authentication/no-password or an identity provider.

identifiedBypåkrevd
string enumpatron_id
patronIdpåkrevd
string

The patron ID from a successful authentication.

CheckoutPatronByIdentifier

The patron as the identifier and optional credential that POST /patron/authentication and POST /patron/authentication/no-password take. This is the form an offline checkout has to use, since it never got a patron ID.

identifiedBypåkrevd
string enumidentifier
identifierpåkrevd
PatronIdentifierTypeAndValue
password
PatronPassword

CheckoutRequestBody

acknowledgement
object

This is used to acknowledge the checkout, see CheckoutNeedsAcknowledgement.

Send checkout exactly as it was in the request that returned the code, transactionDateTime included. The code belongs to that exact checkout. If anything in checkout is different, the provider answers failed with the reason acknowledgement_rejected.

checkoutpåkrevd
object

CheckoutResponseBase

message
CheckOutOrInMessage
requestIdpåkrevd
string

This is a unique identifier for the checkout request. This will change for each request.
It is meant for correlating logs.

statuspåkrevd
string

This tells the outcome of the checkout, and which other fields are present.

CheckoutResponseBody

one of CheckoutCompleted | CheckoutNeedsAcknowledgement | CheckoutFailed

The outcome of the checkout. The `status` field says which shape the rest of the body has: - `completed` the item was checked out, and `checkout` holds the resulting loan. - `needs_acknowledgement` the item was **not** checked out. `acknowledgement` says what the patron must accept first, and the same checkout sent again with `acknowledgement.code` completes it. - `failed` the item was not checked out, and `reason` says why.

Classification

one of ClassificationTypeDewey | ClassificationTypeDK5

ClassificationTypeDewey

name
string

A displayable (human readable) value representation of the dewey number.

numberpåkrevd
string

The value of the dewey number.

typepåkrevd
string enumdewey

ClassificationTypeDK5

name
string

A displayable (human readable) value representation of the dewey number.

numberpåkrevd
string

The value of the dk5 number.

typepåkrevd
string enumdk5

ConfigurationCirculation

This tells whether the provider supports checking items out and in, and whether it accepts the two of them being carried out while the vendor was offline. Nothing here is assumed. An absent `checkout` or `checkin` means the provider does not support that endpoint, exactly as `isEnabled` set to false does, and an absent `offline` means it does not accept an offline one. The one exception is `securityTags`, where absent means the library uses them, since that is what every machine does today. | `circulation` | What a vendor may do | | --- | --- | | absent | Neither check out nor check in | | `{}` | Neither check out nor check in | | `{"checkout":{"isEnabled":true},"checkin":{"isEnabled":true}}` | Both, but only while the provider can be reached | | `{"checkout":{"isEnabled":true,"offline":{"isAllowed":true}},"checkin":{"isEnabled":true}}` | Offline checkout, no offline checkin, and no loan period to work a due date out from | | `{"checkout":{"isEnabled":true,"offline":{"isAllowed":true,"defaultLoanPeriodDays":28}},"checkin":{"isEnabled":true,"offline":{"isAllowed":true}}}` | Everything |

checkin
object

Whether the provider supports POST /checkin/{itemId}. If this field is missing, it does not.

checkout
object

Whether the provider supports POST /checkout/{itemId}. If this field is missing, it does not.

securityTags
object

Whether the library uses the security tags in its items, the magnetic strip or RFID chip that makes the gate at the door sound when an item that is not checked out passes through.

This is one decision for the whole library, which is why it is here and not in each checkout or checkin answer. Some libraries never switch the alarm on, or have no gate, and do not want tags armed.

If this field is missing, the library uses security tags.

ConfigurationContentApi

delegated
object

ConfigurationContentResponseBody

uiLanguages
object

This contains the ui language settings.

All ui language codes should be on this list https://www.loc.gov/marc/languages/

ConfigurationContentWithApi

all of object + ConfigurationContentResponseBody

ConfigurationHolding

periodical
ConfigurationHoldingPeriodical

ConfigurationHoldingPeriodical

groupOrdering
array of HoldingPeriodicalGroupType

The default ordering of periodical group types is year, volume and number, or level1, ..., level7. It is strongly discouraged to ever mix the named types and the level* types, but if for some reason another group type order is needed, groupOrdering can be used to tell the vendor the ordering of periodicals.

ConfigurationPatron

How the provider handles patrons: how they log in, register and delete their account, what they can do with their credentials and loan history, and which patron fields the vendor can show and edit.

credentials
object

This tells what a patron can do with the credentials they use to authenticate.

Not all providers have both a password and a pin code, and a provider that has one may still not let the patron change it. If this is missing, it is unknown, and the vendor should offer neither changing nor resetting a credential.

deletion
object
fields
array of ConfigurationPatronField

This contributes with further information about some of the patron fields, like if they are updatable or not, how they are constructed and their limitations.

The array should at most contain one element of each type.

loanHistory
object
login
object
registration
object

ConfigurationPatronField

one of ConfigurationPatronFieldEmails | ConfigurationPatronFieldPhoneNumbers | ConfigurationPatronFieldPickupLocation

ConfigurationPatronFieldEmails

fieldpåkrevd
string enumemails
maxNumberOfEmailAddresses
integer

This tells the maximum number of email addresses that a patron can have, and hence this is also the maximum numbers of email addresses there can be send in a update patron information request.

If this value is missing, there is no limits on the number of emails addresses, this is not recommended.

verification
string enumno_verification · verify_by_email
  • no_verification => No verification
  • verify_by_email => An email will be sent by the provider to verify the email

ConfigurationPatronFieldPhoneNumbers

fieldpåkrevd
string enumphoneNumbers
landline
object
mobile
object

ConfigurationPatronFieldPickupLocation

fieldpåkrevd
string enumpickupLocation
form
string enumbranch_id_and_sections · only_branch_id

This is the form of the pickup location, i.e. which parts/fields of the pickup location that are in use.

If this is missing 'branch_id_and_sections' is this default.

ConfigurationPatronIdentityProviderType

string enum

The identity provider type, found in GET /configuration.

norway_id_portal · norway_nl_oidc · norway_feide_oidc · denmark_mit_id · denmark_dbc_access_platform

ConfigurationPayment

initialize
object
methods
array of ConfigurationPaymentMethod

This is a list of the payment methods that the vendor supports.

If this is missing, there are no payment methods available.

partial
boolean

If this is true, the provider allows partial payments. Default is false.

ConfigurationPaymentMethod

type
ConfigurationPaymentMethodType

ConfigurationPaymentMethodType

string enum

This represents the payment method type.

mobile_pay · vipps ·

ConfigurationResponseBody

circulation
ConfigurationCirculation

What the provider supports on POST /checkout/{itemId} and POST /checkin/{itemId}.

If this field is missing, the provider supports neither endpoint. A vendor must find isEnabled set to true here before it checks anything out or in.

content
ConfigurationContentWithApi
events
object

events contain configuration data for events in the LMS.
This covers notifications sent to the user and consent changes.

holding
ConfigurationHolding
patron
ConfigurationPatron
payment
ConfigurationPayment

If this field is missing, the vendor does not support payments.

search
ConfigurationSearchWithApi
versionpåkrevd
string

This contains the version of the Open Library API.

ConfigurationSearchApi

delegated
object

ConfigurationSearchExpression

clustering
array of array of ExpressionClusteringField

This is the providers preferred clustering of publications.
This clustering can be used to group publications together, emulating an expression level.

ConfigurationSearchResponseBody

expression
ConfigurationSearchExpression
suggestions
ConfigurationSearchSuggestions
uiLanguages
object

This contains the ui language settings.

All ui language codes should be on this list https://www.loc.gov/marc/languages/

workSearch
object

ConfigurationSearchSuggestions

available
array of ConfigurationSearchSuggestionsFilterAvailable

This tells which filters are available for the /suggestions endpoint.

disabled
boolean

This tells the Vendor if the /suggestions endpoint is disabled or not. (Default false).

If this is set to true, the Vendor should not make request to the /suggestions endpoint.

ConfigurationSearchSuggestionsFilterAvailable

description
string

This is a description of what type of filter this is.

typepåkrevd
SuggestionsFilterType

ConfigurationSearchWithApi

all of object + ConfigurationSearchResponseBody

ConfigurationWorkSearchFacet

available
array of ConfigurationWorkSearchFacetAvailable

ConfigurationWorkSearchFacetAvailable

description
string

This is a description of what type of facet this is.

typepåkrevd
SearchFacetType

ConfigurationWorkSearchFilter

available
array of ConfigurationWorkSearchFilterAvailable

ConfigurationWorkSearchFilterAvailable

description
string

This is a description of what type of filter this is.

typepåkrevd
SearchFilterType

ConfigurationWorkSearchSorting

available
array of ConfigurationWorkSearchSortingAvailable

ConfigurationWorkSearchSortingAvailable

This is a description of a sorting type.

description
string

This is a description of what type of sorting this is.

typepåkrevd
SearchSortingType

ContactInfo

Contact information for registration and tickets. At least one of the fields must be provided: `url`, `email`, `phone`, or `info`.

email
string (email)

Email for registration/tickets

info
string

Instructions on where to register/buy tickets

phone
string

Phone number with country prefix for registration/tickets

url
string (uri)

URL to registration/ticket page

Contributor

agentpåkrevd
Agent
roles
array of AgentRole

List of roles (e.g. author, illustrator, editor) that the agent played in the creation of this entity.

CreatePatronListRequestBody

PatronList

CreatePatronReservationRequestBody

pickupLocationpåkrevd
PickupLocationWithoutNames
reserveIdpåkrevd
ReserveId

CreatePatronReservationResponseBody

reservationpåkrevd
PatronReservation

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.

centurypåkrevd
integer

The century e.g. 19 century CE (meaning 1801 CE to 1900 CE), 3 century BCE (meaning 300 BCE to 201 BCE)

typepåkrevd
string enumcentury

DateTypeLiteral

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

typepåkrevd
string enumliteral
valuepåkrevd
string

DateTypeRFC3339

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

datepåkrevd
string (date)

RFC3339 full-date format (YYYY-MM-DD).

typepåkrevd
string enumrfc3339

DateTypeYear

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

typepåkrevd
string enumyear
yearpåkrevd
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

typepåkrevd
string enumyearRange

DeletePatronByCodeAndCodeVerifierRequestBody

codepåkrevd
string

The code obtained from a SSO patron deletion.

code_verifierpåkrevd
string

The code verifier used to create the code challenge used to obtain the code.

identity_providerpåkrevd
ConfigurationPatronIdentityProviderType

DeletePatronById

The patron as a patron ID, and the password that goes with it.

identifiedBypåkrevd
string enumpatron_id
passwordpåkrevd
PatronPassword
patronIdpåkrevd
string

The patron ID.

DeletePatronByIdentifier

The patron as one of the identifier types in `patron.deletion.identifierTypes` from GET /configuration, and the password that goes with it.

identifiedBypåkrevd
string enumidentifier
identifierpåkrevd
PatronIdentifierTypeAndValue
passwordpåkrevd
PatronPassword

DeletePatronIdentification

one of DeletePatronById | DeletePatronByIdentifier

Which patron is being deleted, told by `identifiedBy`. This is for a patron who is not logged in through an identity provider, and a password is always required, since it is the only proof in the request that the caller is the patron.

DeletePatronRequestBody

acknowledgement
object

This is used to acknowledge the deletion of the patron.

patronpåkrevd
DeletePatronIdentification

DeletePatronResponseBody

message
string

Message to the patron.

statuspåkrevd
string enumwaiting_for_acknowledgement · pending · in_progress · done · deletion_error

This tells the state of the deletion of the patron.

The status can be:

  • waiting_for_acknowledgement, to begin the deleting process, call the deletion endpoint with the acknowledgement code.
  • pending, the deletion request is acknowledged, and we are waiting on the process to begin.
  • in_process, the deletion process is in progress.
  • done, the deletion process is done (meaning the patronId does not exist).
  • deletion_error, the deletion process failed.
  • unknown, the deletion process is in an unknown state.

Description

one of DescriptionTypeLiteral

DescriptionTypeLiteral

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

typepåkrevd
string enumliteral
valuepåkrevd
string

Edition

one of EditionTypeLiteral | EditionTypeNumbering

EditionTypeLiteral

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

typepåkrevd
string enumliteral
valuepåkrevd
string

A displayable (human readable) representation of the edition.

EditionTypeNumbering

display
string

A displayable (human readable) representation of the edition.

numberpåkrevd
integer

The edition number.

printing
integer

The printing number of the edition.

typepåkrevd
string enumnumbering

Error

codepåkrevd
ErrorCode
infopåkrevd
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 - 10001: Endpoint disabled - 71001: Consent has not been given for 'loan history' - 100001: Wrong patron identifier, password or pin code - 100011: New password or pin code rejected, because it does not meet the provider's requirements - 100013: The provider does not let the patron change the given credential - 100023: Patron ID not found - 100101: Patron could not be deleted, because the patron has something unresolved issue with the library (this could be anything from a loan to a fee, and so on ...) - 100211: maxNumberOfEmailAddresses exceeded - 100215: maxNumberOfPhoneNumbers exceeded - 100221: Pickup location cannot contain sections - 100411: Updating patron consent failed - 100611: Updating patron notification settings failed - 101001: Reservation ID not found - 101047: Branch ID cannot be used as pick up branch - 101053: Section ID cannot be used as pick up branch - 102001: Loan ID not found - 102301: Loan not renewable, because it is an interlibrary loan - 102311: Loan not renewable, because it is reserved - 110001: Branch ID not found - 200001: Publication ID not found - 200077: ui language not supported - 200101: missing required query parameter - 200103: invalid/unsupported query parameter value - 300001: Initialize payment should not be used - 300005: Initialize payment should be used - 300009: Payment method not supported - 300013: Payment method does not support partial payment - 300301: Finalized payment can not de changed - 300311: FinalizePaymentRequest.fees contains fees with the same ID - 310001: Loan history ID not found - 310011: Loan history ID already exists - 330001: List ID not found - 330011: List ID already exists - 330101: List item ID not found - 330111: List item ID already exists

500 · 600 · 10001 · 71001 · 100001 · 100011 · 100013 · 100023 · 100101 · 100211 · 100215 · 100221 · 100411 · 100611 · 101001 · 101047 · 101053 · 102001 · 102301 · 102311 · 110001 · 200001 · 200077 · 200101 · 200103 · 300001 · 300005 · 300009 · 300013 · 300301 · 300311 · 310001 · 310011 · 330001 · 330011 · 330101 · 330111

ErrorInfo

string

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

Errors

errorspåkrevd
array of Error

The first error should always be the most relevant.

Event

Complete event information. Only the field `description` can contain formatting.

admissionpåkrevd
EventAdmission
audiences
array of EventAudience

Target audiences for the event

branchpåkrevd
EventBranch
categories
array of EventCategory

Event categories

descriptionpåkrevd
string

A detailed description of the event. Is in limited html format. Supports following html tags - b - i - p - a - ul - ol - li

idpåkrevd
string

Unique identifier for the event.

If multi events have the same 'id' but different language, then they are the same event.

images
array of ImageTypeContent
language
string

The language of this events content (https://www.loc.gov/marc/languages/).

location
EventLocation
organizers
array of EventOrganizer

Event organizers

promoted
Promoted
relatedEvents
RelatedEvents
relevantWorks
RelevantWorks
schedulingpåkrevd
EventScheduling
series
EventSeries
statepåkrevd
EventState
teaser
string

A short, engaging text designed to spark interest in the event

titlepåkrevd
string

Event title

updateTimepåkrevd
string (date-time)

When was the event last update (or create) in RFC3339 date-time format.

url
string (uri)

URL to the event's webpage

EventAdmission

one of OpenAdmission | TicketAdmission | RegistrationAdmission

Admission and registration information for an event

EventAudience

Information about an audience target for an event

idpåkrevd
string

Unique identifier for the audience target

labelpåkrevd
string

Localized label for the audience target

EventBranch

Branch information, this is the main branch associated with the event.

branchIdpåkrevd
string

The branch ID (should exist in GET /locations)

branchNamepåkrevd
string

Name of the branch

EventCategory

Category classification for events

idpåkrevd
string

Category identifier

labelpåkrevd
string

Localized category label

EventLocation

one of EventLocationAtBranch | EventLocationExternal

The location where the event takes place

EventLocationAtBranch

Location information for an event at the branch location.

locationpåkrevd
string

The internal location used for the event

typepåkrevd
string enumat_branch

EventLocationExternal

Location information for an external venue.

address
Address

The physical address of the event location

namepåkrevd
string

External location name

typepåkrevd
string enumexternal

EventOrganizer

Information about an external event organizer

id
string

Unique identifier for the external organizer

namepåkrevd
string

Name of the external organizer

EventPriceCategory

amountpåkrevd
integer

The price for a ticket. 0 if free.

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

currencypåkrevd
string

The currency of the price. ISO 4217 code.

label
string

A label for the price, this can been used e.g. as prefix for the price type. E.g. "Adults" or "Children"

EventPricing

one of EventPricingSimple | EventPricingPriceCategories

Pricing information for an event

EventPricingPriceCategories

categoriespåkrevd
array of EventPriceCategory

Array of price categories for an event

typepåkrevd
string enumprice_categories

EventPricingSimple

textpåkrevd
string

Simple pricing text, e.g. "0 - 100 DKK"

typepåkrevd
string enumsimple · value

EventScheduling

one of AllDayScheduling | TimeSpanScheduling

EventSeries

Information about an event series that this event belongs to

eventIds
array of string

An array of event ids within the series. This list is restricted to events that fall within the date range specified by the API request.
It does not include the event id of the current event itself.

seriesIdpåkrevd
string

Identifier of the event-series. This searchId can be used with GET /content/event/series/{seriesId}.

EventState

string enum

The state of the event. There are three event state type - scheduled, Meaning that the event is scheduled and expected to be carried out as planned (See scheduling). - cancelled, Meaning that the event is cancelled. - finished, Meaning that the event is finished.

scheduled · cancelled · finished

ExpressionClusteringField

one of ExpressionClusteringFieldNamedCreators | ExpressionClusteringFieldNamedContributors | ExpressionClusteringFieldNamedCreatorsAndContributors | ExpressionClusteringFieldNamedMediaTypes | ExpressionClusteringFieldNamedLanguage

ExpressionClusteringFieldName

object

This is used to tell the providers preferred clustering of publications.

ExpressionClusteringFieldNamedContributors

all of ExpressionClusteringFieldName + object

ExpressionClusteringFieldNamedCreators

all of ExpressionClusteringFieldName + object

ExpressionClusteringFieldNamedCreatorsAndContributors

all of ExpressionClusteringFieldName + object

ExpressionClusteringFieldNamedLanguage

all of ExpressionClusteringFieldName + object

ExpressionClusteringFieldNamedMediaTypes

all of ExpressionClusteringFieldName + object

Extent

one of ExtentTypeLiteral | ExtentTypePages | ExtentTypePlaytime | ExtentTypeUnits

ExtentTypeLiteral

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

typepåkrevd
string enumliteral
valuepåkrevd
string

A displayable (human readable) representation of the extent.

ExtentTypePages

pagespåkrevd
integer

Number of physical pages.

typepåkrevd
string enumpages

ExtentTypePlaytime

playtimepåkrevd
integer

The total playtime in seconds.

typepåkrevd
string enumplaytime

ExtentTypeUnits

typepåkrevd
string enumunits
unitTypepåkrevd
string enumvolume · dvd · cd · bluRay · cassette · lp
unitspåkrevd
integer

Number of physical units (volumes, dvd, cd, ...)

Facet

name
string

A displayable (human readable) facet name.

termspåkrevd
array of FacetTerm
typepåkrevd
SearchFacetType

FacetTerm

namepåkrevd
string

A displayable (human readable) representation of facet term name.

occurrences
integer

The number of occurrences in the search result, based on works.

valuepåkrevd
string

The facet terms searchable value.

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
itemIdpåkrevd
string

The item identifier of the item that the fee is about.

publicationMetadatapåkrevd
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

FieldItemId

string

The item ID is the unique item identifier. This is the identifier needed to make a checkout and/or checkin. So if the LMS has an internal identifier for an item, but uses an external identifier for checkout and checkin, the itemId should be the value of the external identifier. In some LMSs, this is called the barcode.

FinalizeFeesResponseBody

Contains a mapping from each (unique) fee ID (from the request) to a response detailing how the finalize operation went for that fee.

responsespåkrevd
unknown

A mapping from each fee ID (from the request) to a FinalizeFee.

FinalizeFeeStatus

string enum

The results of a payment finalize operation. If any other value than the following is returned, it can be assumed that the operation was unsuccessful (i.e. it was not finalized by the current request). * **registered**: The fee was successfully finalized * **registered_by_different_payment_id**: The fee had already been finalized by a different payment ID * **fee_not_payable**: The fee was not payable, and therefore could not be finalized * **not_allowed**: The client is not authorized to finalize this fee

registered · registered_by_different_payment_id · fee_not_payable · not_allowed

FinalizePaymentFee

amount
FeeAmount

This should only be used with a partial enabled payment methods. If the partial payment is not enabled, but this field is set, the error code 300013 is returned.

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

idpåkrevd
FeeId

FinalizePaymentRequestBody

feespåkrevd
array of FinalizePaymentFee

The list of fees that should be finalized.
This array must not contain any fees with the same ID. In that case, an error will be returned.

methodpåkrevd
ConfigurationPaymentMethodType
orderId
string

Order ID from initialize payment.

If in the configuration, payment->initialize->state is use_initialize, this field is required.

paymentIdpåkrevd
string

Payment ID from the payment gateway.

Form

id
string

A id that (if set) can be used with the filter plas.forms to search on this form.

labelpåkrevd
string

A displayable (human readable) value of the form.

Genre

id
string

A id that (if set) can be used with the filter plas.genres to search on this genre.

labelpåkrevd
string

A displayable (human readable) value of the genre.

GetAgentsResponseBody

agentspåkrevd
unknown

GetContentEventsInSeriesResponseBody

eventspåkrevd
array of Event
totalpåkrevd
integer

The total number of events in the series.

GetContentEventsResponseBody

endOfResultspåkrevd
boolean

If this is false, we haven't reached the end of the search result yet, if it's false we have, and if it's missing or null we don't know.

eventspåkrevd
array of Event
total
integer

The total number of events in the whole period.

GetHoldingResponseBody

holdingspåkrevd
unknown

GetPublicationsResponseBody

publicationspåkrevd
unknown

GetSuggestionsResponseBody

suggestionspåkrevd
array of Suggestion

GetVersionResponseBody

versionpåkrevd
Version

This is recommended (by the provider) version of the Open Library API, that is supported by provider.

GetWorksResponseBody

workspåkrevd
unknown

Holding

locationspåkrevd
array of HoldingLocation
numberOfReservations
integer

This tells how many reservations there exist on the publication (or periodical).

If this is unknown, the field is not set.

periodical
HoldingPeriodical
publicationIdpåkrevd
string

The publication ID

reserveIdpåkrevd
string

This is the Reserve ID to be used for reserving this publication (or periodical). If this is empty, the publication (or periodical) is not reservable.
If the holding represents a periodical, this reserve ID is still all that is required to reserve that issue.

HoldingItem

availableStatepåkrevd
string enumavailable · not_available

This tells if the item is available at the shelf.

itemIdpåkrevd
FieldItemId
lendingDays
integer

If this field is set, it should be assumed that the lending time for this item is different from other "normal" items. This field tells how many days this item can be borrowed for.

Sometimes a publication is available and reservable, but numberOfReservations is not zero. This can be because some items are not reservable, but are loanable. This would often be the case if an item has a shorter lending period than usual.

loanableStatepåkrevd
string enumloanable · not_for_loan

This tells if the item is loanable.

pickupLocations
array of PickupLocation

This is a list of locations where a reservation on this item can be made to. This field (if set) takes precedence over all other pickup locations information.

reserveId
string

The reserve ID for reserving precisely this item. If this is empty or missing, the item is not reservable.

HoldingLocation

The field location uniquely defines a location on a branch (library), and items tells which items are associated with that location. In a holding response for a given publicationId, the unique combination of a location's branch and section elements should at most appear once. E.g. a combination of a location with 2 section items of types "floor" and "department" (in that order of relevance) and a shelfmark, would give the following path to the items: branch > section (floor) > section (department) > shelfmark.

itemspåkrevd
array of HoldingItem
locationpåkrevd
Location
pickupLocations
array of PickupLocation

This is a list of locations where a reservation be made to. This field (if set) takes precedence over the pickup locations information from in /locations and /patron/{patronId}/configuration.

shelfmarkpåkrevd
string

HoldingPeriodical

A Periodical is e.g. a magazine or a newspaper published at regular intervals. If the holding does not represent a periodical, then this field is not set.

grouping
array of HoldingPeriodicalGroup

The grouping is the natural division of periodicals based on of e.g. when a periodical is published and/or which number it has.
An example could be the periodical "Sky and telescope", let us say there exist 3 publishings for this periodical. Two in 2022, and one in 2023.
The two from 2022 could be the volumes "March" and "July", and the one from 2023 could be "February".
This will give us 2022 -> (March, July), 2023 -> February, and each can be expressed with its own grouping like this: 1. [{"type": "year", "value": "2022"}, {"type": "volume", "value": "March"}] 2. [{"type": "year", "value": "2022"}, {"type": "volume", "value": "July"}] 3. [{"type": "year", "value": "2023"}, {"type": "volume", "value": "February"}]

This makes it possible for the vendor to visualize all publishings of the periodical.

It is recommended that only the types year, volume and number are used, but if it is not enough, use the types level1, ..., level7.

The default grouping order is documented in [GET /configuration](#/Configuration/GetConfiguration), and if another ordering is needed, it can be specified there.

name
string

The issue's name for display.

HoldingPeriodicalGroup

typepåkrevd
HoldingPeriodicalGroupType
valuepåkrevd
string

HoldingPeriodicalGroupType

string enum

Is used to visually group and name the value.

year · volume · number · level1 · level2 · level3 · level4 · level5 · level6 · level7

Holdings

array of Holding

ImageAgent

one of ImageTypeAgent

ImageAlt

Alternative for accessibility

textpåkrevd
string

Alternative text for accessibility

ImageCredit

Image credit information

textpåkrevd
string

ImageFocalPoint

one of ImageFocalPointHotspot

ImageFocalPointHotspot

Describes the point of the most important part of the image

typepåkrevd
string enumhotspot
xpåkrevd
number

Horizontal position of hotspot (0-1)

ypåkrevd
number

Vertical position of hotspot (0-1)

ImageOriginal

all of ImageUrl + object

The `url' is the un-cropped version of the image

ImagePublication

one of ImageTypeFrontCover | ImageTypeBackCover

ImageTypeAgent

all of ImageUrl + object

ImageTypeBackCover

all of ImageUrl + object

ImageTypeContent

all of ImageUrl + object

ImageTypeFrontCover

all of ImageUrl + object

ImageUrl

height
integer

The image height in px.

mime
string enumpng · jpeg
urlpåkrevd
string
width
integer

The image width in px.

InitializePaymentRequestBody

initializepåkrevd
object

InitializePaymentResponseBody

orderpåkrevd
object

IsPatronRegistrationPossibleRequestBody

In this the password is optional, because it is not all possible registries that need it. A registry is where we check if a patron can be registered.

identifierpåkrevd
PatronIdentifierTypeAndValue
password
PatronPassword

IsPatronRegistrationPossibleResponseBody

registriespåkrevd
array of object

Any entry in this array is a possible way a new patron be registered through, based on the provided identifier.

Language

codepåkrevd
string

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

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.

statepåkrevd
LoanRenewableState

Location

The branch name and the 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.

branchIdpåkrevd
string
branchNamepåkrevd
string
pathpåkrevd
array of LocationSectionElementWithIdNameAndType

This contains location section elements, sorted in the same order as LocationsResponse->sections in /locations. At most one of each location section type may be present in this array, but it is not a requirement that all types are present - there should only be the needed types.

All section elements that can appear here, should be defined as an element of one of the sections in LocationsResponse->sections from /locations.

LocationBranch

coordinates
object
externals
LocationBranchExternals
idpåkrevd
string

This is the internal ID of the library branch, used in e.g. the HoldingLocation->location object.

namepåkrevd
string

Displayable name of the library branch.

pickup
object
tags
array of string

Can be used to add a simple custom attribute to a branch.
It is not advisable to use this, unless absolutely necessary.
There are no default tag values, and thus other vendors cannot be compatible by default, based on an Open Library API implementation.
Instead, before using, try to reach out to Open Library API with a description of the problem to be solved.

LocationBranchExternals

identifiers
array of object

This is used to inform about external identifiers, like e.g. an ISIL code.

LocationSection

All section types and elements defined here could appear in a holding location.

elementspåkrevd
array of LocationSectionElementWithIdNameAndParentId
typepåkrevd
string

LocationSectionElementType

string

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

LocationSectionElementWithId

idpåkrevd
string

This is the section (element) ID

LocationSectionElementWithIdAndName

all of LocationSectionElementWithId + object

LocationSectionElementWithIdAndType

all of LocationSectionElementWithId + object

LocationSectionElementWithIdNameAndParentId

all of LocationSectionElementWithIdAndName + object

LocationSectionElementWithIdNameAndType

all of LocationSectionElementWithIdAndName + object

LocationsResponseBody

branchespåkrevd
array of LocationBranch
mainBranch
object
pickupLocations
array of PickupLocation

Default pickup locations provided by the LMS. These can be customized at more granular levels:

  • Item Level: Defined within the /holdings endpoint (locations->items->pickupLocations). This has the highest priority.
  • Publication Level: Defined within the /holdings endpoint (locations->pickupLocations).
  • Patron Level: Defined via the /patron/{patronId}/configuration endpoint.
  • LMS Level: Defined via the /locations (this) endpoint. This has the lowest priority.

These levels, if present, fully replaces any lower level pickup locations.

If no pickup locations are defined at any of these levels, reservations cannot be made.

sectionspåkrevd
array of LocationSection

MediaType

code
MediaTypeType
namepåkrevd
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.

OAuthClientIdAndSecret

client_idpåkrevd
string
client_secretpåkrevd
string

OAuthToken

tokenpåkrevd
string

The token that we want to revoke. This is always an access_token.

OpenAdmission

Open admission with no registration or tickets required

typepåkrevd
string enumopen

Type of admission - open access

Patron

address
PatronAddress
emailspåkrevd
PatronEmails
fullNamepåkrevd
PatronFullName

FullName is always provided, but givenName and surname are only specified if the data is organized in such a detailed manner.

givenName
PatronGivenName
identifiers
array of PatronIdentifierTypeAndValue
patronIdpåkrevd
PatronId
permissions
array of object

This is a list of activities, locations, etc. that the patron is either allowed or blocked from accessing.

phoneNumberspåkrevd
PatronPhoneNumbers
pickupLocationpåkrevd
PickupLocation

The object tells where a reservation item can be picked up.

This is the default pickup location for the patron.

reservation
PatronInfoReservation
surname
PatronSurname

PatronAddress

Address

PatronAuthenticationByCodeAndCodeVerifierRequestBody

codepåkrevd
string

The code obtained from a SSO patron authentication.

code_verifierpåkrevd
string

The code verifier use to create the code challenge use to obtained the code.

identity_providerpåkrevd
ConfigurationPatronIdentityProviderType

PatronAuthenticationByCodeAndCodeVerifierResponseBody

patronpåkrevd
Patron

PatronAuthenticationIdentityProviderResponseBody

urlpåkrevd
string (uri)

PatronAuthenticationNoPasswordRequestBody

identifierpåkrevd
PatronIdentifierTypeAndValue

PatronAuthenticationNoPasswordResponseBody

patronpåkrevd
Patron

PatronAuthenticationRequestBody

identifierpåkrevd
PatronIdentifierTypeAndValue
passwordpåkrevd
PatronPassword

PatronAuthenticationResponseBody

patronpåkrevd
Patron

PatronConfiguration

The patron configuration object tells the settings and restriction that are placed on the patron.

reservation
PatronConfigurationReservation

PatronConfigurationReservation

fee
PatronConfigurationReservationFee
limits
array of PatronConfigurationReservationLimit
pickupLocations
array of PickupLocation

This tells the locations the patron can change there default/main pickup location to. If pickupLocations is set (also if it is the empty array), it overwrites the pickup information from /locations. The pickupLocations from /holdings (if set) overwrites this information.

PatronConfigurationReservationFee

This tells that there are a default fee connected to the action of making a reservation.

amountpåkrevd
Amount

This is the fee amount that the patron must accept when making a reservation.

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

chargedAtpåkrevd
string enumreservation · checkout
currencypåkrevd
string

ISO 4217

PatronConfigurationReservationLimit

one of PatronConfigurationReservationLimitDaily | PatronConfigurationReservationLimitMax

PatronConfigurationReservationLimitDaily

This tells the daily limit of reservation the patron can make.

limitpåkrevd
integer
typepåkrevd
string enumdaily

PatronConfigurationReservationLimitMax

This tells the maximum number of concurrent reservations the patron have.

limitpåkrevd
integer
typepåkrevd
string enummax

PatronConfigurationResponseBody

configurationpåkrevd
PatronConfiguration

PatronConsentResponseBody

availablepåkrevd
array of object

The array must only contain one consent of each type.

evaluatedpåkrevd
PatronEvaluatedConsents

PatronConsentType

any of PatronConsentTypeEnum | PatronConsentTypeLiteral

PatronConsentTypeEnum

string enum loan_history

PatronConsentTypeLiteral

string

PatronCredentialType

string enum

The kind of credential a patron uses. A credential here is the secret the patron knows. It is never the identifier: that is separate. - `password` a password. - `pin` a pin code. GET /configuration says which of these apply where: `patron.login.credentials` for what a patron can authenticate with, and `patron.credentials.changeable` and `patron.credentials.resettable` for what a patron can change or have reset.

password · pin

PatronDeletionIdentityProviderResponseBody

urlpåkrevd
string (uri)

PatronEmail

all of PatronEmailWithoutVerified + object

PatronEmails

array of PatronEmail

The size of this array must not exceed (if specified) the ´maxNumberOfEmailAddresses´ value given in the configuration.

PatronEmailsWithoutVerified

array of PatronEmailWithoutVerified

The size of this array must not exceed (if specified) the ´maxNumberOfEmailAddresses´ value given in the configuration.

PatronEmailWithoutVerified

default
boolean

At most one email can de marked as default.

emailpåkrevd
string

Patron email, following RFC 5322.

PatronEvaluatedConsent

givenpåkrevd
boolean
typepåkrevd
PatronConsentType
versionpåkrevd
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

amountpåkrevd
FeeAmount
createdTimepåkrevd
FeeCreatedTime
currencypåkrevd
FeeCurrency
dueDate
FeeDueDate
idpåkrevd
FeeId
items
array of FeeItem

The items this fee covers, if they are known.

payableStatepåkrevd
FeePayableState
remainingAmount
FeeRemainingAmount
typepåkrevd
FeeType

PatronFeeResponseBody

feespåkrevd
array of PatronFee

PatronFullName

string

Patron's full name.

PatronGivenName

string

Patron's given name.

PatronId

string

Unique patron identifier (unique for that customer).

PatronIdentifier

string

Identifier value. This information may be sensitive.

PatronIdentifierType

any of PatronIdentifierTypeEnum | PatronIdentifierTypeLiteral

A type identifier that tells which type of identifier is used. This is an open enum, so values other than the known ones are allowed. GET /configuration says which types the provider accepts for each flow, in `patron.login.identifierTypes`, `patron.registration.identifierTypes` and `patron.deletion.identifierTypes`.

PatronIdentifierTypeAndValue

This can be used to identify the user. The data contained in the object is often sensitive data. The field `type` is optional. If it is missing, the type of `value` is unknown. Which types the provider accepts depends on the flow, and GET /configuration says so per flow in `patron.login.identifierTypes`, `patron.registration.identifierTypes` and `patron.deletion.identifierTypes`.

type
PatronIdentifierType
valuepåkrevd
PatronIdentifier

PatronIdentifierTypeEnum

string enum

The known patron identifier types. - `local` an identifier for one local library. - `email` an email address. - `phone` a phone number. Country specific: - `norway_national_library_card` the Norwegian national library card. - `norway_national_birth_number` the Norwegian "Fødselsnummer". - `denmark_cpr` the Danish CPR number.

local · email · phone · norway_national_library_card · norway_national_birth_number · denmark_cpr

PatronIdentifierTypeLiteral

string

PatronInfoReservation

postpone
object

This describes an interval (possibly an open interval, but only in one end) where the patron is not interested in reservations being fulfilled, e.g. while on vacation.

PatronInformationResponseBody

patronpåkrevd
Patron

PatronList

idpåkrevd
string

The ID of the list.

namepåkrevd
string

The name of the list.

PatronListBaseItem

idpåkrevd
string

The unique ID of the item in the list.

PatronListItem

one of PatronListItemWorkAndPublication

PatronListItems

array of PatronListItem

Items contained in the list.

PatronListItemWorkAndPublication

all of PatronListBaseItem + object

PatronListResponseBody

all of PatronList + object

PatronListsResponseBody

defaultpåkrevd
string

The default patron list ID. If a vendor chooses to only use one patron list, this will be the recommended ID of that list.

If there exist no patron list with the default ID, the default list can be created.

listspåkrevd
array of PatronList

A list of patron lists.

PatronLoan

acquiredFrom
PatronLoanAcquiredFrom
createdTimepåkrevd
LoanCreatedTime
dueDatepåkrevd
LoanDueDate
idpåkrevd
LoanId
itemIdpåkrevd
LoanItemId
location
CheckOutOrInLocationWithoutNames
publicationIdpåkrevd
LoanPublicationId
publicationMetadata
PublicationFallback
renewpåkrevd
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

typepåkrevd
string enuminterlibrary_loan

PatronLoanAcquiredFromTypeLocalCirculation

typepåkrevd
string enumlocal_circulation

PatronLoanAcquiredFromTypeUnknown

typepåkrevd
string enumunknown

PatronLoanHistory

acquiredFrom
PatronLoanAcquiredFrom
addedToHistoryTimepåkrevd
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.

idpåkrevd
string

This is the loan history ID (not the loan ID).

itemId
LoanItemId
loanId
LoanId
manuallyAddedpåkrevd
boolean

Was the loan added manually by the patron.

publicationIdpåkrevd
LoanPublicationId
publicationMetadata
PublicationFallback

PatronLoanHistoryResponseBody

loanHistorypåkrevd
array of PatronLoanHistory

PatronLoanResponseBody

loanspåkrevd
array of PatronLoan

PatronNotificationCategory

string

This is used to suggest a way in which notifications could be visually grouped together.

PatronNotificationDeliveryChosen

PatronNotificationDeliveryMethods

This tells which delivery methods the patron has chosen

PatronNotificationDeliveryMethodEmail

methodpåkrevd
string enumemail

PatronNotificationDeliveryMethodPostal

all of PatronAddress + object

PatronNotificationDeliveryMethods

array of one of PatronNotificationDeliveryMethodSMS | PatronNotificationDeliveryMethodEmail | PatronNotificationDeliveryMethodVendor | PatronNotificationDeliveryMethodPostal

PatronNotificationDeliveryMethodSMS

methodpåkrevd
string enumsms

PatronNotificationDeliveryMethodVendor

The `vendor` delivery method is special compared to the other methods. Each vendor connected with the provider should have their own instance of this method for each patron, meaning that the patron could have multiple instances of this method, but only one for each vendor, and only the instance associated with that vendor should be shown to the vendor, and only that instance should be updatable by the vendor. If this delivery method is enabled, the provider sends the associated event to that vendor's event endpoint (if it is configured).

methodpåkrevd
string enumvendor

PatronNotificationSetting

category
PatronNotificationCategory
deliverypåkrevd
object

This tells about delivery methods

name
string

Readable text

typepåkrevd
PatronNotificationType

PatronNotificationSettings

array of PatronNotificationSetting

The array must only contain one notification setting of each type.

PatronNotificationSettingsResponseBody

notificationSettingspåkrevd
PatronNotificationSettings

PatronNotificationType

string

This identifies the type of notification. It is recommended to use the following notification types: - `checkout_receipt`, send a receipt when finished checking out items. - `checkin_receipt`, send a receipt when finished checking in items. - `reservation_ready_for_pickup`, send when a reservation is ready to be pickup by the patron. - `ready_reservation_expires_soon`, a reservation that is ready to be pickup by the patron, will expire soon. - `reservation_expires_soon`, a reservation (that is not ready to be pickup by the patron), will expire soon. - `reservation_reminder`, if it has been a long time since the reservation was placed, this notification can be sent to remind the patron. It could be that the patron is no longer interested in the reservation. - `loan_due_date_is_approaching`, the due date of a loan is approaching. - `fee_due_date_is_approaching`, the due date of a fee is approaching. The following notification types are also events, and if the `vendor` delivery method is chosen for any of these, and the vendor has configured an event receiver through /configuration/event/register/receiver, the event will be sent to the vendor. - `reservation_ready_for_pickup` - `ready_reservation_expires_soon` - `reservation_expires_soon` - `reservation_reminder` - `loan_due_date_is_approaching` - `fee_due_date_is_approaching`

PatronPassword

string

The credential for the identifier. In authentication, registration and deletion this field carries whichever credential the provider uses, so at a provider that uses pin codes the value is a pin code even though the field is named `password`. For authentication, `patron.login.credentials` in GET /configuration says which it is. In POST /patron/{patronId}/credential/change the value is always a password. That request body carries a pin code in `currentPin` and `newPin` instead.

PatronPhoneNumber

all of PatronPhoneNumberWithoutVerified + object

PatronPhoneNumbers

array of PatronPhoneNumber

The size of this array must not exceed (if specified) the ´maxNumberOfPhoneNumbers´ value given in the configuration.

PatronPhoneNumbersWithoutVerified

array of PatronPhoneNumberWithoutVerified

The size of this array must not exceed (if specified) the ´maxNumberOfPhoneNumbers´ value given in the configuration.

PatronPhoneNumberWithoutVerified

defaultpåkrevd
boolean

At most one phone number can be marked as default.

numberpåkrevd
string

The phone number, in ITU standard E.164 format.

typepåkrevd
string enummobile · landline

This tells which type of phone the number is associated with

PatronPin

string

Pin code for identifier. PLAS does not state a format. The length and the character set are decided by the provider, and a pin code the provider will not accept is rejected with error code 100011.

PatronRegistrationByCodeAndCodeVerifierResponseBody

message
string

Message to the patron, with information about the registration process.

patronId
string

If status is 'done' this should be set, else the user needs to log in again.

statuspåkrevd
string enumdone · in_progress · contact_the_library

This describes the state of the registration process.

PatronRegistrationIdentifierRequestBody

consents
array of CallbackConsent

It is the client's responsibility to ensure that the consent associated with this parameter is accepted by the patron before this request is made.

identifierpåkrevd
PatronIdentifierTypeAndValue
passwordpåkrevd
PatronPassword
pickupLocationpåkrevd
PickupLocationWithoutNames
registry
string

If against GET /patron/registration/possible, it has been checked that a patron can be registered, the registry can be added here, else it is up to the provider to choose.

PatronRegistrationIdentifierResponseBody

message
string

Message to the patron, with information about the registration process.

patronId
string

If status is 'done' this should be set, else the user needs to log in again.

statuspåkrevd
string enumdone · in_progress · contact_the_library

This describes the state of the registration process.

PatronRegistrationIdentityProviderResponseBody

message
string

Message to the patron, with information about the registration process.

patronId
string

If status is 'done' this should be set, else the user needs to log in again.

statuspåkrevd
string enumdone · in_progress · contact_the_library

This describes the state of the registration process.

PatronRegistryType

any of PatronRegistryTypeEnum | PatronRegistryTypeLiteral

Identifies the registry which a new patron can be registered through. This is an open enum, so values other than the known ones are allowed. A registry is where the patron would be registered, and not the kind of identifier they gave, even where a registry and a PatronIdentifierType share a name.

PatronRegistryTypeEnum

string enum

The known registries. - `norway_national_library_card` the Norwegian national library card registry.

norway_national_library_card

PatronRegistryTypeLiteral

string

PatronReservation

createdTimepåkrevd
ReservationCreatedTime
expirationDate
ReservationExpirationDate
fulfillmentBy
PatronReservationFulfillmentBy
idpåkrevd
ReservationId
itemId
ReservationItemId
pickuppåkrevd
object
publicationIdpåkrevd
ReservationPublicationId
publicationMetadata
PublicationFallback
queueNumber
ReservationQueueNumber
statepåkrevd
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

typepåkrevd
string enuminterlibrary_loan

PatronReservationFulfillmentByTypeLocalCirculation

typepåkrevd
string enumlocal_circulation

PatronReservationFulfillmentByTypePurchase

typepåkrevd
string enumpurchase

PatronReservationFulfillmentByTypeUnknown

typepåkrevd
string enumunknown

PatronReservationResponseBody

reservationspåkrevd
array of PatronReservation

PatronSurname

string

Patron surname.

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.

branchIdpåkrevd
string

The branch ID where a reservation should be picked up.

branchNamepåkrevd
string

This is the name of the branch.

sections
array of LocationSectionElementWithIdNameAndType

This are specifying the location more precisely.

PickupLocationWithoutNames

The object tells a location where a reservation item can be pickup. The `section` is for specifying the location more exactly.

branchIdpåkrevd
string

The branch ID where a reservation should be picked up.

sections
array of LocationSectionElementWithIdAndType

This are specifying the location more precisely.

PromotedType

any of PromotedTypeEnum | PromotedTypeLiteral

PromotedTypeEnum

string enum

Pre-defined promotion states that we can "switch" on.

promoted

PromotedTypeLiteral

string

Literal promotion states that are unknown beforehand.

Publication

additionalIdentifiers
PublicationAdditionalIdentifiers
binding
Binding
contributors
PublicationContributors
creators
PublicationCreators
edition
Edition
extent
PublicationExtent
identifierpåkrevd
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.

titlespåkrevd
PublicationTitles
workspåkrevd
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

identifierpåkrevd
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
string

The unique identifier of the publisher. It can be used to search for the other entries by the publisher

namepåkrevd
string

The publisher's name.

PublisherAndPlaces

places
array of PublisherPlace

Place of publication. Usually one place, but can be multiple.

publisherpåkrevd
Publisher

PublisherPlace

placepåkrevd
string

QueryRelevantWorks

Relevant works specified as a query string

querypåkrevd
string

Query string to find relevant works

typepåkrevd
string enumquery

Type of relevant works - query string

RegisterEventReceiverRequestBody

secretpåkrevd
string

This cannot be empty. It should be randomly generated, and should be used to validate the Provider in the Vendor API.

urlpåkrevd
string

The empty string will unregister an existing receiver for the vendor.

RegisterPatronByCodeAndCodeVerifierRequestBody

codepåkrevd
string

The code obtained from a SSO patron registration.

code_verifierpåkrevd
string

The code verifier used to create the code challenge used to obtain the code.

consents
array of CallbackConsent

Consents returned from the SSO callback (GET /callbacks/patron). It is the client's responsibility to ensure that the consent associated with this parameter is accepted by the patron before this request is made.

identity_providerpåkrevd
ConfigurationPatronIdentityProviderType
pickupLocationpåkrevd
PickupLocationWithoutNames

RegistrationAdmission

Registration-based admission with contact information

contactInfopåkrevd
ContactInfo
statepåkrevd
TicketState

State of the registration

typepåkrevd
string enumregistration

Type of admission - registration required

RelatedEvents

array of string

Related events

RelevantWorks

one of WorksRelevantWorks | QueryRelevantWorks

Books or other works relevant to the event

RenewPatronLoanFailure

If the renewal failed, status should be set to the reason for the failure.

statuspåkrevd
string enumdenied · too_many_renewals · user_blocked · renewal_blocked_by_fees · reservation_blocked_renewal

There are many possible failure states a renewal attempt can have.

RenewPatronLoanResponseBody

one of RenewPatronLoanSuccess | RenewPatronLoanFailure

RenewPatronLoanSuccess

If the renewal went well, status should be set to `success`, and loan should be set to the renewed loan.

loanpåkrevd
PatronLoan
statuspåkrevd
string enumsuccess

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

ReserveId

string

This is the ID used to make a reservation.

ResetPatronCredentialRequestBody

credential
all of PatronCredentialType + unknown
emailpåkrevd
string

The email address, following RFC 5322, that the reset link should be sent to.

This selects which of the patron's already registered email addresses to use. The provider must only send the reset link if this email address is already attached to the patron identified by identifier and verified there, and must never send to an address that is not. If it is not attached, or attached but not verified, nothing must be sent, and the response is unchanged.

identifierpåkrevd
PatronIdentifierTypeAndValue

RevokeTokenRequestBody

all of OAuthClientIdAndSecret + OAuthToken

This is for revoking a token, when using OAuth grant_type *client_credentials*.

SearchAgentsResponseBody

resultspåkrevd
array of Agent
totalpåkrevd
integer

The total number of results in the whole search result.

SearchFacetType

any of SearchFacetTypeEnum | SearchFacetTypeLiteral

Facet type, this is the value given to the search facet parameter. The SearchFacetType should always exists in SearchFilterType

SearchFacetTypeEnum

string enum plas.audience.literal · plas.audience.ageRange · plas.audience.ageGroup · plas.mediaTypes · plas.language · plas.subjects · plas.genres · plas.forms

SearchFacetTypeLiteral

string

SearchFilterType

any of SearchFilterTypeEnum | SearchFilterTypeLiteral

Filter type, this is the value given to the search `filter` parameter.

SearchFilterTypeEnum

string enum plas.audience.literal · plas.audience.ageRange · plas.audience.ageGroup · plas.mediaTypes · plas.language · plas.subjects · plas.genres · plas.forms

SearchFilterTypeLiteral

string

SearchResultEntry

This search entry, represents one entry in a search result. It's partial build with data from a work, with additional data from the works underlying publications.

workpåkrevd
SearchResultEntryWork

SearchResultEntryPublication

identifierpåkrevd
PublicationIdentifier
language
PublicationLanguage
mediaTypes
PublicationMediaTypes

SearchResultEntryWork

creationDate
Date
creators
WorkCreators
forms
WorkForms
identifierpåkrevd
WorkIdentifier
images
array of ImagePublication

Images to use with the work.

publicationspåkrevd
array of SearchResultEntryPublication

This contain only the underlying publications from the work, that matches the search criteria.

titlespåkrevd
WorkTitles

SearchSortingType

any of SearchSortingTypeEnum | SearchSortingTypeLiteral

Sorting type, this is the value given to the search facet parameter. The default sorting is `plas.relevance.desc`.

SearchSortingTypeEnum

string enum plas.relevance.asc · plas.relevance.desc · plas.titles.asc · plas.titles.desc · plas.publicationDate.asc · plas.publicationDate.desc

SearchSortingTypeLiteral

string

SearchWorksResponseBody

endOfResultspåkrevd
boolean

If this is false, we haven't reached the end of the search result yet, if it's false we have, and if it's missing or null we don't know.

facets
array of Facet

This array contains the requested facets, and their terms. Each facet type should only appear once in the array.

resultspåkrevd
array of SearchResultEntry

It's important to be aware that, the result size doesn't always match the given page size, the result set can be both small and greater.

total
integer

The total number of results in the whole search result.

Subject

id
string

A id that (if set) can be used with the filter plas.subjects to search on this subject.

labelpåkrevd
string

A displayable (human readable) value of the subject.

Suggestion

one of SuggestionTypeQuery | SuggestionTypeContributor | SuggestionTypeWork | SuggestionTypeSubject

SuggestionAgent

one of SuggestionAgentTypePerson | SuggestionAgentTypeCollective

SuggestionAgentTypeCollective

all of BaseSuggestionAgent + object

SuggestionAgentTypePerson

all of BaseSuggestionAgent + object

SuggestionParameterTypeEnum

string enum query · contributor · work · subject

SuggestionsFilterType

any of SuggestionsFilterTypeEnum | SuggestionsFilterTypeLiteral

Filter type, this is the value given to the suggestions `filter` parameter.

SuggestionsFilterTypeEnum

string enum plas.audience.literal · plas.audience.ageRange · plas.audience.ageGroup · plas.mediaTypes · plas.language · plas.subjects · plas.genres · plas.forms

SuggestionsFilterTypeLiteral

string

SuggestionTypeContributor

contributorpåkrevd
object
typepåkrevd
string enumcontributor

SuggestionTypeQuery

querypåkrevd
string
typepåkrevd
string enumquery

SuggestionTypeSubject

subjectpåkrevd
Subject
typepåkrevd
string enumsubject

SuggestionTypeWork

typepåkrevd
string enumwork
workpåkrevd
object

TicketAdmission

Ticket-based admission with pricing and capacity

contactInfopåkrevd
ContactInfo
pricingpåkrevd
EventPricing
statepåkrevd
TicketState

State of the ticket sale

ticketCapacity
string

Total number of tickets which can be sold for the event. E.g. "100" or "unlimited"

typepåkrevd
string enumticket

Type of admission - ticket required

TicketState

string enum

State of ticket sales or registration

ticket_sale_not_open · ticket_sale_open · almost_sold_out · sold_out

TimeSpanScheduling

Time-span event scheduling information

endTimepåkrevd
string (date-time)

End time in RFC3339 date-time format.

startTimepåkrevd
string (date-time)

Start time in RFC3339 date-time format.

typepåkrevd
string enumtime_span

Type of scheduling for time-span events

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

UpdatePatronConsentRequestBody

consentspåkrevd
PatronEvaluatedConsents

UpdatePatronConsentResponseBody

availablepåkrevd
array of object

The array must only contain one consent of each type.

evaluatedpåkrevd
PatronEvaluatedConsents

UpdatePatronInformationRequestAcceptedResponseBody

ticketpåkrevd
string

Can be used for debugging.

UpdatePatronInformationRequestBody

address
PatronAddress
emails
PatronEmailsWithoutVerified
phoneNumbers
PatronPhoneNumbersWithoutVerified
pickupLocation
PickupLocationWithoutNames
reservation
PatronInfoReservation

UpdatePatronInformationResponseBody

patronpåkrevd
Patron

UpdatePatronListRequestBody

namepåkrevd
string

The new name of the list.

UpdatePatronNotificationSetting

chosenpåkrevd
PatronNotificationDeliveryChosen
typepåkrevd
PatronNotificationType

UpdatePatronNotificationSettingsRequestBody

notificationSettingspåkrevd
array of UpdatePatronNotificationSetting

UpdatePatronNotificationSettingsResponseBody

notificationSettingspåkrevd
PatronNotificationSettings

UpdatePatronReservationRequestBody

pickupLocationpåkrevd
PickupLocationWithoutNames

UpdatePatronReservationResponseBody

reservationpåkrevd
PatronReservation

Version

string

Open Library API version.

Work

audience
WorkAudience
classification
WorkClassification
contributors
WorkContributors
creationDate
Date
creators
WorkCreators
description
WorkDescription
forms
WorkForms
genres
WorkGenres
identifierpåkrevd
WorkIdentifier
images
WorkImages
language
WorkLanguage
publicationIds
WorkPublicationIds
subjects
WorkSubjects
titlespåkrevd
WorkTitles

WorkAudience

array of Audience

Intended audience, target audience or intellectual level of the work.

WorkClassification

array of Classification

Classification of the work.

WorkContributors

array of Contributor

The contributor(s) to the work.

WorkCreators

array of Contributor

The creator(s) of the work.

WorkDescription

array of Description

Help readers understand what the work is about and whether they might be interested in lending/reserving it.

WorkForms

array of Form

Form is a more specific type of metadata that describes the physical structure or organization of a work.

WorkGenres

array of Genre

Genre is a broad category of works that share similar characteristics, such as style, tone, or subject matter.

WorkIdentifier

string

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

WorkImages

array of ImagePublication

Images to use with the work.

WorkLanguage

array of Language

This is the original language of the work. If the original version of the work uses multi languages this will also contain them.

WorkPublicationIds

array of string

All publication identifiers from the works underlying publications. These are searchable through the GET /publication endpoint.

WorksRelevantWorks

Relevant works specified as an array of work IDs

typepåkrevd
string enumworks

Type of relevant works - array of work ids

workIdspåkrevd
array of string

Array of works

WorkSubjects

array of Subject

Subject is a topic or theme that is covered in a work.

WorkTitles

array of Title

Title of the work.