{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/folio/main/json-schema/folio-report-cost-schema.json", "title": "reportCost", "description": "Cost report schema", "x-generated": "2026-10-09", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/folio-mod-eusage-reports-eusage-reports-1-0-openapi.yml#/components/schemas/reportCost", "type": "object", "properties": { "accessCountPeriods": { "description": "List of reporting periods, either a list of months or a list of years, for example [\"2020-03\", \"2020-04\", \"2020-05\"]", "type": "array", "items": { "type": "string" } }, "amountEncumberedTotal": { "description": "This number is sum of all encumbered amounts in the total access period", "type": "number" }, "amountPaidTotal": { "description": "This number is sum of all paid amounts in the total access period", "type": "number" }, "costByPeriod": { "type": "array", "description": "Total cost for each period", "items": { "type": [ "number", "null" ] } }, "items": { "description": "List of items, with access data per item", "type": "array", "items": { "$ref": "#/$defs/reportCostRow" } }, "titleCountByPeriod": { "type": "array", "description": "Title count per period, total for all items", "items": { "type": [ "integer", "null" ] } }, "totalItemRequestsByPeriod": { "type": "array", "description": "Total access count per period", "items": { "type": [ "integer", "null" ] } }, "totalItemCostsPerRequestsByPeriod": { "type": "array", "description": "Cost per period, total for all items", "items": { "type": [ "number", "null" ] } }, "uniqueItemRequestsByPeriod": { "type": "array", "description": "Unique access count per period", "items": { "type": [ "integer", "null" ] } }, "uniqueItemCostsPerRequestsByPeriod": { "type": "array", "description": "Unique access count per period, total for all items", "items": { "type": [ "number", "null" ] } }, "execution": { "description": "Information about execution, such as various timings", "type": "object" } }, "additionalProperties": false, "$defs": { "reportCostRow": { "description": "Single row of cost report data", "type": "object", "properties": { "kbId": { "type": "string", "description": "KB identifier" }, "title": { "type": "string", "description": "Title if the item" }, "derivedTitle": { "type": "boolean", "description": "Indicate whether the resource is derived from an agreement line" }, "printISSN": { "type": "string", "description": "ISSN for print instance" }, "onlineISSN": { "type": "string", "description": "ISSN for online instance" }, "ISBN": { "type": "string", "description": "ISBN for instance" }, "orderType": { "type": "string", "enum": [ "One-Time", "Ongoing" ], "description": "Order type from agreement - defaults to Ongoing" }, "poLineIDs": { "type": "array", "description": "PO line IDs", "items": { "type": "string", "description": "PO line ID" } }, "invoiceNumbers": { "type": "array", "description": "Invoice numbers", "items": { "type": "string", "description": "Invoice number" } }, "fiscalDateStart": { "type": "string", "description": "Fiscal date start, YYYY-MM-DD" }, "fiscalDateEnd": { "type": "string", "description": "Fiscal date end, YYYY-MM-DD" }, "subscriptionDateStart": { "type": "string", "description": "Subscription date start, YYYY-MM-DD" }, "subscriptionDateEnd": { "type": "string", "description": "Subscription date end, YYYY-MM-DD" }, "publicationYear": { "type": "string", "description": "Publication year .. or range (eg 2000 for 1Y, or 2000-2001 for 2Y)" }, "amountEncumbered": { "type": "number", "description": "Encumbered amount for PO lines" }, "amountPaid": { "description": "Paid amount for invoices", "type": "number" }, "totalItemRequests": { "description": "total item requests", "type": "integer" }, "uniqueItemRequests": { "description": "unique item requests", "type": "integer" }, "costPerTotalRequest": { "type": "number", "description": "Cost per total request for invoices" }, "costPerUniqueRequest": { "type": "number", "description": "Cost per unique request for invoices" } }, "additionalProperties": false } } }