FOLIO · Schema

mediatedRequest

Mediated request

CompanyLibrariesLibrary Services PlatformOpen SourceMicroservicesEducation

Properties

Name Type Description
id object
requestLevel string Level of the request - Item or Title
requestType string Whether the item should be held upon return, recalled or paged for
requestDate string Date when the request was placed
patronComments string Comments made by the patron
requesterId object
requester object Copy of some requester data
proxyUserId object
proxy object Copy of some proxy patron data
instanceId object
instance object Copy of some instance data
holdingsRecordId object
itemId object
item object Copy of some item data
mediatedWorkflow string Mediated workflow that mediated request follows
mediatedRequestStatus string Status of the mediated request
mediatedRequestStep string Step of the mediated request in mediated workflow
status string Status of the mediated request
cancellationReasonId object
cancelledByUserId object
cancellationAdditionalInformation string Additional information about mediated request cancellation
cancelledDate string Date when the request was cancelled
position integer Position of the mediated request in the queue
fulfillmentPreference string How should the request be fulfilled (whether the item should be kept on the hold shelf for collection or delivered to the requester)
deliveryAddressTypeId object
deliveryAddress object Delivery address
pickupServicePointId object
pickupServicePoint object Pickup service point
confirmedRequestId object
searchIndex object Request fields used for search
metadata object
View JSON Schema on GitHub

JSON Schema

