openapi: 3.0.3 info: contact: name: Koha Development Team url: https://koha-community.org/ description: "## Background\n\nThe API supports two sets of endpoints, one targetted at library staff\ \ and the other at at library users.\n\nThose endpoints under the `/public` path are aimed at delivering\ \ functionality tailored to library users and offer\na more restricted set of functions, overrides\ \ and data in thier responses for data privacy and library policy\nreasons. Many of these endpoints\ \ do not require authentication for fetching public data, though an authenticated\nsession will expose\ \ additional options and allow users to see more data where it is part of their own record.\n\nAll\ \ other endpoints are targetted at the staff interface level and allow for additional functionality\ \ and a more\nunrestricted view of data. These endpoints, however, have a level of redaction built\ \ in for resources that the\napi consumer should not have access to. For example, user data for users\ \ who do not belong to the same library\nor library group of your api user will be reduced to just\ \ minimum neccesary for a valid response. Object keys will\nbe consistent for all responses, but their\ \ values may be removed depending on access.\n\n## Authentication\n\nThe API supports the following\ \ authentication mechanisms\n\n* HTTP Basic authentication\n* OAuth2 (client credentials grant)\n\ * Cookie-based\n\nBoth _Basic authentication_ and the _OAuth2_ flow, need to be enabled\nby system\ \ preferences.\n\n## Authorization\n\nThe API uses existing user profiles to restrict access to resources\ \ based on user permissions and the library the\nAPI user is assigned to. This may result, at times,\ \ in resources being returned in a redacted form with all keys\npresent but sensative values nulled.\n\ \nWe do not yet support OAuth Scopes or the Authorization Code grant flow.\n\n## Errors\n\nThe API\ \ uses standard HTTP status codes to indicate the success or failure\nof the API call. The body of\ \ the response will be JSON in the following format:\n\n```\n{\n \"error\": \"Current settings prevent\ \ the passed due date to be applied\",\n \"error_code\": \"invalid_due_date\"\n}\n```\n\nNote: Some\ \ routes might offer additional attributes in their error responses but that\"s\nsubject to change\ \ and thus not documented.\n\n## Filtering responses\n\nThe API allows for some advanced response\ \ filtering using a JSON based query syntax. The\nquery can be added to the requests:\n\n* as a query\ \ parameter `q=`\n* in the request body\n\nFor simple field equality matches we can use `{ \"fieldname\"\ : \"value\" }` where the fieldname\nmatches one of the fields as described in the particular endpoints\ \ response object.\n\nWe can refine that with more complex matching clauses by nesting a the clause\ \ into the\nobject; `{ \"fieldname\": { \"clause\": \"value\" } }`.\n\nAvailable matching clauses\ \ include `=`, `!=`, `<`, `>`, `<=`, `>=` and `-not`. We also support `-like`\nand `-not_like` string\ \ comparisons with `%` used to denote wildcards, thus you can pass\n`{ \"fieldname\": { \"-like\"\ : \"value%\" } }` to do a 'starts with' string match for example.\n\nWe can filter on multiple fields\ \ by adding them to the JSON respresentation. Adding at `HASH`\nlevel will result in an \"AND\" query,\ \ whilst combinding them in an `ARRAY` will result in an\n\"OR\" query: `{ \"field1\": \"value2\"\ , \"field2\": \"value2\" }` will filter the response to only those\nresults with both field1 containing\ \ value2 AND field2 containing value2 for example.\n\nThere is a collection of special operators also\ \ available to you, including:\n\n* `-in` - Expects an array of values to perform an OR match against\n\ * `-not_in` - Expects an array of values to perform a NOR match against\n* `-between` - Expects two\ \ values which the value of the field is expected to fall between\n* `-not_between` - Expects two\ \ values which the value of the field is expected to fall outside of\n* `-ident` - Expects a second\ \ field name to match the two field values against\n* `-regexp` - Expects a perl compatible regular\ \ expression for which the value should match\n\nLogic and nesting is also supported and you may use\ \ `-and` and `-or` to change the logic of an ARRAY\nor HASH as described above.\n\nAdditionally, if\ \ you are requesting related data be embedded into the response one can query\non the related data\ \ using dot notation in the field names.\n\n### Examples\n\nThe following request would return any\ \ patron with firstname \"Henry\" and lastname \"Acevedo\";\n\n`curl -u koha:koha --request GET \"\ http://127.0.0.1:8081/api/v1/patrons/\" --data-raw '{ \"surname\": \"Acevedo\", \"firstname\": \"\ Henry\" }'`\n\nThe following request would return any patron whose lastname begins with \"Ace\";\n\ \n`curl -u koha:koha --request GET \"http://127.0.0.1:8081/api/v1/patrons/\" --data-raw '{ \"surname\"\ : { \"-like\": \"Ace%\" }'`\n\nThe following request would return any patron whose lastname is \"\ Acevedo\" OR \"Bernardo\"\n\n`curl -u koha:koha --request GET \"http://127.0.0.1:8081/api/v1/patrons/\"\ \ --data-raw '{ \"surname\": [ \"Acevedo\", \"Bernardo\" ] }'`\n\nThe following request embeds the\ \ related patron extended attributes data and filters on it.\n\n`curl -u koha:koha =--request GET\ \ 'http://127.0.0.1:8081/api/v1/patrons/' --header 'x-koha-embed: extended_attributes' --data-raw\ \ '{ \"extended_attributes.code\": \"internet\", \"extended_attributes.attribute\": \"1\" }'`\n\n\ ## Special headers\n\n### x-koha-embed\n\nThis optional header allows the api consumer to request\ \ additional related data\nto be returned in the api response. It also allows for cross referencing\ \ in the\nqueries as described above. It accepts a comma delimited list of relation names.\n\nRelations\ \ may on occasion also support dot delimited nesting to allow traversal.\n\n### x-koha-library\n\n\ This optional header should be passed to give your api request a library\ncontext; If it is not included\ \ in the request, then the request context\nwill default to using your api comsumer\"s assigned home\ \ library.\n" license: name: GPL v3, url: http://www.gnu.org/licenses/gpl.txt title: Koha REST API version: '1' servers: - url: https://libserv.iitk.ac.in/api/v1 description: PKK Library Koha REST API (production) tags: - description: 'Manage article requests ' name: article_requests x-displayName: Article requests - description: 'Manage authorised value categories ' name: authorised_value_categories x-displayName: Authorised value categories - description: 'Manage authorised values ' name: authorised_values x-displayName: Authorised values - description: 'Manage batch import profiles ' name: batch_import_profiles x-displayName: Batch import profiles - description: 'Manage baskets for the acquisitions module ' name: baskets x-displayName: Baskets - description: 'Manage Authority records ' name: authorities x-displayName: Authorities - description: 'Manage bibliographic records ' name: biblios x-displayName: Biblios - description: 'Manage bookings ' name: bookings x-displayName: Bookings - description: 'Manage cash registers ' name: cash_registers x-displayName: Cash registers - description: 'Manage cash register cashups ' name: cashups x-displayName: Cashups - description: 'Manage checkouts ' name: checkouts x-displayName: Checkouts - description: 'Manage circulation rules ' name: circulation_rules x-displayName: Circulation rules - description: 'Manage cities ' name: cities x-displayName: Cities - description: 'Manage patron clubs ' name: clubs x-displayName: Clubs - description: 'Manage circulation desks ' name: desks x-displayName: Circulation desks - description: 'Manage ERM agreements ' name: erm_agreements x-displayName: ERM agreements - description: 'Manage ERM configuration ' name: erm_config x-displayName: ERM configuration - description: 'Manage ERM counter files ' name: erm_counter_files x-displayName: ERM counter files - description: 'Manage ERM counter logs ' name: erm_counter_logs x-displayName: ERM counter logs - description: 'Retrieve counter registry data ' name: erm_counter_registry x-displayName: ERM counter registry - description: 'Manage ERM saved reports ' name: erm_default_usage_reports x-displayName: ERM saved reports - description: 'Manage ERM docuemnts ' name: erm_documents x-displayName: ERM documents - description: 'Manage ERM eHoldings packages ' name: erm_eholdings_packages x-displayName: ERM eHoldings packages - description: 'Manage ERM eHoldings resources ' name: erm_eholdings_resources x-displayName: ERM eHoldings resources - description: 'Manage ERM eHoldings titles ' name: erm_eholdings_titles x-displayName: ERM eHoldings titles - description: 'Manage ERM licences ' name: erm_licences x-displayName: ERM licences - description: 'Retrieve SUSHI service data ' name: erm_sushi_service x-displayName: ERM SUSHI services - description: 'Manage ERM usage data providers ' name: erm_usage_data_providers x-displayName: ERM usage data providers - description: 'Manage ERM usage databases ' name: erm_usage_databases x-displayName: ERM usage databases - description: 'Manage ERM usage items ' name: erm_usage_items x-displayName: ERM usage items - description: 'Manage ERM usage platforms ' name: erm_usage_platforms x-displayName: ERM usage platforms - description: 'Manage ERM usage titles ' name: erm_usage_titles x-displayName: ERM usage titles - description: 'Manage ERM usage reports ' name: erm_usage_reports x-displayName: ERM usage reports - description: 'Manage ERM users ' name: erm_users x-displayName: ERM users - description: 'Manage funds for the acquisitions module ' name: funds x-displayName: Funds - description: 'Manage holds ' name: holds x-displayName: Holds - description: 'Manage identity providers ' name: identity_providers x-displayName: Identity providers - description: 'Manage ILL module backends ' name: ill_backends x-displayName: ILL backends - description: 'Manage ILL module batches ' name: ill_batches x-displayName: ILL batches - description: 'Manage ILL module batch statuses ' name: ill_batchstatuses x-displayName: ILL batch statuses - description: 'Manage ILL requests ' name: ill_requests x-displayName: ILL requests - description: 'Manage import batches ' name: import_batches x-displayName: Import batches - description: 'Manage item groups ' name: item_groups x-displayName: Item groups - description: 'Manage items ' name: items x-displayName: Items - description: 'Manage item types ' name: item_types x-displayName: Item Types - description: 'Manage jobs ' name: jobs x-displayName: Jobs - description: 'Manage libraries ' name: libraries x-displayName: Libraries - description: 'Manage macros ' name: macros x-displayName: Macros - description: 'Manage acquisition orders ' name: orders x-displayName: Orders - description: 'Handle OAuth flows ' name: oauth x-displayName: OAuth - description: 'Manage patron categories ' name: patron_categories x-displayName: Patron categories - description: 'Manage patrons ' name: patrons x-displayName: Patrons - description: 'Manage preservation tasks ' name: preservation x-displayName: Preservation - description: 'Manage purchase suggestions ' name: suggestions x-displayName: Purchase suggestions - description: 'Manage quotes ' name: quotes x-displayName: Quotes - description: 'Manage recalls ' name: recalls x-displayName: Recalls - description: 'Manage return claims ' name: return_claims x-displayName: Return claims - description: 'Manage rotas ' name: rotas x-displayName: Rotas - description: Manage search filters name: search_filters x-displayName: Search filters - description: 'Manage SMTP servers configurations ' name: smtp_servers x-displayName: SMTP servers - description: 'Manage tickets ' name: tickets x-displayName: Tickets - description: 'Manage transfer limits ' name: transfer_limits x-displayName: Transfer limits - description: 'Handle two factor authentication flows ' name: 2fa x-displayName: Two factor authentication - description: 'Manage vendors for the acquisitions module ' name: vendors x-displayName: Vendors paths: /acquisitions/baskets/managers: get: tags: - baskets summary: List possibe managers for baskets description: This resource returns a list of patron allowed to be a manager for baskets operationId: listBasketsManagers parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - extended_attributes type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of orders' managers content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/funds: get: tags: - funds summary: List funds operationId: listFunds parameters: - name: name in: query required: false description: Case insensitive search on fund name schema: type: string - name: fund_owner_id in: query required: false description: Display only the funds that belongs to the given patron ID schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of funds content: application/json: schema: items: $ref: '#/components/schemas/fund_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Fund not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/funds/owners: get: tags: - funds summary: List possibe owners for funds description: This resource returns a list of patron allowed to be owner of funds operationId: listFundsOwners parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - extended_attributes type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of funds' owners content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/funds/users: get: tags: - funds summary: List possibe users for funds description: This resource returns a list of patron allowed to be owner of funds operationId: listFundsUsers parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - extended_attributes type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of funds' users content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/orders: get: tags: - orders summary: List orders operationId: listOrders parameters: - name: biblio_id in: query required: false description: Identifier for a linked bibliographic record schema: type: integer - name: basket_id in: query required: false description: Identifier for a linked acquisition basket schema: type: integer - name: fund_id in: query required: false description: Identifier for the fund the order goes against schema: type: integer - name: status in: query required: false description: Current status for the order. Can be 'new', 'ordered', 'partial', 'complete' or 'cancelled' schema: type: string - name: only_active in: query required: false description: If only active orders should be listed schema: type: boolean - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - basket - basket.basket_group - basket.creator - biblio - biblio.active_orders+count - biblio.holds+count - biblio.items+count - biblio.suggestions.suggester - creator - fund - fund.budget - current_item_level_holds+count - invoice - items - items+strings - subscription type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of orders content: application/json: schema: items: $ref: '#/components/schemas/order_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Order not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - orders summary: Add order operationId: addOrder requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/order_yaml' description: A JSON object representing an order responses: '201': description: Order added content: application/json: schema: $ref: '#/components/schemas/order_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating the resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/orders/{order_id}: delete: tags: - orders summary: Delete order operationId: deleteOrder parameters: - name: order_id in: path required: true description: Internal order identifier schema: type: integer responses: '204': description: Order deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Order not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - orders summary: Get order operationId: getOrder parameters: - name: order_id in: path required: true description: Internal order identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - basket - basket.basket_group - basket.creator - biblio - biblio.active_orders+count - biblio.holds+count - biblio.items+count - biblio.suggestions.suggester - fund - current_item_level_holds+count - invoice - items - subscription type: string responses: '200': description: An order content: application/json: schema: $ref: '#/components/schemas/order_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Order not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - orders summary: Update order operationId: updateOrder parameters: - name: order_id in: path required: true description: Internal order identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/order_yaml' description: A JSON object representing an order responses: '200': description: An order content: application/json: schema: $ref: '#/components/schemas/order_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Order not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/vendors: get: tags: - vendors summary: List vendors operationId: listVendors parameters: - name: name in: query required: false description: Case insensitive search on vendor name schema: type: string - name: accountnumber in: query required: false description: Case insensitive search on vendor's account number schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - aliases type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of vendors content: application/json: schema: items: $ref: '#/components/schemas/vendor_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Vendor not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - vendors summary: Add vendor operationId: addVendor requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendor_yaml' description: A JSON object representing a vendor responses: '201': description: Vendor added content: application/json: schema: $ref: '#/components/schemas/vendor_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Vendor not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/vendors/{vendor_id}: delete: tags: - vendors summary: Delete vendor operationId: deleteVendor parameters: - name: vendor_id in: path required: true description: Vendor id schema: type: integer responses: '204': description: Vendor deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Vendor not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - vendors summary: Get vendor operationId: getVendor parameters: - name: vendor_id in: path required: true description: Vendor id schema: type: integer responses: '200': description: A vendor content: application/json: schema: $ref: '#/components/schemas/vendor_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Vendor not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - vendors summary: Update vendor operationId: updateVendor parameters: - name: vendor_id in: path required: true description: Vendor id schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/vendor_yaml' description: A JSON object representing a vendor responses: '200': description: A vendor content: application/json: schema: $ref: '#/components/schemas/vendor_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Vendor not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /acquisitions/vendors/{vendor_id}/issues: get: tags: - vendors summary: List vendor issues operationId: listVendorIssues parameters: - name: vendor_id in: path required: true description: Vendor id schema: type: integer - name: issue_id in: query required: false description: Case insensitive search on issue's id schema: type: integer - name: vendor_id in: query required: false description: Case insensitive search on vendor's id schema: type: integer - name: type in: query required: false description: Case insensitive search on issue type schema: type: string - name: started_on in: query required: false description: Case insensitive search on issue start date schema: type: string - name: ended_on in: query required: false description: Case insensitive search on issue end date schema: type: string - name: notes in: query required: false description: Case insensitive search on issue's notes schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of issues content: application/json: schema: items: $ref: '#/components/schemas/vendor_issue_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /advanced_editor/macros: get: tags: - macros summary: List advanced editor macros operationId: listMacro parameters: - name: name in: query required: false description: Case insensative search on macro name schema: type: string - name: macro_text in: query required: false description: Case insensative search on macro text schema: type: string - name: patron_id in: query required: false description: Search on internal patron_id schema: type: string - name: shared in: query required: false description: Search on shared macros schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of macros content: application/json: schema: items: $ref: '#/components/schemas/advancededitormacro_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - macros summary: Add advanced editor macros operationId: addAdvancedEditorMacro requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' description: A JSON object containing informations about the new macro responses: '201': description: Macro added content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /advanced_editor/macros/shared: post: tags: - macros summary: Add shared advanced editor macros operationId: addsharedAdvancedEditorMacro requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' description: A JSON object containing informations about the new macro responses: '201': description: Macro added content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /advanced_editor/macros/shared/{advancededitormacro_id}: delete: tags: - macros summary: Delete shared advanced editor macro operationId: deletesharedAdvancedEditorMacro parameters: - name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer responses: '204': description: Advanced editor macro deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Macro not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - macros summary: Get shared advanced editor macro operationId: getsharedAdvancedEditorMacro parameters: - name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer responses: '200': description: A macro content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: AdvancedEditorMacro not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - macros summary: Update shared advanced editor macro operationId: updatesharedAdvancedEditorMacro parameters: - name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' description: An advanced editor macro object responses: '200': description: An advanced editor macro content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Macro not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /advanced_editor/macros/{advancededitormacro_id}: delete: tags: - macros summary: Delete advanced editor macro operationId: deleteAdvancedEditorMacro parameters: - name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer responses: '204': description: Advanced editor macro deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Macro not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - macros summary: Get advanced editor macro operationId: getAdvancedEditorMacro parameters: - name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer responses: '200': description: A macro content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: AdvancedEditorMacro not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - macros summary: Update advanced editor macro operationId: updateAdvancedEditorMacro parameters: - name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' description: An advanced editor macro object responses: '200': description: An advanced editor macro content: application/json: schema: $ref: '#/components/schemas/advancededitormacro_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Macro not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /article_requests/{article_request_id}: delete: tags: - article_requests summary: Cancel article requests operationId: cancelArticleRequest parameters: - name: article_request_id in: path required: true description: Article request identifier schema: type: integer - name: cancellation_reason in: query required: false description: Article request cancellation reason schema: type: string - name: notes in: query required: false description: Article request custom cancellation reason schema: type: string responses: '204': description: Article request canceled '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /auth/identity_providers: get: tags: - identity_providers summary: List configured identity providers operationId: listIdentityProviders parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - domains type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of identity providers content: application/json: schema: items: $ref: '#/components/schemas/identity_provider_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - identity_providers summary: Add a new identity provider operationId: addIdentityProvider requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/identity_provider_yaml' description: 'A JSON object containing OAuth provider parameters. The `config` object required attributes depends on the chosen `protocol` ## OAuth Requires: * key * secret * authorize_url * token_url ## OIDC Requires: * key * secret * well_known_url ' responses: '201': description: The generated identity provider content: application/json: schema: $ref: '#/components/schemas/identity_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /auth/identity_providers/{identity_provider_id}: delete: tags: - identity_providers summary: Delete identity provider operationId: delIdentityProvider parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer responses: '204': description: Identity provider deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: City not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - identity_providers summary: Get identity provider operationId: getIdentityProvider parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - domains type: string responses: '200': description: An identity provider content: application/json: schema: $ref: '#/components/schemas/identity_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - identity_providers summary: Update an identity provider operationId: updateIdentityProvider parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/identity_provider_yaml' description: 'A JSON object containing OAuth provider parameters. The `config` object required attributes depends on the chosen `protocol` ## OAuth Requires: * key * secret * authorize_url * token_url ## OIDC Requires: * key * secret * well_known_url ' responses: '200': description: Updated identity provider content: application/json: schema: $ref: '#/components/schemas/identity_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /auth/identity_providers/{identity_provider_id}/domains: get: tags: - identity_providers summary: Get identity provider configured domains operationId: listIdentityProviderDomains parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - domains type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: An identity provider content: application/json: schema: items: $ref: '#/components/schemas/identity_provider_domain_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - identity_providers summary: Add an identity provider domain operationId: addIdentityProviderDomain parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/identity_provider_domain_yaml' description: An identity provider domain object responses: '201': description: Updated identity provider domain content: application/json: schema: $ref: '#/components/schemas/identity_provider_domain_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /auth/identity_providers/{identity_provider_id}/domains/{identity_provider_domain_id}: delete: tags: - identity_providers summary: Delete identity provider operationId: delIdentityProviderDomain parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer - name: identity_provider_domain_id in: path required: true description: Identity provider domain internal identifier schema: type: integer responses: '204': description: identity provider deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: City not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - identity_providers summary: Get identity provider domain operationId: getIdentityProviderDomain parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer - name: identity_provider_domain_id in: path required: true description: Identity provider domain internal identifier schema: type: integer responses: '200': description: An identity provider content: application/json: schema: $ref: '#/components/schemas/identity_provider_domain_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - identity_providers summary: Update an identity provider domain operationId: updateIdentityProviderDomain parameters: - name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer - name: identity_provider_domain_id in: path required: true description: Identity provider domain internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/identity_provider_domain_yaml' description: An identity provider domain object responses: '200': description: Updated identity provider domain content: application/json: schema: $ref: '#/components/schemas/identity_provider_domain_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /auth/otp/token_delivery: post: tags: - 2fa summary: Send OTP token for second step authentication operationId: send_otp_token responses: '200': description: OK content: application/json: schema: additionalProperties: false properties: access_token: type: string expires_in: type: integer token_type: type: string type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' /auth/password/validation: post: tags: - patrons summary: Check validity of username and password operationId: validateUserAndPassword requestBody: required: false content: application/json: schema: additionalProperties: false properties: identifier: description: A patron identifier (`userid` or `cardnumber`) type: string password: description: Password (plain text) type: string userid: description: A patron userid type: string required: - password type: object description: 'A JSON object containing a patron identifier and password information. The identifier will be used to match patrons on the database using the following order: * userid * cardnumber Optionally, you can specify the `userid` attribute if you don''t want it to be checked against the patron cardnumbers. ' responses: '201': description: Validation successful content: application/json: schema: additionalProperties: false properties: cardnumber: description: cardnumber for the validated patron type: string patron_id: description: Internal patron identifier type: integer userid: description: userid for the validated patron type: string type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /auth/two-factor/registration: post: tags: - 2fa summary: Generate a secret operationId: Two factor register responses: '201': description: OK content: application/json: schema: additionalProperties: false properties: issuer: type: string key_id: type: string qr_code: type: string secret32: type: string type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' /auth/two-factor/registration/verification: post: tags: - 2fa summary: Verify two-factor registration operationId: Two factor register verification requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: secret32: type: string pin_code: type: string responses: '204': description: OK '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' /authorised_value_categories: get: tags: - authorised_value_categories summary: List authorised value categories operationId: listAuthorisedValueCategories parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - authorised_values type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of authorised value categories content: application/json: schema: items: $ref: '#/components/schemas/authorised_value_category_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /authorised_value_categories/{authorised_value_category_name}/authorised_values: get: tags: - authorised_values summary: List authorised values for a given category operationId: listAuthorisedValues parameters: - name: authorised_value_category_name in: path required: true description: category name schema: type: string - name: authorised_value_id in: query required: false description: Case insensitive search on authorised value id schema: type: integer - name: category_name in: query required: false description: Case insensitive search on authorised value category name schema: type: string - name: value in: query required: false description: Case insensitive search on value schema: type: string - name: description in: query required: false description: Case insensitive search on description schema: type: string - name: opac_description in: query required: false description: Case insensitive search on opac description schema: type: string - name: image_url in: query required: false description: Case insensitive search on image url schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of authorised values content: application/json: schema: items: $ref: '#/components/schemas/authorised_value_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /authorities: get: tags: - authorities summary: List authorities operationId: listAuthorities parameters: - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of authorities '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Authority not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - authorities summary: Add authority description: 'Add an authority record to Koha. An optional `x-authority-type` may be passed to specify the cataloguing framework to be used (instead of the default). The request body is expected to contain a MARC record in the format specified in the `Content-type` header you pass. Possible values for this header and the corresponding record formats expected are listed below: * application/marcxml+xml: MARCXML * application/marc-in-json: MARC-in-JSON * application/marc: Raw USMARC binary data ' operationId: addAuthority parameters: - name: x-authority-type in: header required: false description: Authority type code. Use when content type is not application/json schema: type: string - name: x-koha-override in: header required: false description: Overrides list sent as a request header schema: type: array items: enum: - any - duplicate type: string responses: '201': description: An authority '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '409': description: 'Conflict creating the resource. Possible `error_code` attribute values: * `duplicate` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /authorities/{authority_id}: delete: tags: - authorities summary: Delete authority operationId: deleteAuthority parameters: - name: authority_id in: path required: true description: Authority identifier schema: type: integer responses: '204': description: Authority deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Authority not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - authorities summary: Get authority operationId: getAuthority parameters: - name: authority_id in: path required: true description: Authority identifier schema: type: integer responses: '200': description: An authority '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Authority not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - authorities summary: Update authority operationId: updateAuthority parameters: - name: authority_id in: path required: true description: Authority identifier schema: type: integer - name: x-authority-type in: header required: false description: Authority type code. Use when content type is not application/json schema: type: string responses: '200': description: An authority id '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Authority not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios: get: tags: - biblios summary: List biblios operationId: listBiblio parameters: - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of biblios '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - biblios summary: Add biblio description: 'Add a bibliographic record to Koha. An optional `x-framework-id` may be passed to specify the cataloguing framework to be used (instead of the default). The request body is expected to contain a MARC record in the format specified in the `Content-type` header you pass. Possible values for this header and the corresponding record formats expected are listed below: * application/marcxml+xml: MARCXML * application/marc-in-json: MARC-in-JSON * application/marc: Raw USMARC binary data ' operationId: addBiblio parameters: - name: x-framework-id in: header required: false description: Framework id. Use when content type is not application/json schema: type: string - name: x-record-schema in: header required: false description: March schema. One of MARC21 or UNIMARC schema: type: string enum: - MARC21 - UNIMARC - name: x-confirm-not-duplicate in: header required: false description: Confirm the posted element is not a duplicate schema: type: integer responses: '200': description: A biblio '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}: delete: tags: - biblios summary: Delete biblio operationId: deleteBiblio parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer responses: '204': description: Biblio deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Unable to perform action on biblio content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - biblios summary: Get biblio operationId: getBiblio parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer responses: '200': description: A biblio '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - biblios summary: Update biblio description: 'Updates a bibliographic record to Koha. An optional `x-framework-id` may be passed, to specify the cataloguing framework to be used (instead of the default). The request body is expected to contain a MARC record in the format specified by the `Content-type` header passed. Possible values for this headers and the corresponding record formats expected are listed below: * application/marcxml+xml: MARCXML * application/marc-in-json: MARC-in-JSON * application/marc: Raw USMARC binary data ' operationId: updateBiblio parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: x-framework-id in: header required: false description: Framework id. Use when content type is not application/json schema: type: string - name: x-record-schema in: header required: false description: March schema. One of MARC21 or UNIMARC schema: type: string enum: - MARC21 - UNIMARC - name: x-confirm-not-duplicate in: header required: false description: Confirm the posted element is not a duplicate schema: type: integer responses: '200': description: A biblio '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/bookings: get: tags: - bookings summary: Get bookings for a biblio operationId: getBiblioBookings parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - item - patron type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of the bookings attached to the record content: application/json: schema: items: $ref: '#/components/schemas/booking_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/checkouts: get: tags: - checkouts summary: List checkouts for a biblio operationId: listBiblioCheckouts parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - issuer - item - patron - library type: string - name: checked_in in: query required: false description: By default, current checkouts are returned, when this is true then checked in checkouts are returned as result. schema: type: boolean requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of checkouts content: application/json: schema: $ref: '#/components/schemas/checkouts_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/item_groups: get: tags: - item_groups summary: List item_groups operationId: listItemGroups parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - items type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of item_groups content: application/yaml: schema: items: $ref: '#/components/schemas/item_group_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal server error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' post: tags: - item_groups summary: Add item group operationId: addItemGroup parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string requestBody: required: true content: application/json: schema: additionalProperties: false properties: description: description: ItemGroup description type: string display_order: description: Position in waiting queue type: integer type: object description: A JSON object representing an item group responses: '201': description: A successfully created item group content: application/yaml: schema: $ref: '#/components/schemas/item_group_yaml' '400': description: Bad request content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal server error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/item_groups/{item_group_id}: delete: tags: - item_groups summary: Delete item group operationId: deleteItemGroup parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string - name: item_group_id in: path required: true description: Internal identifier for the item group schema: type: string responses: '204': description: ItemGroup deleted content: application/yaml: schema: type: string '400': description: Bad request content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '404': description: ItemGroup not found content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' get: tags: - item_groups summary: Get item group operationId: getItemGroup parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string - name: item_group_id in: path required: true description: Internal identifier for the item_group schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - items type: string responses: '200': description: An item group content: application/yaml: schema: $ref: '#/components/schemas/item_group_yaml' '400': description: Bad request content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: ItemGroup not found content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal server error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' put: tags: - item_groups summary: Update item group operationId: updateItemGroup parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string - name: item_group_id in: path required: true description: Internal identifier for the item group schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - items type: string requestBody: required: true content: application/json: schema: additionalProperties: false properties: description: description: ItemGroup description type: string display_order: description: Position in waiting queue type: integer type: object description: A JSON object with the new values for the item group responses: '200': description: The updated item group content: application/yaml: schema: $ref: '#/components/schemas/item_group_yaml' '400': description: Bad request content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '404': description: ItemGroup not found content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/item_groups/{item_group_id}/items: post: tags: - item_groups summary: Add item to item group operationId: addItemGroupItem parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string - name: item_group_id in: path required: true description: Internal identifier for the item group schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - items type: string requestBody: required: true content: application/json: schema: additionalProperties: false properties: item_id: description: Internal identifier for an item to be linked type: integer type: object description: A JSON object containing an item_id responses: '201': description: Item linked to item group '400': description: Bad request content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Request conflicts content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/item_groups/{item_group_id}/items/{item_id}: delete: tags: - item_groups summary: Delete item from item group operationId: deleteItemGroupItems parameters: - name: biblio_id in: path required: true description: Internal identifier for the parent bibliographic record schema: type: string - name: item_group_id in: path required: true description: Internal identifier for the item group schema: type: string - name: item_id in: path required: true description: Internal identifier for the item schema: type: string responses: '204': description: Item unlinked from item group content: application/yaml: schema: type: string '400': description: Bad request content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '404': description: Item not linked to item group content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/yaml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/yaml: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/items: get: tags: - biblios summary: Get items for a biblio operationId: getBiblioItems parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: bookable in: query required: false description: Limit to items that are bookable schema: type: boolean requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of the items attached to the record content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - biblios summary: Add an item for a biblio operationId: addBiblioItem parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/item_yaml' description: A JSON object containing information about the new item responses: '201': description: Item added content: application/json: schema: $ref: '#/components/schemas/item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/items/{item_id}: put: tags: - biblios summary: Update an item for a biblio operationId: updateBiblioItem parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: item_id in: path required: true description: Internal item identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/item_yaml' description: A JSON object containing information about the item responses: '200': description: Item updated content: application/json: schema: $ref: '#/components/schemas/item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/merge: post: tags: - biblios summary: Merge Biblios operationId: mergeBiblios parameters: - name: biblio_id in: path required: true description: Bilblionumber schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/merge_biblios_yaml' description: JSON Object with params and an optional marc record in MARC-in-JSON format responses: '200': description: The merge result as a biblio record '400': description: Bad request content: application/marc-in-json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/marc-in-json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/marc-in-json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/marc-in-json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal server error content: application/marc-in-json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/marc-in-json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/marc-in-json: schema: $ref: '#/components/schemas/error_yaml' /biblios/{biblio_id}/pickup_locations: get: tags: - biblios summary: Get valid pickup locations for a biblio operationId: getBiblioPickupLocations parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: patron_id in: query required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: Biblio pickup locations content: application/json: schema: items: $ref: '#/components/schemas/library_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /bookings: get: tags: - bookings summary: List bookings operationId: listBookings parameters: - name: biblio_id in: query required: false description: Case insensative search on booking biblio_id schema: type: string - name: item_id in: query required: false description: Case insensative search on booking item_id schema: type: string - name: patron_id in: query required: false description: Case insensative search on booking patron_id schema: type: string - name: start_date in: query required: false description: Case Insensative search on booking start_date schema: type: string - name: end_date in: query required: false description: Case Insensative search on booking end_date schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - biblio - item - patron type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of bookings content: application/json: schema: items: $ref: '#/components/schemas/booking_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - bookings summary: Add booking operationId: addBooking requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/booking_yaml' description: A JSON object containing informations about the new booking responses: '201': description: Booking added content: application/json: schema: $ref: '#/components/schemas/booking_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /bookings/{booking_id}: delete: tags: - bookings summary: Delete booking operationId: deleteBooking parameters: - name: booking_id in: path required: true description: Booking identifier schema: type: integer responses: '204': description: Booking deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Booking not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - bookings summary: Get booking operationId: getBooking parameters: - name: booking_id in: path required: true description: Booking identifier schema: type: integer responses: '200': description: A booking content: application/json: schema: $ref: '#/components/schemas/booking_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Booking not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - bookings summary: Update booking operationId: updateBooking parameters: - name: booking_id in: path required: true description: Booking identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/booking_yaml' description: A booking object responses: '200': description: A booking content: application/json: schema: $ref: '#/components/schemas/booking_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Booking not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /cash_registers/{cash_register_id}/cashups: get: tags: - cashups summary: List cashups for the cash register operationId: listCashups parameters: - name: cash_register_id in: path required: true description: Cash register internal identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - manager type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: Cashups performed on this register content: application/json: schema: items: $ref: '#/components/schemas/cashup_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Register not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /cashups/{cashup_id}: get: tags: - cashups summary: Get cashup operationId: getCashup parameters: - name: cashup_id in: path required: true description: Cashup internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - summary type: string responses: '200': description: A cashup content: application/json: schema: $ref: '#/components/schemas/cashup_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /checkouts: get: tags: - checkouts summary: List checkouts operationId: listCheckouts parameters: - name: patron_id in: query required: false description: Internal patron identifier schema: type: integer - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: checked_in in: query required: false description: By default, current checkouts are returned, when this is true then checked in checkouts are returned as result. schema: type: boolean - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - issuer - renewals type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of checkouts content: application/json: schema: $ref: '#/components/schemas/checkouts_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - checkouts - patrons summary: Add a new checkout operationId: addCheckout parameters: - name: confirmation in: query required: false description: A JWT confirmation token schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' description: A JSON object containing information about the new checkout responses: '201': description: Created checkout content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Cannot create checkout content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating checkout content: application/json: schema: $ref: '#/components/schemas/error_yaml' '412': description: Precondition failed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /checkouts/availability: get: tags: - checkouts summary: Get checkout availability operationId: availabilityCheckouts parameters: - name: patron_id in: query required: false description: Internal patron identifier schema: type: integer - name: item_id in: query required: false description: Internal item identifier schema: type: integer responses: '200': description: Availability content: application/json: schema: $ref: '#/components/schemas/checkout_availability_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /checkouts/{checkout_id}: get: tags: - checkouts summary: Get checkout operationId: getCheckout parameters: - name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - issuer - renewals type: string responses: '200': description: Updated borrower's checkout content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Checkout not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /checkouts/{checkout_id}/allows_renewal: get: tags: - checkouts summary: Get renewability for a checkout operationId: allows_renewalCheckout parameters: - name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer responses: '200': description: Checkout renewability information content: application/json: schema: $ref: '#/components/schemas/allows_renewal_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Checkout not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /checkouts/{checkout_id}/renewal: post: tags: - checkouts summary: Renew a checkout operationId: renewCheckout parameters: - name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer - name: seen in: query required: false description: Item was seen flag schema: type: integer responses: '201': description: Updated borrower's checkout content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Cannot renew checkout content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Checkout not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /checkouts/{checkout_id}/renewals: get: tags: - checkouts summary: List renewals for a checkout operationId: getRenewals parameters: - name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - renewer type: string responses: '200': description: List of checkouts renewals content: application/json: schema: $ref: '#/components/schemas/renewals_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Checkout not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - checkouts summary: Renew a checkout operationId: renewsCheckout parameters: - name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer - name: seen in: query required: false description: Item was seen flag schema: type: integer responses: '201': description: Updated borrower's checkout content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Cannot renew checkout content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Checkout not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /circulation-rules/kinds: get: tags: - circulation_rules summary: Get circulation rules kinds operationId: getCirculationRuleKinds responses: '200': description: A map of rule kind information content: application/json: schema: additionalProperties: $ref: '#/components/schemas/circ-rule-kind_yaml' type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /cities: get: tags: - cities summary: List cities operationId: listCities parameters: - name: name in: query required: false description: Case insensative search on city name schema: type: string - name: state in: query required: false description: Case insensative search on city state schema: type: string - name: country in: query required: false description: Case insensative search on city country schema: type: string - name: postal_code in: query required: false description: Case Insensative search on city postal code schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of cities content: application/json: schema: items: $ref: '#/components/schemas/city_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - cities summary: Add city operationId: addCity requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/city_yaml' description: A JSON object containing informations about the new hold responses: '201': description: City added content: application/json: schema: $ref: '#/components/schemas/city_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /cities/{city_id}: delete: tags: - cities summary: Delete city operationId: deleteCity parameters: - name: city_id in: path required: true description: City internal identifier schema: type: integer responses: '204': description: City deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: City not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - cities summary: Get city operationId: getCity parameters: - name: city_id in: path required: true description: City internal identifier schema: type: integer responses: '200': description: A city content: application/json: schema: $ref: '#/components/schemas/city_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: City not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - cities summary: Update city operationId: updateCity parameters: - name: city_id in: path required: true description: City internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/city_yaml' description: A city object responses: '200': description: A city content: application/json: schema: $ref: '#/components/schemas/city_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: City not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /clubs/{club_id}/holds: post: tags: - clubs summary: Add a club hold operationId: addClubHold parameters: - name: club_id in: path required: true description: Internal club identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: biblio_id: description: Internal biblio identifier type: - integer - 'null' default_patron_home: description: For each patron, set pickup location to patron's home library if possible type: integer expiration_date: description: Hold end date format: date type: - string - 'null' item_id: description: Internal item identifier type: - integer - 'null' item_type: description: Limit hold on one itemtype (ignored for item-level holds) type: - string - 'null' notes: description: Notes related to this hold type: - string - 'null' pickup_library_id: description: Internal library identifier for the pickup library type: string required: - pickup_library_id type: object description: A JSON object containing informations about the new hold responses: '201': description: Created club hold content: application/json: schema: $ref: '#/components/schemas/club_hold_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Club not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /config/smtp_servers: get: tags: - smtp_servers summary: List SMTP servers operationId: listSMTPServers parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of SMTP servers content: application/json: schema: items: $ref: '#/components/schemas/smtp_server_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - smtp_servers summary: Add SMTP server operationId: addSMTPServer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/smtp_server_yaml' description: A JSON object representing a new SMTP server configuration responses: '201': description: An SMTP server object content: application/json: schema: $ref: '#/components/schemas/smtp_server_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /config/smtp_servers/{smtp_server_id}: delete: tags: - smtp_servers summary: Delete SMTP server operationId: deleteSMTPServer parameters: - name: smtp_server_id in: path required: true description: SMTP server internal identifier schema: type: integer responses: '204': description: SMTP server deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - smtp_servers summary: Get SMTP server operationId: getSMTPServer parameters: - name: smtp_server_id in: path required: true description: SMTP server internal identifier schema: type: integer responses: '200': description: An SMTP server object content: application/json: schema: $ref: '#/components/schemas/smtp_server_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - smtp_servers summary: Update SMTP server operationId: updateSMTPServer parameters: - name: smtp_server_id in: path required: true description: SMTP server internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/smtp_server_yaml' description: An SMTP server object responses: '200': description: An SMTP server object content: application/json: schema: $ref: '#/components/schemas/smtp_server_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/agreements: get: tags: - erm_agreements summary: List agreements operationId: listErmAgreements parameters: - name: agreement_id in: query required: false description: Case insensitive search on agreement agreement_id schema: type: integer - name: vendor_id in: query required: false description: Case insensitive search on agreement vendor_id schema: type: integer - name: name in: query required: false description: Case insensitive search on agreement name schema: type: string - name: description in: query required: false description: Case insensitive search on agreement description schema: type: string - name: status in: query required: false description: Case insensitive search on agreement status schema: type: string - name: closure_reason in: query required: false description: Case insensitive search on agreement closure_reason schema: type: string - name: is_perpetual in: query required: false description: Case insensitive search on agreement is_perpetual schema: type: boolean - name: renewal_priority in: query required: false description: Case insensitive search on agreement renewal_priority schema: type: string - name: license_info in: query required: false description: Case insensitive search on agreement license_info schema: type: string - name: max_expiration_date in: query required: false description: filter by expired agreements schema: type: string format: date - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - user_roles - vendor type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of agreement content: application/json: schema: items: $ref: '#/components/schemas/erm_agreement_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - erm_agreements summary: Add agreement operationId: addErmAgreements requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_agreement_yaml' description: A JSON object containing information about the new agreement responses: '201': description: A successfully created agreement content: application/json: schema: items: $ref: '#/components/schemas/erm_agreement_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/agreements/{agreement_id}: delete: tags: - erm_agreements summary: Delete agreement operationId: deleteErmAgreements parameters: - name: agreement_id in: path required: true description: Agreement internal identifier schema: type: integer responses: '204': description: Agreement deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - erm_agreements summary: Get agreement operationId: getErmAgreements parameters: - name: agreement_id in: path required: true description: Agreement internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - periods - user_roles - user_roles.patron - agreement_licenses - agreement_licenses.license - agreement_relationships - agreement_relationships.agreement - agreement_relationships.related_agreement - agreement_packages - agreement_packages.package - documents - vendor type: string responses: '200': description: An agreement content: application/json: schema: items: $ref: '#/components/schemas/erm_agreement_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - erm_agreements summary: Update agreement operationId: updateErmAgreements parameters: - name: agreement_id in: path required: true description: Agreement internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - periods - user_roles - agreement_licenses - agreement_relationships - documents type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_agreement_yaml' description: A JSON object containing new information about existing agreement responses: '200': description: A successfully updated agreement content: application/json: schema: items: $ref: '#/components/schemas/erm_agreement_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/config: get: tags: - erm_config summary: get the ERM config description: This resource returns a list of options needed for the ERM Vue app. EXPERIMENTAL - DO NOT RELY on this, it is subject to change! operationId: getERMconfig responses: '200': description: The ERM config content: application/json: schema: $ref: '#/components/schemas/erm_config_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/counter_files: get: tags: - erm_counter_files summary: List counter_files operationId: listErmCounterFiles parameters: - name: erm_counter_files_id in: query required: false description: Case insensitive search on counter_file erm_counter_files_id schema: type: integer - name: usage_data_provider_id in: query required: false description: Case insensitive search on counter_file usage_data_provider_id schema: type: integer - name: filename in: query required: false description: Case insensitive search on counter_file filename schema: type: string - name: type in: query required: false description: Case insensitive search on counter_file type schema: type: string - name: file_content in: query required: false description: Case insensitive search on counter_file file_content schema: type: string - name: date_uploaded in: query required: false description: Case insensitive search on counter_file date_uploaded schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - counter_logs type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of counter_files content: application/json: schema: items: $ref: '#/components/schemas/erm_counter_file_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/counter_files/{erm_counter_files_id}: delete: tags: - erm_counter_files summary: Delete counter_file operationId: deleteERMCounterFiles parameters: - name: erm_counter_files_id in: path required: true description: ERM counter_files internal identifier schema: type: integer responses: '204': description: counter_file deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/counter_files/{erm_counter_files_id}/file/content: get: tags: - erm_counter_files summary: Download Counter file operationId: downloadCounterFile parameters: - name: erm_counter_files_id in: path required: true description: Case insensitive search on erm_counter_files_id schema: type: integer responses: '200': description: A counter file content: application/octet-stream: schema: type: file '400': description: Bad request content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/octet-stream: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' /erm/counter_logs: get: tags: - erm_counter_logs summary: List counter_logs operationId: listErmCounterLogs parameters: - name: usage_data_provider_id in: query required: false description: Case insensitive search on counter_log usage_data_provider_id schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of counter_logs content: application/json: schema: items: $ref: '#/components/schemas/erm_counter_log_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/counter_registry: get: tags: - erm_counter_registry summary: List platforms currently registered with the counter registry operationId: listCounterRegisteredPlatforms parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of counter registered platforms content: application/json: schema: items: $ref: '#/components/schemas/erm_counter_registry_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/default_usage_reports: get: tags: - erm_default_usage_reports summary: List default_usage_reports operationId: listErmDefaultUsageReports parameters: - name: erm_default_usage_report_id in: query required: false description: Case insensitive search on erm_default_usage_report_id schema: type: integer - name: report_name in: query required: false description: Case insensitive search on default_usage_report report_name schema: type: integer - name: report_url_params in: query required: false description: Case insensitive search on default_usage_report report_url_params schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of default_usage_reports content: application/json: schema: items: $ref: '#/components/schemas/erm_default_usage_report_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - erm_default_usage_reports summary: Add default_usage_report operationId: addErmDefaultUsageReports requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_default_usage_report_yaml' description: A JSON object containing information about the new default_usage_report responses: '201': description: A successfully created default_usage_report content: application/json: schema: items: $ref: '#/components/schemas/erm_default_usage_report_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/default_usage_reports/{erm_default_usage_report_id}: delete: tags: - erm_default_usage_reports summary: Delete default_usage_report operationId: deleteERMDefaultUsageReports parameters: - name: erm_default_usage_report_id in: path required: true description: ERM default_usage_report internal identifier schema: type: integer responses: '204': description: default_usage_report deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/documents/{document_id}/file/content: get: tags: - erm_documents summary: Download erm document operationId: downloadErmDocument parameters: - name: document_id in: path required: true description: Case insensitive search on document_id schema: type: integer responses: '200': description: Anagreement content: application/octet-stream: schema: type: file '400': description: Bad request content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/octet-stream: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/octet-stream: schema: $ref: '#/components/schemas/error_yaml' /erm/eUsage/metric_types_report/{data_type}: get: tags: - erm_usage_reports summary: get usage metric_types report operationId: getERMUsageMetricTypesReport parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_muses type: string - name: data_type in: path required: true description: ERM custom report data type schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: custom_report content: application/json: schema: items: $ref: '#/components/schemas/erm_custom_report_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eUsage/monthly_report/{data_type}: get: tags: - erm_usage_reports summary: get usage monthly report operationId: getERMUsageMonthlyReport parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_muses type: string - name: data_type in: path required: true description: ERM custom report data type schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: custom_report content: application/json: schema: items: $ref: '#/components/schemas/erm_custom_report_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eUsage/provider_rollup_report/{data_type}: get: tags: - erm_usage_reports summary: get usage provider rollup report operationId: getERMUsageProviderRollupReport parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_titles.erm_usage_muses - erm_usage_platforms.erm_usage_muses - erm_usage_databases.erm_usage_muses - erm_usage_items.erm_usage_muses type: string - name: data_type in: path required: true description: ERM custom report data type schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: custom_report content: application/json: schema: items: $ref: '#/components/schemas/erm_custom_report_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eUsage/yearly_report/{data_type}: get: tags: - erm_usage_reports summary: get usage yearly report operationId: getERMUsageYearlyReport parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_yuses type: string - name: data_type in: path required: true description: ERM custom report data type schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: custom_report content: application/json: schema: items: $ref: '#/components/schemas/erm_custom_report_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/local/titles/import: post: tags: - erm_eholdings_titles summary: Import local titles operationId: importErmEHoldingsTitles requestBody: required: true content: application/json: schema: additionalProperties: false properties: list_id: type: string package_id: type: string type: object description: The list_id of the list to import responses: '201': description: Successfully enqueued the import job content: application/json: schema: additionalProperties: false properties: job_id: type: string type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/packages: get: tags: - erm_eholdings_packages summary: List packages operationId: listErmEHoldingsPackages parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: package_id in: query required: false description: Case insensitive search on package package_id schema: type: string - name: vendor_id in: query required: false description: Case insensitive search on package vendor_id schema: type: integer - name: name in: query required: false description: Case insensitive search on package name schema: type: string - name: external_package_id in: query required: false description: Case insensitive search on package external_package_id schema: type: integer - name: package_type in: query required: false description: Case insensitive search on package type schema: type: string - name: content_type in: query required: false description: Case insensitive search on package content_type schema: type: string - name: notes in: query required: false description: Case insensitive search on package notes schema: type: string - name: created_on in: query required: false description: Case insensitive search on package creation date schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - vendor - vendor.name - resources+count - resources type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of package content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_package_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - erm_eholdings_packages summary: Add package operationId: addErmEHoldingsPackages parameters: - name: provider in: path required: true description: Provider name schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_eholdings_package_yaml' description: A JSON object containing information about the new package responses: '201': description: A successfully created package content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_package_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/packages/{package_id}: delete: tags: - erm_eholdings_packages summary: Delete eHoldings package operationId: deleteErmEHoldingsPackages parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: package_id in: path required: true description: Package internal identifier schema: type: string responses: '204': description: package deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - erm_eholdings_packages summary: Get eHoldings package operationId: getErmEHoldingsPackages parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: package_id in: path required: true description: Package internal identifier schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - package_agreements - package_agreements.agreement - resources+count - vendor type: string responses: '200': description: A package content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_package_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' patch: tags: - erm_eholdings_packages summary: Edit a package operationId: editErmEHoldingsPackages parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: package_id in: path required: true description: Package internal identifier schema: type: string requestBody: required: true content: application/json: schema: additionalProperties: false properties: is_selected: description: Add or remove this package from remote holdings type: boolean type: object description: A JSON object containing the fields to edit responses: '200': description: What has been modified content: application/json: schema: additionalProperties: false properties: is_selected: description: Add or remove this package from remote holdings type: boolean type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Package not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - erm_eholdings_packages summary: Update eHoldings package operationId: updateErmEHoldingsPackages parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: package_id in: path required: true description: Package internal identifier schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - agreements - resources type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_eholdings_package_yaml' description: A JSON object containing new information about existing package responses: '200': description: A successfully updated package content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_package_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/packages/{package_id}/resources: get: tags: - erm_eholdings_packages summary: List eholdings resources operationId: listErmEHoldingsPackagesResources parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: resource_id in: query required: false description: Case insensitive search on resource_id schema: type: string - name: started_on in: query required: false description: Case insensitive search on started_on schema: type: string - name: ended_on in: query required: false description: Case insensitive search on ended_on schema: type: string - name: proxy in: query required: false description: Case insensitive search on proxy schema: type: string - name: package_id in: path required: true description: Package internal identifier schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - title type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of eHoldings resources content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_resource_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/resources: get: tags: - erm_eholdings_resources summary: List eholdings resources operationId: listErmEHoldingsResources parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: resource_id in: query required: false description: Case insensitive search on resource_id schema: type: string - name: package_id in: query required: false description: Case insensitive search on package_id schema: type: string - name: vendor_id in: query required: false description: Case insensitive search on title vendor_id schema: type: integer - name: started_on in: query required: false description: Case insensitive search on started_on schema: type: string - name: ended_on in: query required: false description: Case insensitive search on ended_on schema: type: string - name: proxy in: query required: false description: Case insensitive search on proxy schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of eHoldings resources content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_resource_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/resources/{resource_id}: get: tags: - erm_eholdings_resources summary: Get resources operationId: getErmEHoldingsResources parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: resource_id in: path required: true description: Resource internal identifier schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - title - package - vendor type: string responses: '200': description: An eHolding resource content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_resource_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' patch: tags: - erm_eholdings_resources summary: Edit a resource operationId: editErmEHoldingsResources parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: resource_id in: path required: true description: Resource internal identifier schema: type: string requestBody: required: true content: application/json: schema: additionalProperties: false properties: is_selected: description: Add or remove this resource from remote holdings type: boolean type: object description: A JSON object containing the fields to edit responses: '200': description: What has been modified content: application/json: schema: additionalProperties: false properties: is_selected: description: Add or remove this resource from remote holdings type: boolean type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/titles: get: tags: - erm_eholdings_titles summary: List eholdings titles operationId: listErmEHoldingsTitles parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: title_id in: query required: false description: Case insensitive search on title title_id schema: type: integer - name: publication_title in: query required: false description: Case insensitive search on title publication_title schema: type: string - name: external_id in: query required: false description: Case insensitive search on title external_id schema: type: string - name: print_identifier in: query required: false description: Case insensitive search on title print_identifier schema: type: string - name: online_identifier in: query required: false description: Case insensitive search on title online_identifier schema: type: string - name: date_first_issue_online in: query required: false description: Case insensitive search on title date_first_issue_online schema: type: string - name: num_first_vol_online in: query required: false description: Case insensitive search on title num_first_vol_online schema: type: string - name: num_first_issue_online in: query required: false description: Case insensitive search on title num_first_issue_online schema: type: string - name: date_last_issue_online in: query required: false description: Case insensitive search on title date_last_issue_online schema: type: string - name: num_last_vol_online in: query required: false description: Case insensitive search on title num_last_vol_online schema: type: string - name: num_last_issue_online in: query required: false description: Case insensitive search on title num_last_issue_online schema: type: string - name: title_url in: query required: false description: Case insensitive search on title title_url schema: type: string - name: first_author in: query required: false description: Case insensitive search on title first_author schema: type: string - name: embargo_info in: query required: false description: Case insensitive search on title embargo_info schema: type: string - name: coverage_depth in: query required: false description: Case insensitive search on title coverage_depth schema: type: string - name: notes in: query required: false description: Case insensitive search on title notes schema: type: string - name: publisher_name in: query required: false description: Case insensitive search on title publisher_name schema: type: string - name: publication_type in: query required: false description: Case insensitive search on title publication_type schema: type: string - name: date_monograph_published_print in: query required: false description: Case insensitive search on title date_monograph_published_print schema: type: string - name: date_monograph_published_online in: query required: false description: Case insensitive search on title date_monograph_published_online schema: type: string - name: monograph_volume in: query required: false description: Case insensitive search on title monograph_volume schema: type: string - name: monograph_edition in: query required: false description: Case insensitive search on title monograph_edition schema: type: string - name: first_editor in: query required: false description: Case insensitive search on title first_editor schema: type: string - name: parent_publication_title_id in: query required: false description: Case insensitive search on title parent_publication_title_id schema: type: string - name: preceding_publication_title_id in: query required: false description: Case insensitive search on title preceding_publication_title_id schema: type: string - name: access_type in: query required: false description: Case insensitive search on title access_type schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - resources.package type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of eHoldings titles content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_title_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - erm_eholdings_titles summary: Add eholding operationId: addErmEHoldingsTitles parameters: - name: provider in: path required: true description: Provider name schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_eholdings_title_yaml' description: A JSON object containing information about the new title responses: '201': description: A successfully created title content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_title_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/titles/{title_id}: delete: tags: - erm_eholdings_titles summary: Delete eHolding title operationId: deleteErmEHoldingsTitles parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: title_id in: path required: true description: Title internal identifier schema: type: integer responses: '204': description: title deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - erm_eholdings_titles summary: Get titles operationId: getErmEHoldingsTitles parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: title_id in: path required: true description: Title internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - resources - resources.package type: string responses: '200': description: An eHolding title content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_title_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - erm_eholdings_titles summary: Update titles operationId: updateErmEHoldingsTitles parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: title_id in: path required: true description: Title internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - resources - resources.package type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_eholdings_title_yaml' description: A JSON object containing new information about existing title responses: '200': description: A successfully updated title content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_title_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/eholdings/{provider}/titles/{title_id}/resources: get: tags: - erm_eholdings_titles summary: List eholdings resources operationId: listErmEHoldingsTitlesResources parameters: - name: provider in: path required: true description: Provider name schema: type: string - name: resource_id in: query required: false description: Case insensitive search on resource_id schema: type: string - name: started_on in: query required: false description: Case insensitive search on started_on schema: type: string - name: ended_on in: query required: false description: Case insensitive search on ended_on schema: type: string - name: proxy in: query required: false description: Case insensitive search on proxy schema: type: string - name: title_id in: path required: true description: Title internal identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - title.publication_title type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of eHoldings resources content: application/json: schema: items: $ref: '#/components/schemas/erm_eholdings_resource_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/licenses: get: tags: - erm_licences summary: List licenses for agreements operationId: listErmLicenses parameters: - name: license_id in: query required: false description: Case insensitive search on license license_id schema: type: integer - name: vendor_id in: query required: false description: Case insensitive search on agreement vendor_id schema: type: integer - name: name in: query required: false description: Case insensitive search on license name schema: type: string - name: type in: query required: false description: Case insensitive search on license type schema: type: string - name: status in: query required: false description: Case insensitive search on license status schema: type: string - name: started_on in: query required: false description: Case insensitive search on license start date schema: type: string - name: ended_on in: query required: false description: Case insensitive search on license end date schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - vendor type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of agreements' licenses content: application/json: schema: items: $ref: '#/components/schemas/erm_license_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - erm_licences summary: Add license operationId: addERMLicenses requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_license_yaml' description: A JSON object containing information about the new agreement's license responses: '201': description: A successfully created license content: application/json: schema: items: $ref: '#/components/schemas/erm_license_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/licenses/{license_id}: delete: tags: - erm_licences summary: Delete license operationId: deleteERMlicenses parameters: - name: license_id in: path required: true description: License internal identifier schema: type: integer responses: '204': description: license deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - erm_licences summary: get license operationId: getERMlicense parameters: - name: license_id in: path required: true description: License internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - user_roles - user_roles.patron - vendor - documents type: string responses: '200': description: license content: application/json: schema: items: $ref: '#/components/schemas/erm_license_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - erm_licences summary: update license operationId: updateERMlicenses parameters: - name: license_id in: path required: true description: License internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - user_roles - documents type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_license_yaml' description: a json object containing new information about existing license responses: '200': description: a successfully updated license content: application/json: schema: items: $ref: '#/components/schemas/erm_license_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/sushi_service: get: tags: - erm_sushi_service summary: Get the details for a sushi service from the counter registry operationId: getSushiService parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A sushi service content: application/json: schema: items: $ref: '#/components/schemas/erm_sushi_service_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_data_providers: get: tags: - erm_usage_data_providers summary: List usage_data_providers operationId: listErmUsageDataProviders parameters: - name: usage_data_provider_id in: query required: false description: Case insensitive search on usage_data_provider usage_data_provider_id schema: type: integer - name: name in: query required: false description: Case insensitive search on usage_data_provider name schema: type: string - name: description in: query required: false description: Case insensitive search on usage_data_provider description schema: type: string - name: active in: query required: false description: Case insensitive search on usage_data_provider active schema: type: integer - name: method in: query required: false description: Case insensitive search on usage_data_provider method schema: type: string - name: aggregator in: query required: false description: Case insensitive search on usage_data_provider aggregator schema: type: string - name: service_type in: query required: false description: Case insensitive search on usage_data_provider service_type schema: type: string - name: service_url in: query required: false description: Case insensitive search on usage_data_provider service_url schema: type: string - name: report_release in: query required: false description: Case insensitive search on usage_data_provider report_release schema: type: string - name: customer_id in: query required: false description: Case insensitive search on usage_data_provider customer_id schema: type: string - name: requestor_id in: query required: false description: Case insensitive search on usage_data_provider requestor_id schema: type: string - name: api_key in: query required: false description: Case insensitive search on usage_data_provider api_key schema: type: string - name: requestor_name in: query required: false description: Case insensitive search on usage_data_provider requestor_name schema: type: string - name: requestor_email in: query required: false description: Case insensitive search on usage_data_provider requestor_email schema: type: string - name: report_types in: query required: false description: Case insensitive search on usage_data_provider report_types schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - counter_files type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of usage_data_providers content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - erm_usage_data_providers summary: Add usage_data_provider operationId: addErmUsageDataProviders requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_usage_data_provider_yaml' description: A JSON object containing information about the new usage_data_provider responses: '201': description: A successfully created usage_data_provider content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_data_providers/{erm_usage_data_provider_id}: delete: tags: - erm_usage_data_providers summary: Delete usage_data_provider operationId: deleteERMUsageDataProviders parameters: - name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer responses: '204': description: usage_data_provider deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - erm_usage_data_providers summary: get usage_data_provider operationId: getERMUsageDataProvider parameters: - name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - counter_files - erm_usage_titles.erm_usage_muses type: string responses: '200': description: usage_data_provider content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - erm_usage_data_providers summary: update usage_data_provider operationId: updateERMUsageDataProviders parameters: - name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_usage_data_provider_yaml' description: a json object containing new information about existing usage_data_provider responses: '200': description: a successfully updated usage_data_provider content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'internal server error. possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_data_providers/{erm_usage_data_provider_id}/process_COUNTER_file: post: tags: - erm_usage_data_providers summary: Process COUNTER file upload for this data provider's harvester operationId: processCOUNTERFileUsageDataProviderHarvester parameters: - name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/erm_counter_file_yaml' description: A JSON object containing information about the new counter_file responses: '200': description: Successful COUNTER file processing content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_data_providers/{erm_usage_data_provider_id}/process_SUSHI_response: post: tags: - erm_usage_data_providers summary: Process SUSHI COUNTER for this data provider's harvester operationId: processSUSHICounterUsageDataProviderHarvester parameters: - name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: begin_date: description: begin date of the harvest format: date type: string end_date: description: end date of the harvest format: date type: string type: object description: A JSON object with the begin and end dates responses: '200': description: Successful SUSHI COUNTER processing content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_data_providers/{erm_usage_data_provider_id}/test_connection: get: tags: - erm_usage_data_providers summary: Test this data provider's harvester operationId: testUsageDataProviderHarvester parameters: - name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer responses: '200': description: Successful connection test content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_data_provider_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_databases: get: tags: - erm_usage_databases summary: List usage_databases operationId: listErmUsageDatabases parameters: - name: database_id in: query required: false description: Case insensitive search on usage_database database_id schema: type: integer - name: database in: query required: false description: Case insensitive search on usage_database database schema: type: string - name: usage_data_provider_id in: query required: false description: Case insensitive search on usage_database usage_data_provider_id schema: type: string - name: platform in: query required: false description: Case insensitive search on usage_database platform schema: type: string - name: publisher in: query required: false description: Case insensitive search on usage_database publisher schema: type: string - name: publisher_id in: query required: false description: Case insensitive search on usage_title publisher_id schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_muses - erm_usage_yuses type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of usage_databases content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_database_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_items: get: tags: - erm_usage_items summary: List usage_items operationId: listErmUsageItems parameters: - name: item_id in: query required: false description: Case insensitive search on usage_item item_id schema: type: integer - name: item in: query required: false description: Case insensitive search on usage_item item schema: type: string - name: usage_data_provider_id in: query required: false description: Case insensitive search on usage_item usage_data_provider_id schema: type: string - name: platform in: query required: false description: Case insensitive search on usage_item platform schema: type: string - name: publisher in: query required: false description: Case insensitive search on usage_item publisher schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_muses - erm_usage_yuses type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of usage_items content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_platforms: get: tags: - erm_usage_platforms summary: List usage_platforms operationId: listErmUsagePlatforms parameters: - name: platform_id in: query required: false description: Case insensitive search on usage_platform platform_id schema: type: integer - name: platform in: query required: false description: Case insensitive search on usage_platform platform schema: type: string - name: usage_data_provider_id in: query required: false description: Case insensitive search on usage_platform usage_data_provider_id schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_muses - erm_usage_yuses type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of usage_platforms content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_platform_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/usage_titles: get: tags: - erm_usage_titles summary: List usage_titles operationId: listErmUsageTitles parameters: - name: title_id in: query required: false description: Case insensitive search on usage_title title_id schema: type: integer - name: title in: query required: false description: Case insensitive search on usage_title title schema: type: string - name: usage_data_provider_id in: query required: false description: Case insensitive search on usage_title usage_data_provider_id schema: type: string - name: title_doi in: query required: false description: Case insensitive search on usage_title title_doi schema: type: string - name: print_issn in: query required: false description: Case insensitive search on usage_title print_issn schema: type: string - name: online_issn in: query required: false description: Case insensitive search on usage_title online_issn schema: type: string - name: title_uri in: query required: false description: Case insensitive search on usage_title title_uri schema: type: string - name: publisher in: query required: false description: Case insensitive search on usage_title publisher schema: type: string - name: publisher_id in: query required: false description: Case insensitive search on usage_title publisher_id schema: type: string - name: yop in: query required: false description: Case insensitive search on usage_title yop schema: type: string - name: isbn in: query required: false description: Case insensitive search on usage_title isbn schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - erm_usage_muses - erm_usage_yuses type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of usage_titles content: application/json: schema: items: $ref: '#/components/schemas/erm_usage_title_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /erm/users: get: tags: - erm_users summary: List possibe users for ERM description: This resource returns a list of patron allowed to be users of the ERM module operationId: listERMUsers parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - extended_attributes type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of ERM' users content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /holds: get: tags: - holds summary: List holds operationId: listHolds parameters: - name: hold_id in: query required: false description: Internal hold identifier schema: type: integer - name: patron_id in: query required: false description: Internal patron identifier schema: type: integer - name: hold_date in: query required: false description: Hold schema: type: string format: date - name: biblio_id in: query required: false description: Internal biblio identifier schema: type: integer - name: item_group_id in: query required: false description: Internal item group identifier schema: type: integer - name: pickup_library_id in: query required: false description: Internal library identifier for the pickup library schema: type: string - name: cancellation_date in: query required: false description: The date the hold was cancelled schema: type: string format: date - name: notes in: query required: false description: Notes related to this hold schema: type: string - name: priority in: query required: false description: Where in the queue the patron sits schema: type: integer - name: status in: query required: false description: Found status schema: type: string - name: timestamp in: query required: false description: Time of latest update schema: type: string - name: item_id in: query required: false description: Internal item identifier schema: type: integer - name: waiting_date in: query required: false description: Date the item was marked as waiting for the patron schema: type: string - name: expiration_date in: query required: false description: Date the hold expires schema: type: string - name: lowest_priority in: query required: false description: Lowest priority schema: type: boolean - name: suspended in: query required: false description: Suspended schema: type: boolean - name: suspended_until in: query required: false description: Suspended until schema: type: string - name: non_priority in: query required: false description: Non priority hold schema: type: boolean - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: old in: query required: false description: By default, current holds are returned, when this is true then old holds are returned as result. schema: type: boolean - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: collectionFormat: csv enum: - cancellation_requested - biblio - pickup_library type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of holds content: application/json: schema: $ref: '#/components/schemas/holds_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Borrower not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - holds summary: Place hold operationId: addHold parameters: - name: x-koha-override in: header required: false description: Overrides list sent as a request header schema: type: array items: enum: - any type: string requestBody: required: true content: application/json: schema: additionalProperties: false properties: biblio_id: description: Internal biblio identifier type: - integer - 'null' expiration_date: description: Hold end date format: date type: - string - 'null' hold_date: description: The date the hold was placed format: date type: - string - 'null' item_group_id: description: Internal item group identifier type: - integer - 'null' item_id: description: Internal item identifier type: - integer - 'null' item_type: description: Limit hold on one itemtype (ignored for item-level holds) type: - string - 'null' non_priority: description: Set this hold as non priority type: - boolean - 'null' notes: description: Notes related to this hold type: - string - 'null' patron_id: description: Internal patron identifier type: integer pickup_library_id: description: Internal library identifier for the pickup library type: string required: - patron_id - pickup_library_id type: object description: A JSON object containing informations about the new hold responses: '201': description: Created hold content: application/json: schema: $ref: '#/components/schemas/hold_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Borrower not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /holds/{hold_id}: delete: tags: - holds summary: Cancel hold operationId: deleteHold parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer - name: x-koha-override in: header required: false description: Overrides list sent as a request header schema: type: array items: enum: - cancellation-request-flow type: string responses: '202': description: Hold request recorded '204': description: Hold deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' patch: tags: - holds summary: Update hold operationId: editHold parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: pickup_library_id: description: Internal library identifier for the pickup library type: string priority: description: Position in waiting queue minimum: 1 type: integer suspended_until: description: Date until which the hold has been suspended format: date-time type: string type: object description: A JSON object containing fields to modify responses: '200': description: Updated hold content: application/json: schema: $ref: '#/components/schemas/hold_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - holds summary: Update hold description: This route is being deprecated and will be removed in future releases. Please migrate your project to use PATCH /holds/{hold_id} instead. operationId: overwriteHold parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: pickup_library_id: description: Internal library identifier for the pickup library type: string priority: description: Position in waiting queue minimum: 1 type: integer suspended_until: description: Date until which the hold has been suspended format: date-time type: string type: object description: A JSON object containing fields to modify responses: '200': description: Updated hold content: application/json: schema: $ref: '#/components/schemas/hold_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /holds/{hold_id}/pickup_location: put: tags: - holds summary: Update pickup location for the hold description: Set a new pickup location for the hold operationId: updateHoldPickupLocation parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: pickup_library_id: description: Internal identifier for the pickup library type: string type: object description: Pickup location responses: '200': description: The new pickup location value for the hold content: application/json: schema: additionalProperties: false properties: pickup_library_id: description: Internal identifier for the pickup library type: string type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: 'Unable to perform action on hold. Possible `error_code` attribute values: * `hold_waiting` * `hold_in_transit` * `hold_in_processing` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /holds/{hold_id}/pickup_locations: get: tags: - holds summary: Get valid pickup locations for hold operationId: getHoldPickupLocations parameters: - name: x-koha-override in: header required: false description: Overrides list sent as a request header schema: type: array items: enum: - any type: string - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: Hold pickup location content: application/json: schema: items: $ref: '#/components/schemas/library_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold pickup location list not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /holds/{hold_id}/priority: put: tags: - holds summary: Update priority for the hold operationId: updateHoldPriority parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer requestBody: required: true content: application/json: schema: type: integer description: An integer representing the new priority to be set for the hold responses: '200': description: The new priority value for the hold content: application/json: schema: type: integer '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Unable to perform action on biblio content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /holds/{hold_id}/suspension: delete: tags: - holds summary: Resume hold operationId: resumeHold parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer responses: '204': description: Hold resumed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - holds summary: Suspend the hold operationId: suspendHold parameters: - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer requestBody: required: false content: application/json: schema: additionalProperties: false properties: end_date: description: Date the hold suspension expires format: date type: string type: object description: A JSON object containing fields to modify responses: '201': description: Hold suspended '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/backends: get: tags: - ill_backends summary: List ILL backends operationId: listIllbackends responses: '200': description: A list of ILL backends content: application/json: schema: $ref: '#/components/schemas/ill_backends_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL backends not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/backends/{ill_backend_id}: get: tags: - ill_backends summary: Get ILL backend operationId: getIllbackends parameters: - name: ill_backend_id in: path required: true description: ILL backend id/name schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - statuses+strings type: string responses: '200': description: An ILL backends content: application/json: schema: $ref: '#/components/schemas/ill_backend_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL backends not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/batches: get: tags: - ill_batches summary: List ILL batches operationId: listIllbatches parameters: - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - requests - requests+count - patron - library type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of ILL batches content: application/json: schema: $ref: '#/components/schemas/ill_batches_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batches not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - ill_batches summary: Add ILL batch operationId: addIllbatch parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - requests - requests+count - patron - library type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ill_batch_yaml' description: A JSON object containing informations about the new batch responses: '201': description: Batch added content: application/json: schema: $ref: '#/components/schemas/ill_batch_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron with given cardnumber not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/batches/{ill_batch_id}: delete: tags: - ill_batches summary: Delete ILL batch operationId: deleteBatch parameters: - name: ill_batch_id in: path required: true description: Internal ILL batch identifier schema: type: integer responses: '204': description: ILL batch deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - ill_batches summary: Get ILL batch operationId: getIllbatches parameters: - name: ill_batch_id in: path required: true description: ILL batch id/name/contents schema: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - requests - requests+count - patron - library type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: An ILL batch content: application/json: schema: $ref: '#/components/schemas/ill_batch_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - ill_batches summary: Update batch operationId: updateIllBatch parameters: - name: ill_batch_id in: path required: true description: Internal ILL batch identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ill_batch_yaml' description: A JSON object containing information on the batch responses: '200': description: An ILL batch content: application/json: schema: $ref: '#/components/schemas/ill_batch_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/batchstatuses: get: tags: - ill_batchstatuses summary: List ILL batch statuses operationId: listIllbatchstatuses responses: '200': description: A list of ILL batch statuses content: application/json: schema: $ref: '#/components/schemas/ill_batchstatuses_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch statuses not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - ill_batchstatuses summary: Add ILL batch status operationId: addIllbatchstatus requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ill_batchstatus_yaml' description: A JSON object containing informations about the new batch status responses: '201': description: Batch status added content: application/json: schema: $ref: '#/components/schemas/ill_batchstatus_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/batchstatuses/{ill_batchstatus_code}: delete: tags: - ill_batchstatuses summary: Delete ILL batch status operationId: deleteBatchstatus parameters: - name: ill_batchstatus_code in: path required: true description: Internal ILL batch status identifier schema: type: string responses: '204': description: ILL batch status deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch status not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - ill_batchstatuses summary: Get ILL batch status operationId: getIllbatchstatuses parameters: - name: ill_batchstatus_code in: path required: true description: ILL batch status schema: type: string responses: '200': description: An ILL batch status content: application/json: schema: $ref: '#/components/schemas/ill_batchstatus_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch status not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - ill_batchstatuses summary: Update batch status operationId: updateIllBatchstatus parameters: - name: ill_batchstatus_code in: path required: true description: Internal ILL batch status identifier schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ill_batchstatus_yaml' description: A JSON object containing information on the batch status responses: '200': description: An ILL batch status content: application/json: schema: $ref: '#/components/schemas/ill_batchstatus_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: ILL batch status not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /ill/requests: get: tags: - ill_requests summary: List ILL requests operationId: listIllrequests parameters: - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - biblio - comments - comments+count - extended_attributes - ill_batch - library - id_prefix - patron type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of ILL requests content: application/json: schema: items: $ref: '#/components/schemas/ill_request_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - ill_requests summary: Add ILL request operationId: addIllrequest requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ill_request_yaml' description: A JSON object containing informations about the new request responses: '201': description: Request added content: application/json: schema: $ref: '#/components/schemas/ill_request_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /import_batch_profiles: get: tags: - batch_import_profiles summary: List batch import profiles operationId: listImportBatchProfiles parameters: - name: name in: query required: false description: Search on profile's name schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of import batch profiles content: application/json: schema: $ref: '#/components/schemas/import_batch_profiles_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - batch_import_profiles summary: Add batch import profile operationId: addImportBatchProfiles requestBody: required: true content: application/json: schema: additionalProperties: false properties: comments: description: any comments added when the file was uploaded type: - string - 'null' encoding: description: file encoding type: - string - 'null' format: description: marc format type: - string - 'null' item_action: description: what to do with item records type: - string - 'null' matcher_id: description: the id of the match rule used (matchpoints.matcher_id) type: - integer - 'null' name: description: name of this profile type: string nomatch_action: description: how to handle records where no match is found type: - string - 'null' overlay_action: description: how to handle duplicate records type: - string - 'null' parse_items: description: should items be parsed type: - boolean - 'null' record_type: description: type of record in the batch type: - string - 'null' template_id: description: the id of the marc modification template type: - integer - 'null' type: object description: A JSON object containing a import batch profile responses: '201': description: Created Profile content: application/json: schema: $ref: '#/components/schemas/import_batch_profile_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Borrower not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /import_batch_profiles/{import_batch_profile_id}: delete: tags: - batch_import_profiles summary: Delete batch import profile operationId: deleteImportBatchProfiles parameters: - name: import_batch_profile_id in: path required: true description: Internal profile identifier schema: type: integer responses: '204': description: Profile deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - batch_import_profiles summary: Update batch import profile operationId: editImportBatchProfiles parameters: - name: import_batch_profile_id in: path required: true description: Internal profile identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: comments: description: any comments added when the file was uploaded type: - string - 'null' encoding: description: file encoding type: - string - 'null' format: description: marc format type: - string - 'null' item_action: description: what to do with item records type: - string - 'null' matcher_id: description: the id of the match rule used (matchpoints.matcher_id) type: - integer - 'null' name: description: name of this profile type: string nomatch_action: description: how to handle records where no match is found type: - string - 'null' overlay_action: description: how to handle duplicate records type: - string - 'null' parse_items: description: should items be parsed type: - boolean - 'null' record_type: description: type of record in the batch type: - string - 'null' template_id: description: the id of the marc modification template type: - integer - 'null' type: object description: A JSON object containing a import batch profile responses: '200': description: Updated profile content: application/json: schema: $ref: '#/components/schemas/import_batch_profile_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Hold not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Borrower not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /import_batches/{import_batch_id}/records/{import_record_id}/matches/chosen: delete: tags: - import_batches summary: Unset the chosen match for an import record ID operationId: unsetChosen parameters: - name: import_batch_id in: path required: true description: An import_batch ID schema: type: integer - name: import_record_id in: path required: true description: An import_record ID schema: type: integer responses: '204': description: Matches unchosen '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Match management not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Import record matches not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - import_batches summary: Set the chosen match for an import record ID operationId: setChosen parameters: - name: import_batch_id in: path required: true description: An import_batch ID schema: type: integer - name: import_record_id in: path required: true description: An import_record ID schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: candidate_match_id: description: Candidate match to choose type: integer type: object description: A JSON object containing fields to modify responses: '200': description: Match updated '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Match management not allowed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Import record match not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /item_types: get: tags: - item_types summary: List item types operationId: listItemTypes parameters: - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - translated_descriptions type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of item types content: application/json: schema: items: $ref: '#/components/schemas/item_type_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /items: get: tags: - items summary: List items operationId: listItems parameters: - name: external_id in: query required: false description: Search on the item's barcode schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - biblio type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of item content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /items/{item_id}: delete: tags: - items summary: Delete item operationId: deleteItem parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer responses: '204': description: Deleted item '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Item not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: "Conflict. Possible `error_code` attribute values:\n\n * book_on_loan: The item\ \ is checked out\n * book_reserved: Waiting or in-transit hold for the item\n * last_item_for_hold:\ \ The item is the last one on a record on which a biblio-level hold is placed\n * linked_analytics:\ \ The item has linked analytic records\n * not_same_branch: The item is blocked by independent\ \ branches\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - items summary: Get item operationId: getItem parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings type: string responses: '200': description: An item content: application/json: schema: $ref: '#/components/schemas/item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Item not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /items/{item_id}/bookings: get: tags: - items summary: Get existing bookings for an item operationId: getItemBookings parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: Item bookings content: application/json: schema: items: $ref: '#/components/schemas/booking_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Item not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /items/{item_id}/bundled_items: get: tags: - items summary: List bundled items operationId: bundledItems parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer - name: external_id in: query required: false description: Search on the item's barcode schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - biblio - checkout - return_claims - return_claim - return_claim.patron type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of item content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - items summary: Add item to bundle operationId: addToBundle parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/bundle_link_yaml' description: A JSON object containing information about the new bundle link responses: '201': description: A successfully created bundle link content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /items/{item_id}/bundled_items/{bundled_item_id}: delete: tags: - items summary: Remove item from bundle operationId: removeFromBundle parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer - name: bundled_item_id in: path required: true description: Internal identifier for the bundled item schema: type: string responses: '204': description: Bundle link deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal server error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /items/{item_id}/pickup_locations: get: tags: - items summary: Get valid pickup locations for an item operationId: getItemPickupLocations parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer - name: patron_id in: query required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: Item pickup locations content: application/json: schema: items: $ref: '#/components/schemas/library_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /jobs: get: tags: - jobs summary: List jobs operationId: listJobs parameters: - name: only_current in: query required: false description: Only include current jobs schema: type: boolean - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of jobs content: application/json: schema: items: $ref: '#/components/schemas/job_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /jobs/{job_id}: get: tags: - jobs summary: Get a job operationId: getJob parameters: - name: job_id in: path required: true description: Job internal identifier schema: type: integer responses: '200': description: A job content: application/json: schema: $ref: '#/components/schemas/job_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Job not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /libraries: get: tags: - libraries summary: List libraries operationId: listLibraries parameters: - name: name in: query required: false description: Case insensitive 'starts-with' search on name schema: type: string - name: address1 in: query required: false description: Case insensitive 'starts-with' search on address1 schema: type: string - name: address2 in: query required: false description: Case insensitive 'starts-with' search on address2 schema: type: string - name: address3 in: query required: false description: Case insensitive 'starts-with' search on address3 schema: type: string - name: postal_code in: query required: false description: Case insensitive 'starts-with' search on postal code schema: type: string - name: city in: query required: false description: Case insensitive 'starts-with' search on city schema: type: string - name: state in: query required: false description: Case insensitive 'starts-with' search on state schema: type: string - name: country in: query required: false description: Case insensitive 'starts_with' search on country schema: type: string - name: phone in: query required: false description: Case insensitive 'starts_with' search on phone number schema: type: string - name: fax in: query required: false description: Case insensitive 'starts_with' search on fax number schema: type: string - name: email in: query required: false description: Case insensitive 'starts_with' search on email address schema: type: string - name: reply_to_email in: query required: false description: Case insensitive 'starts_with' search on Reply-To email address schema: type: string - name: return_path_email in: query required: false description: Case insensitive 'starts_with' search on Return-Path email address schema: type: string - name: url in: query required: false description: Case insensitive 'starts_with' search on website URL schema: type: string - name: ip in: query required: false description: Case insensitive 'starts_with' search on IP address schema: type: string - name: notes in: query required: false description: Case insensitive 'starts_with' search on notes schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - cash_registers - desks - smtp_server type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of libraries content: application/json: schema: items: $ref: '#/components/schemas/library_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - libraries summary: Add library operationId: addLibrary requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/library_yaml' description: A JSON object containing informations about the new library responses: '201': description: Library added content: application/json: schema: $ref: '#/components/schemas/library_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /libraries/{library_id}: delete: tags: - libraries summary: Delete library operationId: deleteLibrary parameters: - name: library_id in: path required: true description: Internal library identifier schema: type: string responses: '204': description: Library deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Library not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - libraries summary: Get library operationId: getLibrary parameters: - name: library_id in: path required: true description: Internal library identifier schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - cash_registers - desks - smtp_server type: string responses: '200': description: A library content: application/json: schema: $ref: '#/components/schemas/library_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Library not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' put: tags: - libraries summary: Update library operationId: updateLibrary parameters: - name: library_id in: path required: true description: Internal library identifier schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/library_yaml' description: A JSON object containing information on the library responses: '200': description: A library content: application/json: schema: $ref: '#/components/schemas/library_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Library not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /libraries/{library_id}/cash_registers: get: tags: - cash_registers summary: List the library's cash registers operationId: listLibraryCashRegisters parameters: - name: library_id in: path required: true description: Internal library identifier schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of cash registers for the library content: application/json: schema: items: $ref: '#/components/schemas/cash_register_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /libraries/{library_id}/desks: get: tags: - desks summary: List the library's desks operationId: listLibraryDesks parameters: - name: library_id in: path required: true description: Internal library identifier schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of desks for the library content: application/json: schema: items: $ref: '#/components/schemas/desk_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /oauth/login/{provider_code}/{interface}: get: tags: - oauth summary: Login to OAuth provider operationId: loginOAuthClient parameters: - name: provider_code in: path required: true description: Code for OAuth provider schema: type: string - name: interface in: path required: true description: Name of the interface this login is for schema: type: string - name: code in: query required: false description: Code returned from OAuth server for Authorization Code grant schema: type: string - name: state in: query required: false description: An opaque value used by the client to maintain state between the request and callback. This is the callback part. schema: type: string - name: scope in: query required: false description: Scope returned by OAuth server schema: type: string - name: prompt in: query required: false description: Prompt returned by OAuth server schema: type: string - name: authuser in: query required: false description: Auth user returned by OAuth server schema: type: string - name: error in: query required: false description: OAuth error code schema: type: string - name: error_description in: query required: false description: OAuth error description schema: type: string - name: error_uri in: query required: false description: Web page with user friendly description of the error schema: type: string - name: session_state in: query required: false description: Session state returned by OAuth server schema: type: string responses: '302': description: User authorized content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /oauth/token: post: tags: - oauth summary: Get access token operationId: tokenOAuth requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: grant_type: type: string client_id: type: string client_secret: type: string responses: '200': description: OK content: application/json: schema: additionalProperties: false properties: access_token: type: string expires_in: type: integer token_type: type: string type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' /patron_categories: get: tags: - patron_categories summary: List patron categories operationId: listPatronCategories parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of patron categories content: application/json: schema: items: $ref: '#/components/schemas/patron_category_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons: get: tags: - patrons summary: List patrons operationId: listPatrons parameters: - name: patron_id in: query required: false description: Search on patron_id schema: type: string - name: cardnumber in: query required: false description: Case insensitive search on cardnumber schema: type: string - name: surname in: query required: false description: Case insensitive search on surname schema: type: string - name: firstname in: query required: false description: Case insensitive search on firstname schema: type: string - name: title in: query required: false description: Case insensitive search on title schema: type: string - name: other_name in: query required: false description: Case insensitive search on othernames schema: type: string - name: initials in: query required: false description: Case insensitive search on initials schema: type: string - name: street_number in: query required: false description: Case insensitive search on streetnumber schema: type: string - name: street_type in: query required: false description: Case insensitive search on streettype schema: type: string - name: address in: query required: false description: Case insensitive search on address schema: type: string - name: address2 in: query required: false description: Case insensitive search on address2 schema: type: string - name: city in: query required: false description: Case insensitive search on city schema: type: string - name: state in: query required: false description: Case insensitive search on state schema: type: string - name: postal_code in: query required: false description: Case insensitive search on zipcode schema: type: string - name: country in: query required: false description: Case insensitive search on country schema: type: string - name: email in: query required: false description: Case insensitive search on email schema: type: string - name: phone in: query required: false description: Case insensitive search on phone schema: type: string - name: mobile in: query required: false description: Case insensitive search on mobile schema: type: string - name: fax in: query required: false description: Case insensitive search on fax schema: type: string - name: secondary_email in: query required: false description: Case insensitive search on secondary_email schema: type: string - name: secondary_phone in: query required: false description: Case insensitive search on secondary_phone schema: type: string - name: altaddress_street_number in: query required: false description: Case insensitive search on altaddress_street_number schema: type: string - name: altaddress_street_type in: query required: false description: Case insensitive search on altaddress_street_type schema: type: string - name: altaddress_address in: query required: false description: Case insensitive search on altaddress_address schema: type: string - name: altaddress_address2 in: query required: false description: Case insensitive search on altaddress_address2 schema: type: string - name: altaddress_city in: query required: false description: Case insensitive search on altaddress_city schema: type: string - name: altaddress_state in: query required: false description: Case insensitive search on altaddress_state schema: type: string - name: altaddress_postal_code in: query required: false description: Case insensitive search on altaddress_postal_code schema: type: string - name: altaddress_country in: query required: false description: Case insensitive search on altaddress_country schema: type: string - name: altaddress_email in: query required: false description: Case insensitive search on altaddress_email schema: type: string - name: altaddress_phone in: query required: false description: Case insensitive search on altaddress_phone schema: type: string - name: date_of_birth in: query required: false description: Case insensitive search on date_of_birth schema: type: string - name: library_id in: query required: false description: Case insensitive search on library_id schema: type: string - name: category_id in: query required: false description: Case insensitive search on category_id schema: type: string - name: date_enrolled in: query required: false description: Case insensitive search on date_enrolled schema: type: string - name: expiry_date in: query required: false description: Case insensitive search on expiry_date schema: type: string - name: incorrect_address in: query required: false description: Search on incorrect_address schema: type: boolean - name: patron_card_lost in: query required: false description: Search on patron_card_lost schema: type: boolean - name: restricted in: query required: false description: Filter search by restricted schema: type: boolean - name: staff_notes in: query required: false description: Case insensitive search on staff_notes schema: type: string - name: relationship_type in: query required: false description: Case insensitive search on relationship_type schema: type: string - name: gender in: query required: false description: Case insensitive search on gender schema: type: string - name: userid in: query required: false description: Case insensitive search on userid schema: type: string - name: opac_notes in: query required: false description: Case insensitive search on opac_notes schema: type: string - name: altaddress_notes in: query required: false description: Case insensitive search on altaddress_notes schema: type: string - name: statistics_1 in: query required: false description: Case insensitive search on statistics_1 schema: type: string - name: statistics_2 in: query required: false description: Case insensitive search on statistics_2 schema: type: string - name: autorenew_checkouts in: query required: false description: Search on autorenew_checkouts schema: type: boolean - name: altcontact_firstname in: query required: false description: Case insensitive search on altcontact_firstname schema: type: string - name: altcontact_surname in: query required: false description: Case insensitive search on altcontact_surname schema: type: string - name: altcontact_address in: query required: false description: Case insensitive search on altcontact_address schema: type: string - name: altcontact_address2 in: query required: false description: Case insensitive search on altcontact_address2 schema: type: string - name: altcontact_city in: query required: false description: Case insensitive search on altcontact_city schema: type: string - name: altcontact_state in: query required: false description: Case insensitive search on altcontact_state schema: type: string - name: altcontact_postal_code in: query required: false description: Case insensitive search on altcontact_postal_code schema: type: string - name: altcontact_country in: query required: false description: Case insensitive search on altcontact_country schema: type: string - name: altcontact_phone in: query required: false description: Case insensitive search on altcontact_phone schema: type: string - name: sms_number in: query required: false description: Case insensitive search on sms_number schema: type: string - name: sms_provider_id in: query required: false description: Case insensitive search on sms_provider_id schema: type: string - name: privacy in: query required: false description: Search on privacy schema: type: string - name: privacy_guarantor_checkouts in: query required: false description: Search on privacy_guarantor_checkouts schema: type: string - name: check_previous_checkout in: query required: false description: Case insensitive search on check_previous_checkout schema: type: string - name: updated_on in: query required: false description: Search on updated_on schema: type: string - name: last_seen in: query required: false description: Case insensitive search on last_seen schema: type: string - name: lang in: query required: false description: Case insensitive search on lang schema: type: string - name: login_attempts in: query required: false description: Search on login_attempts schema: type: string - name: protected in: query required: false description: Search on protected status schema: type: boolean - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - extended_attributes - checkouts+count - overdues+count - account_balance - library type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of patrons content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - patrons summary: Add patron operationId: addPatron parameters: - name: x-koha-override in: header required: false description: Overrides list sent as a request header schema: type: array items: enum: - welcome_yes - welcome_no type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/patron_yaml' description: A JSON object containing information about the new patron responses: '201': description: A successfully created patron content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_attribute_type`\n\ \ * `attribute_not_unique`\n * `non_repeatable_attribute`\n * `missing_mandatory_attribute`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}: delete: tags: - patrons summary: Delete patron operationId: deletePatron parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer responses: '204': description: Patron deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: "Conflict. Possible `error_code` attribute values:\n\n * `has_checkouts`: The\ \ patron has pending checkouts\n * `has_debt`: The patron has pending debts\n * `has_guarantees`:\ \ The patron has guarantees\n * `is_anonymous_patron`: The system-wide anonymous patron cannot\ \ be deleted\n * `is_protected`: Protected patrons cannot be deleted\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - patrons summary: Get patron operationId: getPatron parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - extended_attributes type: string responses: '200': description: A patron content: application/json: schema: $ref: '#/components/schemas/patron_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - patrons summary: Update patron operationId: updatePatron parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/patron_yaml' description: A JSON object containing new information about existing patron responses: '200': description: A successfully updated patron content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_attribute_type`\n\ \ * `attribute_not_unique`\n * `non_repeatable_attribute`\n * `missing_mandatory_attribute`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Resource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/account: get: tags: - patrons summary: Get account information for a patron operationId: getPatronAccount parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer responses: '200': description: Patron's account balance content: application/json: schema: $ref: '#/components/schemas/patron_balance_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/account/credits: get: tags: - patrons summary: List patron credits operationId: listPatronCredits parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of credits content: application/json: schema: items: $ref: '#/components/schemas/credit_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - patrons summary: Add credit to a patron's account operationId: addPatronCredit parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/patron_account_credit_yaml' description: A JSON object containing credit information responses: '201': description: Credit added content: application/json: schema: $ref: '#/components/schemas/account_line_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/account/debits: get: tags: - patrons summary: List patron debits operationId: listPatronDebits parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of debits content: application/json: schema: items: $ref: '#/components/schemas/debit_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - patrons summary: Add debit to a patron's account operationId: addPatronDebit parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/debit_yaml' description: A JSON object containing debit information responses: '201': description: Debit added content: application/json: schema: $ref: '#/components/schemas/debit_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/checkouts: get: tags: - checkouts summary: List checkouts for a patron operationId: getPatronCheckouts parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - cancellation_requested type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: The patron checkouts content: application/json: schema: items: $ref: '#/components/schemas/checkout_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/extended_attributes: get: tags: - patrons summary: List extended attributes for a patron operationId: getPatronAttributes parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: The patron extended attributes content: application/json: schema: items: $ref: '#/components/schemas/patron_extended_attribute_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - patrons summary: Add extended attribute for a patron operationId: addPatronAttribute parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/patron_extended_attribute_yaml' description: A JSON representation of the patron extended attribute responses: '201': description: A successfully created patron extended attribute content: application/json: schema: $ref: '#/components/schemas/patron_extended_attribute_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - patrons summary: Overwrite extended attributes for a patron operationId: overwritePatronAttributes parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: items: $ref: '#/components/schemas/patron_extended_attribute_yaml' type: array description: A JSON representation of the patron extended attribute responses: '200': description: The successfully created patron extended attributes content: application/json: schema: items: $ref: '#/components/schemas/patron_extended_attribute_yaml' type: array '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/extended_attributes/{extended_attribute_id}: delete: tags: - patrons summary: Delete extended attribute operationId: deletePatronAttribute parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: extended_attribute_id in: path required: true description: Internal patron extended attribute identifier schema: type: integer responses: '204': description: Extended patron attribute deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' patch: tags: - patrons summary: Update extended attribute operationId: updatePatronAttribute parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: extended_attribute_id in: path required: true description: Internal patron extended attribute identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: value: description: Extended attribute value type: string type: object description: An object containing the updated values for the patron extended attribute responses: '200': description: A successfully updated patron extended attribute content: application/json: schema: $ref: '#/components/schemas/patron_extended_attribute_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Object not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/holds: get: tags: - holds summary: List holds for a patron operationId: getPatronHolds parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: old in: query required: false description: By default, current holds are returned, when this is true then old holds are returned as result. schema: type: boolean - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - cancellation_requested - biblio - item - pickup_library - pickup_library.branchname type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: The patron holds content: application/json: schema: items: $ref: '#/components/schemas/hold_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/password: post: tags: - patrons summary: Set password for a patron operationId: setPatronPassword parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: false content: application/json: schema: additionalProperties: false properties: password: description: New password (plain text) type: string password_2: description: Repeated new password (plain text) type: string required: - password - password_2 type: object description: A JSON object containing password information responses: '200': description: Password changed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/password/expiration_date: put: tags: - patrons summary: Set password expiration for a patron operationId: setPatronPasswordExpiration parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: false content: application/json: schema: additionalProperties: false properties: expiration_date: description: Date to expire password format: date type: string required: - expiration_date type: object description: A JSON object containing password expiration date responses: '200': description: Password expiration changed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /patrons/{patron_id}/recalls: get: tags: - recalls summary: List recalls for a patron operationId: getPatronRecalls parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: The patron's recalls content: application/json: schema: items: $ref: '#/components/schemas/recall_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/config: get: tags: - preservation summary: get the Preservation config description: This resource returns a list of options needed for the Preservation Vue app. EXPERIMENTAL - DO NOT RELY on this, it is subject to change! operationId: getPreservationconfig responses: '200': description: The Preservation module config content: application/json: schema: $ref: '#/components/schemas/preservation_config_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/processings: get: tags: - preservation summary: List processings operationId: listPreservationProcessings parameters: - name: processing_id in: query required: false description: Case insensitive search on processing id schema: type: integer - name: name in: query required: false description: Case insensitive search on processing name schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of processings content: application/json: schema: items: $ref: '#/components/schemas/preservation_processing_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - preservation summary: Add processing operationId: addPreservationProcessings requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/preservation_processing_yaml' description: A JSON object containing information about the new processing responses: '201': description: A successfully created processing content: application/json: schema: items: $ref: '#/components/schemas/preservation_processing_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/processings/{processing_id}: delete: tags: - preservation summary: Delete processing operationId: deletePreservationProcessings parameters: - name: processing_id in: path required: true description: processing internal identifier schema: type: integer responses: '204': description: processing deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - preservation summary: Get processing operationId: getPreservationProcessings parameters: - name: processing_id in: path required: true description: processing internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - attributes type: string responses: '200': description: A processing content: application/json: schema: items: $ref: '#/components/schemas/preservation_processing_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - preservation summary: Update processing operationId: updatePreservationProcessings parameters: - name: processing_id in: path required: true description: processing internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/preservation_processing_yaml' description: A JSON object containing new information about existing processing responses: '200': description: A successfully updated processing content: application/json: schema: items: $ref: '#/components/schemas/preservation_processing_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error`' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/trains: get: tags: - preservation summary: List trains operationId: listPreservationTrains parameters: - name: train_id in: query required: false description: Case insensitive search on train id schema: type: integer - name: name in: query required: false description: Case insensitive search on train name schema: type: string - name: description in: query required: false description: Case insensitive search on train description schema: type: string - name: not_for_loan in: query required: false description: Case insensitive search on not for loan value schema: type: string - name: created_on in: query required: false description: Case insensitive search on train creation date schema: type: string - name: closed_on in: query required: false description: Case insensitive search on train closing date schema: type: string - name: sent_on in: query required: false description: Case insensitive search on train sent date schema: type: string - name: received_on in: query required: false description: Case insensitive search on train receiving date schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of trains content: application/json: schema: items: $ref: '#/components/schemas/preservation_train_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - preservation summary: Add train operationId: addPreservationTrains requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/preservation_train_yaml' description: A JSON object containing information about the new train responses: '201': description: A successfully created train content: application/json: schema: items: $ref: '#/components/schemas/preservation_train_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/trains/{train_id}: delete: tags: - preservation summary: Delete train operationId: deletePreservationTrains parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer responses: '204': description: Train deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in deleting resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - preservation summary: Get train operationId: getPreservationTrains parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - items - items.attributes - items.attributes+strings - items.attributes.processing_attribute - items.processing - default_processing - default_processing.attributes type: string responses: '200': description: A train content: application/json: schema: items: $ref: '#/components/schemas/preservation_train_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - preservation summary: Update train operationId: updatePreservationTrains parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/preservation_train_yaml' description: A JSON object containing new information about existing train responses: '200': description: A successfully updated train content: application/json: schema: items: $ref: '#/components/schemas/preservation_train_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/trains/{train_id}/items: post: tags: - preservation summary: Add item to train operationId: addItemToTrain parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/preservation_train_item_yaml' description: An item responses: '201': description: A successfully added item content: application/json: schema: $ref: '#/components/schemas/preservation_train_item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/trains/{train_id}/items/batch: post: tags: - preservation summary: Add items to train operationId: addItemsToTrain parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer requestBody: required: true content: application/json: schema: items: type: object type: array description: A list of items responses: '201': description: A successfully added list of items content: application/json: schema: items: type: object type: array '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/trains/{train_id}/items/{train_item_id}: delete: tags: - preservation summary: Remove item from train operationId: removeItemFromTrain parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer - name: train_item_id in: path required: true description: train item internal identifier schema: type: integer responses: '204': description: Item removed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Item not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - preservation summary: Get item from train operationId: getItemFromPreservationTrains parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer - name: train_item_id in: path required: true description: train item internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - attributes - catalogue_item - catalogue_item.biblio type: string responses: '200': description: An item in train content: application/json: schema: $ref: '#/components/schemas/preservation_train_item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - preservation summary: Update item from train operationId: updateItemFromTrain parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer - name: train_item_id in: path required: true description: train item internal identifier schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - attributes type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/preservation_train_item_yaml' description: An item responses: '200': description: A successfully updated item content: application/json: schema: $ref: '#/components/schemas/preservation_train_item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in updating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/trains/{train_id}/items/{train_item_id}/copy: post: tags: - preservation summary: Copy an item to an other train operationId: copyItemToAnotherTrain parameters: - name: train_id in: path required: true description: train internal identifier schema: type: integer - name: train_item_id in: path required: true description: train item internal identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: train_id: description: Train id type: integer type: object description: The train_id of the new train responses: '201': description: A successfully copied item content: application/json: schema: $ref: '#/components/schemas/preservation_train_item_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/waiting-list/items: get: tags: - preservation summary: List items from waiting list operationId: listItemsFromWaitingList parameters: - name: external_id in: query required: false description: Search on the item's barcode schema: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - biblio type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of item content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - preservation summary: Add items to waiting list operationId: addItemsToWaitingList requestBody: required: true content: application/json: schema: items: type: object type: array description: A list of itemnumbers or barcodes responses: '201': description: A successfully added list of items content: application/json: schema: items: type: object type: array '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ressource not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '413': description: Payload too large content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /preservation/waiting-list/items/{item_id}: delete: tags: - preservation summary: Remove item from waiting list operationId: removeItemFromWaitingList parameters: - name: item_id in: path required: true description: Internal item identifier schema: type: integer responses: '204': description: Item removed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Item not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/biblios/{biblio_id}: get: tags: - biblios summary: Get biblio (public) operationId: getBiblioPublic parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer responses: '200': description: A biblio '400': description: Bad request content: application/marcxml+xml: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/marcxml+xml: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/marcxml+xml: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/marcxml+xml: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/marcxml+xml: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/marcxml+xml: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/marcxml+xml: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/marcxml+xml: schema: $ref: '#/components/schemas/error_yaml' /public/biblios/{biblio_id}/items: get: tags: - biblios - items operationId: getBiblioItemsPublic parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of the items attached to the record content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/biblios/{biblio_id}/ratings: post: tags: - biblios summary: set biblio rating (public) operationId: setBiblioRating parameters: - name: biblio_id in: path required: true description: Record internal identifier schema: type: integer requestBody: required: false content: application/json: schema: additionalProperties: false properties: rating: description: the rating type: - integer - 'null' required: - rating type: object description: A JSON object containing rating information responses: '200': description: Rating set content: application/json: schema: additionalProperties: false properties: average: description: average rating type: number count: description: number of ratings type: integer rating: description: user's rating type: - number - 'null' type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Biblio not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/checkouts/availability: get: tags: - checkouts summary: Get checkout availability operationId: availabilityCheckoutsPublic parameters: - name: patron_id in: query required: false description: Internal patron identifier schema: type: integer - name: item_id in: query required: false description: Internal item identifier schema: type: integer responses: '200': description: Availability content: application/json: schema: additionalProperties: false properties: blockers: type: object confirmation_token: type: string confirms: type: object warnings: type: object type: object '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/items: get: tags: - items summary: List items publically visible operationId: listItemsPublic parameters: - name: external_id in: query required: false description: Search on the item's barcode schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - +strings - biblio type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of item content: application/json: schema: items: $ref: '#/components/schemas/item_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/libraries: get: tags: - libraries summary: List libraries operationId: listLibrariesPublic parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of libraries content: application/json: schema: items: $ref: '#/components/schemas/library_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/libraries/{library_id}: get: tags: - libraries summary: Get library (public) operationId: getLibraryPublic parameters: - name: library_id in: path required: true description: Internal library identifier schema: type: string responses: '200': description: A library '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Library not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '406': description: Not acceptable content: application/json: schema: description: Accepted content-types items: type: string type: array '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/oauth/login/{provider_code}/{interface}: get: tags: - oauth summary: Login to OAuth provider operationId: loginOAuthClientPublic parameters: - name: provider_code in: path required: true description: Code for OAuth provider schema: type: string - name: interface in: path required: true description: Name of the interface this login is for schema: type: string - name: code in: query required: false description: Code returned from OAuth server for Authorization Code grant schema: type: string - name: state in: query required: false description: An opaque value used by the client to maintain state between the request and callback. This is the callback part. schema: type: string - name: scope in: query required: false description: Scope returned by OAuth server schema: type: string - name: prompt in: query required: false description: Prompt returned by OAuth server schema: type: string - name: authuser in: query required: false description: Auth user returned by OAuth server schema: type: string - name: error in: query required: false description: OAuth error code schema: type: string - name: error_description in: query required: false description: OAuth error description schema: type: string - name: error_uri in: query required: false description: Web page with user friendly description of the error schema: type: string - name: session_state in: query required: false description: Session state returned by OAuth server schema: type: string responses: '302': description: User authorized content: application/json: schema: type: string '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/patrons/{patron_id}/article_requests/{article_request_id}: delete: tags: - article_requests summary: Cancel patron's article requests operationId: publicCancelPatronArticleRequest parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: article_request_id in: path required: true description: Article request identifier schema: type: integer - name: cancellation_reason in: query required: false description: Article request cancellation reason schema: type: string - name: notes in: query required: false description: Article request custom cancellation reason schema: type: string responses: '204': description: Patron's article request canceled '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/patrons/{patron_id}/checkouts: post: tags: - checkouts - patrons summary: Add a new checkout (public) operationId: addCheckoutPublic parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: confirmation in: query required: false description: A JWT confirmation token schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' description: A JSON object containing information about the new checkout responses: '201': description: Created checkout content: application/json: schema: $ref: '#/components/schemas/checkout_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Cannot create checkout content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '405': description: 'Method not allowed. Possible `error_code` attribute values: * `FEATURE_DISABLED` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: 'Conflict in creating checkout. Possible `error_code` attribute values: * `ITEM_NOT_FOUND` * `PATRON_NOT_FOUND` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '412': description: Precondition failed content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/patrons/{patron_id}/guarantors/can_see_charges: put: tags: - patrons summary: Set if guarantors can see charges (public) operationId: setPatronGuarantorsCanSeeCharges parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: allowed: type: boolean type: object description: A boolean representing if guarantors should be able to see the patron's charges responses: '200': description: Charges view policy for guarantors changed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/patrons/{patron_id}/guarantors/can_see_checkouts: put: tags: - patrons summary: Set if guarantors can see checkouts operationId: setPatronGuarantorsCanSeeCheckouts parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: allowed: type: boolean type: object description: A boolean representing if guarantors should be able to see the patron's checkouts responses: '200': description: Check-out view policy for guarantors changed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/patrons/{patron_id}/holds/{hold_id}: delete: tags: - patrons summary: Cancel a patron's hold (public) operationId: cancelPatronHoldPublic parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer - name: hold_id in: path required: true description: Internal hold identifier schema: type: integer responses: '202': description: Hold cancellation request accepted '204': description: Hold cancelled '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Hold not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/patrons/{patron_id}/password: post: tags: - patrons summary: Set password for a patron (public) operationId: setPatronPasswordPublic parameters: - name: patron_id in: path required: true description: Internal patron identifier schema: type: integer requestBody: required: false content: application/json: schema: additionalProperties: false properties: old_password: description: Patron's original password type: string password: description: New password (plain text) type: string password_repeated: description: Repeated new password (plain text) type: string required: - password - password_repeated - old_password type: object description: A JSON object containing password information responses: '200': description: Password changed '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Patron not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /public/tickets: post: tags: - tickets summary: Add ticket operationId: addTicketPublic requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' description: A JSON object containing informations about the new ticket responses: '201': description: Ticket added content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /quotes: get: tags: - quotes summary: List quotes operationId: listQuotes parameters: - name: quote_id in: query required: false description: Case insensitive search on quote id schema: type: string - name: source in: query required: false description: Case insensitive search on source schema: type: string - name: text in: query required: false description: Case insensitive search on text schema: type: string - name: displayed_on in: query required: false description: Case Insensative search on last displayed date schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of quotes content: application/json: schema: items: $ref: '#/components/schemas/quote_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - quotes summary: Add quote operationId: addQuote requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/quote_yaml' description: A JSON object containing informations about the new quote responses: '201': description: Quote added content: application/json: schema: $ref: '#/components/schemas/quote_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /quotes/{quote_id}: delete: tags: - quotes summary: Delete quote operationId: deleteQuote parameters: - name: quote_id in: path required: true description: Quote internal identifier schema: type: integer responses: '204': description: Quote deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Quote not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - quotes summary: Get quote operationId: getQuote parameters: - name: quote_id in: path required: true description: Quote internal identifier schema: type: integer responses: '200': description: A Quote content: application/json: schema: $ref: '#/components/schemas/quote_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Quote not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - quotes summary: Update quote operationId: updateQuote parameters: - name: quote_id in: path required: true description: Quote internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/quote_yaml' description: a quote object responses: '200': description: A quote content: application/json: schema: $ref: '#/components/schemas/quote_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Quote not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /return_claims: post: tags: - return_claims summary: Add a return claim operationId: claimReturned requestBody: required: true content: application/json: schema: additionalProperties: false properties: charge_lost_fee: description: Charge a lost fee if true and Koha is set to allow a choice. Ignored otherwise. type: boolean created_by: description: User id for the librarian submitting this claim type: string item_id: description: Internal item id to claim as returned type: integer notes: description: Notes about this return claim type: string type: object description: A JSON object containing fields to modify responses: '201': description: Created claim content: application/json: schema: $ref: '#/components/schemas/return_claim_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Checkout not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '409': description: Conflict creating the resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /return_claims/{claim_id}: delete: tags: - return_claims summary: Delete claim operationId: deletedClaim parameters: - name: claim_id in: path required: true description: Unique identifier for the claim to be deleted schema: type: integer responses: '204': description: Claim deleted content: application/json: schema: $ref: '#/components/schemas/return_claim_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Claim not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /return_claims/{claim_id}/notes: put: tags: - return_claims summary: Update notes operationId: updateClaimNotes parameters: - name: claim_id in: path required: true description: Unique identifier for the claim whose notes are to be updated schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: notes: description: Notes about this return claim type: string updated_by: description: Interal identifier for the librarian updating the claim notes type: string type: object description: A JSON object containing fields to modify responses: '200': description: Claim notes updated content: application/json: schema: $ref: '#/components/schemas/return_claim_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Claim not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /return_claims/{claim_id}/resolve: put: tags: - return_claims summary: Resolve claim operationId: updateClaimResolve parameters: - name: claim_id in: path required: true description: Unique identifier for the claim to be resolved schema: type: integer requestBody: required: true content: application/json: schema: additionalProperties: false properties: new_lost_status: description: New lost status to set to the item type: string resolution: description: The RETURN_CLAIM_RESOLUTION code to be used to resolve the calim type: string resolved_by: description: User id for the librarian resolving the claim type: string type: object description: A JSON object containing fields to modify responses: '200': description: Claim resolved content: application/json: schema: $ref: '#/components/schemas/return_claim_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Claim not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /rotas/{rota_id}/stages/{stage_id}/position: put: tags: - rotas summary: Update stage operationId: moveStage parameters: - name: rota_id in: path required: true description: A rotas ID schema: type: integer - name: stage_id in: path required: true description: A stages ID schema: type: integer requestBody: required: true content: application/json: schema: type: integer description: A stages position in the rota responses: '200': description: OK '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Position not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /search_filters: get: tags: - search_filters summary: List search filters operationId: listFilters parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of search filters content: application/json: schema: items: $ref: '#/components/schemas/search_filter_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - search_filters summary: Add search filter operationId: addSearchFilter requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/search_filter_yaml' description: A JSON object containing informations about the new search filter responses: '201': description: Search filter added content: application/json: schema: $ref: '#/components/schemas/search_filter_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating the resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /search_filters/{search_filter_id}: delete: tags: - search_filters summary: Delete search filter operationId: deleteSearchFilter parameters: - name: search_filter_id in: path required: true description: Search filter internal identifier schema: type: integer responses: '204': description: Searc filter deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Search filter not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - search_filters summary: Get search filter operationId: getSearchFilter parameters: - name: search_filter_id in: path required: true description: Search filter internal identifier schema: type: integer responses: '200': description: A search filter content: application/json: schema: $ref: '#/components/schemas/search_filter_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: SearchFilter not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - search_filters summary: Update search filter operationId: updateSearchFilter parameters: - name: search_filter_id in: path required: true description: Search filter internal identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/search_filter_yaml' description: A search filter object responses: '200': description: An search_filter content: application/json: schema: $ref: '#/components/schemas/search_filter_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Search filter not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /suggestions: get: tags: - suggestions summary: List purchase suggestions description: This resource returns a list of purchase suggestions operationId: listSuggestions parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of suggestions content: application/json: schema: items: $ref: '#/components/schemas/suggestion_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - suggestions summary: Add a purchase suggestion description: This resource accepts a new purchase suggestion and creates it operationId: addSuggestions parameters: - name: x-koha-override in: header required: false description: Overrides list sent as a request header schema: type: array items: enum: - any - max_total - max_pending type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/suggestion_yaml' description: A JSON object containing informations about the new suggestion responses: '201': description: Suggestion added content: application/json: schema: $ref: '#/components/schemas/suggestion_yaml' '400': description: 'Bad request. Possible `error_code` attribute values: * `max_total_reached` * `max_pending_reached` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /suggestions/managers: get: tags: - suggestions summary: List possibe managers for suggestions description: This resource returns a list of patron allowed to be a manager for suggestions operationId: listSuggestionsManagers parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - extended_attributes type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of suggestions' managers content: application/json: schema: items: $ref: '#/components/schemas/patron_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /suggestions/{suggestion_id}: delete: tags: - suggestions summary: Delete purchase suggestion description: This resource deletes an existing purchase suggestion operationId: deleteSuggestion parameters: - name: suggestion_id in: path required: true description: Internal suggestion identifier schema: type: integer responses: '204': description: Suggestion deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Suggestion not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - suggestions summary: Get purchase suggestion description: This resource gives access to a specific purchase suggestion operationId: getSuggestion parameters: - name: suggestion_id in: path required: true description: Internal suggestion identifier schema: type: integer responses: '200': description: A suggestion content: application/json: schema: $ref: '#/components/schemas/suggestion_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Suggestion not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - suggestions summary: Update purchase suggestion description: This resource allows updating an existing purchase suggestion operationId: updateSuggestion parameters: - name: suggestion_id in: path required: true description: Internal suggestion identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/suggestion_yaml' description: A JSON object containing informations about the new hold responses: '200': description: A suggestion content: application/json: schema: $ref: '#/components/schemas/suggestion_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Suggestion not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /tickets: get: tags: - tickets summary: List tickets operationId: listTickets parameters: - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - reporter - resolver - biblio - updates+count type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of tickets content: application/json: schema: items: $ref: '#/components/schemas/ticket_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - tickets summary: Add ticket operationId: addTicket requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' description: A JSON object containing informations about the new ticket responses: '201': description: Ticket added content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /tickets/{ticket_id}: delete: tags: - tickets summary: Delete ticket operationId: deleteTicket parameters: - name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer responses: '204': description: Ticket deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ticket not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' get: tags: - tickets summary: Get ticket operationId: getTicket parameters: - name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer responses: '200': description: A ticket content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '404': description: Ticket not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' put: tags: - tickets summary: Update ticket operationId: updateTicket parameters: - name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' description: A ticket object responses: '200': description: A ticket content: application/json: schema: $ref: '#/components/schemas/ticket_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ticket not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /tickets/{ticket_id}/updates: get: tags: - tickets summary: List ticket updates operationId: listTicketUpdates parameters: - name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer - name: x-koha-embed in: header required: false description: Embed list sent as a request header schema: type: array items: enum: - user type: string requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of ticket updates content: application/json: schema: items: $ref: '#/components/schemas/ticket_update_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ticket not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - tickets summary: Add an update to the ticket operationId: addTicketUpdate parameters: - name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ticket_update_yaml' description: A ticket update object responses: '201': description: Ticket added content: application/json: schema: $ref: '#/components/schemas/ticket_update_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Ticket not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /transfer_limits: get: tags: - transfer_limits summary: List transfer limits description: This resource returns a list of existing transfer limits. operationId: listTransferLimits parameters: - name: to_library_id in: query required: false description: Search on to_library_id schema: type: string - name: from_library_id in: query required: false description: Search on from_library_id schema: type: string - name: item_type in: query required: false description: Search on item_type schema: type: string - name: collection_code in: query required: false description: Search on collection_code schema: type: string - name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with - name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string - name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer - name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer - name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string - name: x-koha-request-id in: header required: false description: Request id header schema: type: integer requestBody: required: false content: application/json: schema: type: object description: Query filter sent through request"s body responses: '200': description: A list of transfer limits content: application/json: schema: items: $ref: '#/components/schemas/transfer_limit_yaml' type: array '400': description: "Bad request. Possible `error_code` attribute values:\n\n * `invalid_query`\n" content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - transfer_limits summary: Add a transfer limit description: This resource accepts a new transfer limit and creates it if it does not already exist. operationId: addTransferLimit requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/transfer_limit_yaml' description: A JSON object containing information about a new transfer limit responses: '201': description: Transfer limit added content: application/json: schema: $ref: '#/components/schemas/transfer_limit_yaml' '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /transfer_limits/batch: delete: tags: - transfer_limits summary: Batch delete transfer limits description: This endpoint works just like [the POST version](#op-post-transfer_limits-batch), except it deletes transfer in batch rather than creating them. operationId: batchDeleteTransferLimits requestBody: required: true content: application/json: schema: additionalProperties: false properties: collection_code: description: Authorized value for the collection code associated with this limit type: - string - 'null' from_library_id: description: Internal library id for which library the item is coming from type: string item_type: description: Itemtype defining the type for this limi type: - string - 'null' to_library_id: description: Internal library id for which library the item is going to type: string type: object description: A JSON object containing information about new transfer limits. responses: '204': description: Transfer limits deleted '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Library not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' post: tags: - transfer_limits summary: Batch add transfer limits description: "\nThis resource batch creates new transfer limits based on the given data.\nTransfer\ \ limits can be defined based on `collection_code` or `item_type`. The endpoint only accepts one\ \ at a time, and which one is used will depend on the value of the `BranchTransferLimitsType`\ \ system preference.\nFor example, if the paramters `to_library_id: 'BranchA'` and `item_type:\ \ 'BOOK'` are passed in new transfer limits for `BOOK`s will be created, with one transfer limit\ \ each for all the branches defined in Koha. Given 4 branches, 3 limits would be created:\n* to_library_id:\ \ 'BranchA', from_library_id: 'BranchB', item_type: 'BOOK' * to_library_id: 'BranchA', from_library_id:\ \ 'BranchC', item_type: 'BOOK' * to_library_id: 'BranchA', from_library_id: 'BranchD', item_type:\ \ 'BOOK'\n\nThe body of the query would look like\n``` {\n 'to_library_id': 'BranchA',\n \ \ 'item_type': 'BOOK'\n\n} ```\nAs another example, imagine we have an itemtype that is never\ \ supposed to be transferred to another library. If we call that itemtype `LOCAL_ONLY` we would\ \ need to just pass `item_type: 'LOCAL_ONLY'`, which would create transfer limits for all libraries,\ \ meaning those items would never be allowed to transfer to another library. The body of the query\ \ would look like\n``` {\n 'item_type': 'LOCAL_ONLY'\n} ```\n" operationId: batchAddTransferLimits requestBody: required: true content: application/json: schema: additionalProperties: false properties: collection_code: description: Authorized value for the collection code associated with this limit type: - string - 'null' from_library_id: description: Internal library id for which library the item is coming from type: string item_type: description: Itemtype defining the type for this limi type: - string - 'null' to_library_id: description: Internal library id for which library the item is going to type: string type: object description: A JSON object containing information about new transfer limits. responses: '201': description: A list of transfer limits content: application/json: schema: items: $ref: '#/components/schemas/transfer_limit_yaml' type: array '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '409': description: Conflict in creating resource content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' /transfer_limits/{limit_id}: delete: tags: - transfer_limits summary: Delete transfer limit description: This resource deletes a transfer limit for the given limit id operationId: deleteTransferLimit parameters: - name: limit_id in: path required: true description: Internal transfer limit identifier schema: type: string responses: '204': description: Transfer limit deleted content: application/json: schema: type: string '400': description: Bad request content: application/json: schema: $ref: '#/components/schemas/error_yaml' '401': description: Authentication required content: application/json: schema: $ref: '#/components/schemas/error_yaml' '403': description: Access forbidden content: application/json: schema: $ref: '#/components/schemas/error_yaml' '404': description: Library not found content: application/json: schema: $ref: '#/components/schemas/error_yaml' '500': description: 'Internal server error. Possible `error_code` attribute values: * `internal_server_error` ' content: application/json: schema: $ref: '#/components/schemas/error_yaml' '501': description: Default response. content: application/json: schema: $ref: '#/components/schemas/DefaultResponse' '503': description: Under maintenance content: application/json: schema: $ref: '#/components/schemas/error_yaml' components: schemas: DefaultResponse: properties: errors: items: properties: message: type: string path: type: string required: - message type: object type: array required: - errors type: object account_line: $ref: '#/components/schemas/account_line_yaml' account_line_yaml: additionalProperties: false properties: account_line_id: description: Internal account line identifier readOnly: true type: - integer - 'null' amount: description: Account line amount type: number amount_outstanding: description: Outstanding amount readOnly: true type: number cash_register_id: description: Internal identifier for the cash register used for the payment (if any) type: - integer - 'null' checkout_id: description: Internal identifier for the checkout the account line is related to type: - integer - 'null' credit_number: description: Internally generated identifier for credits readOnly: true type: - string - 'null' credit_type: description: Account line credit type type: - string - 'null' date: description: Date the account line was created format: date-time readOnly: true type: string debit_type: description: Account line debit type type: - string - 'null' description: description: Account line description readOnly: true type: - string - 'null' interface: description: 'Interface in which the account line was generated (values can be: api, cron, commandline, intranet, opac and sip)' readOnly: true type: - string - 'null' internal_note: description: Internal note type: - string - 'null' item_id: description: Internal identifier for the item the account line is related to type: - integer - 'null' library_id: description: Internal identifier for the library in which the transaction took place type: - string - 'null' patron_id: description: Internal identifier for the patron the account line belongs to readOnly: true type: integer payment_type: description: Payment type type: - string - 'null' payout_type: description: Payout type type: - string - 'null' status: description: The credit/debit status readOnly: true type: - string - 'null' timestamp: description: Timestamp for the latest line update format: date-time readOnly: true type: string user_id: description: Internal patron identifier for the staff member that introduced the account line type: - integer - 'null' required: - amount type: object advancededitormacro: $ref: '#/components/schemas/advancededitormacro_yaml' advancededitormacro_yaml: additionalProperties: false properties: macro_id: description: Internal advanced editor macro identifier readOnly: true type: integer macro_text: description: macro text type: - string - 'null' name: description: macro name type: string patron_id: description: borrower number type: - integer - 'null' shared: description: is macro shared type: - boolean - 'null' required: - name - macro_text - patron_id - shared type: object allows_renewal: $ref: '#/components/schemas/allows_renewal_yaml' allows_renewal_yaml: additionalProperties: false properties: allows_renewal: description: Renewability status; true = renewable, false = not renewable type: boolean current_renewals: description: Current used renewals type: integer error: description: Description on false allows_renewal. type: - string - 'null' max_renewals: description: Maximum number of possible renewals type: integer unseen_renewals: description: Number of consecutive times the item was renewed without being seen type: integer type: object authorised_value: $ref: '#/components/schemas/authorised_value_yaml' authorised_value_category: $ref: '#/components/schemas/authorised_value_category_yaml' authorised_value_category_yaml: additionalProperties: false properties: authorised_values: description: This category's authorised values items: $ref: '#/components/schemas/authorised_value_yaml' type: array category_name: description: Unique category name primary key readOnly: true type: string is_system: description: Is this category system or not readOnly: true type: boolean required: - category_name type: object authorised_value_yaml: additionalProperties: false properties: authorised_value_id: description: internally assigned authorised value identifier readOnly: true type: integer category_name: description: the category of this authorised value type: string description: description: The staff interface description for this authorised value type: string image_url: description: The url of the image associated with this authorised value, if any type: - string - 'null' opac_description: description: The public interface description of this authorised value, if set" type: - string - 'null' value: description: The code for this authorised value type: string required: - category_name - value - description type: object basket: $ref: '#/components/schemas/basket_yaml' basket_yaml: additionalProperties: false properties: authorised_by: description: Internal patron identifier of the basket creator type: - integer - 'null' basket_group_id: description: links this basket to its group (aqbasketgroups.id) type: - integer - 'null' basket_id: description: Internal identifier for the basket type: integer billing_library: description: basket billing place type: - string - 'null' close_date: description: The date the basket was closed format: date type: - string - 'null' contract_id: description: Internal identifier of the linked contract type: integer create_items: description: 'When items should be created for orders in this basket (Options: ''ordering'', ''receiving'', ''cataloguing''. Null means system wide config)' enum: - ordering - receiving - cataloguing type: string creation_date: description: The date the basket was created format: date type: - string - 'null' delivery_library: description: basket delivery place type: - string - 'null' internal_note: description: Internal note type: - string - 'null' library_id: description: Library the basket belongs to type: - integer - 'null' name: description: Basket name type: string standing: description: If the orders in this basket are standing type: boolean vendor_id: description: Internal identifier for the vendor type: integer vendor_note: description: Vendor note type: - string - 'null' type: object booking: $ref: '#/components/schemas/booking_yaml' booking_yaml: additionalProperties: false properties: biblio: description: Embedable biblio representation type: object biblio_id: description: Internal identifier for the parent bibliographic record type: integer booking_id: description: Internal booking identifier type: integer end_date: description: Start date and time of this booking format: date-time type: string item: description: Embedable item representation type: - object - 'null' item_id: description: Internal item identifier type: - integer - 'null' patron: description: Embedable patron representation type: - object - 'null' patron_id: description: Internal patron identifier type: integer start_date: description: Start date and time of this booking format: date-time type: string required: - biblio_id - item_id - patron_id - start_date - end_date type: object bundle_link: $ref: '#/components/schemas/bundle_link_yaml' bundle_link_yaml: additionalProperties: false properties: external_id: description: Item barcode type: - string - 'null' force_checkin: type: - boolean - 'null' ignore_holds: type: - boolean - 'null' item_id: description: Internal item identifier type: - integer - 'null' type: object cash_register: $ref: '#/components/schemas/cash_register_yaml' cash_register_yaml: additionalProperties: false properties: archived: description: If this till is archived type: boolean cash_register_id: description: Internal cash register identifier type: integer description: description: A description type: string library_default: description: If this till is the library default type: boolean library_id: description: Internally assigned library identifier maxLength: 10 minLength: 1 type: string name: description: The cash register display name type: string starting_float: description: The starting float this account register should be assigned type: - number - 'null' required: - cash_register_id - name - library_id type: object cashup: $ref: '#/components/schemas/cashup_yaml' cashup_yaml: additionalProperties: false properties: amount: description: Account line amount type: number cash_register_id: description: Internal identifier for the register the cashup belongs to type: integer cashup_id: description: Internal cashup identifier type: integer manager: description: The object representing the manager the cashup was performed by type: - object - 'null' manager_id: description: Internal identifier for the manager the cashup was performed by type: integer summary: description: A summary of the cashup action type: object timestamp: description: Timestamp for the latest line update format: date-time type: string type: object checkout: $ref: '#/components/schemas/checkout_yaml' checkout_availability: $ref: '#/components/schemas/checkout_availability_yaml' checkout_availability_yaml: additionalProperties: false properties: blockers: description: blocking issues type: object confirmation_token: description: token for confirmation type: - string - 'null' confirms: description: issues requireing confirmation type: object warnings: description: informational issues type: object type: object checkout_yaml: additionalProperties: false properties: auto_renew: description: Auto renewal type: boolean auto_renew_error: description: Auto renewal error type: - string - 'null' checkin_date: description: Date the item was returned format: date-time type: - string - 'null' checkout_date: description: Date the item was issued format: date-time type: string checkout_id: description: internally assigned checkout identifier type: integer due_date: description: Due date format: date-time type: string issuer: description: The object representing the checkout issuer type: - object - 'null' issuer_id: description: internally assigned for the user that processed the checkout type: - integer - 'null' item: description: The object representing the checked out item type: - object - 'null' item_id: description: internal identifier of checked out item type: - integer - 'null' last_renewed_date: description: Date the item was last renewed format: date-time type: - string - 'null' library: description: The object representing the checkout library type: - object - 'null' library_id: description: code of the library the item was checked out type: - string - 'null' note: description: Issue note text type: - string - 'null' note_date: description: Datetime of the issue note format: date type: - string - 'null' note_seen: description: has the note been seen already type: - boolean - 'null' onsite_checkout: description: On site checkout type: boolean patron: description: The object representing the checkout patron type: - object - 'null' patron_id: description: Internal patron identifier type: integer renewals_count: description: Number of renewals type: - integer - 'null' timestamp: description: Last update time type: string unseen_renewals: description: Number of consecutive unseen renewals type: - integer - 'null' type: object checkouts: $ref: '#/components/schemas/checkouts_yaml' checkouts_yaml: additionalProperties: false items: $ref: '#/components/schemas/checkout_yaml' type: array circ-rule-kind: $ref: '#/components/schemas/circ-rule-kind_yaml' circ-rule-kind_yaml: additionalProperties: false properties: scope: description: levels that this rule kind can be set for items: enum: - branchcode - categorycode - itemtype type: string type: array required: - scope type: object city: $ref: '#/components/schemas/city_yaml' city_yaml: additionalProperties: false properties: city_id: description: internally assigned city identifier readOnly: true type: integer country: description: city country type: - string - 'null' name: description: city name type: string postal_code: description: city postal code type: - string - 'null' state: description: city state type: - string - 'null' required: - name - state - postal_code - country type: object club_hold_yaml: additionalProperties: false properties: biblio_id: description: Internal biblio identifier type: integer club_hold_id: description: Internal club hold identifier type: integer club_id: description: Internal club identifier type: integer date_created: description: Date and time the hold was created format: date-time type: string item_id: description: Internal item identifier type: - string - 'null' type: object credit: $ref: '#/components/schemas/credit_yaml' credit_yaml: additionalProperties: false properties: account_line_id: description: Internal account line identifier readOnly: true type: - integer - 'null' amount: description: Credit amount type: number amount_outstanding: description: Outstanding amount readOnly: true type: number cash_register_id: description: Internal identifier for the cash register used for the payment (if any) type: - integer - 'null' credit_number: description: Internally generated identifier for credits readOnly: true type: - string - 'null' date: description: Date the account line was created format: date-time readOnly: true type: string description: description: Account line description readOnly: true type: - string - 'null' interface: description: 'Interface in which the account line was generated (values can be: api, cron, commandline, intranet, opac and sip)' readOnly: true type: - string - 'null' internal_note: description: Internal note type: - string - 'null' library_id: description: Internal identifier for the library in which the transaction took place type: - string - 'null' patron_id: description: Internal identifier for the patron the account line belongs to readOnly: true type: integer payment_type: description: Payment type type: - string - 'null' status: description: The credit status readOnly: true type: - string - 'null' timestamp: description: Timestamp for the latest line update format: date-time readOnly: true type: string type: description: Account credit type type: - string - 'null' user_id: description: Internal patron identifier for the staff member that introduced the account line type: - integer - 'null' required: - amount type: object debit: $ref: '#/components/schemas/debit_yaml' debit_yaml: additionalProperties: false properties: account_line_id: description: Internal account line identifier readOnly: true type: - integer - 'null' amount: description: Debit amount minimum: 0 type: number amount_outstanding: description: Outstanding amount type: number cash_register_id: description: Internal identifier for the cash register used for the payout (if any) type: - integer - 'null' checkout_id: description: Internal identifier for the checkout the account line is related to type: - integer - 'null' date: description: Date the account line was created format: date-time type: string description: description: Account line description type: - string - 'null' interface: description: 'Interface in which the account line was generated (values can be: api, cron, commandline, intranet, opac and sip)' type: - string - 'null' internal_note: description: Internal note type: - string - 'null' item_id: description: Internal identifier for the item the account line is related to type: - integer - 'null' library_id: description: Internal identifier for the library in which the transaction took place type: - string - 'null' patron_id: description: Internal identifier for the patron the account line belongs to type: integer payout_type: description: Payout type type: - string - 'null' status: description: The debit status type: - string - 'null' timestamp: description: Timestamp for the latest line update format: date-time type: string type: description: Account debit type type: - string - 'null' user_id: description: Internal patron identifier for the staff member that introduced the account line type: - integer - 'null' required: - amount type: object desk: $ref: '#/components/schemas/desk_yaml' desk_yaml: additionalProperties: false properties: desk_id: description: Internal desk identifier type: integer library_id: description: Internally assigned library identifier maxLength: 10 minLength: 1 type: string name: description: The desk display name type: string required: - desk_id - name - library_id type: object erm_agreement: $ref: '#/components/schemas/erm_agreement_yaml' erm_agreement_license_yaml: additionalProperties: false properties: agreement_id: description: Internal agreement identifier type: integer agreement_license_id: description: Internal agreement license identifier type: integer license_id: description: Internal license identifier type: integer notes: type: - string - 'null' physical_location: type: - string - 'null' status: type: string uri: type: - string - 'null' required: - license_id - status type: object erm_agreement_period_yaml: additionalProperties: false properties: agreement_id: description: Internal agreement identifier type: integer agreement_period_id: description: internally assigned identifier readOnly: true type: integer cancellation_deadline: description: Deadline for the cancellation format: date type: - string - 'null' ended_on: description: End of the agreemnent period format: date type: - string - 'null' notes: type: - string - 'null' started_on: description: Start of the agreement period format: date type: string required: - started_on type: object erm_agreement_relationship_yaml: additionalProperties: false properties: agreement_id: description: Internal agreement identifier type: integer notes: type: - string - 'null' related_agreement_id: description: Internal related agreement identifier type: integer relationship: description: relationship between the agreements enum: - supersedes - is-superseded-by - provides_post-cancellation_access_for - has-post-cancellation-access-in - tracks_demand-driven_acquisitions_for - has-demand-driven-acquisitions-in - has_backfile_in - has_frontfile_in - related_to type: string required: - related_agreement_id - relationship type: object erm_agreement_yaml: additionalProperties: false properties: agreement_id: description: internally assigned agreement identifier readOnly: true type: integer agreement_licenses: description: agreement licenses items: $ref: '#/components/schemas/erm_agreement_license_yaml' type: array agreement_relationships: description: agreement relationships items: $ref: '#/components/schemas/erm_agreement_relationship_yaml' type: array closure_reason: description: reason of the closure type: - string - 'null' description: description: description of the agreement type: - string - 'null' documents: description: documents items: $ref: '#/components/schemas/erm_document_yaml' type: array is_perpetual: description: is the agreement perpetual type: boolean license_info: description: info about the license type: - string - 'null' name: description: name of the agreement type: string periods: description: periods defined for this agreement items: $ref: '#/components/schemas/erm_agreement_period_yaml' type: array renewal_priority: description: priority of the renewal type: - string - 'null' status: description: current status of the agreement type: string user_roles: description: role for users items: $ref: '#/components/schemas/erm_user_role_yaml' type: array vendor: description: Information about the vendor type: - object - 'null' vendor_id: description: foreign key to aqbooksellers type: - integer - 'null' required: - agreement_id - name - status - is_perpetual type: object erm_config: $ref: '#/components/schemas/erm_config_yaml' erm_config_yaml: additionalProperties: false properties: settings: description: List of sysprefs used for the ERM module type: object type: object erm_counter_file: $ref: '#/components/schemas/erm_counter_file_yaml' erm_counter_file_yaml: additionalProperties: false properties: counter_logs: description: counter logs items: $ref: '#/components/schemas/erm_counter_log_yaml' type: array date_uploaded: description: Timestamp for the date of upload format: date-time type: string erm_counter_files_id: description: internally assigned counter_files identifier readOnly: true type: integer file_content: description: file_content type: string filename: description: filename type: string type: description: type of the counter_files type: - string - 'null' usage_data_provider_id: description: usage_data_provider_id of the counter_files type: integer required: - usage_data_provider_id - filename - file_content type: object erm_counter_log: $ref: '#/components/schemas/erm_counter_log_yaml' erm_counter_log_yaml: additionalProperties: false properties: borrowernumber: description: borrowernumber of the counter_log type: - integer - 'null' counter_files_id: description: counter_files_id of the counter_log type: - integer - 'null' erm_counter_log_id: description: internally assigned counter_log identifier readOnly: true type: integer filename: description: filename of the counter_file type: - string - 'null' importdate: description: Timestamp for the date of upload format: date-time type: string logdetails: description: logdetails of the counter_log type: - string - 'null' usage_data_provider_id: description: logdetails of the counter_log type: - integer - 'null' required: - filename - borrowernumber - counter_files_id type: object erm_counter_registry: $ref: '#/components/schemas/erm_counter_registry_yaml' erm_counter_registry_yaml: additionalProperties: false properties: abbrev: description: abbrev of the platform type: - string - 'null' address: description: current address of the platform type: - string - 'null' address_country: description: current address country of the platform type: - object - string audited: description: has the record been audited? type: boolean contact: description: current contact of the platform type: - object - 'null' content_provider_name: description: current content_provider_name of the platform type: - string - 'null' host_types: description: host_types for the platform items: type: object type: array id: description: internally assigned identifier type: string name: description: name of the platform type: string reports: description: reports for the platform items: type: object type: array sushi_services: description: sushi_services for the platform items: type: object type: array website: description: current website of the platform type: - string - 'null' type: object erm_custom_report: $ref: '#/components/schemas/erm_custom_report_yaml' erm_custom_report_yaml: properties: erm_usage_muses: description: usage mus items: $ref: '#/components/schemas/erm_usage_mus_yaml' type: array erm_usage_yuses: description: usage yus items: $ref: '#/components/schemas/erm_usage_yus_yaml' type: array metric_type: description: metric_type of the title data type: - string - 'null' online_issn: description: online_issn number of the title type: - string - 'null' print_issn: description: print_issn number of the title type: - string - 'null' provider_name: description: provider_name of the title type: - string - 'null' publisher: description: publisher of the title data type: - string - 'null' publisher_id: description: publisher_id of the title data type: - string - 'null' title: description: title of the title type: - string - 'null' title_doi: description: doi number of the title type: - string - 'null' title_id: description: internally assigned title identifier readOnly: true type: integer title_uri: description: title_uri number of the title type: - string - 'null' usage_data_provider_id: description: usage_data_provider the title is harvested by type: integer type: object erm_default_usage_report: $ref: '#/components/schemas/erm_default_usage_report_yaml' erm_default_usage_report_yaml: additionalProperties: false properties: erm_default_usage_report_id: description: internally assigned default_usage_report identifier readOnly: true type: integer report_name: description: report_name type: string report_url_params: description: report_url_params type: string required: - report_name - report_url_params type: object erm_document_yaml: additionalProperties: false properties: agreement_id: description: Internal agreement identifier type: - integer - 'null' document_id: description: internally assigned identifier type: integer file_content: description: Content of the file type: - string - 'null' file_description: description: Description of the file type: - string - 'null' file_name: description: Name of the file type: - string - 'null' file_type: description: Type of the file readOnly: true type: - string - 'null' license_id: description: Internal license identifier type: - integer - 'null' notes: type: - string - 'null' physical_location: description: Physical location of the document type: - string - 'null' uploaded_on: description: Datetime of the upload format: date-time readOnly: true type: - string - 'null' uri: description: URI of the document type: - string - 'null' type: object erm_eholdings_package: $ref: '#/components/schemas/erm_eholdings_package_yaml' erm_eholdings_package_agreement_yaml: additionalProperties: false properties: agreement_id: description: foreign key to agreement type: integer package_id: description: foreign key to package readOnly: true type: integer required: - agreement_id type: object erm_eholdings_package_yaml: additionalProperties: false properties: content_type: description: content type of the package type: - string - 'null' created_on: description: date of creation type: - string - 'null' external_id: description: external id of the package type: - string - 'null' is_selected: type: - boolean - 'null' koha_internal_id: description: internal id of the package type: - integer - 'null' name: description: name of the package type: string notes: description: notes about the package type: - string - 'null' package_agreements: description: agreements items: $ref: '#/components/schemas/erm_eholdings_package_agreement_yaml' type: array package_id: description: internally assigned package identifier readOnly: true type: string package_type: description: type of the package type: - string - 'null' provider: description: external id of the package type: - string - 'null' resources: description: resources items: $ref: '#/components/schemas/erm_eholdings_resource_yaml' type: array resources_count: type: - integer - 'null' vendor: type: - object - 'null' vendor_id: description: foreign key to aqbooksellers type: - integer - 'null' required: - name type: object erm_eholdings_resource: $ref: '#/components/schemas/erm_eholdings_resource_yaml' erm_eholdings_resource_yaml: additionalProperties: false properties: ended_on: description: End date type: - string - 'null' is_selected: type: - boolean - 'null' package: description: Information about the package type: - object - 'null' package_id: description: foreign key to the package type: - string - 'null' proxy: description: Proxy to access this resource type: - string - 'null' resource_id: description: internally assigned identifier readOnly: true type: string started_on: description: Start date type: - string - 'null' title: description: Information about the title type: - object - 'null' title_id: description: foreign key to the title type: - integer - 'null' vendor: description: Information about the vendor type: - object - 'null' vendor_id: description: foreign key to aqbooksellers type: - integer - 'null' required: - package_id type: object erm_eholdings_title: $ref: '#/components/schemas/erm_eholdings_title_yaml' erm_eholdings_title_yaml: additionalProperties: false properties: access_type: description: access_type of the title type: - string - 'null' biblio_id: description: internally assigned identifier for the linked biblio readOnly: true type: - integer - 'null' coverage_depth: description: coverage_depth of the title type: - string - 'null' date_first_issue_online: description: date_first_issue_online of the title type: - string - 'null' date_last_issue_online: description: date_last_issue_online of the title type: - string - 'null' date_monograph_published_online: description: date_monograph_published_online of the title type: - string - 'null' date_monograph_published_print: description: date_monograph_published_print of the title type: - string - 'null' embargo_info: description: embargo_info of the title type: - string - 'null' external_id: description: External id of the title type: - string - 'null' first_author: description: first_author of the title type: - string - 'null' first_editor: description: first_editor of the title type: - string - 'null' is_selected: description: if the title is selected in the KB type: - boolean - 'null' monograph_edition: description: monograph_edition of the title type: - string - 'null' monograph_volume: description: monograph_volume of the title type: - string - 'null' notes: description: notes of the title type: - string - 'null' num_first_issue_online: description: num_first_issue_online of the title type: - string - 'null' num_first_vol_online: description: num_first_vol_online of the title type: - string - 'null' num_last_issue_online: description: num_last_issue_online of the title type: - string - 'null' num_last_vol_online: description: num_last_vol_online of the title type: - string - 'null' online_identifier: description: online_identifier of the title type: - string - 'null' parent_publication_title_id: description: parent_publication_title_id of the title type: - string - 'null' preceding_publication_title_id: description: preceding_publication_title_id of the title type: - string - 'null' print_identifier: description: print_identifier of the title type: - string - 'null' publication_title: description: publication_title of the title type: string publication_type: description: publication_type of the title type: - string - 'null' publisher_name: description: publisher_name of the title type: - string - 'null' resources: description: Resource containing this title items: $ref: '#/components/schemas/erm_eholdings_resource_yaml' type: array title_id: description: internally assigned identifier readOnly: true type: integer title_url: description: title_url of the title type: - string - 'null' required: - publication_title type: object erm_license: $ref: '#/components/schemas/erm_license_yaml' erm_license_yaml: additionalProperties: false properties: description: description: description of the license type: - string - 'null' documents: description: documents items: $ref: '#/components/schemas/erm_document_yaml' type: array ended_on: description: End of the license format: date type: - string - 'null' license_id: description: internally assigned license identifier readOnly: true type: integer name: description: name of the license type: string started_on: description: Start of the license format: date type: - string - 'null' status: description: status of the license type: string type: description: description of the license type: string user_roles: description: role for users items: $ref: '#/components/schemas/erm_user_role_yaml' type: array vendor: description: Information about the vendor type: - object - 'null' vendor_id: description: foreign key to aqbooksellers type: - integer - 'null' required: - license_id - name - status - type type: object erm_sushi_service: $ref: '#/components/schemas/erm_sushi_service_yaml' erm_sushi_service_yaml: additionalProperties: false properties: api_key_info: description: api_key_info of the sushi service type: - string - 'null' api_key_required: description: is api_key required type: - boolean - 'null' contact: description: contact for the sushi service items: type: object type: array counter_release: description: counter_release of the sushi service type: - string - 'null' credentials_auto_expire: description: do the credentials expire type: - boolean - 'null' credentials_auto_expire_info: description: credentials_auto_expire_info of the sushi service type: - string - 'null' customer_id_info: description: customer_id_info of the sushi service type: - string - 'null' customizations_in_place: description: are any customizations in place type: - boolean - 'null' customizations_info: description: customizations_info of the sushi service type: - string - 'null' data_host: description: data_host of the sushi service type: - string - 'null' id: description: internally assigned identifier type: string ip_address_authorization: description: is ip address auth required type: - boolean - 'null' ip_address_authorization_info: description: ip_address_authorization_info of the sushi service type: - string - 'null' migrations: description: migrations for the sushi service items: type: object type: array notification_count: description: notification count type: - integer - 'null' notifications_url: description: notifications_url of the sushi service type: - string - 'null' platform_attr_required: description: is platform_attr required type: - boolean - 'null' platform_specific_info: description: platform_specific_info of the sushi service type: - string - 'null' request_volume_limits_applied: description: are limits applied type: - boolean - 'null' request_volume_limits_info: description: request_volume_limits_info of the sushi service type: - string - 'null' requestor_id_info: description: requestor_id_info of the sushi service type: - string - 'null' requestor_id_required: description: is requestor_id required type: - boolean - 'null' url: description: url of the sushi service type: - string - 'null' type: object erm_usage_data_provider: $ref: '#/components/schemas/erm_usage_data_provider_yaml' erm_usage_data_provider_yaml: additionalProperties: false properties: active: description: status of the harvester type: - integer - 'null' aggregator: description: aggregator of the harvester type: - string - 'null' api_key: description: api_key of the harvester type: - string - 'null' counter_files: description: counter files items: $ref: '#/components/schemas/erm_counter_file_yaml' type: array customer_id: description: customer_id of the harvester type: - string - 'null' description: description: description of the data provider type: - string - 'null' earliest_database: description: time period of data harvested type: - string - 'null' earliest_item: description: time period of data harvested type: - string - 'null' earliest_platform: description: time period of data harvested type: - string - 'null' earliest_title: description: time period of data harvested type: - string - 'null' erm_usage_data_provider_id: description: internally assigned data provider identifier readOnly: true type: integer erm_usage_databases: description: usage databases items: $ref: '#/components/schemas/erm_usage_database_yaml' type: array erm_usage_items: description: usage items items: $ref: '#/components/schemas/erm_usage_item_yaml' type: array erm_usage_platforms: description: usage platforms items: $ref: '#/components/schemas/erm_usage_platform_yaml' type: array erm_usage_titles: description: usage titles items: $ref: '#/components/schemas/erm_usage_title_yaml' type: array last_run: description: last time the harvester was run type: - string - 'null' latest_database: description: time period of data harvested type: - string - 'null' latest_item: description: time period of data harvested type: - string - 'null' latest_platform: description: time period of data harvested type: - string - 'null' latest_title: description: time period of data harvested type: - string - 'null' method: description: method of the harvester type: - string - 'null' metric_type: description: metric type of the harvester when reporting type: - string - 'null' name: description: name of the data provider type: string report_release: description: report_release of the harvester type: - string - 'null' report_types: description: report types of the harvester type: - string - 'null' requestor_email: description: requestor_email of the harvester type: - string - 'null' requestor_id: description: requestor_id of the harvester type: - string - 'null' requestor_name: description: requestor_name of the harvester type: - string - 'null' service_type: description: service_type of the harvester type: - string - 'null' service_url: description: service_url of the harvester type: - string - 'null' required: - name - customer_id - requestor_id - service_url - report_release type: object erm_usage_database: $ref: '#/components/schemas/erm_usage_database_yaml' erm_usage_database_yaml: additionalProperties: false properties: database: description: name of the database type: - string - 'null' database_id: description: internally assigned database identifier readOnly: true type: integer erm_usage_muses: description: usage mus items: $ref: '#/components/schemas/erm_usage_mus_yaml' type: array erm_usage_yuses: description: usage yus items: $ref: '#/components/schemas/erm_usage_yus_yaml' type: array platform: description: name of the platform type: - string - 'null' publisher: description: publisher of the database data type: - string - 'null' publisher_id: description: publisher_id of the database data type: - string - 'null' usage_data_provider_id: description: usage_data_provider the database is harvested by type: integer required: - database - usage_data_provider_id type: object erm_usage_item: $ref: '#/components/schemas/erm_usage_item_yaml' erm_usage_item_yaml: additionalProperties: false properties: erm_usage_muses: description: usage mus items: $ref: '#/components/schemas/erm_usage_mus_yaml' type: array erm_usage_yuses: description: usage yus items: $ref: '#/components/schemas/erm_usage_yus_yaml' type: array item: description: item of the item type: - string - 'null' item_id: description: internally assigned item identifier readOnly: true type: integer platform: description: name of the platform type: - string - 'null' publisher: description: publisher of the item data type: - string - 'null' usage_data_provider_id: description: usage_data_provider the item is harvested by type: integer required: - item - usage_data_provider_id type: object erm_usage_mus: $ref: '#/components/schemas/erm_usage_mus_yaml' erm_usage_mus_yaml: additionalProperties: false properties: access_type: description: access type of the monthly usage summary type: - string - 'null' database_id: description: database_id of the monthly usage summary type: - integer - 'null' item_id: description: item_id of the monthly usage summary type: - integer - 'null' metric_type: description: metric type of the monthly usage summary type: - string - 'null' month: description: month of the monthly usage summary type: - integer - 'null' monthly_usage_summary_id: description: internally assigned monthly usage summary identifier readOnly: true type: integer platform_id: description: platform_id of the monthly usage summary type: - integer - 'null' report_type: description: report type of the monthly usage summary type: - string - 'null' title_id: description: title_id of the monthly usage summary type: - integer - 'null' usage_count: description: total count of the monthly usage summary type: - integer - 'null' usage_data_provider_id: description: usage_data_provider_id of the monthly usage summary type: - integer - 'null' year: description: year of the monthly usage summary type: - integer - 'null' yop: description: year of publication of the monthly usage summary type: - string - 'null' required: - title_id - usage_data_provider_id type: object erm_usage_platform: $ref: '#/components/schemas/erm_usage_platform_yaml' erm_usage_platform_yaml: additionalProperties: false properties: erm_usage_muses: description: usage mus items: $ref: '#/components/schemas/erm_usage_mus_yaml' type: array erm_usage_yuses: description: usage yus items: $ref: '#/components/schemas/erm_usage_yus_yaml' type: array platform: description: title of the platform type: - string - 'null' platform_id: description: internally assigned platform identifier readOnly: true type: integer usage_data_provider_id: description: usage_data_provider the platform is harvested by type: integer required: - platform - usage_data_provider_id type: object erm_usage_title: $ref: '#/components/schemas/erm_usage_title_yaml' erm_usage_title_yaml: additionalProperties: false properties: erm_usage_muses: description: usage mus items: $ref: '#/components/schemas/erm_usage_mus_yaml' type: array erm_usage_yuses: description: usage yus items: $ref: '#/components/schemas/erm_usage_yus_yaml' type: array isbn: description: isbn of the title type: - string - 'null' metric_type: description: metric_type of the title data type: - string - 'null' online_issn: description: online_issn number of the title type: - string - 'null' platform: description: platform of the title type: - string - 'null' print_issn: description: print_issn number of the title type: - string - 'null' proprietary_id: description: proprietary_id of the title type: - string - 'null' provider_name: description: provider_name of the title type: - string - 'null' publisher: description: publisher of the title data type: - string - 'null' publisher_id: description: publisher_id of the title data type: - string - 'null' title: description: title of the title type: - string - 'null' title_doi: description: doi number of the title type: - string - 'null' title_id: description: internally assigned title identifier readOnly: true type: integer title_uri: description: title_uri number of the title type: - string - 'null' usage_data_provider_id: description: usage_data_provider the title is harvested by type: integer required: - title - usage_data_provider_id type: object erm_usage_yus: $ref: '#/components/schemas/erm_usage_yus_yaml' erm_usage_yus_yaml: additionalProperties: false properties: access_type: description: access type of the yearly usage summary type: - string - 'null' database_id: description: database_id of the yearly usage summary type: - integer - 'null' item_id: description: item_id of the yearly usage summary type: - integer - 'null' metric_type: description: metric type of the yearly usage summary type: - string - 'null' platform_id: description: platform_id of the yearly usage summary type: - integer - 'null' report_type: description: report type of the yearly usage summary type: - string - 'null' title_id: description: title_id of the yearly usage summary type: - integer - 'null' totalcount: description: total count of the yearly usage summary type: - integer - 'null' usage_data_provider_id: description: usage_data_provider_id of the yearly usage summary type: - integer - 'null' year: description: year of the yearly usage summary type: - integer - 'null' yearly_usage_summary_id: description: internally assigned yearly usage summary identifier readOnly: true type: integer yop: description: year of publication of the yearly usage summary type: - string - 'null' required: - title_id - usage_data_provider_id type: object erm_user_role_yaml: additionalProperties: false properties: agreement_id: description: Internal agreement identifier type: - integer - 'null' license_id: description: Internal license identifier type: - integer - 'null' patron: type: - object - 'null' role: description: role of the user type: - string user_id: description: Internal patron identifier type: integer user_role_id: description: Internal user_role identifier type: integer required: - user_id - role type: object error: $ref: '#/components/schemas/error_yaml' error_yaml: additionalProperties: true properties: error: description: Error message type: string error_code: description: Error code type: string type: object fund: $ref: '#/components/schemas/fund_yaml' fund_yaml: additionalProperties: false properties: budget_id: description: Internal identifier for the budget type: - number - 'null' code: description: Code assigned to the fund by the user type: - string - 'null' fund_access: description: 'Level of permission for this fund (1: owner, 2: owner, users and library, 3: owner and users)' type: - number - 'null' fund_id: description: internally assigned fund identifier readOnly: true type: integer fund_owner_id: description: Internal identifier for the fund owner type: - number - 'null' library_id: description: Internal identifier for the library that this fund belongs to type: - string - 'null' name: description: Name assigned to the fund by the user type: - string - 'null' notes: description: Notes related to this fund type: - string - 'null' parent_fund_id: description: Internal identifier for parent fund type: - integer - 'null' statistic1_auth_value_category: description: Statistical category for this fund type: - string - 'null' statistic2_auth_value_category: description: Second statistical category for this fund type: - string - 'null' timestamp: description: Timestamp format: date-time type: - string total_amount: description: Total amount for this fund type: - number - 'null' warn_at_amount: description: Warning at amount type: - number - 'null' warn_at_percentage: description: Warning at percentage type: - number - 'null' required: - name type: object hold: $ref: '#/components/schemas/hold_yaml' hold_yaml: additionalProperties: false properties: biblio: description: Bibliographic record type: - object - 'null' biblio_id: description: Internal biblio identifier type: integer cancellation_date: description: The date the hold was cancelled format: date type: - string - 'null' cancellation_reason: description: The reason the hold was cancelled type: - string - 'null' cancellation_requested: description: Cancellation requests count for the hold (x-koha-embed) type: - boolean - 'null' desk_id: description: The id of the desk type: - integer - 'null' expiration_date: description: The date the hold expires format: date type: - string - 'null' hold_date: description: The date the hold was placed format: date type: - string - 'null' hold_id: description: Internal hold identifier type: integer item: description: The item type: - object - 'null' item_group_id: description: Internal item group identifier type: - string - 'null' item_id: description: Internal item identifier type: - integer - 'null' item_level: description: If the hold is placed at item level type: boolean item_type: description: If record level hold, the optional itemtype of the item the patron is requesting type: - string - 'null' lowest_priority: description: Controls if the hold is given the lowest priority on the queue type: boolean non_priority: description: Set this hold as non priority type: boolean notes: description: Notes related to this hold type: - string - 'null' patron_id: description: Internal patron identifier type: integer pickup_library: description: Pickup library type: - object - 'null' pickup_library_id: description: Internal library identifier for the pickup library type: - string - 'null' priority: description: Where in the queue the patron sits type: - integer - 'null' status: description: A one letter code defining what the status of the hold is after it has been confirmed type: - string - 'null' suspended: description: Controls if the hold is suspended type: boolean suspended_until: description: Date until which the hold has been suspended format: date-time type: - string - 'null' timestamp: description: Timestamp for the latest hold update format: date-time type: string waiting_date: description: The date the item was marked as waiting for the patron at the library format: date type: - string - 'null' type: object holds: $ref: '#/components/schemas/holds_yaml' holds_yaml: additionalProperties: false items: $ref: '#/components/schemas/hold_yaml' type: array identity_provider: $ref: '#/components/schemas/identity_provider_yaml' identity_provider_domain: $ref: '#/components/schemas/identity_provider_domain_yaml' identity_provider_domain_yaml: additionalProperties: false properties: allow_opac: description: If this domain can be used for OPAC login type: boolean allow_staff: description: If this domain can be used for staff login type: boolean auto_register: description: If patrons will be generated on login if required type: boolean default_category_id: description: Internal identifier for the default patron's category type: - string - 'null' default_library_id: description: Internal identifier for the default library to be assigned to the new patrons type: - string - 'null' domain: description: Matching domain ('*' used as wildcard) type: - string - 'null' identity_provider_domain_id: description: Internally assigned identity provider domain identifier readOnly: true type: integer identity_provider_id: description: Internally assigned identity provider identifier type: integer update_on_auth: description: If patron data is updated on login type: boolean required: - identity_provider_domain_id - domain - auto_register - update_on_auth - default_library_id - default_category_id - allow_opac - allow_staff type: object identity_provider_yaml: additionalProperties: false properties: code: description: Identity provider code type: string config: description: Configuration type: object description: description: User-oriented description for the provider type: string domains: description: Configured domains for the identity provider type: - array - 'null' icon_url: description: Icon url type: - string - 'null' identity_provider_id: description: Internally assigned identity provider identifier readOnly: true type: integer mapping: description: Attribute mapping type: - object - 'null' matchpoint: description: Patron attribute that will be used to match enum: - email - userid - cardnumber type: string protocol: description: Authentication protocol enum: - OAuth - OIDC - CAS (not implemented) - LDAP (not implemented) type: string required: - config - code - protocol type: object ill_backend: $ref: '#/components/schemas/ill_backend_yaml' ill_backend_yaml: additionalProperties: false properties: capabilities: description: List of capabilities type: object ill_backend_id: description: Internal ILL backend identifier type: string statuses: description: existing statuses items: $ref: '#/components/schemas/ill_status_yaml' type: array type: object ill_backends: $ref: '#/components/schemas/ill_backends_yaml' ill_backends_yaml: additionalProperties: false items: $ref: '#/components/schemas/ill_backend_yaml' type: array ill_batch: $ref: '#/components/schemas/ill_batch_yaml' ill_batch_yaml: additionalProperties: false properties: _strings: description: Expanded coded fields (x-koha-embed) type: - object - 'null' backend: description: Backend name type: string cardnumber: description: Library assigned user identifier of the ILL batch type: string ill_batch_id: description: Internal ILL batch identifier type: integer library: description: The library associated with the batch type: - object - 'null' library_id: description: Internal identifier for the ILL batch's library type: string name: description: Name of the ILL batch type: string patron: description: The patron associated with the batch type: - object - 'null' patron_id: description: Internal identifier the patron of the ILL batch type: string requests: description: The requests in this batch (x-koha-embed) type: - array - 'null' requests_count: description: The number of requests in this batch (x-koha-embed) type: - integer - 'null' status: description: The status associated with the batch (x-koha-embed) type: - object - 'null' status_code: description: Code of the status of the ILL batch type: string required: - name - backend - library_id - status_code type: object ill_batches: $ref: '#/components/schemas/ill_batches_yaml' ill_batches_yaml: additionalProperties: false items: $ref: '#/components/schemas/ill_batch_yaml' type: array ill_batchstatus: $ref: '#/components/schemas/ill_batchstatus_yaml' ill_batchstatus_yaml: additionalProperties: false properties: code: description: Unique, immutable status code type: string id: description: Internal ILL batch status identifier type: string is_system: description: Is this status required for system operation type: boolean name: description: Status name type: string required: - name - code - is_system type: object ill_batchstatuses: $ref: '#/components/schemas/ill_batchstatuses_yaml' ill_batchstatuses_yaml: additionalProperties: false items: $ref: '#/components/schemas/ill_batchstatus_yaml' type: array ill_request: $ref: '#/components/schemas/ill_request_yaml' ill_request_yaml: additionalProperties: false properties: _strings: description: Expanded coded fiels (x-koha-embed) type: - object - 'null' access_url: description: A URL for accessing the item type: - string - 'null' biblio: description: The linked biblio object (x-koha-embed) type: - object - 'null' biblio_id: description: Internal bibliographic record identifier type: - integer - 'null' comments: description: The linked comment objects (x-koha-embed) type: - array - 'null' comments_count: description: The linked comment objects count (x-koha-embed) type: - integer - 'null' completed_date: description: Date the request was marked as completed format: date type: - string - 'null' cost: description: Default request cost type: - string - 'null' due_date: description: Date and time the request item should be due when checked out format: date-time type: - string - 'null' extended_attributes: description: The linked extended ill request attributes (x-koha-embed) type: - array - 'null' id_prefix: description: The id_prefix of the request (x-koha-embed) type: - string - 'null' ill_backend_id: description: The ILL backend identifier string type: string ill_backend_request_id: description: Backend-specific request id type: - string - 'null' ill_batch: description: The linked ill batch object (x-koha-embed) type: - object - 'null' ill_batch_id: description: Batch id this requests belongs to type: - integer - 'null' ill_request_id: description: Internal ILL request identifier type: integer library: description: The linked library object (x-koha-embed) type: - object - 'null' library_id: description: Internal library identifier type: string medium: description: Description of the ILL item medium type: - string - 'null' opac_notes: description: Note that is visible to the patron type: - string - 'null' paid_price: description: Effective request cost type: - string - 'null' patron: description: The linked patron object (x-koha-embed) type: - object - 'null' patron_id: description: Internal patron id type: - integer - 'null' replied_date: description: FIXME format: date type: - string - 'null' requested_date: description: Date the request was placed by the patron format: date type: - string - 'null' staff_notes: description: Interal staff note about the request type: - string - 'null' status: description: 'The status the request is at. Note: This is defined by each backend. Please refer to the specific backend''s documentation or code to understand the possible values. ' type: string status_av: description: The authorised value category the field is linked to type: - string - 'null' timestamp: description: Date and time of last object update format: date-time type: string type: object ill_status: $ref: '#/components/schemas/ill_status_yaml' ill_status_yaml: additionalProperties: false properties: backend: description: The backend in which this status is used type: string category: description: The AV category in which the status aliases exists in type: string code: description: Internal ILL status code or av code type: string str: description: Internal ILL status display string type: string type: description: This is 'ill_status' or 'av' depending on if coming from backend or authorised values i.e. alias type: string type: object import_batch_profile: $ref: '#/components/schemas/import_batch_profile_yaml' import_batch_profile_yaml: additionalProperties: false properties: comments: description: any comments added when the file was uploaded type: - string - 'null' encoding: description: file encoding type: - string - 'null' format: description: marc format type: - string - 'null' item_action: description: what to do with item records type: - string - 'null' matcher_id: description: the id of the match rule used (matchpoints.matcher_id) type: - integer - 'null' name: description: name of this profile type: string nomatch_action: description: how to handle records where no match is found type: - string - 'null' overlay_action: description: how to handle duplicate records type: - string - 'null' parse_items: description: should items be parsed type: - boolean - 'null' profile_id: description: Internal profile identifier type: integer record_type: description: type of record in the batch type: - string - 'null' template_id: description: the id of the marc modification template type: - integer - 'null' type: object import_batch_profiles: $ref: '#/components/schemas/import_batch_profiles_yaml' import_batch_profiles_yaml: additionalProperties: false items: $ref: '#/components/schemas/import_batch_profile_yaml' type: array import_record_match: $ref: '#/components/schemas/import_record_match_yaml' import_record_match_yaml: additionalProperties: false properties: candidate_match_id: description: Internal import record match candidate identifier type: integer chosen: description: Whether match has been chosen for overlay type: boolean import_record_id: description: Internal import record identifier type: integer score: description: Ranking value for this match calculated by the matching rules type: integer type: object invoice: $ref: '#/components/schemas/invoice_yaml' invoice_yaml: additionalProperties: false properties: close_date: description: Invoice close date (only when the invoice is closed) format: date type: string closed: description: If the invoice is closed type: boolean invoice_date: description: Date of billing format: date type: - string - 'null' invoice_id: description: Internal identifier for the incoide. Generated on POST type: integer invoice_number: description: Invoice number assigned by the vendor type: string shipping_cost: description: Shipping cost type: - integer - 'null' shipping_cost_budget_id: description: Shipping cost linking to budget type: - integer - 'null' shipping_date: description: Date of shipping format: date type: - string - 'null' vendor_id: description: Internal identifier for the vendor type: integer type: object item: $ref: '#/components/schemas/item_yaml' item_group: $ref: '#/components/schemas/item_group_yaml' item_group_yaml: additionalProperties: false properties: biblio_id: description: Internal identifier for the parent bibliographic record readOnly: true type: integer creation_date: description: Date and time the item group was created format: date-time readOnly: true type: string description: description: Item group description type: string display_order: description: Item group description type: integer item_group_id: description: Internal identifier for the item group readOnly: true type: integer items: description: A list of items that belong to the volume (x-koha-embed) readOnly: true type: - array - 'null' modification_date: description: Date and time the item group was last modified format: date-time readOnly: true type: string required: - item_group_id - biblio_id type: object item_type: $ref: '#/components/schemas/item_type_yaml' item_type_translated_description_yaml: additionalProperties: false properties: lang: description: Language identifier type: string translation: description: Translated plain text type: string required: - lang - translation type: object item_type_yaml: additionalProperties: false properties: automatic_checkin: description: Controls if automatic checkin is enabled for items of this type type: boolean checkin_message: description: Message that is displayed when an item with the given item type is checked in type: - string - 'null' checkin_message_type: description: Type (CSS class) for the checkin_message, can be 'alert' or 'message' type: - string - 'null' daily_rental_charge: description: The amount charged for each day between checkout date and due date type: - number - 'null' daily_rental_charge_calendar: description: Controls if the daily rental fee is calculated directly or using finesCalendar type: boolean default_replacement_cost: description: Default replacement cost type: - number - 'null' description: description: A plain text explanation of the item type type: string hide_in_opac: description: Hide the item type from the search options in OPAC type: boolean hourly_rental_charge: description: The amount charged for each hour between checkout date and due date type: - number - 'null' hourly_rental_charge_calendar: description: Controls if the hourly rental fee is calculated directly or using finesCalendar type: boolean image_url: description: URL for the item type icon type: - string - 'null' item_type_id: description: Unique key, a code associated with the item type readOnly: true type: string not_for_loan_status: description: If items of this type are not for loan type: boolean parent_type: description: Unique key, a code associated with the parent item type type: - string - 'null' process_fee: description: Default text be recorded in the column note when the processing fee is applied type: - number - 'null' rentalcharge: description: The amount charged when this item is checked out/issued type: - number - 'null' searchcategory: description: Group this item type with others with the same value on OPAC search options type: - string - 'null' sip_media_type: description: SIP2 protocol media type for this item type type: - string - 'null' summary: description: Information from the summary field, may include HTML type: - string - 'null' translated_descriptions: description: Translations of description plain text (x-koha-embed) items: $ref: '#/components/schemas/item_type_translated_description_yaml' type: array required: - item_type_id type: object item_yaml: additionalProperties: false properties: _strings: description: A return claims object if one exists that's unresolved type: - object - 'null' acquisition_date: description: The date the item was acquired format: date type: - string - 'null' acquisition_source: description: Information about the acquisition source (it is not really a vendor id) type: - string - 'null' biblio: {} biblio_id: description: Internal identifier for the parent bibliographic record type: integer bookable: description: Allow bookings on this item. type: boolean call_number_sort: description: '?' type: - string - 'null' call_number_source: description: Classification source used on this item type: - string - 'null' callnumber: description: Call number for this item type: - string - 'null' checked_out_date: description: Defines if item is checked out (NULL for not checked out, and checkout date for checked out) format: date type: - string - 'null' checkouts_count: description: Number of times this item has been checked out/issued type: - integer - 'null' coded_location_qualifier: description: Coded location qualifier type: - string - 'null' collection_code: description: Authorized value for the collection code associated with this item type: - string - 'null' copy_number: description: Copy number type: - string - 'null' damaged_date: description: The date and time an item was last marked as damaged, NULL if not damaged type: - string - 'null' damaged_status: description: Authorized value defining this item as damaged type: integer effective_item_type_id: description: Effective itemtype defining the type for this item_id type: - string - 'null' effective_not_for_loan_status: description: Authorized value defining why this item is not for not_for_loan_status type: integer exclude_from_local_holds_priority: description: Exclude this item from local holds priority. type: boolean extended_subfields: description: Additional 952 subfields in XML format type: - string - 'null' external_id: description: The item's barcode type: - string - 'null' holding_library_id: description: Library that is currently in possession item type: - string - 'null' holds_count: description: Number of times this item has been placed on hold/reserved type: - integer - 'null' home_library_id: description: Internal library id for the library the item belongs to type: - string - 'null' internal_notes: description: Non-public notes on this item type: - string - 'null' inventory_number: description: Inventory number type: - string - 'null' item_id: description: Internal item identifier type: integer item_type_id: description: Itemtype defining the type for this item type: - string - 'null' last_checkout_date: description: The date the item was last checked out format: date type: - string - 'null' last_seen_date: description: The date the item barcode was last scanned format: date-time type: - string - 'null' location: description: Authorized value for the shelving location for this item type: - string - 'null' lost_date: description: The date and time an item was last marked as lost, NULL if not lost format: date-time type: - string - 'null' lost_status: description: Authorized value defining this item as lost type: integer materials_notes: description: Materials specified type: - string - 'null' new_status: description: '''new'' value, whatever free-text information.' type: - string - 'null' not_for_loan_status: description: Authorized value defining why this item is not for loan type: integer permanent_location: description: Linked to the CART and PROC temporary locations feature, stores the permanent shelving location type: - string - 'null' public_notes: description: Public notes on this item type: - string - 'null' purchase_price: description: Purchase price type: - number - 'null' renewals_count: description: Number of times this item has been renewed type: - integer - 'null' replacement_price: description: Cost the library charges to replace the item (e.g. if lost) type: - number - 'null' replacement_price_date: description: The date the replacement price is effective from format: date type: - string - 'null' restricted_status: description: Authorized value defining use restrictions for this item type: - integer - 'null' return_claim: type: - object - 'null' return_claims: description: An array of all return claims associated with this item type: array serial_issue_number: description: serial enumeration/chronology for the item type: - string - 'null' timestamp: description: Date and time this item was last altered format: date-time type: string uri: description: URL for the item type: - string - 'null' withdrawn: description: Authorized value defining this item as withdrawn type: integer withdrawn_date: description: The date and time an item was last marked as withdrawn, NULL if not withdrawn format: date-time type: - string - 'null' type: object job: $ref: '#/components/schemas/job_yaml' job_yaml: additionalProperties: false properties: context: description: job context type: object data: description: job data type: object ended_date: description: job end date format: date-time type: - string - 'null' enqueued_date: description: job enqueue date format: date-time type: string job_id: description: internally assigned job identifier readOnly: true type: integer patron_id: description: job enqueuer type: - string - 'null' progress: description: job progress type: - string - 'null' queue: description: job queue type: string size: description: job size type: - string - 'null' started_date: description: job start date format: date-time type: - string - 'null' status: description: job status type: string type: description: job type type: string type: object library: $ref: '#/components/schemas/library_yaml' library_yaml: additionalProperties: false properties: address1: description: the first address line of the library type: - string - 'null' address2: description: the second address line of the library type: - string - 'null' address3: description: the third address line of the library type: - string - 'null' cash_registers: description: The library's defined cash registers (x-koha-embed) type: - array - 'null' city: description: the city or province of the library type: - string - 'null' country: description: the county of the library type: - string - 'null' desks: description: The library's defined desks (x-koha-embed) type: - array - 'null' email: description: the primary email address of the library type: - string - 'null' fax: description: the fax number of the library type: - string - 'null' geolocation: description: geolocation of your library type: - string - 'null' illemail: description: the ILL staff email address of the library type: - string - 'null' ip: description: the IP address for your library or branch type: - string - 'null' library_id: description: internally assigned library identifier maxLength: 10 minLength: 1 type: string marc_org_code: description: MARC Organization Code, see http://www.loc.gov/marc/organizations/orgshome.html, when empty defaults to syspref MARCOrgCode type: - string - 'null' name: description: Printable name of library type: string needs_override: description: If the library needs an override to act as pickup location for a hold type: boolean notes: description: notes related to your library or branch type: - string - 'null' phone: description: the primary phone of the library type: - string - 'null' pickup_location: description: If the library can act as a pickup location type: boolean postal_code: description: the postal code of the library type: - string - 'null' public: description: If the library is visible to the public type: boolean reply_to_email: description: the email to be used as a Reply-To type: - string - 'null' return_path_email: description: the email to be used as Return-Path type: - string - 'null' smtp_server: description: The library effective SMTP server type: - object - 'null' state: description: the reqional state of the library type: - string - 'null' url: description: the URL for your library or branch's website type: - string - 'null' required: - library_id - name type: object merge_biblios: $ref: '#/components/schemas/merge_biblios_yaml' merge_biblios_yaml: additionalProperties: false properties: biblio_id_to_merge: description: Biblionumber from which to merge type: integer datarecord: description: Bibliographic record used as result of the merge. It uses the format MARC-in-JSON type: - object - 'null' framework_to_use: description: Framework code, you can use it only with a value in datarecord field. With null value it uses the framework code of record to be merged into. type: - string - 'null' rules: description: Internally identifier of a merge algoritm. Now two identifier are supported, 'override' and 'override_ext'. 'override' is to use when you the bibliographic data of biblio_id as resulting bibliographic data. The null value is equivalent of 'override'. 'override_ext' is to use only with a value in datarecord field. In fact is mandatory to use if you insert a record inside datarecord field. type: - string - 'null' required: - biblio_id_to_merge type: object order: $ref: '#/components/schemas/order_yaml' order_yaml: additionalProperties: false properties: basket: type: - object - 'null' basket_id: description: Basket this order is linked to type: - integer - 'null' biblio: type: - object - 'null' biblio_id: description: Identifier for the linked bibliographic record type: - integer - 'null' cancellation_date: description: Date the line item was deleted format: date type: - string - 'null' cancellation_reason: description: Reason of cancellation type: - string - 'null' claims_count: description: Generated claim letters count type: integer created_by: description: Interal patron identifier of the order line creator type: - integer - 'null' creator: description: Patron that created the order type: - object - 'null' currency: description: Currency used for the purchase type: - string - 'null' current_item_level_holds_count: description: Current holds count for associated items type: integer date_received: description: Date the order was received format: date type: - string - 'null' deleted_biblio_id: description: Identifier for the linked deleted bibliographic record type: - integer - 'null' discount_rate: description: Discount rate type: - number - 'null' ecost: description: Effective cost type: - number - 'null' ecost_tax_excluded: description: Effective cost (tax excluded) type: - number - 'null' ecost_tax_included: description: Effective cost (tax included) type: - number - 'null' entry_date: description: Date the bib was added to the basket format: date type: - string - 'null' estimated_delivery_date: description: Estimated delivery date format: date type: - string - 'null' fund: type: - object - 'null' fund_id: description: Internal identifier for the fund this order goes against type: integer internal_note: description: Notes related to this order line, made for staff type: - string - 'null' invoice: type: - object - 'null' invoice_currency: description: Currency of the actual cost used when receiving type: - string - 'null' invoice_id: description: Id of the order invoice type: - integer - 'null' invoice_unit_price: description: The actual cost in the foreign currency used in the invoice type: - number - 'null' items: type: array last_claim_date: description: Last date a claim letter was generated format: date type: - string - 'null' list_price: description: Vendor price for the line item type: - number - 'null' order_id: description: Internally assigned order identifier type: integer parent_order_id: description: Order ID of parent order line if exists type: - integer - 'null' quantity: description: Ordered quantity type: - integer - 'null' quantity_received: description: Quantity received so far type: integer replacement_price: description: Replacement cost for this item type: - number - 'null' rrp: description: Retail cost for this item type: - number - 'null' rrp_tax_excluded: description: Replacement cost for this item (tax excluded) type: - number - 'null' rrp_tax_included: description: Replacement cost for this item (tax included) type: - number - 'null' shipping_cost: description: Shipping cost type: - number - 'null' statistics_1: description: Statistical field type: - string - 'null' statistics_1_authcat: description: Statistical category for this order type: - string - 'null' statistics_2: description: Statistical field (2) type: - string - 'null' statistics_2_authcat: description: Statistical category for this order (2) type: - string - 'null' status: description: The current order status enum: - new - ordered - partial - complete - cancelled type: string subscription: type: - object - 'null' subscription_id: description: Subscription ID linking the order to a subscription type: - integer - 'null' tax_rate_on_ordering: description: Tax rate on ordering (%) type: - number - 'null' tax_rate_on_receiving: description: Tax rate on receiving (%) type: - number - 'null' tax_value_on_ordering: description: Tax value on ordering type: - number - 'null' tax_value_on_receiving: description: Tax value on receiving type: - number - 'null' timestamp: description: Date and time this order line was last modified format: date-time type: string uncertain_price: description: If this price was uncertain type: boolean unit_price: description: The actual cost entered when receiving this line item type: - number - 'null' unit_price_tax_excluded: description: Unit price excluding tax (on receiving) type: - number - 'null' unit_price_tax_included: description: Unit price including tax (on receiving) type: - number - 'null' vendor_note: description: Notes related to this order line, made for vendor type: - string - 'null' type: object patron: $ref: '#/components/schemas/patron_yaml' patron_account_credit: $ref: '#/components/schemas/patron_account_credit_yaml' patron_account_credit_yaml: additionalProperties: false properties: account_lines_ids: description: List of account line ids the credit goes against (optional) items: type: integer type: array amount: description: Credit amount minimum: 0 type: number credit_type: description: Type of credit ('CREDIT', 'FORGIVEN', 'LOST_FOUND', 'PAYMENT', 'WRITEOFF', 'PROCESSING_FOUND' ) type: string date: description: Date the credit was recorded (optional) format: date type: string description: description: Description type: string library_id: description: Internal identifier for the library in which the transaction took place type: - string - 'null' note: description: Internal note type: string payment_type: description: Payment type (only applies when credit_type=payment) type: string required: - amount type: object patron_balance: $ref: '#/components/schemas/patron_balance_yaml' patron_balance_yaml: additionalProperties: false properties: balance: description: Signed decimal number type: number outstanding_credits: properties: lines: items: $ref: '#/components/schemas/account_line_yaml' type: array total: type: number outstanding_debits: properties: lines: items: $ref: '#/components/schemas/account_line_yaml' type: array total: type: number type: object required: - balance type: object patron_category: $ref: '#/components/schemas/patron_category_yaml' patron_category_yaml: additionalProperties: false properties: block_expired_patron_opac_actions: description: Whether or not a patron of this category can renew books or place holds once their card has expired. 0 means they can, 1 means they cannot, -1 means use syspref BlockExpiredPatronOpacActions type: number can_be_guarantee: description: If patrons of this category can be guarantees type: boolean can_place_ill_in_opac: description: Can this patron category place interlibrary loan requests type: boolean category_type: description: Type of Koha patron (Adult, Child, Professional, Organizational, Statistical, Staff) type: string change_password: description: If patrons of this category can change their passwords in the OPAC type: - boolean - 'null' check_prev_checkout: description: Produce a warning for this patron category if this item has previously been checked out to this patron if ''yes'', not if ''no'', defer to syspref setting if ''inherit''.' type: string default_privacy: description: Default privacy setting for this patron category enum: - default - never - forever type: string enrolment_fee: description: Enrollment fee for the patron type: - number - 'null' enrolment_period: description: Number of months the patron is enrolled for type: - number - 'null' enrolment_period_date: description: Date the patron is enrolled until format: date type: - string - 'null' exclude_from_local_holds_priority: description: Exclude patrons of this category from local holds priority type: - boolean - 'null' hide_lost_items: description: Are lost items shown to this category (1 for yes, 0 for no) type: boolean lower_age_limit: description: The minimum age required for the patron category type: - number - 'null' min_password_length: description: Set minimum password length for patrons in this category type: - number - 'null' name: description: Name of the patron category type: - string - 'null' overdue_notice_required: description: Are overdue notices sent to this patron category (1 for yes, 0 for no) type: - boolean - 'null' password_expiry_days: description: Number of days after which the patron must reset their password type: - number - 'null' patron_category_id: description: Internal patron category identifier type: string require_strong_password: description: Set required password strength for patrons in this category type: - boolean - 'null' reserve_fee: description: Cost to place holds type: - number - 'null' reset_password: description: If patrons of this category can do the password reset flow type: - boolean - 'null' upper_age_limit: description: Age limit for the patron type: - number - 'null' required: - patron_category_id type: object patron_extended_attribute: $ref: '#/components/schemas/patron_extended_attribute_yaml' patron_extended_attribute_yaml: additionalProperties: false properties: extended_attribute_id: description: Internal ID for the extended attribute type: integer type: description: Extended attribute type type: string value: description: Extended attribute value type: - string - 'null' required: - type - value type: object patron_yaml: additionalProperties: false properties: _strings: description: A list of stringified coded values type: - object - 'null' account_balance: description: Balance of the patron's account type: - number - 'null' address: description: first address line of patron's primary address type: - string - 'null' address2: description: second address line of patron's primary address type: - string - 'null' altaddress_address: description: first address line of patron's alternate address type: - string - 'null' altaddress_address2: description: second address line of patron's alternate address type: - string - 'null' altaddress_city: description: city or town of patron's alternate address type: - string - 'null' altaddress_country: description: country of patron's alternate address type: - string - 'null' altaddress_email: description: email address for patron's alternate address type: - string - 'null' altaddress_notes: description: a note related to patron's alternate address type: - string - 'null' altaddress_phone: description: phone number for patron's alternate address type: - string - 'null' altaddress_postal_code: description: zip or postal code of patron's alternate address type: - string - 'null' altaddress_state: description: state or province of patron's alternate address type: - string - 'null' altaddress_street_number: description: street number of patron's alternate address type: - string - 'null' altaddress_street_type: description: street type of patron's alternate address type: - string - 'null' altcontact_address: description: the first address line for the alternate contact for the patron type: - string - 'null' altcontact_address2: description: the second address line for the alternate contact for the patron type: - string - 'null' altcontact_city: description: the city for the alternate contact for the patron type: - string - 'null' altcontact_country: description: the country for the alternate contact for the patron type: - string - 'null' altcontact_firstname: description: first name of alternate contact for the patron type: - string - 'null' altcontact_phone: description: the phone number for the alternate contact for the patron type: - string - 'null' altcontact_postal_code: description: the zipcode for the alternate contact for the patron type: - string - 'null' altcontact_state: description: the state for the alternate contact for the patron type: - string - 'null' altcontact_surname: description: surname or last name of the alternate contact for the patron type: - string - 'null' anonymized: description: If the patron has been anonymized readOnly: true type: boolean autorenew_checkouts: description: indicate whether auto-renewal is allowed for patron type: boolean cardnumber: description: library assigned user identifier type: - string - 'null' category_id: description: Internal identifier for the patron's category type: string check_previous_checkout: description: produce a warning for this patron if this item has previously been checked out to this patron if 'yes', not if 'no', defer to category setting if 'inherit' type: string checkouts_count: description: Number of checkouts type: - integer - 'null' city: description: city or town of patron's primary address type: - string - 'null' country: description: country of patron's primary address type: - string - 'null' date_enrolled: description: date the patron was added to Koha format: date type: - string - 'null' date_of_birth: description: patron's date of birth format: date type: - string - 'null' date_renewed: description: date the patron's card was last renewed format: date type: - string - 'null' email: description: primary email address for patron's primary address type: - string - 'null' expiry_date: description: date the patron's card is set to expire format: date type: - string - 'null' extended_attributes: description: patron's extended attributes items: $ref: '#/components/schemas/patron_extended_attribute_yaml' type: array fax: description: fax number for patron's primary address type: - string - 'null' firstname: description: patron's first name type: - string - 'null' gender: description: patron's gender type: - string - 'null' incorrect_address: description: set to 1 if library marked this patron as having an unconfirmed address type: - boolean - 'null' initials: description: initials of the patron type: - string - 'null' lang: description: lang to use to send notices to this patron type: string last_seen: description: last time a patron has been seen (connected at the OPAC or staff interface) format: date-time type: - string - 'null' library: description: Library of the patron type: - object - 'null' library_id: description: Internal identifier for the patron's home library type: string login_attempts: description: number of failed login attemps type: - integer - 'null' middle_name: description: patron's middle name type: - string - 'null' mobile: description: the other phone number for patron's primary address type: - string - 'null' opac_notes: description: a note on the patron's account visible in OPAC and staff interface type: - string - 'null' other_name: description: any other names associated with the patron type: - string - 'null' overdrive_auth_token: description: persist OverDrive auth token type: - string - 'null' overdues_count: description: Number of overdued checkouts type: - integer - 'null' patron_card_lost: description: set to 1 if library marked this patron as having lost his card type: - boolean - 'null' patron_id: description: Internal patron identifier type: integer phone: description: primary phone number for patron's primary address type: - string - 'null' postal_code: description: zip or postal code of patron's primary address type: - string - 'null' privacy: description: patron's privacy settings related to their checkout history type: integer privacy_guarantor_checkouts: description: controls if relatives can see this patron's checkouts type: integer privacy_guarantor_fines: description: controls if relatives can see this patron's fines type: boolean pronouns: description: pronouns of the patron type: - string - 'null' protected: description: Protected status of the patron type: - boolean relationship_type: description: used for children to include the relationship to their guarantor type: - string - 'null' restricted: description: If any restriction applies to the patron readOnly: true type: boolean secondary_email: description: secondary email address for patron's primary address type: - string - 'null' secondary_phone: description: secondary phone number for patron's primary address type: - string - 'null' sms_number: description: the mobile phone number where the patron would like to receive notices (if SMS turned on) type: - string - 'null' sms_provider_id: description: the provider of the mobile phone number defined in smsalertnumber type: - integer - 'null' staff_notes: description: a note on the patron's account type: - string - 'null' state: description: state or province of patron's primary address type: - string - 'null' statistics_1: description: a field that can be used for any information unique to the library type: - string - 'null' statistics_2: description: a field that can be used for any information unique to the library type: - string - 'null' street_number: description: street number of patron's primary address type: - string - 'null' street_type: description: street type of patron's primary address type: - string - 'null' surname: description: patron's last name type: - string - 'null' title: description: patron's title type: - string - 'null' updated_on: description: time of last change could be useful for synchronization with external systems (among others) format: date-time type: string userid: description: patron's login type: - string - 'null' required: - surname - library_id - category_id type: object preservation_config: $ref: '#/components/schemas/preservation_config_yaml' preservation_config_yaml: additionalProperties: false properties: permissions: description: List of permissions of the logged in user used for the Preservation module type: object settings: description: List of sysprefs used for the Preservation module type: object type: object preservation_processing: $ref: '#/components/schemas/preservation_processing_yaml' preservation_processing_attribute_yaml: additionalProperties: false properties: name: type: string option_source: type: - string - 'null' processing_attribute_id: description: Internal processing attribute identifier type: integer processing_id: description: Internal processing identifier type: integer type: type: - string required: - name - type type: object preservation_processing_yaml: additionalProperties: false properties: attributes: description: attributes of the processing items: $ref: '#/components/schemas/preservation_processing_attribute_yaml' letter_code: description: Letter code of the letter to use for printing slips type: - string - 'null' name: description: name of the processing type: string processing_id: description: internally assigned agreement identifier readOnly: true type: integer required: - processing_id - name type: object preservation_train: $ref: '#/components/schemas/preservation_train_yaml' preservation_train_item: $ref: '#/components/schemas/preservation_train_item_yaml' preservation_train_item_yaml: additionalProperties: false properties: added_on: description: add date type: - string - 'null' attributes: description: attribute list type: - array - 'null' catalogue_item: description: catalogue item type: - object - 'null' item_id: description: internally item identifier type: integer processing_id: description: internally processing identifier type: integer train_id: description: internally train identifier type: integer train_item_id: description: internally assigned train item identifier readOnly: true type: integer user_train_item_id: description: internally user train item identifier type: integer type: object preservation_train_yaml: additionalProperties: false properties: closed_on: description: closing date type: - string - 'null' created_on: description: creation date type: - string - 'null' default_processing: description: the default processing type: - object - 'null' default_processing_id: description: foreign key to preservation_processings type: - integer - 'null' description: description: description of the train type: - string - 'null' name: description: name of the train type: string not_for_loan: description: NOT_LOAN authorised value to apply to item added to this train type: - string - 'null' received_on: description: receiving date type: - string - 'null' sent_on: description: sending date type: - string - 'null' train_id: description: internally assigned train identifier readOnly: true type: integer required: - train_id - name type: object quote: $ref: '#/components/schemas/quote_yaml' quote_yaml: additionalProperties: false properties: displayed_on: description: Last display date type: - string - 'null' quote_id: description: internally assigned quote identifier type: integer source: description: source of the quote type: string text: description: text type: - string - 'null' required: - source - text type: object recall: $ref: '#/components/schemas/recall_yaml' recall_yaml: additionalProperties: false properties: biblio_id: description: Internal biblio identifier type: integer completed: description: Controls if the recall is fulfilled type: boolean completed_date: description: The date the recall was fulfilled format: date-time type: - string - 'null' created_date: description: The date the recall was requested format: date-time type: - string - 'null' expiration_date: description: The date the recall expires format: date-time type: - string - 'null' item_id: description: Internal item identifier type: - integer - 'null' item_level: description: If the recall is requested at item level type: boolean notes: description: Notes related to this recall type: - string - 'null' patron_id: description: Internal patron identifier type: integer pickup_library_id: description: Internal library identifier for the pickup library type: - string - 'null' priority: description: Where in the queue the patron sits (not yet implemented) type: - integer - 'null' recall_id: description: Internal recall identifier type: integer status: description: Status of the recall enum: - requested - overdue - waiting - in_transit - cancelled - expired - fulfilled type: string timestamp: description: Timestamp for the latest recall update format: date-time type: string waiting_date: description: The date the item was marked as waiting for the patron at the library format: date-time type: - string - 'null' type: object recalls: $ref: '#/components/schemas/recalls_yaml' recalls_yaml: additionalProperties: false items: $ref: '#/components/schemas/recall_yaml' type: array renewal: $ref: '#/components/schemas/renewal_yaml' renewal_yaml: additionalProperties: false properties: checkout_id: description: internally assigned checkout identifier type: integer interface: description: 'Interface from which the renewal took place (values can be: api, cron, commandline, intranet, opac and sip)' type: - string - 'null' renewal_date: description: Date the renewal took place format: date-time type: string renewal_id: description: internally assigned renewal identifier type: integer renewal_type: enum: - Automatic - Manual type: - string - 'null' renewer: description: The object representing the renewal issuer type: - object - 'null' renewer_id: description: internally assigned for the user that processed the renewal type: - integer - 'null' seen: description: Seen/Unseen renewal type: - boolean timestamp: description: Last update time type: string type: object renewals: $ref: '#/components/schemas/renewals_yaml' renewals_yaml: additionalProperties: false items: $ref: '#/components/schemas/renewal_yaml' type: array return_claim: $ref: '#/components/schemas/return_claim_yaml' return_claim_yaml: additionalProperties: false properties: claim_id: description: internally assigned return claim identifier type: - integer created_by: description: patron id of librarian who made the claim type: - integer - 'null' created_on: description: date of claim creation format: date-time type: - string - 'null' issue_id: description: internal identifier of the claimed checkout if still checked out type: - integer - 'null' item_id: description: internal identifier of the claimed item type: - integer notes: description: notes about this claim type: - string - 'null' old_issue_id: description: internal identifier of the claimed checkout if not longer checked out type: - integer - 'null' patron_id: description: Internal patron identifier type: integer resolution: description: code of resolution type for this claim type: - string - 'null' resolved_by: description: patron id of librarian who resolved this claim type: - integer - 'null' resolved_on: description: date the claim was resolved format: date-time type: - string - 'null' updated_by: description: patron id of librarian who last updated the claim type: - integer - 'null' updated_on: description: date the claim was last updated format: date-time type: - string - 'null' type: object search_filter: $ref: '#/components/schemas/search_filter_yaml' search_filter_yaml: additionalProperties: false properties: limits: description: filter limits part type: - string - 'null' name: description: filter name type: string opac: description: visible on opac type: - boolean - 'null' query: description: filter query part type: - string - 'null' search_filter_id: description: internally assigned search filter identifier readOnly: true type: integer staff_client: description: visible in staff client type: - boolean - 'null' required: - name type: object smtp_server: $ref: '#/components/schemas/smtp_server_yaml' smtp_server_yaml: additionalProperties: false properties: debug: description: If the SMTP connection is set to debug mode type: boolean host: description: SMTP host name type: string is_default: description: Is this the default SMTP server type: boolean name: description: Name of the SMTP server type: string password: description: The password to use for authentication (optional) type: - string - 'null' port: description: TCP port number type: integer smtp_server_id: description: Internal SMTP server identifier readOnly: true type: integer ssl_mode: description: If SSL/TLS will be used enum: - disabled - ssl - starttls type: string timeout: description: Maximum time in seconds to wait for server type: integer user_name: description: The user name to use for authentication (optional) type: - string - 'null' required: - name type: object suggestion: $ref: '#/components/schemas/suggestion_yaml' suggestion_yaml: additionalProperties: false properties: accepted_by: description: patron_id for the librarian who accepted the suggestion, foreign key linking to the borrowers table type: - integer - 'null' accepted_date: description: date the suggestion was marked as accepted format: date type: - string - 'null' archived: description: archived (processed) suggestion type: - boolean - 'null' author: description: author of the suggested item type: - string - 'null' biblio_id: description: foreign key linking the suggestion to the biblio table after the suggestion has been ordered type: - integer - 'null' budget_id: description: foreign key linking the suggested budget to the aqbudgets table type: - integer - 'null' collection_title: description: collection name for the suggested item type: - string - 'null' copyright_date: description: copyright date of the suggested item type: - integer - 'null' currency: description: suggested currency for the suggested price type: - string - 'null' isbn: description: isbn of the suggested item type: - string - 'null' item_price: description: suggested price type: - number - 'null' item_type: description: suggested item type type: - string - 'null' last_status_change_by: description: patron the suggestion was last modified by type: - integer - 'null' last_status_change_date: description: date the suggestion was last modified format: date type: - string - 'null' library_id: description: foreign key linking the suggested branch to the branches table type: - string - 'null' managed_by: description: patron_id for the librarian managing the suggestion, foreign key linking to the borrowers table type: - integer - 'null' managed_date: description: date the suggestion was updated format: date type: - string - 'null' note: description: note entered on the suggestion type: - string - 'null' patron_reason: description: reason for making the suggestion type: - string - 'null' publication_place: description: publication place of the suggested item type: - string - 'null' publication_year: description: year of publication type: - string - 'null' publisher_code: description: publisher of the suggested item type: - string - 'null' quantity: description: suggested quantity to be purchased type: - string - 'null' reason: description: reason for accepting or rejecting the suggestion type: - string - 'null' rejected_by: description: patron_id for the librarian who rejected the suggestion, foreign key linking to the borrowers table type: - integer - 'null' rejected_date: description: date the suggestion was marked as rejected format: date type: - string - 'null' staff_note: description: non-public note entered on the suggestion type: - string - 'null' status: description: 'Suggestion status. Possible values are: * `ASKED` * `CHECKED` * `ACCEPTED` * `REJECTED` * `ORDERED` * `AVAILABLE` * Values from the `SUGGEST_STATUS` av category ' type: string suggested_by: description: patron_id for the person making the suggestion, foreign key linking to the borrowers table type: - integer - 'null' suggestion_date: description: the suggestion was submitted format: date type: string suggestion_id: description: unique identifier assigned automatically by Koha readOnly: true type: integer timestamp: description: timestamp of date created format: date-time type: - string - 'null' title: description: title of the suggested item type: - string - 'null' total_price: description: suggested total cost (price*quantity updated for currency) type: - string - 'null' volume_desc: description: volume description type: - string - 'null' type: object ticket: $ref: '#/components/schemas/ticket_yaml' ticket_update: $ref: '#/components/schemas/ticket_update_yaml' ticket_update_yaml: additionalProperties: true properties: date: description: Date the ticket update was reported format: date-time readOnly: true type: - string - 'null' message: description: Ticket update details type: string public: description: Is this update intended to be sent to the patron type: boolean ticket_id: description: Internal ticket identifier readOnly: true type: integer update_id: description: Internal ticket update identifier readOnly: true type: integer user: description: The object representing the patron who added the update readOnly: true type: - object - 'null' user_id: description: Internal identifier for the patron who added the update type: integer required: - message - public type: object ticket_yaml: additionalProperties: false properties: biblio: description: The object representing the biblio the ticket is related to readOnly: true type: - object - 'null' biblio_id: description: Internal identifier for the biblio the ticket is related to type: integer body: description: Ticket details type: string reported_date: description: Date the ticket was reported format: date-time readOnly: true type: - string - 'null' reporter: description: The object representing the patron who reported the ticket readOnly: true type: - object - 'null' reporter_id: description: Internal identifier for the patron who reported the ticket type: integer resolved_date: description: Date the ticket was resolved_date format: date-time type: - string - 'null' resolver: description: The object representing the user who resolved the ticket readOnly: true type: - object - 'null' resolver_id: description: Internal identifier for the user who resolved the ticket type: - integer - 'null' ticket_id: description: Internal ticket identifier readOnly: true type: integer title: description: Ticket title type: string updates_count: description: Number of updates type: - integer - 'null' required: - title - body type: object transfer_limit: $ref: '#/components/schemas/transfer_limit_yaml' transfer_limit_yaml: additionalProperties: false properties: collection_code: description: Authorized value for the collection code associated with this limit type: - string - 'null' from_library_id: description: Internal library id for which library the item is coming from type: string item_type: description: Itemtype defining the type for this limi type: - string - 'null' limit_id: description: Internal transfer limit identifier type: integer to_library_id: description: Internal library id for which library the item is going to type: string required: - to_library_id - from_library_id type: object vendor: $ref: '#/components/schemas/vendor_yaml' vendor_alias_yaml: additionalProperties: false properties: alias: description: The alias type: string alias_id: description: Internal ID for the extended attribute type: integer vendor_id: description: ID of the vendor type: integer required: - alias type: object vendor_issue: $ref: '#/components/schemas/vendor_issue_yaml' vendor_issue_yaml: additionalProperties: false properties: _strings: description: A list of stringified coded values type: - object - 'null' ended_on: description: End date format: date type: - string - 'null' issue_id: description: internally assigned vendor identifier readOnly: true type: integer notes: description: Notes type: - string - 'null' started_on: description: Start date format: date type: - string - 'null' type: description: Type of the issue type: - string - 'null' vendor_id: description: ID of the vendor type: integer type: object vendor_yaml: additionalProperties: false properties: accountnumber: description: Vendor account number type: - string - 'null' active: description: Is this vendor active type: - boolean - 'null' address1: description: Vendor physical address (line 1) type: - string - 'null' address2: description: Vendor physical address (line 2) type: - string - 'null' address3: description: Vendor physical address (line 3) type: - string - 'null' address4: description: Vendor physical address (line 4) type: - string - 'null' aliases: description: List of aliases items: $ref: '#/components/schemas/vendor_alias_yaml' type: array deliverytime: description: Expected delivery time (in days) type: - integer - 'null' discount: description: Default discount rate for items ordered from this vendor type: - number - 'null' external_id: description: External id type: - string - 'null' fax: description: Vendor fax number type: - string - 'null' gst: description: Is the library taxed when buying from this vendor type: - boolean - 'null' id: description: internally assigned vendor identifier readOnly: true type: integer invoice_currency: description: Invoice prices currency type: - string - 'null' invoice_includes_gst: description: Invoice prices include taxes type: - boolean - 'null' list_currency: description: List prices currency type: - string - 'null' list_includes_gst: description: List prices include taxes type: - boolean - 'null' name: description: Vendor name type: - string notes: description: Vendor notes type: - string - 'null' phone: description: Vendor phone number type: - string - 'null' postal: description: Vendor postal address type: - string - 'null' tax_rate: description: Default tax rate for items ordered from this vendor type: - number - 'null' type: description: Type of vendor type: - string - 'null' url: description: Vendor web address type: - string - 'null' required: - name type: object requestBodies: q_body: description: Query filter sent through request"s body required: false content: application/json: schema: type: object swagger_yaml-parameters_q_body: description: Query filter sent through request"s body required: false content: application/json: schema: type: object parameters: advancededitormacro_id_pp: name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer agreement_id_pp: name: agreement_id in: path required: true description: Agreement internal identifier schema: type: integer agreement_period_id_pp: name: agreement_period_id in: path required: true description: Agreement period internal identifier schema: type: integer authorised_value_id_pp: name: authorised_value_id in: path required: true description: Authorised value internal identifier schema: type: integer authority_id_pp: name: authority_id in: path required: true description: Authority identifier schema: type: integer authority_type_header: name: x-authority-type in: header required: false description: Authority type code. Use when content type is not application/json schema: type: string biblio_id_pp: name: biblio_id in: path required: true description: Record internal identifier schema: type: integer booking_id_pp: name: booking_id in: path required: true description: Booking identifier schema: type: integer candidate_match_id_pp: name: candidate_match_id in: path required: true description: Internal import record match identifier schema: type: integer cash_register_id_pp: name: cash_register_id in: path required: true description: Cash register internal identifier schema: type: integer cashup_id_pp: name: cashup_id in: path required: true description: Cashup internal identifier schema: type: integer checkout_id_pp: name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer city_id_pp: name: city_id in: path required: true description: City internal identifier schema: type: integer club_id_pp: name: club_id in: path required: true description: Internal club identifier schema: type: integer confirm_not_duplicate_header: name: x-confirm-not-duplicate in: header required: false description: Confirm the posted element is not a duplicate schema: type: integer data_type_pp: name: data_type in: path required: true description: ERM custom report data type schema: type: string eholdings_package_id_pp: name: package_id in: path required: true description: Package internal identifier schema: type: string eholdings_resource_id_pp: name: resource_id in: path required: true description: Resource internal identifier schema: type: string eholdings_title_id_pp: name: title_id in: path required: true description: Title internal identifier schema: type: integer erm_counter_files_id_pp: name: erm_counter_files_id in: path required: true description: ERM counter_files internal identifier schema: type: integer erm_counter_log_id_pp: name: erm_counter_log_id in: path required: true description: ERM counter_log internal identifier schema: type: integer erm_default_usage_report_id_pp: name: erm_default_usage_report_id in: path required: true description: ERM default_usage_report internal identifier schema: type: integer erm_usage_data_provider_id_pp: name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer framework_id_header: name: x-framework-id in: header required: false description: Framework id. Use when content type is not application/json schema: type: string fund_id_pp: name: fund_id in: path required: true description: Fund id schema: type: integer hold_id_pp: name: hold_id in: path required: true description: Internal hold identifier schema: type: integer identity_provider_domain_id_pp: name: identity_provider_domain_id in: path required: true description: Identity provider domain internal identifier schema: type: integer identity_provider_id_pp: name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer ill_batch_id_pp: name: ill_batch_id in: path required: true description: Internal ILL batch identifier schema: type: integer ill_batchstatus_code_pp: name: ill_batchstatus_code in: path required: true description: Internal ILL batch status identifier schema: type: string import_batch_profile_id_pp: name: import_batch_profile_id in: path required: true description: Internal profile identifier schema: type: integer import_record_id_pp: name: import_record_id in: path required: true description: Internal import record identifier schema: type: integer item_id_pp: name: item_id in: path required: true description: Internal item identifier schema: type: integer item_id_qp: name: item_id in: query required: false description: Internal item identifier schema: type: integer job_id_pp: name: job_id in: path required: true description: Job internal identifier schema: type: integer library_id_pp: name: library_id in: path required: true description: Internal library identifier schema: type: string license_id_pp: name: license_id in: path required: true description: License internal identifier schema: type: integer marc_schema_header: name: x-record-schema in: header required: false description: March schema. One of MARC21 or UNIMARC schema: type: string enum: - MARC21 - UNIMARC match: name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with order_by: name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string order_id_pp: name: order_id in: path required: true description: Internal order identifier schema: type: integer page: name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer patron_id_pp: name: patron_id in: path required: true description: Internal patron identifier schema: type: integer patron_id_qp: name: patron_id in: query required: false description: Internal patron identifier schema: type: integer per_page: name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer preservation_processing_id_pp: name: processing_id in: path required: true description: processing internal identifier schema: type: integer preservation_train_id_pp: name: train_id in: path required: true description: train internal identifier schema: type: integer preservation_train_item_id_pp: name: train_item_id in: path required: true description: train item internal identifier schema: type: integer q_param: name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string quote_id_pp: name: quote_id in: path required: true description: Quote internal identifier schema: type: integer request_id_header: name: x-koha-request-id in: header required: false description: Request id header schema: type: integer search_filter_id_pp: name: search_filter_id in: path required: true description: Search filter internal identifier schema: type: integer seen_pp: name: seen in: query required: false description: Item was seen flag schema: type: integer smtp_server_id_pp: name: smtp_server_id in: path required: true description: SMTP server internal identifier schema: type: integer suggestion_id_pp: name: suggestion_id in: path required: true description: Internal suggestion identifier schema: type: integer swagger_yaml-parameters_advancededitormacro_id_pp: name: advancededitormacro_id in: path required: true description: Advanced editor macro internal identifier schema: type: integer swagger_yaml-parameters_agreement_id_pp: name: agreement_id in: path required: true description: Agreement internal identifier schema: type: integer swagger_yaml-parameters_authority_id_pp: name: authority_id in: path required: true description: Authority identifier schema: type: integer swagger_yaml-parameters_authority_type_header: name: x-authority-type in: header required: false description: Authority type code. Use when content type is not application/json schema: type: string swagger_yaml-parameters_biblio_id_pp: name: biblio_id in: path required: true description: Record internal identifier schema: type: integer swagger_yaml-parameters_booking_id_pp: name: booking_id in: path required: true description: Booking identifier schema: type: integer swagger_yaml-parameters_cash_register_id_pp: name: cash_register_id in: path required: true description: Cash register internal identifier schema: type: integer swagger_yaml-parameters_cashup_id_pp: name: cashup_id in: path required: true description: Cashup internal identifier schema: type: integer swagger_yaml-parameters_checkout_id_pp: name: checkout_id in: path required: true description: Internal checkout identifier schema: type: integer swagger_yaml-parameters_city_id_pp: name: city_id in: path required: true description: City internal identifier schema: type: integer swagger_yaml-parameters_club_id_pp: name: club_id in: path required: true description: Internal club identifier schema: type: integer swagger_yaml-parameters_confirm_not_duplicate_header: name: x-confirm-not-duplicate in: header required: false description: Confirm the posted element is not a duplicate schema: type: integer swagger_yaml-parameters_data_type_pp: name: data_type in: path required: true description: ERM custom report data type schema: type: string swagger_yaml-parameters_eholdings_package_id_pp: name: package_id in: path required: true description: Package internal identifier schema: type: string swagger_yaml-parameters_eholdings_resource_id_pp: name: resource_id in: path required: true description: Resource internal identifier schema: type: string swagger_yaml-parameters_eholdings_title_id_pp: name: title_id in: path required: true description: Title internal identifier schema: type: integer swagger_yaml-parameters_erm_counter_files_id_pp: name: erm_counter_files_id in: path required: true description: ERM counter_files internal identifier schema: type: integer swagger_yaml-parameters_erm_default_usage_report_id_pp: name: erm_default_usage_report_id in: path required: true description: ERM default_usage_report internal identifier schema: type: integer swagger_yaml-parameters_erm_usage_data_provider_id_pp: name: erm_usage_data_provider_id in: path required: true description: ERM usage_data_provider internal identifier schema: type: integer swagger_yaml-parameters_framework_id_header: name: x-framework-id in: header required: false description: Framework id. Use when content type is not application/json schema: type: string swagger_yaml-parameters_hold_id_pp: name: hold_id in: path required: true description: Internal hold identifier schema: type: integer swagger_yaml-parameters_identity_provider_domain_id_pp: name: identity_provider_domain_id in: path required: true description: Identity provider domain internal identifier schema: type: integer swagger_yaml-parameters_identity_provider_id_pp: name: identity_provider_id in: path required: true description: Identity provider internal identifier schema: type: integer swagger_yaml-parameters_ill_batch_id_pp: name: ill_batch_id in: path required: true description: Internal ILL batch identifier schema: type: integer swagger_yaml-parameters_ill_batchstatus_code_pp: name: ill_batchstatus_code in: path required: true description: Internal ILL batch status identifier schema: type: string swagger_yaml-parameters_import_batch_profile_id_pp: name: import_batch_profile_id in: path required: true description: Internal profile identifier schema: type: integer swagger_yaml-parameters_item_id_pp: name: item_id in: path required: true description: Internal item identifier schema: type: integer swagger_yaml-parameters_item_id_qp: name: item_id in: query required: false description: Internal item identifier schema: type: integer swagger_yaml-parameters_job_id_pp: name: job_id in: path required: true description: Job internal identifier schema: type: integer swagger_yaml-parameters_library_id_pp: name: library_id in: path required: true description: Internal library identifier schema: type: string swagger_yaml-parameters_license_id_pp: name: license_id in: path required: true description: License internal identifier schema: type: integer swagger_yaml-parameters_marc_schema_header: name: x-record-schema in: header required: false description: March schema. One of MARC21 or UNIMARC schema: type: string enum: - MARC21 - UNIMARC swagger_yaml-parameters_match: name: _match in: query required: false description: Matching criteria schema: type: string enum: - contains - exact - starts_with - ends_with swagger_yaml-parameters_order_by: name: _order_by in: query required: false description: Sorting criteria schema: type: array items: type: string swagger_yaml-parameters_order_id_pp: name: order_id in: path required: true description: Internal order identifier schema: type: integer swagger_yaml-parameters_page: name: _page in: query required: false description: Page number, for paginated object listing schema: type: integer swagger_yaml-parameters_patron_id_pp: name: patron_id in: path required: true description: Internal patron identifier schema: type: integer swagger_yaml-parameters_patron_id_qp: name: patron_id in: query required: false description: Internal patron identifier schema: type: integer swagger_yaml-parameters_per_page: name: _per_page in: query required: false description: Page size, for paginated object listing schema: type: integer swagger_yaml-parameters_preservation_processing_id_pp: name: processing_id in: path required: true description: processing internal identifier schema: type: integer swagger_yaml-parameters_preservation_train_id_pp: name: train_id in: path required: true description: train internal identifier schema: type: integer swagger_yaml-parameters_preservation_train_item_id_pp: name: train_item_id in: path required: true description: train item internal identifier schema: type: integer swagger_yaml-parameters_q_param: name: q in: query required: false description: Query filter sent as a request parameter style: form explode: true schema: type: array items: type: string swagger_yaml-parameters_quote_id_pp: name: quote_id in: path required: true description: Quote internal identifier schema: type: integer swagger_yaml-parameters_request_id_header: name: x-koha-request-id in: header required: false description: Request id header schema: type: integer swagger_yaml-parameters_search_filter_id_pp: name: search_filter_id in: path required: true description: Search filter internal identifier schema: type: integer swagger_yaml-parameters_seen_pp: name: seen in: query required: false description: Item was seen flag schema: type: integer swagger_yaml-parameters_smtp_server_id_pp: name: smtp_server_id in: path required: true description: SMTP server internal identifier schema: type: integer swagger_yaml-parameters_suggestion_id_pp: name: suggestion_id in: path required: true description: Internal suggestion identifier schema: type: integer swagger_yaml-parameters_ticket_id_pp: name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer swagger_yaml-parameters_transfer_limit_id_pp: name: limit_id in: path required: true description: Internal transfer limit identifier schema: type: string swagger_yaml-parameters_vendor_id_pp: name: vendor_id in: path required: true description: Vendor id schema: type: integer ticket_id_pp: name: ticket_id in: path required: true description: Internal ticket identifier schema: type: integer transfer_limit_id_pp: name: limit_id in: path required: true description: Internal transfer limit identifier schema: type: string vendor_id_pp: name: vendor_id in: path required: true description: Vendor id schema: type: integer