Ingen beskrivelse i spesifikasjonen.

3 operasjoner
GET /configuration

Get Open Library API configuration

Bearer-token GetConfiguration

Eksempel på kall

cURL

curl -X GET "$PLAS_BASE_URL/configuration?version=0.6.3" \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN"

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/configuration?version=0.6.3`, {
  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.3",
    },
    headers={
        "Accept": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
)
data = response.json()
Verten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametere

Felles for operasjonene: version. Se den felles kontrakten på versjonssiden.

Svar

200 Success ConfigurationResponseBody
Generert fra skjemaet

Eksempel

{
  "events": {
    "receiver": "https://app.nordby.bibliotek.example/events"
  },
  "holding": {
    "periodical": {
      "groupOrdering": [
        "year"
      ]
    }
  },
  "patron": {
    "fields": [
      {
        "field": "emails",
        "maxNumberOfEmailAddresses": 3,
        "verification": "no_verification"
      }
    ],
    "identifierTypes": [
      {
        "type": "norway_birth_number"
      }
    ],
    "identityProviders": [
      {
        "type": "norway_min_id"
      }
    ],
    "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": "0.6.3"
}

Skjema

ConfigurationResponseBody

  • 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
  • Vis 1 feltSkjul 1 felt
    • Vis 1 feltSkjul 1 felt
      • groupOrderingarray of string

        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.

        Én av: year · volume · number · level1 · level2 · level3 · level4 · level5 · level6 · level7

  • Vis 6 felterSkjul 6 felter
    • 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
    • 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 av: norway_birth_number · denmark_cpr

    • identityProvidersarray of object
      Vis 1 feltSkjul 1 felt
      • typestring

        Én av: norway_min_id · norway_id_portal · denmark_mit_id

    • 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 av: norway_birth_number · denmark_cpr

      • identityProvidersarray of string

        An array of enabled identity provider types that can be used for patron registration.

  • 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 av: 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 av: mobile_pay · vipps ·

    • partialboolean

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

  • Vis 5 felterSkjul 5 felter
  • versionstringpåkrevd

    This contains the version of the Open Library API.

400 The list of errors. Errors

Felles svar, definert én gang for hele API-et. Se den felles kontrakten på versjonssiden.

Generert fra skjemaet

Eksempel

{
  "errors": [
    {
      "code": 200103,
      "info": "200103: invalid/unsupported query parameter value"
    }
  ]
}

Skjema

Errors

  • errorsarray of Errorpåkrevdmin. antall 1

    The first error should always be the most relevant.

    Vis 2 felterSkjul 2 felter
    • codeintegerpåkrevd

      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
      • 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 av: 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åkrevd

      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.

Felles svar, definert én gang for hele API-et. Se den felles kontrakten på versjonssiden.

Ikke noe innhold i svaret.

POST /configuration/event/register/receiver

Register an event receiver

Bearer-token RegisterEventReceiver

Register a URL for receiving events. See the Vendor API for more information about which events.

Eksempel på kall

cURL

curl -X POST "$PLAS_BASE_URL/configuration/event/register/receiver?version=0.6.3" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN" \
  -d '{
  "secret": "Qm8x2Lp7Vn4Kt9Rs",
  "url": "https://nordby.bibliotek.example/events/84410"
}'

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/configuration/event/register/receiver?version=0.6.3`, {
  method: "POST",
  headers: {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": `Bearer ${process.env.PLAS_TOKEN}`,
  },
  body: JSON.stringify({
    "secret": "Qm8x2Lp7Vn4Kt9Rs",
    "url": "https://nordby.bibliotek.example/events/84410"
  }),
});

Python

import os
import requests

response = requests.post(
    f"{os.environ['PLAS_BASE_URL']}/configuration/event/register/receiver",
    params={
        "version": "0.6.3",
    },
    headers={
        "Accept": "application/json",
        "Content-Type": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
    json={
        "secret": "Qm8x2Lp7Vn4Kt9Rs",
        "url": "https://nordby.bibliotek.example/events/84410",
    },
)
response.raise_for_status()
Verten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametere

Felles for operasjonene: version. Se den felles kontrakten på versjonssiden.

Request body

application/json · påkrevd · RegisterEventReceiverRequestBody
  • secretstringpåkrevdmin. lengde 16

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

  • urlstringpåkrevd

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

Svar

204 Success

Ikke noe innhold i svaret.

400 The list of errors. Errors

Felles svar, definert én gang for hele API-et. Se den felles kontrakten på versjonssiden.

Generert fra skjemaet

Eksempel

{
  "errors": [
    {
      "code": 200103,
      "info": "200103: invalid/unsupported query parameter value"
    }
  ]
}

Skjema

Errors

  • errorsarray of Errorpåkrevdmin. antall 1

    The first error should always be the most relevant.

    Vis 2 felterSkjul 2 felter
    • codeintegerpåkrevd

      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
      • 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 av: 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åkrevd

      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.

Felles svar, definert én gang for hele API-et. Se den felles kontrakten på versjonssiden.

Ikke noe innhold i svaret.

GET /configuration/search

Get search configuration

Bearer-token GetSearchConfiguration

Eksempel på kall

cURL

curl -X GET "$PLAS_BASE_URL/configuration/search?version=0.6.3" \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN"

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/configuration/search?version=0.6.3`, {
  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/search",
    params={
        "version": "0.6.3",
    },
    headers={
        "Accept": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
)
data = response.json()
Verten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametere

Felles for operasjonene: version. Se den felles kontrakten på versjonssiden.

Svar

200 Success ConfigurationSearchResponseBody
Generert fra skjemaet

Eksempel

{
  "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"
        }
      ]
    }
  }
}

Skjema

ConfigurationSearchResponseBody

400 The list of errors. Errors

Felles svar, definert én gang for hele API-et. Se den felles kontrakten på versjonssiden.

Generert fra skjemaet

Eksempel

{
  "errors": [
    {
      "code": 200103,
      "info": "200103: invalid/unsupported query parameter value"
    }
  ]
}

Skjema

Errors

  • errorsarray of Errorpåkrevdmin. antall 1

    The first error should always be the most relevant.

    Vis 2 felterSkjul 2 felter
    • codeintegerpåkrevd

      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
      • 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 av: 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åkrevd

      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.

Felles svar, definert én gang for hele API-et. Se den felles kontrakten på versjonssiden.

Ikke noe innhold i svaret.