Creating a new patron at the library. The vendor can first ask whether a given identifier may be registered at all, then register the patron with an identifier and a credential, or send the patron through an identity provider and complete the registration from its answer.

4 operationer
POST /patron/registration

This will create a new patron, by the given identifier.

Bearer-token RegisterPatronByIdentifier

Eksempel på kald

cURL

curl -X POST "$PLAS_BASE_URL/patron/registration?version=0.6.7" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN" \
  -d '{
  "consents": [
    {
      "type": "loan_history",
      "version": "2025-01"
    }
  ],
  "identifier": {
    "type": "local",
    "value": "N00012345"
  },
  "password": "correct-horse-battery",
  "pickupLocation": {
    "branchId": "nordby-main",
    "sections": [
      {
        "id": "nordby-main-children",
        "type": "department"
      }
    ]
  },
  "registry": "national"
}'

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/patron/registration?version=0.6.7`, {
  method: "POST",
  headers: {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": `Bearer ${process.env.PLAS_TOKEN}`,
  },
  body: JSON.stringify({
    "consents": [
      {
        "type": "loan_history",
        "version": "2025-01"
      }
    ],
    "identifier": {
      "type": "local",
      "value": "N00012345"
    },
    "password": "correct-horse-battery",
    "pickupLocation": {
      "branchId": "nordby-main",
      "sections": [
        {
          "id": "nordby-main-children",
          "type": "department"
        }
      ]
    },
    "registry": "national"
  }),
});
const data = await response.json();

Python

import os
import requests

response = requests.post(
    f"{os.environ['PLAS_BASE_URL']}/patron/registration",
    params={
        "version": "0.6.7",
    },
    headers={
        "Accept": "application/json",
        "Content-Type": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
    json={
        "consents": [
            {
                "type": "loan_history",
                "version": "2025-01",
            },
        ],
        "identifier": {
            "type": "local",
            "value": "N00012345",
        },
        "password": "correct-horse-battery",
        "pickupLocation": {
            "branchId": "nordby-main",
            "sections": [
                {
                    "id": "nordby-main-children",
                    "type": "department",
                },
            ],
        },
        "registry": "national",
    },
)
data = response.json()
Værten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametre

Fælles for operationerne: version. Se den fælles kontrakt på versionssiden.

Request body

application/json · påkrævet · PatronRegistrationIdentifierRequestBody
  • 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.

    Vis 2 felterSkjul 2 felter
  • identifierPatronIdentifierTypeAndValuepåkrævet
    Vis 2 felterSkjul 2 felter
    • 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.

      Én af: local · email · phone · norway_national_library_card · norway_national_birth_number · denmark_cpr

      Vis 2 varianterSkjul 2 varianter

      Variant: PatronIdentifierTypeEnum

      PatronIdentifierTypeEnum

      Variant: PatronIdentifierTypeLiteral

      PatronIdentifierTypeLiteral

    • valuestringpåkrævet

      Identifier value. This information may be sensitive.

  • passwordstringpåkrævet

    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.

  • pickupLocationPickupLocationWithoutNamespåkrævet
    Vis 2 felterSkjul 2 felter
    • branchIdstringpåkrævet

      The branch ID where a reservation should be picked up.

    • This are specifying the location more precisely.

      Vis 2 felterSkjul 2 felter
      • idstringpåkrævet

        This is the section (element) ID

      • typestringpåkrævet

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

  • registrystring

    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.

Svar

200 Success PatronRegistrationIdentifierResponseBody
Genereret ud fra skemaet

Eksempel

{
  "message": "I accept the library’s terms of use.",
  "patronId": "40218873",
  "status": "done"
}

Skema

PatronRegistrationIdentifierResponseBody

  • messagestring

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

  • patronIdstring

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

  • statusstringpåkrævet

    This describes the state of the registration process.

    Én af: done · in_progress · contact_the_library

400 The list of errors. Errors

Fælles svar, defineret én gang for hele API’et. Se den fælles kontrakt på versionssiden.

Genereret ud fra skemaet

Eksempel

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

Skema

Errors

  • errorsarray of Errorpåkrævetmin. antal 1

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

      Én af: 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

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

GET /patron/registration/identity-provider

This will redirect the user to the chosen identity provider, for signup.

Bearer-token GetRegisterPatronUrl

This will redirect the user to the chosen identity provider, and create the user in the LMS. See a sequence flow diagram.

Eksempel på kald

cURL

curl -X GET "$PLAS_BASE_URL/patron/registration/identity-provider?type=bankid&version=0.6.7" \
  -H 'Accept: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN"

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/patron/registration/identity-provider?type=bankid&version=0.6.7`, {
  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']}/patron/registration/identity-provider",
    params={
        "type": "bankid",
        "version": "0.6.7",
    },
    headers={
        "Accept": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
)
data = response.json()
Værten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametre

typepåkrævet
query · string

Identity provider type. The different types are defined in the /configuration endpoint.

Eksempel: bankid
Fælles for operationerne: version. Se den fælles kontrakt på versionssiden.

Svar

200 Success PatronRegistrationIdentityProviderResponseBody
Genereret ud fra skemaet

Eksempel

{
  "message": "I accept the library’s terms of use.",
  "patronId": "40218873",
  "status": "done"
}

Skema

PatronRegistrationIdentityProviderResponseBody

  • messagestring

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

  • patronIdstring

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

  • statusstringpåkrævet

    This describes the state of the registration process.

    Én af: done · in_progress · contact_the_library

400 The list of errors. Errors

Fælles svar, defineret én gang for hele API’et. Se den fælles kontrakt på versionssiden.

Genereret ud fra skemaet

Eksempel

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

Skema

Errors

  • errorsarray of Errorpåkrævetmin. antal 1

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

      Én af: 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

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

POST /patron/registration/identity-provider

Register patron by code and code verifier from SSO registration.

Bearer-token RegisterPatronByCodeAndCodeVerifier

Eksempel på kald

cURL

curl -X POST "$PLAS_BASE_URL/patron/registration/identity-provider?version=0.6.7" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN" \
  -d '{
  "code": "SplxlOBeZQQYbYS6WxSbIA",
  "code_verifier": "dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk",
  "consents": [
    {
      "type": "loan_history",
      "version": "2025-01"
    }
  ],
  "identity_provider": "norway_id_portal",
  "pickupLocation": {
    "branchId": "nordby-main",
    "sections": [
      {
        "id": "nordby-main-children",
        "type": "department"
      }
    ]
  }
}'

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/patron/registration/identity-provider?version=0.6.7`, {
  method: "POST",
  headers: {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": `Bearer ${process.env.PLAS_TOKEN}`,
  },
  body: JSON.stringify({
    "code": "SplxlOBeZQQYbYS6WxSbIA",
    "code_verifier": "dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk",
    "consents": [
      {
        "type": "loan_history",
        "version": "2025-01"
      }
    ],
    "identity_provider": "norway_id_portal",
    "pickupLocation": {
      "branchId": "nordby-main",
      "sections": [
        {
          "id": "nordby-main-children",
          "type": "department"
        }
      ]
    }
  }),
});
const data = await response.json();

Python

import os
import requests

response = requests.post(
    f"{os.environ['PLAS_BASE_URL']}/patron/registration/identity-provider",
    params={
        "version": "0.6.7",
    },
    headers={
        "Accept": "application/json",
        "Content-Type": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
    json={
        "code": "SplxlOBeZQQYbYS6WxSbIA",
        "code_verifier": "dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk",
        "consents": [
            {
                "type": "loan_history",
                "version": "2025-01",
            },
        ],
        "identity_provider": "norway_id_portal",
        "pickupLocation": {
            "branchId": "nordby-main",
            "sections": [
                {
                    "id": "nordby-main-children",
                    "type": "department",
                },
            ],
        },
    },
)
data = response.json()
Værten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametre

Fælles for operationerne: version. Se den fælles kontrakt på versionssiden.

Request body

application/json · påkrævet · RegisterPatronByCodeAndCodeVerifierRequestBody
  • codestringpåkrævet

    The code obtained from a SSO patron registration.

  • code_verifierstringpåkrævet

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

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

    Vis 2 felterSkjul 2 felter
  • identity_providerstringpåkrævet

    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

  • pickupLocationPickupLocationWithoutNamespåkrævet
    Vis 2 felterSkjul 2 felter
    • branchIdstringpåkrævet

      The branch ID where a reservation should be picked up.

    • This are specifying the location more precisely.

      Vis 2 felterSkjul 2 felter
      • idstringpåkrævet

        This is the section (element) ID

      • typestringpåkrævet

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

Svar

200 Success PatronRegistrationByCodeAndCodeVerifierResponseBody
Genereret ud fra skemaet

Eksempel

{
  "message": "I accept the library’s terms of use.",
  "patronId": "40218873",
  "status": "done"
}

Skema

PatronRegistrationByCodeAndCodeVerifierResponseBody

  • messagestring

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

  • patronIdstring

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

  • statusstringpåkrævet

    This describes the state of the registration process.

    Én af: done · in_progress · contact_the_library

400 The list of errors. Errors

Fælles svar, defineret én gang for hele API’et. Se den fælles kontrakt på versionssiden.

Genereret ud fra skemaet

Eksempel

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

Skema

Errors

  • errorsarray of Errorpåkrævetmin. antal 1

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

      Én af: 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

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

POST /patron/registration/possible

This will tell if it is possible to register a new patron, using the given identifier.

Bearer-token IsPatronRegistrationPossible

This will tell if it is possible to register a new patron, using the given identifier.
The patron can then be registered through POST /patron/registration/identifier.

Eksempel på kald

cURL

curl -X POST "$PLAS_BASE_URL/patron/registration/possible?version=0.6.7" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN" \
  -d '{
  "identifier": {
    "type": "local",
    "value": "N00012345"
  },
  "password": "correct-horse-battery"
}'

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/patron/registration/possible?version=0.6.7`, {
  method: "POST",
  headers: {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": `Bearer ${process.env.PLAS_TOKEN}`,
  },
  body: JSON.stringify({
    "identifier": {
      "type": "local",
      "value": "N00012345"
    },
    "password": "correct-horse-battery"
  }),
});
const data = await response.json();

