@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Ex Libris APIs
@base https://api-eu.hosted.exlibrisgroup.com
@version 1.0
@auth ApiKey apikey in query
@endpoints 11
@toc almaws(11)

@endpoint GET /almaws/v1/task-lists/printouts
@desc Retrieve Printouts
@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.}
@returns(200) OK - This method returns an object based on rest_printouts.xsd. See [here](/alma/apis/docs/xsd/rest_printouts.xsd)
@errors {400: Bad Request  401666|40166410 - 'Invalid parameter.', 500: Internal Server Error}

@endpoint POST /almaws/v1/task-lists/printouts
@desc Act on Printouts
@required {op: str # The operation to perform on the printout. Currently, the options are: 'mark_as_printed','mark_as_canceled'}
@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}
@returns(200) OK - This method returns an object based on rest_printouts.xsd. See [here](/alma/apis/docs/xsd/rest_printouts.xsd)
@errors {400: Bad Request  401666|40166410 - 'Invalid parameter.', 500: Internal Server Error}

@endpoint POST /almaws/v1/task-lists/printouts/create
@desc Create a Printout
@returns(200) OK - This method returns an object based on rest_printout.xsd. See [here](/alma/apis/docs/xsd/rest_printout.xsd)
@errors {400: Bad Request, 500: Internal Server Error}

@endpoint GET /almaws/v1/task-lists/printouts/{printout_id}
@desc Retrieve a Printout
@required {printout_id: str # The Printout ID}
@returns(200) OK - This method returns an object based on rest_printout.xsd. See [here](/alma/apis/docs/xsd/rest_printout.xsd)
@errors {400: Bad Request  402896 - 'Invalid printout ID.', 500: Internal Server Error}

@endpoint POST /almaws/v1/task-lists/printouts/{printout_id}
@desc Printout Service
@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'}
@returns(200) OK - This method returns an object based on rest_printout.xsd. See [here](/alma/apis/docs/xsd/rest_printout.xsd)
@errors {400: Bad Request  402896 - 'Invalid printout ID.'  40166410 - 'Invalid parameter.'  40166412 - 'Failed to perform action.', 500: Internal Server Error}

@endpoint GET /almaws/v1/task-lists/requested-resources
@desc Get Requested Resources
@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.}
@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.}
@returns(200) OK - This method returns an object based on rest_requested_resources.xsd. See [here](/alma/apis/docs/xsd/rest_requested_resources.xsd)
@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}

@endpoint POST /almaws/v1/task-lists/requested-resources
@desc Act on Requested Resources
@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.}
@returns(200) OK - This method returns an object based on rest_requested_resources.xsd. See [here](/alma/apis/docs/xsd/rest_requested_resources.xsd)
@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}

@endpoint GET /almaws/v1/task-lists/rs/lending-requests
@desc Get Lending Requests
@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).}
@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)
@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}

@endpoint POST /almaws/v1/task-lists/rs/lending-requests
@desc Act on Lending Requests
@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).}
@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)
@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}

@endpoint GET /almaws/v1/task-lists/test
@desc GET Task-lists Test API
@returns(200) OK
@errors {400: Bad Request, 500: Internal Server Error}

@endpoint POST /almaws/v1/task-lists/test
@desc POST Task-lists Test API
@returns(200) OK
@errors {400: Bad Request, 500: Internal Server Error}

@end
