10 Add a bibliographic record to Koha. An optional `x-framework-id`
11 may be passed to specify the cataloguing framework to be used (instead
14 The request body is expected to contain a MARC record in the format specified in
15 the `Content-type` header you pass. Possible values for this header and the corresponding
16 record formats expected are listed below:
18 * application/marcxml+xml: MARCXML
19 * application/marc-in-json: MARC-in-JSON
20 * application/marc: Raw USMARC binary data
22 - $ref: "../swagger.yaml#/parameters/framework_id_header"
23 - $ref: "../swagger.yaml#/parameters/marc_schema_header"
24 - $ref: "../swagger.yaml#/parameters/confirm_not_duplicate_header"
31 description: Bad request
33 $ref: "../swagger.yaml#/definitions/error"
35 description: Authentication required
37 $ref: "../swagger.yaml#/definitions/error"
39 description: Access forbidden
41 $ref: "../swagger.yaml#/definitions/error"
43 description: Not acceptable
46 description: Accepted content-types
51 Internal server error. Possible `error_code` attribute values:
53 * `internal_server_error`
55 $ref: "../swagger.yaml#/definitions/error"
57 description: Under maintenance
59 $ref: "../swagger.yaml#/definitions/error"
62 editcatalogue: edit_catalogue
64 x-mojo-to: Biblios#list
65 operationId: listBiblio
70 - $ref: "../swagger.yaml#/parameters/page"
71 - $ref: "../swagger.yaml#/parameters/per_page"
72 - $ref: "../swagger.yaml#/parameters/match"
73 - $ref: "../swagger.yaml#/parameters/order_by"
74 - $ref: "../swagger.yaml#/parameters/q_param"
75 - $ref: "../swagger.yaml#/parameters/q_body"
76 - $ref: "../swagger.yaml#/parameters/q_header"
77 - $ref: "../swagger.yaml#/parameters/request_id_header"
80 - application/marcxml+xml
81 - application/marc-in-json
86 description: A list of biblios
88 description: Authentication required
90 $ref: "../swagger.yaml#/definitions/error"
92 description: Access forbidden
94 $ref: "../swagger.yaml#/definitions/error"
96 description: Biblio not found
98 $ref: "../swagger.yaml#/definitions/error"
100 description: Not acceptable
103 description: Accepted content-types
108 Internal server error. Possible `error_code` attribute values:
110 * `internal_server_error`
112 $ref: "../swagger.yaml#/definitions/error"
114 description: Under maintenance
116 $ref: "../swagger.yaml#/definitions/error"
117 x-koha-authorization:
120 "/biblios/{biblio_id}":
122 x-mojo-to: Biblios#get
123 operationId: getBiblio
128 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
131 - application/marcxml+xml
132 - application/marc-in-json
137 description: A biblio
139 description: Authentication required
141 $ref: "../swagger.yaml#/definitions/error"
143 description: Access forbidden
145 $ref: "../swagger.yaml#/definitions/error"
147 description: Biblio not found
149 $ref: "../swagger.yaml#/definitions/error"
151 description: Not acceptable
154 description: Accepted content-types
159 Internal server error. Possible `error_code` attribute values:
161 * `internal_server_error`
163 $ref: "../swagger.yaml#/definitions/error"
165 description: Under maintenance
167 $ref: "../swagger.yaml#/definitions/error"
168 x-koha-authorization:
172 x-mojo-to: Biblios#delete
173 operationId: deleteBiblio
176 summary: Delete biblio
178 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
183 description: Biblio deleted
187 description: Authentication required
189 $ref: "../swagger.yaml#/definitions/error"
191 description: Access forbidden
193 $ref: "../swagger.yaml#/definitions/error"
195 description: Biblio not found
197 $ref: "../swagger.yaml#/definitions/error"
199 description: Unable to perform action on biblio
201 $ref: "../swagger.yaml#/definitions/error"
203 description: Internal error
205 $ref: "../swagger.yaml#/definitions/error"
207 description: Under maintenance
209 $ref: "../swagger.yaml#/definitions/error"
210 x-koha-authorization:
212 editcatalogue: edit_catalogue
214 x-mojo-to: Biblios#update
215 operationId: updateBiblio
218 summary: Update biblio
220 Updates a bibliographic record to Koha. An optional `x-framework-id`
221 may be passed, to specify the cataloguing framework to be used (instead
224 The request body is expected to contain a MARC record in the format specified by
225 the `Content-type` header passed. Possible values for this headers and the corresponding
226 record formats expected are listed below:
228 * application/marcxml+xml: MARCXML
229 * application/marc-in-json: MARC-in-JSON
230 * application/marc: Raw USMARC binary data
232 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
233 - $ref: "../swagger.yaml#/parameters/framework_id_header"
234 - $ref: "../swagger.yaml#/parameters/marc_schema_header"
235 - $ref: "../swagger.yaml#/parameters/confirm_not_duplicate_header"
240 description: A biblio
242 description: Bad request
244 $ref: "../swagger.yaml#/definitions/error"
246 description: Authentication required
248 $ref: "../swagger.yaml#/definitions/error"
250 description: Access forbidden
252 $ref: "../swagger.yaml#/definitions/error"
254 description: Biblio not found
256 $ref: "../swagger.yaml#/definitions/error"
258 description: Not acceptable
261 description: Accepted content-types
266 Internal server error. Possible `error_code` attribute values:
268 * `internal_server_error`
270 $ref: "../swagger.yaml#/definitions/error"
272 description: Under maintenance
274 $ref: "../swagger.yaml#/definitions/error"
275 x-koha-authorization:
277 editcatalogue: edit_catalogue
278 "/biblios/{biblio_id}/checkouts":
280 x-mojo-to: Biblios#get_checkouts
281 operationId: listBiblioCheckouts
284 summary: List checkouts for a biblio
286 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
287 - $ref: "../swagger.yaml#/parameters/page"
288 - $ref: "../swagger.yaml#/parameters/per_page"
289 - $ref: "../swagger.yaml#/parameters/match"
290 - $ref: "../swagger.yaml#/parameters/order_by"
291 - $ref: "../swagger.yaml#/parameters/q_param"
292 - $ref: "../swagger.yaml#/parameters/q_body"
293 - $ref: "../swagger.yaml#/parameters/q_header"
294 - $ref: "../swagger.yaml#/parameters/request_id_header"
298 description: Embed list sent as a request header
307 collectionFormat: csv
310 description: By default, current checkouts are returned, when this is true then
311 checked in checkouts are returned as result.
317 description: A list of checkouts
319 $ref: "../swagger.yaml#/definitions/checkouts"
321 description: Access forbidden
323 $ref: "../swagger.yaml#/definitions/error"
325 description: Biblio not found
327 $ref: "../swagger.yaml#/definitions/error"
330 Internal server error. Possible `error_code` attribute values:
332 * `internal_server_error`
334 $ref: "../swagger.yaml#/definitions/error"
336 description: Under maintenance
338 $ref: "../swagger.yaml#/definitions/error"
339 x-koha-authorization:
341 circulate: circulate_remaining_permissions
342 "/biblios/{biblio_id}/items":
344 x-mojo-to: Biblios#get_items
345 operationId: getBiblioItems
348 summary: Get items for a biblio
350 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
354 description: Embed list sent as a request header
360 collectionFormat: csv
361 - $ref: "../swagger.yaml#/parameters/match"
362 - $ref: "../swagger.yaml#/parameters/order_by"
363 - $ref: "../swagger.yaml#/parameters/page"
364 - $ref: "../swagger.yaml#/parameters/per_page"
365 - $ref: "../swagger.yaml#/parameters/q_param"
366 - $ref: "../swagger.yaml#/parameters/q_body"
367 - $ref: "../swagger.yaml#/parameters/q_header"
368 - $ref: "../swagger.yaml#/parameters/request_id_header"
375 description: A list of the items attached to the record
379 $ref: "../swagger.yaml#/definitions/item"
381 description: Authentication required
383 $ref: "../swagger.yaml#/definitions/error"
385 description: Access forbidden
387 $ref: "../swagger.yaml#/definitions/error"
389 description: Biblio not found
391 $ref: "../swagger.yaml#/definitions/error"
393 description: Not acceptable
396 description: Accepted content-types
401 Internal server error. Possible `error_code` attribute values:
403 * `internal_server_error`
405 $ref: "../swagger.yaml#/definitions/error"
407 description: Under maintenance
409 $ref: "../swagger.yaml#/definitions/error"
410 x-koha-authorization:
413 "/biblios/{biblio_id}/pickup_locations":
415 x-mojo-to: Biblios#pickup_locations
416 operationId: getBiblioPickupLocations
419 summary: Get valid pickup locations for a biblio
421 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
424 description: Internal patron identifier
427 - $ref: "../swagger.yaml#/parameters/match"
428 - $ref: "../swagger.yaml#/parameters/order_by"
429 - $ref: "../swagger.yaml#/parameters/page"
430 - $ref: "../swagger.yaml#/parameters/per_page"
431 - $ref: "../swagger.yaml#/parameters/q_param"
432 - $ref: "../swagger.yaml#/parameters/q_body"
433 - $ref: "../swagger.yaml#/parameters/q_header"
440 description: Biblio pickup locations
444 $ref: "../swagger.yaml#/definitions/library"
446 description: Missing or wrong parameters
448 $ref: "../swagger.yaml#/definitions/error"
450 description: Authentication required
452 $ref: "../swagger.yaml#/definitions/error"
454 description: Access forbidden
456 $ref: "../swagger.yaml#/definitions/error"
458 description: Biblio not found
460 $ref: "../swagger.yaml#/definitions/error"
463 Internal server error. Possible `error_code` attribute values:
465 * `internal_server_error`
467 $ref: "../swagger.yaml#/definitions/error"
469 description: Under maintenance
471 $ref: "../swagger.yaml#/definitions/error"
472 x-koha-authorization:
474 reserveforothers: place_holds
475 "/public/biblios/{biblio_id}":
477 x-mojo-to: Biblios#get_public
478 operationId: getBiblioPublic
481 summary: Get biblio (public)
483 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
485 - application/marcxml+xml
486 - application/marc-in-json
491 description: A biblio
493 description: Authentication required
495 $ref: "../swagger.yaml#/definitions/error"
497 description: Access forbidden
499 $ref: "../swagger.yaml#/definitions/error"
501 description: Biblio not found
503 $ref: "../swagger.yaml#/definitions/error"
505 description: Not acceptable
508 description: Accepted content-types
513 Internal server error. Possible `error_code` attribute values:
515 * `internal_server_error`
517 $ref: "../swagger.yaml#/definitions/error"
519 description: Under maintenance
521 $ref: "../swagger.yaml#/definitions/error"
522 "/public/biblios/{biblio_id}/items":
524 x-mojo-to: Biblios#get_items_public
525 operationId: getBiblioItemsPublic
530 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
531 - $ref: "../swagger.yaml#/parameters/match"
532 - $ref: "../swagger.yaml#/parameters/order_by"
533 - $ref: "../swagger.yaml#/parameters/page"
534 - $ref: "../swagger.yaml#/parameters/per_page"
535 - $ref: "../swagger.yaml#/parameters/q_param"
536 - $ref: "../swagger.yaml#/parameters/q_body"
537 - $ref: "../swagger.yaml#/parameters/q_header"
544 description: A list of the items attached to the record
548 $ref: "../swagger.yaml#/definitions/item"
550 description: Authentication required
552 $ref: "../swagger.yaml#/definitions/error"
554 description: Access forbidden
556 $ref: "../swagger.yaml#/definitions/error"
558 description: Biblio not found
560 $ref: "../swagger.yaml#/definitions/error"
562 description: Not acceptable
565 description: Accepted content-types
570 Internal server error. Possible `error_code` attribute values:
572 * `internal_server_error`
574 $ref: "../swagger.yaml#/definitions/error"
576 description: Under maintenance
578 $ref: "../swagger.yaml#/definitions/error"
579 "/public/biblios/{biblio_id}/ratings":
581 x-mojo-to: Biblios#set_rating
582 operationId: setBiblioRating
585 summary: set biblio rating (public)
587 - $ref: "../swagger.yaml#/parameters/biblio_id_pp"
590 description: A JSON object containing rating information
595 description: the rating
601 additionalProperties: false
606 description: Rating set
611 description: user's rating
616 description: average rating
619 description: number of ratings
621 additionalProperties: false
623 description: Authentication required
625 $ref: "../swagger.yaml#/definitions/error"
627 description: Access forbidden
629 $ref: "../swagger.yaml#/definitions/error"
631 description: Biblio not found
633 $ref: "../swagger.yaml#/definitions/error"
636 Internal server error. Possible `error_code` attribute values:
638 * `internal_server_error`
640 $ref: "../swagger.yaml#/definitions/error"
642 description: Under maintenance
644 $ref: "../swagger.yaml#/definitions/error"