Ingen beskrivelse i spesifikasjonen.

1 operasjon
GET /locations

Get locations

Bearer-token GetLocations

Get all branches (libraries) that exist, and all sections of the branches. Sections is a natural division of the branches into smaller and smaller locations (such as floor and/or department, etc.), and each section is part of the path that describes an item's location in a library.
Each section object contains the actual location values (e.g. a section of type "department" could contain the location values "adult", "youngAdult" and "children").

Eksempel på kall

cURL

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

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/locations?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']}/locations",
    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 LocationsResponseBody
Generert fra skjemaet

Eksempel

{
  "branches": [
    {
      "coordinates": {
        "latitude": 59.9139,
        "longitude": 10.7522,
        "radius": 5000
      },
      "externals": {
        "identifiers": [
          {
            "type": "isil",
            "value": "0301"
          }
        ]
      },
      "id": "nordby-main",
      "name": "Nordby Main Library",
      "tags": [
        "makerspace"
      ]
    }
  ],
  "mainBranch": {
    "branchId": "nordby-main",
    "branchName": "Nordby Main Library"
  },
  "pickupLocations": [
    {
      "branchId": "nordby-main",
      "branchName": "Nordby Main Library",
      "sections": [
        {
          "id": "nordby-main-children",
          "name": "Children’s department",
          "type": "department"
        }
      ]
    }
  ],
  "sections": [
    {
      "elements": [
        {
          "id": "nordby-main",
          "name": "Nordby Main Library",
          "parentId": "nordby-main"
        }
      ],
      "type": "department"
    }
  ]
}

Skjema

LocationsResponseBody

  • branchesarray of LocationBranchpåkrevd
    Vis 5 felterSkjul 5 felter
    • coordinatesobject
      Vis 3 felterSkjul 3 felter
      • latitudenumberpåkrevd
      • longitudenumberpåkrevd
      • radiusinteger

        This integer indicates (in meters) how far away from latitude and longitude the branch extends.

    • Vis 1 feltSkjul 1 felt
      • identifiersarray of object

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

    • idstringpåkrevd

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

    • namestringpåkrevd

      Displayable name of the library branch.

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

  • mainBranchobjectpåkrevd
    Vis 2 felterSkjul 2 felter
    • branchIdstringpåkrevd

      This branch should of course also exist in GET /locations

    • branchNamestringpåkrevd
  • pickupLocationsarray of PickupLocationmin. antall 1

    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.

    Vis 3 felterSkjul 3 felter
    • branchIdstringpåkrevd

      The branch ID where a reservation should be picked up.

    • branchNamestringpåkrevd

      This is the name of the branch.

    • This are specifying the location more precisely.

      Vis 3 felterSkjul 3 felter
      • idstringpåkrevd

        This is the section (element) ID

      • namestringpåkrevd

        Readable text

      • typestringpåkrevd

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

  • sectionsarray of LocationSectionpåkrevd
    Vis 2 felterSkjul 2 felter
    • Vis 3 felterSkjul 3 felter
      • idstringpåkrevd

        This is the section (element) ID

      • namestringpåkrevd

        Readable text

      • parentIdstring

        Either all elements should have a parentId or none should have one, regardless of type. If parentId is in use, it should only refer to an ID from an element in a LocationSection that came before in LocationsResponse->sections, and elements in the first section entry in LocationsResponse->sections, should refer to branchIds from branches in LocationsResponse->branches.

    • typestringpåkrevd
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.