Where the provider sends events about patrons and items as they happen. A consent changed, a patron deleted, a reservation ready or about to expire, a loan or a fee due soon, an item checked out or checked in. The vendor registers this address through Configuration.

1 operation
POST /events/receiver

Receives events from an LMS

Bearer-token ReceiverEvents

Eksempel på kald

cURL

curl -X POST "$PLAS_BASE_URL/events/receiver?version=0.6.7" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $PLAS_TOKEN" \
  -d '{
  "eventId": "84410",
  "type": "consent_changed",
  "data": {
    "consent": {
      "available": [
        {
          "type": "loan_history",
          "version": "2025-01"
        }
      ],
      "evaluated": [
        {
          "given": true,
          "type": "loan_history",
          "version": "2025-01"
        }
      ]
    },
    "patronId": "40218873"
  }
}'

JavaScript

const response = await fetch(`${process.env.PLAS_BASE_URL}/events/receiver?version=0.6.7`, {
  method: "POST",
  headers: {
    "Accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": `Bearer ${process.env.PLAS_TOKEN}`,
  },
  body: JSON.stringify({
    "eventId": "84410",
    "type": "consent_changed",
    "data": {
      "consent": {
        "available": [
          {
            "type": "loan_history",
            "version": "2025-01"
          }
        ],
        "evaluated": [
          {
            "given": true,
            "type": "loan_history",
            "version": "2025-01"
          }
        ]
      },
      "patronId": "40218873"
    }
  }),
});

Python

import os
import requests

response = requests.post(
    f"{os.environ['PLAS_BASE_URL']}/events/receiver",
    params={
        "version": "0.6.7",
    },
    headers={
        "Accept": "application/json",
        "Content-Type": "application/json",
        "Authorization": f"Bearer {os.environ['PLAS_TOKEN']}",
    },
    json={
        "eventId": "84410",
        "type": "consent_changed",
        "data": {
            "consent": {
                "available": [
                    {
                        "type": "loan_history",
                        "version": "2025-01",
                    },
                ],
                "evaluated": [
                    {
                        "given": True,
                        "type": "loan_history",
                        "version": "2025-01",
                    },
                ],
            },
            "patronId": "40218873",
        },
    },
)
response.raise_for_status()
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 · EventReceiverRequest

Vælges af feltet type

Variant: consent_changed

EventConsentChanged

Variant: patron_deleted

EventPatronDeleted

  • eventIdstringpåkrævet

    A unique identifier for the event.

  • typeunknownpåkrævet
  • dataobjectpåkrævet
    Vis 1 feltSkjul 1 felt
    • patronIdstringpåkrævet

Variant: reservation_ready_for_pickup

EventReservationReadyForPickup

Variant: ready_reservation_expires_soon

EventReadyReservationExpiresSoon

Variant: reservation_expires_soon

EventReservationExpiresSoon

Variant: reservation_reminder

EventReservationReminder

Variant: loan_due_date_is_approaching

EventLoanDueDateIsApproaching

  • eventIdstringpåkrævet

    A unique identifier for the event.

  • typeunknownpåkrævet
  • dataobjectpåkrævet
    Vis 2 felterSkjul 2 felter

Variant: fee_due_date_is_approaching

EventFeeDueDateIsApproaching

  • eventIdstringpåkrævet

    A unique identifier for the event.

  • typeunknownpåkrævet
  • dataobjectpåkrævet
    Vis 2 felterSkjul 2 felter

Variant: item_checkout

EventItemCheckout

Variant: item_checkin

EventItemCheckin

Svar

204 OK

Intet indhold i svaret.

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": 500,
      "info": "500: System error"
    }
  ]
}

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

      Én af: 500 · 600

    • infostringpåkrævet

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

401 Secret is invalid.

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

Intet indhold i svaret.