/configuration Get Open Library API configuration
Eksempel på kald
cURL
curl -X GET "$PLAS_BASE_URL/configuration?version=0.6.6" \
-H 'Accept: application/json' \
-H "Authorization: Bearer $PLAS_TOKEN" JavaScript
const response = await fetch(`${process.env.PLAS_BASE_URL}/configuration?version=0.6.6`, {
method: "GET",
headers: {
"Accept": "application/json",
"Authorization": `Bearer ${process.env.PLAS_TOKEN}`,
},
});
const data = await response.json(); Python
import os
import requests
response = requests.get(
f"{os.environ['PLAS_BASE_URL']}/configuration",
params={
"version": "0.6.6",
},
headers={
"Accept": "application/json",
"Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
},
)
data = response.json() PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.
Parametre
Fælles for operationerne: version. Se den fælles kontrakt på versionssiden.Svar
200 Success ConfigurationResponseBody
Eksempel
{
"content": {
"api": {
"delegated": {
"url": "https://nordby.bibliotek.example/url"
}
},
"uiLanguages": {
"default": "nob",
"supported": [
"nob"
]
}
},
"events": {
"receiver": "https://app.nordby.bibliotek.example/events"
},
"holding": {
"periodical": {
"groupOrdering": [
"year"
]
}
},
"patron": {
"deletion": {
"identityProviders": [
"bankid"
]
},
"fields": [
{
"field": "emails",
"maxNumberOfEmailAddresses": 3,
"verification": "no_verification"
}
],
"identifierTypes": [
{
"type": "norway_birth_number"
}
],
"identityProviders": [
{
"type": "norway_id_portal"
}
],
"loanHistory": {
"blockManuallyAddingLoans": false
},
"login": {
"identityProviders": [
"bankid"
]
},
"registration": {
"identifierTypes": [
"norway_birth_number"
],
"identityProviders": [
"bankid"
]
}
},
"payment": {
"initialize": {
"state": "do_not_use_initialize"
},
"methods": [
{
"type": "mobile_pay"
}
],
"partial": false
},
"search": {
"api": {
"delegated": {
"url": "https://nordby.bibliotek.example/url"
}
},
"expression": {
"clustering": [
[
{
"type": "mediaTypes"
},
{
"type": "language"
},
{
"codes": [
"trl"
],
"type": "creatorsAndContributors"
},
{
"codes": [
"nrt"
],
"type": "creatorsAndContributors"
}
]
]
},
"suggestions": {
"available": [
{
"description": "Only suggest titles for children.",
"type": "plas.audience.literal"
}
],
"disabled": false
},
"uiLanguages": {
"default": "nob",
"supported": [
"nob"
]
},
"workSearch": {
"facet": {
"available": [
{
"description": "Group the results by media type.",
"type": "plas.audience.literal"
}
]
},
"filter": {
"available": [
{
"description": "Only show works available at the chosen branch.",
"type": "plas.audience.literal"
}
]
},
"sorting": {
"available": [
{
"description": "Newest publications first.",
"type": "plas.relevance.asc"
}
]
}
}
},
"version": "1.0",
"mainBranch": "nordby-main"
} Skema
- contentConfigurationContentWithApi
Vis 2 felterSkjul 2 felter
Vis 1 feltSkjul 1 felt
- delegatedobject
- uiLanguagesobject
This contains the ui language settings.
All ui language codes should be on this list https://www.loc.gov/marc/languages/
Vis 2 felterSkjul 2 felter
- defaultstring
This is the default ui language used if no language is added to the requests.
- supportedarray of string
These are the supported ui languages that can be added to the requests.
- eventsobject
events contain configuration data for events in the LMS.
This covers notifications sent to the user and consent changes.Vis 1 feltSkjul 1 felt
- receiverstring
- holdingConfigurationHolding
Vis 1 feltSkjul 1 felt
- periodicalConfigurationHoldingPeriodical
Vis 1 feltSkjul 1 felt
- groupOrderingarray of string
The default ordering of periodical group types is
year,volumeandnumber, orlevel1, ...,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,groupOrderingcan be used to tell the vendor the ordering of periodicals.Én af: year · volume · number · level1 · level2 · level3 · level4 · level5 · level6 · level7
- patronConfigurationPatron
Vis 7 felterSkjul 7 felter
- deletionobject
Vis 1 feltSkjul 1 felt
- identityProvidersarray of string
An array of enabled identity provider types that can be used for patron deletion.
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.
Vis 3 varianterSkjul 3 varianter
Vælges af feltet field
Variant: phoneNumbers
- identifierTypesarray of object
This is an array of the patron identifier types that the vendor supports.
If this is missing, only the empty identifier type is supported.
The empty identifier type is when no identifier type is specified, and it is assumed to be unknown.Vis 1 feltSkjul 1 felt
- typestring
Én af: norway_birth_number · denmark_cpr
- identityProvidersarray of object
Vis 1 feltSkjul 1 felt
- typestring
The identity provider type, found in GET /configuration.
Én af: norway_id_portal · norway_nl_oidc · norway_feide_oidc · denmark_mit_id · denmark_dbc_access_platform
- loanHistoryobject
Vis 1 feltSkjul 1 felt
- blockManuallyAddingLoansboolean
If this is true, it is expected that patrons are not allowed to manually add loans to the loan history. The default is false.
- loginobject
Vis 1 feltSkjul 1 felt
- identityProvidersarray of string
An array of enabled identity provider types for patron login.
- registrationobject
Vis 2 felterSkjul 2 felter
- identifierTypesarray of string
An array of enabled user identifier types for patron registration.
Én af: norway_birth_number · denmark_cpr
- identityProvidersarray of string
An array of enabled identity provider types that can be used for patron registration.
- paymentConfigurationPayment
If this field is missing, the vendor does not support payments.
Vis 3 felterSkjul 3 felter
- initializeobject
Vis 1 feltSkjul 1 felt
- statestring
This tells if the vendor should use the payment initialize endpoint or not.
The two possible states are:
do_not_use_initialize, This means that the vendor should not use the initialize endpoint when starting a payment.use_initialize, This means that the vendor should always use the initialize endpoint when starting a payment.
If no state is mentioned, the default state is
use_initialize.Én af: do_not_use_initialize · use_initialize
This is a list of the payment methods that the vendor supports.
If this is missing, there are no payment methods available.
Vis 1 feltSkjul 1 felt
- typestring
This represents the payment method type.
Én af: mobile_pay · vipps ·
- partialboolean
If this is true, the provider allows partial payments. Default is false.
Vis 5 felterSkjul 5 felter
Vis 1 feltSkjul 1 felt
- delegatedobject
- expressionConfigurationSearchExpression
Vis 1 feltSkjul 1 felt
This is the providers preferred clustering of publications.
This clustering can be used to group publications together, emulating an expression level.
- suggestionsConfigurationSearchSuggestions
Vis 2 felterSkjul 2 felter
This tells which filters are available for the
/suggestionsendpoint.Se ConfigurationSearchSuggestionsFilterAvailable i skema-indekset
- disabledboolean
This tells the Vendor if the
/suggestionsendpoint is disabled or not. (Defaultfalse).If this is set to
true, the Vendor should not make request to the/suggestionsendpoint.
- uiLanguagesobject
This contains the ui language settings.
All ui language codes should be on this list https://www.loc.gov/marc/languages/
Vis 2 felterSkjul 2 felter
- defaultstring
This is the default ui language used if no language is added to the requests.
- supportedarray of string
These are the supported ui languages that can be added to the requests.
- workSearchobject
- versionstringpåkrævet
This contains the version of the Open Library API.
- mainBranchunknownpåkrævetikke erklæret i specifikationen
400 The list of errors. Errors
Fælles svar, defineret én gang for hele API’et. Se den fælles kontrakt på versionssiden.
Eksempel
{
"errors": [
{
"code": 200103,
"info": "200103: invalid/unsupported query parameter value"
}
]
} Skema
The first error should always be the most relevant.
Vis 2 felterSkjul 2 felter
- codeintegerpåkrævet
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 username or password
- 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
Én af: 500 · 600 · 100001 · 100023 · 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
- infostringpåkrævet
Starts with the text matching the error code field (defined above), and a describing text could be added.
401 Bearer token invalid, missing, or expired.
Fælles svar, defineret én gang for hele API’et. Se den fælles kontrakt på versionssiden.
Intet indhold i svaret.