Inventory update API (v5.0)

singleRecordUpsertByHrid

Create or update instance with holdings and items, based on incoming HRIDs on all three record types.

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Request Body schema: application/json
required
required
object (instance-with-hrid)

An instance record in compliance with the schema of the given version of the underlying instance-storage API.

hrid
string

The external identifier of the instance; the client's own unique ID for the updating record.

property name*
additional property
any
Array of objects (holdings-record-with-hrid)

Collection of holdings of the instance, each holdings record with embedded items.

Array
hrid
string

The external identifier of the holdings record; the client's own unique ID for the updating record.

Array of objects (item-with-hrid)

Inventory items recorded by this holdings record.

object

Different types of instance-to-instance relationships to create or update.

Array of objects

Collection of objects with information required for finding and linking to parent instances

Array of objects

Collection of objects with information required for finding and linking to child instances

Array of objects

Collection of objects with information required for finding and linking to preceding instances

Array of objects

Collection of objects with information required for finding and linking to succeeding instances

object (processing-upsert)

An object holding supporting pieces of data and/or processing instructions for Inventory update processing.

object

Instructions for processing Inventory Items.

object

Instructions for processing Inventory holdings records.

object

Instructions for processing instance records.

Responses

Request samples

Content type
application/json
{
  • "instance": {
    },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    },
  • "processing": {
    }
}

Response samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    },
  • "metrics": {
    },
  • "errors": [
    ]
}

deleteInstanceByHrid

Deletes a single record set (instance, holdings, items) by instance HRID.

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Request Body schema: application/json
required
hrid
string

The legacy ID for the bibliographic record, as stored in the HRID of the Instance to be deleted.

object (processing-deletion)

An object holding supporting pieces of data and/or processing instructions for instance delete processing.

object

Instructions for processing Inventory Items during instance deletion.

object

Instructions for processing Inventory holdings records during instance deletion.

object

Instructions for processing an Inventory instance on instance delete request.

Responses

Request samples

Content type
application/json
{
  • "hrid": "string",
  • "processing": {
    }
}

Response samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    },
  • "metrics": {
    },
  • "errors": [
    ]
}

batchUpsertByHrid

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Request Body schema: application/json
required
required
Array of objects (inventory-record-set-with-hrids)

List of inventory record sets.

Array
required
object (instance-with-hrid)

An instance record in compliance with the schema of the given version of the underlying instance-storage API.

Array of objects (holdings-record-with-hrid)

Collection of holdings of the instance, each holdings record with embedded items.

object

Different types of instance-to-instance relationships to create or update.

object (processing-upsert)

An object holding supporting pieces of data and/or processing instructions for Inventory update processing.

Responses

Request samples

Content type
application/json
{
  • "inventoryRecordSets": [
    ]
}

Response samples

Content type
application/json
{
  • "INSTANCE": {
    },
  • "HOLDINGS_RECORD": {
    },
  • "ITEM": {
    },
  • "INSTANCE_RELATION_SHIP": {
    },
  • "INSTANCE_TITLE_SUCCESSION": {
    }
}

getInventoryRecordSet

path Parameters
id
required
string

Instance UUID or HRID.

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Responses

Response samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    }
}

upsertByMatchkey

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Request Body schema: application/json
required
instance
object (instance)

An instance record in compliance with the schema of the given version of the underlying instance-storage API.

Array of objects (holdings-record)

Collection of holdings of the instance, each holdings record with embedded items.

Array
items
Array of objects (item)

Inventory items listed by the holdings record

object

An object holding supporting pieces of data and/or processing instructions for Inventory update processing.

institutionId
string

The FOLIO UUID of the institution that provided the source records for the update; necessary for certain clean-up tasks in a shared inventory.

localIdentifier
string

The source system's unique identifier for the source record of this update request; necessary for certain clean-up tasks in a shared inventory.

identifierTypeId
string

The FOLIO UUID for the identifier type for the local record IDs coming from the given library.

Responses

Request samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "processing": {
    }
}

Response samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    },
  • "metrics": {
    },
  • "errors": [
    ]
}

sharedIndexDeletion

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Request Body schema: application/json
One of
institutionId
required
string

UUID representing the institution who's contributions to a shared instance should be removed.

localIdentifier
required
string

A library's legacy identifier for a bibliographic record that is to be removed from a shared instance

oaiIdentifier
string

The record identifier of an OAI-PMH feed, for a bibliographic record that is to be removed from a shared instance.

identifierTypeId
required
string

ID for the identifier type attached to all identifier values from the institution who's contributions to a shared Instance should be removed.

Responses

Request samples

Content type
application/json
{
  • "institutionId": "string",
  • "localIdentifier": "string",
  • "oaiIdentifier": "string",
  • "identifierTypeId": "string"
}

Response samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    },
  • "metrics": {
    },
  • "errors": [
    ]
}

getSharedInstance

path Parameters
id
required
string

Instance UUID or HRID.

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Responses

Response samples

Content type
application/json
{
  • "instance": { },
  • "holdingsRecords": [
    ],
  • "instanceRelations": {
    }
}

batchUpsertByMatchkey

header Parameters
X-Okapi-Tenant
string

Okapi Tenant

X-Okapi-Token
string

Okapi Token

X-Okapi-Url
string

Okapi URL

Request Body schema: application/json
required
Array of objects (inventory-record-set)

List of inventory record sets

Array
instance
object (instance)

An instance record in compliance with the schema of the given version of the underlying instance-storage API.

Array of objects (holdings-record)

Collection of holdings of the instance, each holdings record with embedded items.

object

An object holding supporting pieces of data and/or processing instructions for Inventory update processing.

Responses

Request samples

Content type
application/json
{
  • "inventoryRecordSets": [
    ]
}

Response samples

Content type
application/json
{
  • "INSTANCE": {
    },
  • "HOLDINGS_RECORD": {
    },
  • "ITEM": {
    },
  • "INSTANCE_RELATION_SHIP": {
    },
  • "INSTANCE_TITLE_SUCCESSION": {
    }
}