Bug 35353: Add REST API endpoint to retrieve old holds
[koha.git] / api / v1 / swagger / paths / patrons_holds.yaml
1 ---
2 "/patrons/{patron_id}/holds":
3   get:
4     x-mojo-to: Patrons::Holds#list
5     operationId: getPatronHolds
6     tags:
7       - holds
8     summary: List holds for a patron
9     parameters:
10       - $ref: "../swagger.yaml#/parameters/patron_id_pp"
11       - $ref: "../swagger.yaml#/parameters/match"
12       - $ref: "../swagger.yaml#/parameters/order_by"
13       - $ref: "../swagger.yaml#/parameters/page"
14       - $ref: "../swagger.yaml#/parameters/per_page"
15       - $ref: "../swagger.yaml#/parameters/q_param"
16       - $ref: "../swagger.yaml#/parameters/q_body"
17       - $ref: "../swagger.yaml#/parameters/request_id_header"
18       - name: old
19         in: query
20         description: By default, current holds are returned, when this is true then
21           old holds are returned as result.
22         type: boolean
23       - name: x-koha-embed
24         in: header
25         required: false
26         description: Embed list sent as a request header
27         type: array
28         items:
29           type: string
30           enum:
31             - cancellation_requested
32             - biblio
33             - item
34             - pickup_library
35             - pickup_library.branchname
36         collectionFormat: csv
37     produces:
38       - application/json
39     responses:
40       "200":
41         description: The patron holds
42         schema:
43           type: array
44           items:
45             $ref: "../swagger.yaml#/definitions/hold"
46       "401":
47         description: Authentication required
48         schema:
49           $ref: "../swagger.yaml#/definitions/error"
50       "403":
51         description: Access forbidden
52         schema:
53           $ref: "../swagger.yaml#/definitions/error"
54       "404":
55         description: Patron not found
56         schema:
57           $ref: "../swagger.yaml#/definitions/error"
58       "500":
59         description: |
60           Internal server error. Possible `error_code` attribute values:
61
62           * `internal_server_error`
63         schema:
64           $ref: "../swagger.yaml#/definitions/error"
65       "503":
66         description: Under maintenance
67         schema:
68           $ref: "../swagger.yaml#/definitions/error"
69     x-koha-authorization:
70       permissions:
71         borrowers: edit_borrowers