folio-mediated-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/folio/main/json-schema/folio-mediated-request-schema.json",
  "title": "mediatedRequest",
  "description": "Mediated request",
  "x-generated": "2026-10-09",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/folio-mod-circulation-bff-circulationbff-openapi.yml#/components/schemas/mediatedRequest",
  "type": "object",
  "properties": {
    "id": {
      "$ref": "#/$defs/uuid"
    },
    "requestLevel": {
      "description": "Level of the request - Item or Title",
      "type": "string",
      "enum": [
        "Item",
        "Title"
      ]
    },
    "requestType": {
      "description": "Whether the item should be held upon return, recalled or paged for",
      "type": "string",
      "enum": [
        "Hold",
        "Recall",
        "Page"
      ]
    },
    "requestDate": {
      "description": "Date when the request was placed",
      "type": "string",
      "format": "date-time"
    },
    "patronComments": {
      "description": "Comments made by the patron",
      "type": "string"
    },
    "requesterId": {
      "$ref": "#/$defs/uuid"
    },
    "requester": {
      "description": "Copy of some requester data",
      "type": "object",
      "properties": {
        "firstName": {
          "description": "First name of the requester",
          "type": "string"
        },
        "lastName": {
          "description": "Last name of the requester",
          "type": "string"
        },
        "middleName": {
          "description": "Middle name of the requester",
          "type": "string"
        },
        "barcode": {
          "description": "Barcode of the requester",
          "type": "string"
        },
        "patronGroupId": {
          "$ref": "#/$defs/uuid"
        },
        "patronGroup": {
          "description": "Patron group of the requester",
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/$defs/uuid"
            },
            "group": {
              "description": "Patron group name",
              "type": "string"
            },
            "desc": {
              "description": "Patron group description",
              "type": "string"
            }
          }
        }
      }
    },
    "proxyUserId": {
      "$ref": "#/$defs/uuid"
    },
    "proxy": {
      "description": "Copy of some proxy patron data",
      "type": "object",
      "properties": {
        "firstName": {
          "description": "First name of the proxy patron",
          "type": "string"
        },
        "lastName": {
          "description": "Last name of the proxy patron",
          "type": "string"
        },
        "middleName": {
          "description": "Middle name of the proxy patron",
          "type": "string"
        },
        "barcode": {
          "description": "Barcode of the proxy patron",
          "type": "string"
        },
        "patronGroupId": {
          "$ref": "#/$defs/uuid"
        },
        "patronGroup": {
          "description": "Patron group of the proxy patron",
          "type": "object",
          "properties": {
            "id": {
              "$ref": "#/$defs/uuid"
            },
            "group": {
              "description": "Patron group name",
              "type": "string"
            },
            "desc": {
              "description": "Patron group description",
              "type": "string"
            }
          }
        }
      }
    },
    "instanceId": {
      "$ref": "#/$defs/uuid"
    },
    "instance": {
      "description": "Copy of some instance data",
      "type": "object",
      "properties": {
        "title": {
          "description": "Title of the instance\",",
          "type": "string"
        },
        "identifiers": {
          "description": "An extensible set of name-value pairs of identifiers associated with the resource",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "identifierTypeId": {
                "$ref": "#/$defs/uuid"
              },
              "value": {
                "description": "Resource identifier value",
                "type": "string"
              }
            },
            "required": [
              "identifierTypeId",
              "value"
            ]
          }
        },
        "contributorNames": {
          "description": "A list of contributor names",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "description": "Contributor name",
                "type": "string"
              }
            }
          }
        },
        "publication": {
          "description": "Publication information",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "publisher": {
                "description": "Name of the publisher",
                "type": "string"
              },
              "place": {
                "description": "Place of publication",
                "type": "string"
              },
              "dateOfPublication": {
                "description": "Date of publication",
                "type": "string"
              },
              "role": {
                "description": "Role of the publisher",
                "type": "string"
              }
            }
          }
        },
        "editions": {
          "description": "The edition statement, imprint and other publication source information",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "hrid": {
          "description": "The human readable ID, also called eye readable ID. A system-assigned sequential ID which maps to the Instance ID",
          "type": "string"
        }
      },
      "required": [
        "title",
        "identifiers"
      ]
    },
    "holdingsRecordId": {
      "$ref": "#/$defs/uuid"
    },
    "itemId": {
      "$ref": "#/$defs/uuid"
    },
    "item": {
      "description": "Copy of some item data",
      "type": "object",
      "properties": {
        "barcode": {
          "description": "Barcode of the item",
          "type": "string"
        },
        "location": {
          "description": "Effective location of the item",
          "type": "object",
          "properties": {
            "name": {
              "description": "Name of the location",
              "type": "string"
            },
            "libraryName": {
              "description": "Library name of the location",
              "type": "string"
            },
            "code": {
              "description": "Code of the location",
              "type": "string"
            }
          }
        },
        "enumeration": {
          "description": "Enumeration of the item",
          "type": "string"
        },
        "volume": {
          "description": "Volume of the item",
          "type": "string"
        },
        "chronology": {
          "description": "Chronology of the item",
          "type": "string"
        },
        "displaySummary": {
          "description": "Display summary of the item",
          "type": "string"
        },
        "status": {
          "description": "Status of the item",
          "type": "string"
        },
        "callNumber": {
          "description": "Call number of the item",
          "type": "string"
        },
        "callNumberComponents": {
          "description": "Components of the item's call number",
          "type": "object",
          "properties": {
            "callNumber": {
              "description": "Call number of the item",
              "type": "string"
            },
            "prefix": {
              "description": "Prefix of the item's call number",
              "type": "string"
            },
            "suffix": {
              "description": "Suffix of the item's call number",
              "type": "string"
            }
          }
        },
        "copyNumber": {
          "description": "Copy number of the item",
          "type": "string"
        }
      }
    },
    "mediatedWorkflow": {
      "description": "Mediated workflow that mediated request follows",
      "type": "string"
    },
    "mediatedRequestStatus": {
      "description": "Status of the mediated request",
      "type": "string",
      "enum": [
        "New",
        "Open",
        "Closed"
      ]
    },
    "mediatedRequestStep": {
      "description": "Step of the mediated request in mediated workflow",
      "type": "string"
    },
    "status": {
      "description": "Status of the mediated request",
      "type": "string",
      "enum": [
        "New - Awaiting confirmation",
        "Open - Not yet filled",
        "Open - In transit for approval",
        "Open - Item arrived",
        "Open - In transit to be checked out",
        "Open - Awaiting pickup",
        "Open - Awaiting delivery",
        "Closed - Cancelled",
        "Closed - Declined",
        "Closed - Filled"
      ]
    },
    "cancellationReasonId": {
      "$ref": "#/$defs/uuid"
    },
    "cancelledByUserId": {
      "$ref": "#/$defs/uuid"
    },
    "cancellationAdditionalInformation": {
      "description": "Additional information about mediated request cancellation",
      "type": "string"
    },
    "cancelledDate": {
      "description": "Date when the request was cancelled",
      "type": "string",
      "format": "date-time"
    },
    "position": {
      "description": "Position of the mediated request in the queue",
      "type": "integer"
    },
    "fulfillmentPreference": {
      "description": "How should the request be fulfilled (whether the item should be kept on the hold shelf for collection or delivered to the requester)",
      "type": "string",
      "enum": [
        "Hold Shelf",
        "Delivery"
      ]
    },
    "deliveryAddressTypeId": {
      "$ref": "#/$defs/uuid"
    },
    "deliveryAddress": {
      "description": "Delivery address",
      "type": "object",
      "properties": {
        "addressTypeId": {
          "description": "ID of the delivery address type",
          "type": "string"
        },
        "addressLine1": {
          "description": "Address line 1",
          "type": "string"
        },
        "addressLine2": {
          "description": "Address line 2",
          "type": "string"
        },
        "city": {
          "description": "City",
          "type": "string"
        },
        "region": {
          "description": "Region",
          "type": "string"
        },
        "postalCode": {
          "description": "Postal code",
          "type": "string"
        },
        "countryId": {
          "description": "Country ID",
          "type": "string"
        }
      }
    },
    "pickupServicePointId": {
      "$ref": "#/$defs/uuid"
    },
    "pickupServicePoint": {
      "description": "Pickup service point",
      "type": "object",
      "properties": {
        "name": {
          "description": "Pickup service point name",
          "type": "string"
        },
        "code": {
          "description": "Pickup service point code",
          "type": "string"
        },
        "discoveryDisplayName": {
          "description": "Pickup service point discovery display name",
          "type": "string"
        },
        "description": {
          "description": "Pickup service point description",
          "type": "string"
        },
        "shelvingLagTime": {
          "description": "Pickup service point description",
          "type": "integer"
        },
        "pickupLocation": {
          "description": "Whether pickup service point is a pickup location",
          "type": "boolean"
        }
      }
    },
    "confirmedRequestId": {
      "$ref": "#/$defs/uuid"
    },
    "searchIndex": {
      "description": "Request fields used for search",
      "type": "object",
      "properties": {
        "callNumberComponents": {
          "description": "Effective call number components",
          "type": "object",
          "properties": {
            "callNumber": {
              "description": "Effective Call Number is an identifier assigned to an item or its holding and associated with the item",
              "type": "string"
            },
            "prefix": {
              "description": "Effective Call Number Prefix is the prefix of the identifier assigned to an item or its holding and associated with the item",
              "type": "string"
            },
            "suffix": {
              "description": "Effective Call Number Suffix is the suffix of the identifier assigned to an item or its holding and associated with the item",
              "type": "string"
            }
          }
        },
        "shelvingOrder": {
          "description": "A system generated normalization of the call number that allows for call number sorting in reports and search results",
          "type": "string"
        },
        "pickupServicePointName": {
          "description": "The name of the request pickup service point",
          "type": "string"
        }
      }
    },
    "metadata": {
      "$ref": "#/$defs/metadata"
    }
  },
  "required": [
    "requestLevel",
    "requestType",
    "requestDate",
    "requesterId",
    "instanceId",
    "fulfillmentPreference"
  ],
  "$defs": {
    "metadata": {
      "type": "object",
      "description": "Record metadata",
      "properties": {
        "createdDate": {
          "description": "Date and time when the record was created",
          "type": "string"
        },
        "createdByUserId": {
          "description": "ID of the user who created the record (when available)",
          "type": "string"
        },
        "createdByUsername": {
          "description": "Username of the user who created the record (when available)",
          "type": "string"
        },
        "updatedDate": {
          "description": "Date and time when the record was last updated",
          "type": "string"
        },
        "updatedByUserId": {
          "description": "ID of the user who last updated the record (when available)",
          "type": "string"
        },
        "updatedByUsername": {
          "description": "Username of the user who last updated the record (when available)",
          "type": "string"
        }
      }
    },
    "uuid": {
      "$schema": "http://json-schema.org/draft-04/schema#",
      "description": "A universally unique identifier (UUID), this is a 128-bit number used to identify a record and is shown in hex with dashes, for example 6312d172-f0cf-40f6-b27d-9fa8feaf332f; the UUID version must be from 1-5; see https://dev.folio.org/guides/uuids/",
      "type": "string",
      "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/folio-mediated-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.