Python

import os
import requests

response = requests.post(
    f"{os.environ['PLAS_BASE_URL']}/patron/registration/possible",
    params={
        "version": "0.6.7",
    },
    headers={
        "Accept": "application/json",
        "Content-Type": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
    json={
        "identifier": {
            "type": "local",
            "value": "N00012345",
        },
        "password": "correct-horse-battery",
    },
)
data = response.json()
Værten og tokenet er miljøvariabler: PLAS_BASE_URL providerens adresse · PLAS_TOKEN et access token.

Parametre

Fælles for operationerne: version. Se den fælles kontrakt på versionssiden.

Request body

application/json · påkrævet · IsPatronRegistrationPossibleRequestBody
  • identifierPatronIdentifierTypeAndValuepåkrævet
    Vis 2 felterSkjul 2 felter
    • 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.

      Én af: local · email · phone · norway_national_library_card · norway_national_birth_number · denmark_cpr

      Vis 2 varianterSkjul 2 varianter

      Variant: PatronIdentifierTypeEnum

      PatronIdentifierTypeEnum

      Variant: PatronIdentifierTypeLiteral

      PatronIdentifierTypeLiteral

    • valuestringpåkrævet

      Identifier value. This information may be sensitive.

  • passwordstring

    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.

Svar

200 Success IsPatronRegistrationPossibleResponseBody
Genereret ud fra skemaet

Eksempel

{
  "registries": [
    {
      "type": "norway_national_library_card"
    }
  ]
}

Skema

IsPatronRegistrationPossibleResponseBody

  • registriesarray of objectpåkrævet

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

    Vis 1 feltSkjul 1 felt
    • typePatronRegistryTypepåkrævet

      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.

      Én af: norway_national_library_card

      Vis 2 varianterSkjul 2 varianter

      Variant: PatronRegistryTypeEnum

      PatronRegistryTypeEnum

      Variant: PatronRegistryTypeLiteral

      PatronRegistryTypeLiteral

400 The list of errors. Errors

Fælles svar, defineret én gang for hele API’et. Se den fælles kontrakt på versionssiden.

Genereret ud fra skemaet

Eksempel

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

Skema

Errors

  • errorsarray of Errorpåkrævetmin. antal 1

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

      Én af: 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

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