{"files":{"SKILL.md":"---\nname: ex-libris-apis\ndescription: \"Ex Libris APIs API skill. Use when working with Ex Libris APIs for almaws. Covers 11 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Ex Libris APIs\nAPI version: 1.0\n\n## Auth\nApiKey apikey in query\n\n## Base URL\nhttps://api-eu.hosted.exlibrisgroup.com\n\n## Setup\n1. Set your API key in the appropriate header\n2. GET /almaws/v1/task-lists/printouts -- retrieve printouts\n3. POST /almaws/v1/task-lists/printouts -- create first printout\n\n## Endpoints\n11 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Almaws\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /almaws/v1/task-lists/printouts | Retrieve Printouts |\n| POST | /almaws/v1/task-lists/printouts | Act on Printouts |\n| POST | /almaws/v1/task-lists/printouts/create | Create a Printout |\n| GET | /almaws/v1/task-lists/printouts/{printout_id} | Retrieve a Printout |\n| POST | /almaws/v1/task-lists/printouts/{printout_id} | Printout Service |\n| GET | /almaws/v1/task-lists/requested-resources | Get Requested Resources |\n| POST | /almaws/v1/task-lists/requested-resources | Act on Requested Resources |\n| GET | /almaws/v1/task-lists/rs/lending-requests | Get Lending Requests |\n| POST | /almaws/v1/task-lists/rs/lending-requests | Act on Lending Requests |\n| GET | /almaws/v1/task-lists/test | GET Task-lists Test API |\n| POST | /almaws/v1/task-lists/test | POST Task-lists Test API |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all printouts?\" -> GET /almaws/v1/task-lists/printouts\n- \"Create a printout?\" -> POST /almaws/v1/task-lists/printouts\n- \"Create a create?\" -> POST /almaws/v1/task-lists/printouts/create\n- \"Get printout details?\" -> GET /almaws/v1/task-lists/printouts/{printout_id}\n- \"List all requested-resources?\" -> GET /almaws/v1/task-lists/requested-resources\n- \"Create a requested-resource?\" -> POST /almaws/v1/task-lists/requested-resources\n- \"List all lending-requests?\" -> GET /almaws/v1/task-lists/rs/lending-requests\n- \"Create a lending-request?\" -> POST /almaws/v1/task-lists/rs/lending-requests\n- \"List all test?\" -> GET /almaws/v1/task-lists/test\n- \"Create a test?\" -> POST /almaws/v1/task-lists/test\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Paginated endpoints accept limit/offset or cursor parameters\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Ex Libris APIs\n@base https://api-eu.hosted.exlibrisgroup.com\n@version 1.0\n@auth ApiKey apikey in query\n@endpoints 11\n@toc almaws(11)\n\n@endpoint GET /almaws/v1/task-lists/printouts\n@desc Retrieve Printouts\n@optional {letter: str=ALL # Printout Name. Optional., status: str=ALL # Printout status. Optional. Valid values are: Printed, Pending, Canceled., printer_id: str=ALL # Printout Printer, printed_by: str=ALL # Printed by: ALL/ME. This field is relevant when using the API from within Cloud Apps., printout_id: str=ALL # A list of Printout IDs (for example: 123,456,778) from 1 to the limit of 100 Optional. Use of this option overrides all of the filtering parameters, limit: int=10 # Limits the number of results. Optional. Valid values are 0-100. Default value: 10., offset: int=0 # Offset of the results returned. Optional. Default value: 0, which means that the first results will be returned.}\n@returns(200) OK - This method returns an object based on rest_printouts.xsd. See [here](/alma/apis/docs/xsd/rest_printouts.xsd)\n@errors {400: Bad Request  401666|40166410 - 'Invalid parameter.', 500: Internal Server Error}\n\n@endpoint POST /almaws/v1/task-lists/printouts\n@desc Act on Printouts\n@required {op: str # The operation to perform on the printout. Currently, the options are: 'mark_as_printed','mark_as_canceled'}\n@optional {letter: str=ALL # Printout Name. Optional., status: str=ALL # Printout status. Optional. Valid values are: Printed, Pending, Canceled., printer_id: str=ALL # Printout Printer, printed_by: str=ALL # Printed by: ALL/ME. This field is relevant when using the API from within Cloud Apps., printout_id: str=ALL # A list of Printout IDs (for example: 123,456,778) from 1 to the limit of 100 Optional. Use of this option overrides all of the filtering parameters}\n@returns(200) OK - This method returns an object based on rest_printouts.xsd. See [here](/alma/apis/docs/xsd/rest_printouts.xsd)\n@errors {400: Bad Request  401666|40166410 - 'Invalid parameter.', 500: Internal Server Error}\n\n@endpoint POST /almaws/v1/task-lists/printouts/create\n@desc Create a Printout\n@returns(200) OK - This method returns an object based on rest_printout.xsd. See [here](/alma/apis/docs/xsd/rest_printout.xsd)\n@errors {400: Bad Request, 500: Internal Server Error}\n\n@endpoint GET /almaws/v1/task-lists/printouts/{printout_id}\n@desc Retrieve a Printout\n@required {printout_id: str # The Printout ID}\n@returns(200) OK - This method returns an object based on rest_printout.xsd. See [here](/alma/apis/docs/xsd/rest_printout.xsd)\n@errors {400: Bad Request  402896 - 'Invalid printout ID.', 500: Internal Server Error}\n\n@endpoint POST /almaws/v1/task-lists/printouts/{printout_id}\n@desc Printout Service\n@required {printout_id: str # The Printout ID, op: str # The operation to perform on the printout. Currently, the options are 'mark_as_printed','mark_as_canceled'}\n@returns(200) OK - This method returns an object based on rest_printout.xsd. See [here](/alma/apis/docs/xsd/rest_printout.xsd)\n@errors {400: Bad Request  402896 - 'Invalid printout ID.'  40166410 - 'Invalid parameter.'  40166412 - 'Failed to perform action.', 500: Internal Server Error}\n\n@endpoint GET /almaws/v1/task-lists/requested-resources\n@desc Get Requested Resources\n@required {library: str # The library of the given circulation desk or department where the resources are located. Mandatory., circ_desk: str # The circulation desk where the action is being performed. Mandatory.}\n@optional {location: str= # The location code. Optional., order_by: str=call_number # The order in which to retrieve the results: location/call_number (default)., direction: str=asc # The order direction in which to retrieve the results. Optional., pickup_inst: str= # The pickup institution. Optional., reported: str= # Show reported results: Y/N. Optional., printed: str= # Show printed results: Y/N. Optional., limit: int=10 # Limits the number of results. Optional. Valid values are 0-100. Default value: 10., offset: int=0 # Offset of the results returned. Optional. Default value: 0, which means that the first results will be returned.}\n@returns(200) OK - This method returns an object based on rest_requested_resources.xsd. See [here](/alma/apis/docs/xsd/rest_requested_resources.xsd)\n@errors {400: Bad Request  402119 - 'General error.'  401664 - 'Mandatory field is missing: X.'  40166414 - 'The parameter 'X' is mandatory. Valid options are: Y.', 500: Internal Server Error}\n\n@endpoint POST /almaws/v1/task-lists/requested-resources\n@desc Act on Requested Resources\n@optional {library: str= # The library of the given circulation desk or department where the resources are located. Mandatory., circ_desk: str= # The circulation desk where the action is being performed. Mandatory., op: str= # Operation to be preformed on the list of given requests. Currently the only supported action is 'mark_reported'. Mandatory., location: str= # The location code. Optional., pickup_inst: str= # The pickup institution. Optional., reported: str= # Show reported results: Y/N. Optional., printed: str= # Show printed results: Y/N. Optional.}\n@returns(200) OK - This method returns an object based on rest_requested_resources.xsd. See [here](/alma/apis/docs/xsd/rest_requested_resources.xsd)\n@errors {400: Bad Request  402119 - 'General error.'  401664 - 'Mandatory field is missing: X.'  40166414 - 'The parameter 'X' is mandatory. Valid options are: Y.', 500: Internal Server Error}\n\n@endpoint GET /almaws/v1/task-lists/rs/lending-requests\n@desc Get Lending Requests\n@optional {library: str= # The resource sharing library for which lending requests should be retrieved. Mandatory. List of possible libraries can be retrieved using the [GET /almaws/v1/conf/libraries API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4Dp4I8TKv6CAxBlD4LyRaVE=/37088dc9-c685-4641-bc7f-60b5ca7cabed)., status: str= # The status of lending requests to retrieve. Optional. List of possible statuses can be retrieved using the [GET almaws/v1/conf/code-tables/MandatoryLendingWorkflowSteps API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed) and the  [GET almaws/v1/conf/code-tables/OptionalLendingWorkflowSteps API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed)., printed: str= # The 'printed' value of lending requests to retrieve. Optional. Possible values: Y, N., reported: str= # The 'reported' value of lending requests to retrieve. Optional. Possible values: Y, N., partner: str= # The partner value. Only lending requests from this partner should be retrieved. Optional. List of possible partners can be retrieved using the [GET almaws/v1/partners API](https://developers.exlibrisgroup.com/alma/apis/partners/GET/gwPcGly021piAVNPLaef7suP1zfa6Lui/8883ef41-c3b8-4792-9ff8-cb6b729d6e07)., requested_format: str= # Requested format of the resource. Optional. List of possible formats can be retrieved using the [GET almaws/v1/conf/code-tables/RequestFormats API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed)., supplied_format: str= # Supplied Format of the resource. Optional. List of possible formats can be retrieved using the [GET almaws/v1/conf/code-tables/RequestFormats API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed).}\n@returns(200) OK - This method returns an object based on rest_user_resource_sharing_requests.xsd. See [here](/alma/apis/docs/xsd/rest_user_resource_sharing_requests.xsd)\n@errors {400: Bad Request  402119 - 'General error.'  401664 - 'Mandatory field is missing: X.'  40166414 - 'The parameter 'X' is mandatory. Valid options are: Y.', 500: Internal Server Error}\n\n@endpoint POST /almaws/v1/task-lists/rs/lending-requests\n@desc Act on Lending Requests\n@optional {library: str= # The resource sharing library from which lending requests should be retrieved. Mandatory. List of possible libraries can be retrieved using the [GET /almaws/v1/conf/libraries API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4Dp4I8TKv6CAxBlD4LyRaVE=/37088dc9-c685-4641-bc7f-60b5ca7cabed)., op: str= # Operation to be preformed on the list of given requests. Currently the only supported action is 'mark_reported'. Mandatory., status: str= # The status of lending requests to retrieve. Optional. List of possible statuses can be retrieved using the [GET almaws/v1/conf/code-tables/MandatoryLendingWorkflowSteps API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed).and the  [GET almaws/v1/conf/code-tables/OptionalLendingWorkflowSteps API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed)., printed: str= # The 'printed' value of lending requests to retrieve. Optional. Possible values: Y, N., reported: str= # The 'reported' value of lending requests to retrieve. Optional. Possible values: Y, N., partner: str= # The partner value. Only lending requests from this partner should be. Optional. List of possible partners can be retrieved using the [GET almaws/v1/partners API](https://developers.exlibrisgroup.com/alma/apis/partners/GET/gwPcGly021piAVNPLaef7suP1zfa6Lui/8883ef41-c3b8-4792-9ff8-cb6b729d6e07)., requested_format: str= # Requested format of the resource. Optional. List of possible formats can be retrieved using the [GET almaws/v1/conf/code-tables/RequestFormats API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed)., supplied_format: str= # Supplied Format of the resource. Optional. List of possible formats can be retrieved using the [GET almaws/v1/conf/code-tables/RequestFormats API](https://developers.exlibrisgroup.com/alma/apis/conf/GET/gwPcGly021p29HpB7XTI4K7cQ0vuYHLS4NSgDGmcRpRYqx5hIMRTng9SIKO5Vof+/37088dc9-c685-4641-bc7f-60b5ca7cabed).}\n@returns(200) OK - This method returns an object based on rest_user_resource_sharing_request.xsd. See [here](/alma/apis/docs/xsd/rest_user_resource_sharing_request.xsd)\n@errors {400: Bad Request  402119 - 'General error.'  401666 - 'X parameter is not valid.'  401664 - 'Mandatory field is missing: X.'  40166414 - 'The parameter 'X' is mandatory. Valid options are: Y.', 500: Internal Server Error}\n\n@endpoint GET /almaws/v1/task-lists/test\n@desc GET Task-lists Test API\n@returns(200) OK\n@errors {400: Bad Request, 500: Internal Server Error}\n\n@endpoint POST /almaws/v1/task-lists/test\n@desc POST Task-lists Test API\n@returns(200) OK\n@errors {400: Bad Request, 500: Internal Server Error}\n\n@end\n"}}