foliolib.folio.api.inventoryStorage.ElectronicAccessRelationship

class foliolib.folio.api.inventoryStorage.ElectronicAccessRelationship(tenant: str)

Bases: foliolib.folio.FolioApi

Electronic access relationship terms reference API

This documents the API calls that can be made to query and manage electronic access relationship types of the system

Base class of the Folio API

Parameters

tenant (str) – Tenant id

Methods

delete_electronicAccessRelationship(...)

Delete electronicAccessRelationship item with given {electronicAccessRelationshipId}

get_electronicAccessRelationship(...)

Retrieve electronicAccessRelationship item with given {electronicAccessRelationshipId}

get_electronicAccessRelationships(**kwargs)

Return a list of electronic access relationship terms

modify_electronicAccessRelationship(...)

Update electronicAccessRelationship item with given {electronicAccessRelationshipId}

set_electronicAccessRelationship(...)

Create a new electronic access relationship term

delete_electronicAccessRelationship(electronicAccessRelationshipId: str)

Delete electronicAccessRelationship item with given {electronicAccessRelationshipId}

DELETE /electronic-access-relationships/{electronicAccessRelationshipId}

Parameters

electronicAccessRelationshipId (str) –

Raises
  • OkapiRequestNotFound – Not Found

  • OkapiRequestError – Bad Request

  • OkapiRequestFatalError – Server Error

get_electronicAccessRelationship(electronicAccessRelationshipId: str)

Retrieve electronicAccessRelationship item with given {electronicAccessRelationshipId}

GET /electronic-access-relationships/{electronicAccessRelationshipId}

Parameters

electronicAccessRelationshipId (str) –

Returns

See Schema below

Return type

dict

Raises
  • OkapiRequestNotFound – Not Found

  • OkapiRequestFatalError – Server Error

Schema

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "A qualifier indicating the type of relationship that an electronic resource at a given URL has to an Instance",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "description": "label for the type of relationship between a URL and an Instance",
      "type": "string"
    },
    "source": {
      "description": "Origin of the electronic access relationship record, e.g. 'local', 'consortium' etc.",
      "type": "string"
    },
    "metadata": {
      "type": "object",
      "$ref": "raml-util/schemas/metadata.schema",
      "readonly": true
    }
  },
  "required": [
    "name"
  ]
}
get_electronicAccessRelationships(**kwargs)

Return a list of electronic access relationship terms

GET /electronic-access-relationships

Parameters

**kwargs (properties) – Keyword Arguments

Keyword Arguments
  • query (str) –

    A query expressed as a CQL string (see [dev.folio.org/reference/glossary#cql](https://dev.folio.org/reference/glossary#cql)) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.

    with valid searchable fields

    Example

    • (username==”ab*” or personal.firstName==”ab*” or personal.lastName==”ab*”) and active==”true” sortby personal.lastName personal.firstName barcode

    • name=aaa

  • totalRecords (str) –

    (default=auto) How to calculate the totalRecords property. “exact” for the correct number, “estimated” for an estimation, “auto” to automatically select “exact” or “estimated”, “none” for suppressing the totalRecords property. For details see https://github.com/folio-org/raml-module-builder#estimated-totalrecords

    Example

    • none

  • offset (int) –

    (default=0) Skip over a number of elements by specifying an offset value for the query

    Example

    • 0

  • limit (int) –

    (default=10) Limit the number of elements returned in the response

    Example

    • 10

Returns

See Schema below

Return type

dict

Raises
  • OkapiRequestError – Bad Request

  • OkapiRequestUnauthorized – Authentication is required

  • OkapiRequestFatalError – Server Error

Schema

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "A collection of URL/Instance relationship type records (controlled vocabulary)",
  "type": "object",
  "properties": {
    "electronicAccessRelationships": {
      "description": "List of URL relationship types",
      "id": "electronicAccessRelationship",
      "type": "array",
      "items": {
        "type": "object",
        "$ref": "electronicaccessrelationship.json"
      }
    },
    "totalRecords": {
      "description": "Estimated or exact total number of records",
      "type": "integer"
    }
  },
  "required": [
    "electronicAccessRelationships",
    "totalRecords"
  ]
}
modify_electronicAccessRelationship(electronicAccessRelationshipId: str, electronicAccessRelationship: dict)

Update electronicAccessRelationship item with given {electronicAccessRelationshipId}

PUT /electronic-access-relationships/{electronicAccessRelationshipId}

Parameters
  • electronicAccessRelationshipId (str) –

  • electronicAccessRelationship (dict) – See Schema below

Raises
  • OkapiRequestNotFound – Not Found

  • OkapiRequestError – Bad Request

  • OkapiRequestConflict – Conflict

  • OkapiRequestFatalError – Server Error

Schema

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "A qualifier indicating the type of relationship that an electronic resource at a given URL has to an Instance",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "description": "label for the type of relationship between a URL and an Instance",
      "type": "string"
    },
    "source": {
      "description": "Origin of the electronic access relationship record, e.g. 'local', 'consortium' etc.",
      "type": "string"
    },
    "metadata": {
      "type": "object",
      "$ref": "raml-util/schemas/metadata.schema",
      "readonly": true
    }
  },
  "required": [
    "name"
  ]
}
set_electronicAccessRelationship(electronicAccessRelationship: dict)

Create a new electronic access relationship term

POST /electronic-access-relationships

Parameters

electronicAccessRelationship (dict) – See Schema below

Raises
  • OkapiRequestError – Bad Request

  • OkapiRequestUnauthorized – Authentication is required

  • OkapiRequestFatalError – Server Error

  • OkapiRequestUnprocessableEntity – Unprocessable Entity

Headers

  • Location - URI to the created electronicAccessRelationship item

Schema

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "A qualifier indicating the type of relationship that an electronic resource at a given URL has to an Instance",
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "description": "label for the type of relationship between a URL and an Instance",
      "type": "string"
    },
    "source": {
      "description": "Origin of the electronic access relationship record, e.g. 'local', 'consortium' etc.",
      "type": "string"
    },
    "metadata": {
      "type": "object",
      "$ref": "raml-util/schemas/metadata.schema",
      "readonly": true
    }
  },
  "required": [
    "name"
  ]
}