Bug 30708: Remove q_header from specs
[koha.git] / api / v1 / swagger / paths / preservation_processings.yaml
1 ---
2 /preservation/processings:
3   get:
4     x-mojo-to: Preservation::Processings#list
5     operationId: listPreservationProcessings
6     tags:
7       - preservation_processing
8     summary: List processings
9     produces:
10       - application/json
11     parameters:
12       - description: Case insensitive search on processing id
13         in: query
14         name: processing_id
15         required: false
16         type: integer
17       - description: Case insensitive search on processing name
18         in: query
19         name: name
20         required: false
21         type: string
22       - $ref: "../swagger.yaml#/parameters/match"
23       - $ref: "../swagger.yaml#/parameters/order_by"
24       - $ref: "../swagger.yaml#/parameters/page"
25       - $ref: "../swagger.yaml#/parameters/per_page"
26       - $ref: "../swagger.yaml#/parameters/q_param"
27       - $ref: "../swagger.yaml#/parameters/q_body"
28     responses:
29       200:
30         description: A list of processings
31         schema:
32           items:
33             $ref: "../swagger.yaml#/definitions/preservation_processing"
34           type: array
35       400:
36         description: Bad request
37         schema:
38           $ref: "../swagger.yaml#/definitions/error"
39       403:
40         description: Access forbidden
41         schema:
42           $ref: "../swagger.yaml#/definitions/error"
43       500:
44         description: |-
45           Internal server error. Possible `error_code` attribute values:
46           * `internal_server_error`
47         schema:
48           $ref: "../swagger.yaml#/definitions/error"
49       503:
50         description: Under maintenance
51         schema:
52           $ref: "../swagger.yaml#/definitions/error"
53     x-koha-authorization:
54       permissions:
55         preservation: 1
56   post:
57     x-mojo-to: Preservation::Processings#add
58     operationId: addPreservationProcessings
59     tags:
60       - preservation_processing
61     summary: Add processing
62     consumes:
63       - application/json
64     produces:
65       - application/json
66     parameters:
67       - description: A JSON object containing information about the new processing
68         in: body
69         name: body
70         required: true
71         schema:
72             $ref: "../swagger.yaml#/definitions/preservation_processing"
73     responses:
74       201:
75         description: A successfully created processing
76         schema:
77           items:
78             $ref: "../swagger.yaml#/definitions/preservation_processing"
79       400:
80         description: Bad parameter
81         schema:
82           $ref: "../swagger.yaml#/definitions/error"
83       401:
84         description: Authentication required
85         schema:
86           $ref: "../swagger.yaml#/definitions/error"
87       403:
88         description: Access forbidden
89         schema:
90           $ref: "../swagger.yaml#/definitions/error"
91       404:
92         description: Ressource not found
93         schema:
94           $ref: "../swagger.yaml#/definitions/error"
95       409:
96         description: Conflict in creating resource
97         schema:
98           $ref: "../swagger.yaml#/definitions/error"
99       413:
100         description: Payload too large
101         schema:
102           $ref: "../swagger.yaml#/definitions/error"
103       500:
104         description: |-
105           Internal server error. Possible `error_code` attribute values:
106           * `internal_server_error`
107         schema:
108           $ref: "../swagger.yaml#/definitions/error"
109       503:
110         description: Under maintenance
111         schema:
112           $ref: "../swagger.yaml#/definitions/error"
113     x-koha-authorization:
114       permissions:
115         preservation: 1
116 "/preservation/processings/{processing_id}":
117   get:
118     x-mojo-to: Preservation::Processings#get
119     operationId: getPreservationProcessings
120     tags:
121       - preservation_processing
122     summary: Get processing
123     produces:
124       - application/json
125     parameters:
126       - $ref: "../swagger.yaml#/parameters/preservation_processing_id_pp"
127       - name: x-koha-embed
128         in: header
129         required: false
130         description: Embed list sent as a request header
131         type: array
132         items:
133           type: string
134           enum:
135             - attributes
136         collectionFormat: csv
137     responses:
138       200:
139         description: A processing
140         schema:
141           items:
142             $ref: "../swagger.yaml#/definitions/preservation_processing"
143       401:
144         description: Authentication required
145         schema:
146           $ref: "../swagger.yaml#/definitions/error"
147       403:
148         description: Access forbidden
149         schema:
150           $ref: "../swagger.yaml#/definitions/error"
151       404:
152         description: Ressource not found
153         schema:
154           $ref: "../swagger.yaml#/definitions/error"
155       500:
156         description: |-
157           Internal server error. Possible `error_code` attribute values:
158           * `internal_server_error`
159         schema:
160           $ref: "../swagger.yaml#/definitions/error"
161       503:
162         description: Under maintenance
163         schema:
164           $ref: "../swagger.yaml#/definitions/error"
165     x-koha-authorization:
166       permissions:
167         preservation: 1
168   put:
169     x-mojo-to: Preservation::Processings#update
170     operationId: updatePreservationProcessings
171     tags:
172       - preservation_processing
173     summary: Update processing
174     consumes:
175       - application/json
176     produces:
177       - application/json
178     parameters:
179       - $ref: "../swagger.yaml#/parameters/preservation_processing_id_pp"
180       - name: body
181         in: body
182         description: A JSON object containing new information about existing processing
183         required: true
184         schema:
185           $ref: "../swagger.yaml#/definitions/preservation_processing"
186
187     responses:
188       200:
189         description: A successfully updated processing
190         schema:
191           items:
192             $ref: "../swagger.yaml#/definitions/preservation_processing"
193       400:
194         description: Bad parameter
195         schema:
196           $ref: "../swagger.yaml#/definitions/error"
197       403:
198         description: Access forbidden
199         schema:
200           $ref: "../swagger.yaml#/definitions/error"
201       404:
202         description: Ressource not found
203         schema:
204           $ref: "../swagger.yaml#/definitions/error"
205       409:
206         description: Conflict in updating resource
207         schema:
208           $ref: "../swagger.yaml#/definitions/error"
209       413:
210         description: Payload too large
211         schema:
212           $ref: "../swagger.yaml#/definitions/error"
213       500:
214         description: |-
215           Internal server error. Possible `error_code` attribute values:
216           * `internal_server_error`
217         schema:
218           $ref: "../swagger.yaml#/definitions/error"
219       503:
220         description: Under maintenance
221         schema:
222           $ref: "../swagger.yaml#/definitions/error"
223     x-koha-authorization:
224       permissions:
225         preservation: 1
226   delete:
227     x-mojo-to: Preservation::Processings#delete
228     operationId: deletePreservationProcessings
229     tags:
230       - preservation_processing
231     summary: Delete processing
232     produces:
233       - application/json
234     parameters:
235       - $ref: "../swagger.yaml#/parameters/preservation_processing_id_pp"
236     responses:
237       204:
238         description: processing deleted
239       400:
240         description: processing deletion failed
241         schema:
242           $ref: "../swagger.yaml#/definitions/error"
243       401:
244         description: Authentication required
245         schema:
246           $ref: "../swagger.yaml#/definitions/error"
247       403:
248         description: Access forbidden
249         schema:
250           $ref: "../swagger.yaml#/definitions/error"
251       404:
252         description: Ressource not found
253         schema:
254           $ref: "../swagger.yaml#/definitions/error"
255       409:
256         description: Conflict in deleting resource
257         schema:
258           $ref: "../swagger.yaml#/definitions/error"
259       500:
260         description: |-
261           Internal server error. Possible `error_code` attribute values:
262           * `internal_server_error`
263         schema:
264           $ref: "../swagger.yaml#/definitions/error"
265       503:
266         description: Under maintenance
267         schema:
268           $ref: "../swagger.yaml#/definitions/error"
269     x-koha-authorization:
270       permissions:
271         preservation: 1