6 $ref: ./definitions/account_line.yaml
8 $ref: ./definitions/advancededitormacro.yaml
10 $ref: ./definitions/allows_renewal.yaml
12 $ref: ./definitions/authorised_value.yaml
13 authorised_value_category:
14 $ref: ./definitions/authorised_value_category.yaml
16 "$ref": ./definitions/identity_provider.yaml
17 identity_provider_domain:
18 "$ref": ./definitions/identity_provider_domain.yaml
20 $ref: ./definitions/basket.yaml
22 $ref: ./definitions/bundle_link.yaml
24 $ref: ./definitions/cashup.yaml
26 $ref: ./definitions/checkout.yaml
28 $ref: ./definitions/checkouts.yaml
30 $ref: ./definitions/circ-rule-kind.yaml
32 $ref: ./definitions/city.yaml
34 $ref: ./definitions/credit.yaml
36 $ref: ./definitions/debit.yaml
38 $ref: ./definitions/erm_agreement.yaml
40 $ref: ./definitions/erm_eholdings_title.yaml
41 erm_eholdings_package:
42 $ref: ./definitions/erm_eholdings_package.yaml
43 erm_eholdings_resource:
44 $ref: ./definitions/erm_eholdings_resource.yaml
46 $ref: ./definitions/erm_license.yaml
48 $ref: ./definitions/error.yaml
50 $ref: ./definitions/fund.yaml
52 $ref: ./definitions/hold.yaml
54 $ref: ./definitions/holds.yaml
56 $ref: ./definitions/ill_backend.yaml
58 $ref: ./definitions/ill_backends.yaml
60 $ref: ./definitions/ill_status.yaml
62 $ref: ./definitions/ill_request.yaml
64 $ref: ./definitions/import_batch_profile.yaml
65 import_batch_profiles:
66 $ref: ./definitions/import_batch_profiles.yaml
68 $ref: ./definitions/import_record_match.yaml
70 $ref: ./definitions/invoice.yaml
72 $ref: ./definitions/item.yaml
74 $ref: ./definitions/item_group.yaml
76 $ref: ./definitions/job.yaml
78 $ref: ./definitions/library.yaml
80 $ref: ./definitions/order.yaml
82 $ref: ./definitions/patron.yaml
83 patron_account_credit:
84 $ref: ./definitions/patron_account_credit.yaml
86 $ref: ./definitions/patron_balance.yaml
87 patron_extended_attribute:
88 $ref: ./definitions/patron_extended_attribute.yaml
90 $ref: ./definitions/quote.yaml
92 $ref: ./definitions/renewal.yaml
94 $ref: ./definitions/renewals.yaml
96 $ref: ./definitions/return_claim.yaml
98 $ref: ./definitions/search_filter.yaml
100 $ref: ./definitions/smtp_server.yaml
102 $ref: ./definitions/suggestion.yaml
104 $ref: ./definitions/ticket.yaml
106 $ref: ./definitions/ticket_update.yaml
108 $ref: ./definitions/transfer_limit.yaml
110 $ref: ./definitions/vendor.yaml
112 /acquisitions/baskets/managers:
113 $ref: paths/acquisitions_baskets.yaml#/~1acquisitions~1baskets~1managers
115 $ref: ./paths/acquisitions_funds.yaml#/~1acquisitions~1funds
116 /acquisitions/funds/owners:
117 $ref: paths/acquisitions_funds.yaml#/~1acquisitions~1funds~1owners
118 /acquisitions/funds/users:
119 $ref: paths/acquisitions_funds.yaml#/~1acquisitions~1funds~1users
120 /acquisitions/orders:
121 $ref: ./paths/acquisitions_orders.yaml#/~1acquisitions~1orders
122 "/acquisitions/orders/{order_id}":
123 $ref: "./paths/acquisitions_orders.yaml#/~1acquisitions~1orders~1{order_id}"
124 /acquisitions/vendors:
125 $ref: ./paths/acquisitions_vendors.yaml#/~1acquisitions~1vendors
126 "/acquisitions/vendors/{vendor_id}":
127 $ref: "./paths/acquisitions_vendors.yaml#/~1acquisitions~1vendors~1{vendor_id}"
128 /advanced_editor/macros:
129 $ref: ./paths/advancededitormacros.yaml#/~1advanced_editor~1macros
130 /advanced_editor/macros/shared:
131 $ref: ./paths/advancededitormacros.yaml#/~1advanced_editor~1macros~1shared
133 $ref: ./paths/search_filters.yaml#/~1search_filters
134 "/search_filters/{search_filter_id}":
135 $ref: "./paths/search_filters.yaml#/~1search_filters~1{search_filter_id}"
136 "/advanced_editor/macros/shared/{advancededitormacro_id}":
137 $ref: "./paths/advancededitormacros.yaml#/~1advanced_editor~1macros~1shared~1{advancededitormacro_id}"
138 "/advanced_editor/macros/{advancededitormacro_id}":
139 $ref: "./paths/advancededitormacros.yaml#/~1advanced_editor~1macros~1{advancededitormacro_id}"
140 "/article_requests/{article_request_id}":
141 $ref: "./paths/article_requests.yaml#/~1article_requests~1{article_request_id}"
142 /auth/otp/token_delivery:
143 $ref: paths/auth.yaml#/~1auth~1otp~1token_delivery
144 "/auth/password/validation":
145 $ref: "./paths/auth.yaml#/~1auth~1password~1validation"
146 /auth/two-factor/registration:
147 $ref: paths/auth.yaml#/~1auth~1two-factor~1registration
148 /auth/two-factor/registration/verification:
149 $ref: paths/auth.yaml#/~1auth~1two-factor~1registration~1verification
150 /auth/identity_providers:
151 $ref: paths/auth.yaml#/~1auth~1identity_providers
152 "/auth/identity_providers/{identity_provider_id}":
153 $ref: paths/auth.yaml#/~1auth~1identity_providers~1{identity_provider_id}
154 "/auth/identity_providers/{identity_provider_id}/domains":
155 $ref: paths/auth.yaml#/~1auth~1identity_providers~1{identity_provider_id}~1domains
156 "/auth/identity_providers/{identity_provider_id}/domains/{identity_provider_domain_id}":
157 $ref: paths/auth.yaml#/~1auth~1identity_providers~1{identity_provider_id}~1domains~1{identity_provider_domain_id}
158 /authorised_value_categories:
159 $ref: paths/authorised_value_categories.yaml#/~1authorised_value_categories
160 "/authorised_value_categories/{authorised_value_category_name}/authorised_values":
161 $ref: "./paths/authorised_values.yaml#/~1authorised_value_categories~1{authorised_value_category_name}~1authorised_values"
163 $ref: paths/authorities.yaml#/~1authorities
164 "/authorities/{authority_id}":
165 $ref: paths/authorities.yaml#/~1authorities~1{authority_id}
167 $ref: "./paths/biblios.yaml#/~1biblios"
168 "/biblios/{biblio_id}":
169 $ref: "./paths/biblios.yaml#/~1biblios~1{biblio_id}"
170 "/biblios/{biblio_id}/checkouts":
171 $ref: "./paths/biblios.yaml#/~1biblios~1{biblio_id}~1checkouts"
172 "/biblios/{biblio_id}/items":
173 $ref: "./paths/biblios.yaml#/~1biblios~1{biblio_id}~1items"
174 "/biblios/{biblio_id}/items/{item_id}":
175 $ref: "./paths/biblios.yaml#/~1biblios~1{biblio_id}~1items~1{item_id}"
176 "/biblios/{biblio_id}/pickup_locations":
177 $ref: "./paths/biblios.yaml#/~1biblios~1{biblio_id}~1pickup_locations"
178 "/biblios/{biblio_id}/item_groups":
179 $ref: "./paths/biblios_item_groups.yaml#/~1biblios~1{biblio_id}~1item_groups"
180 "/biblios/{biblio_id}/item_groups/{item_group_id}":
181 $ref: "./paths/biblios_item_groups.yaml#/~1biblios~1{biblio_id}~1item_groups~1{item_group_id}"
182 "/biblios/{biblio_id}/item_groups/{item_group_id}/items":
183 $ref: "./paths/biblios_item_groups.yaml#/~1biblios~1{biblio_id}~1item_groups~1{item_group_id}~1items"
184 "/biblios/{biblio_id}/item_groups/{item_group_id}/items/{item_id}":
185 $ref: "./paths/biblios_item_groups.yaml#/~1biblios~1{biblio_id}~1item_groups~1{item_group_id}~1items~1{item_id}"
186 "/cash_registers/{cash_register_id}/cashups":
187 $ref: "./paths/cash_registers.yaml#/~1cash_registers~1{cash_register_id}~1cashups"
188 "/cashups/{cashup_id}":
189 $ref: "./paths/cash_registers.yaml#/~1cashups~1{cashup_id}"
191 $ref: ./paths/checkouts.yaml#/~1checkouts
192 "/checkouts/{checkout_id}":
193 $ref: "./paths/checkouts.yaml#/~1checkouts~1{checkout_id}"
194 "/checkouts/{checkout_id}/allows_renewal":
195 $ref: "./paths/checkouts.yaml#/~1checkouts~1{checkout_id}~1allows_renewal"
196 "/checkouts/{checkout_id}/renewals":
197 $ref: "./paths/checkouts.yaml#/~1checkouts~1{checkout_id}~1renewals"
198 "/checkouts/{checkout_id}/renewal":
199 $ref: "./paths/checkouts.yaml#/~1checkouts~1{checkout_id}~1renewal"
200 "/checkouts/availability":
201 $ref: "./paths/checkouts.yaml#/~1checkouts~1availability"
202 /circulation-rules/kinds:
203 $ref: ./paths/circulation-rules.yaml#/~1circulation-rules~1kinds
205 $ref: ./paths/cities.yaml#/~1cities
207 $ref: "./paths/cities.yaml#/~1cities~1{city_id}"
208 "/clubs/{club_id}/holds":
209 $ref: "./paths/clubs.yaml#/~1clubs~1{club_id}~1holds"
210 /config/smtp_servers:
211 $ref: ./paths/config_smtp_servers.yaml#/~1config~1smtp_servers
212 "/config/smtp_servers/{smtp_server_id}":
213 $ref: "./paths/config_smtp_servers.yaml#/~1config~1smtp_servers~1{smtp_server_id}"
215 $ref: ./paths/erm_agreements.yaml#/~1erm~1agreements
216 "/erm/agreements/{agreement_id}":
217 $ref: "./paths/erm_agreements.yaml#/~1erm~1agreements~1{agreement_id}"
218 "/erm/documents/{document_id}/file/content":
219 $ref: "./paths/erm_documents.yaml#/~1erm~1documents~1{document_id}~1file~1content"
220 "/erm/eholdings/{provider}/titles":
221 $ref: "./paths/erm_eholdings_titles.yaml#/~1erm~1eholdings~1{provider}~1titles"
222 /erm/eholdings/local/titles/import:
223 $ref: ./paths/erm_eholdings_titles.yaml#/~1erm~1eholdings~1local~1titles~1import
224 "/erm/eholdings/{provider}/titles/{title_id}":
225 $ref: "./paths/erm_eholdings_titles.yaml#/~1erm~1eholdings~1{provider}~1titles~1{title_id}"
226 "/erm/eholdings/{provider}/titles/{title_id}/resources":
227 $ref: "./paths/erm_eholdings_titles_resources.yaml#/~1erm~1eholdings~1{provider}~1titles~1{title_id}~1resources"
228 "/erm/eholdings/{provider}/packages":
229 $ref: "./paths/erm_eholdings_packages.yaml#/~1erm~1eholdings~1{provider}~1packages"
230 "/erm/eholdings/{provider}/resources":
231 $ref: "./paths/erm_eholdings_resources.yaml#/~1erm~1eholdings~1{provider}~1resources"
232 "/erm/eholdings/{provider}/resources/{resource_id}":
233 $ref: "./paths/erm_eholdings_resources.yaml#/~1erm~1eholdings~1{provider}~1resources~1{resource_id}"
234 "/erm/eholdings/{provider}/packages/{package_id}":
235 $ref: "./paths/erm_eholdings_packages.yaml#/~1erm~1eholdings~1{provider}~1packages~1{package_id}"
236 "/erm/eholdings/{provider}/packages/{package_id}/resources":
237 $ref: "./paths/erm_eholdings_packages_resources.yaml#/~1erm~1eholdings~1{provider}~1packages~1{package_id}~1resources"
239 $ref: ./paths/erm_licenses.yaml#/~1erm~1licenses
240 "/erm/licenses/{license_id}":
241 $ref: "./paths/erm_licenses.yaml#/~1erm~1licenses~1{license_id}"
243 $ref: ./paths/erm_users.yaml#/~1erm~1users
245 $ref: ./paths/holds.yaml#/~1holds
247 $ref: "./paths/holds.yaml#/~1holds~1{hold_id}"
248 "/holds/{hold_id}/pickup_location":
249 $ref: "./paths/holds.yaml#/~1holds~1{hold_id}~1pickup_location"
250 "/holds/{hold_id}/pickup_locations":
251 $ref: "./paths/holds.yaml#/~1holds~1{hold_id}~1pickup_locations"
252 "/holds/{hold_id}/priority":
253 $ref: "./paths/holds.yaml#/~1holds~1{hold_id}~1priority"
254 "/holds/{hold_id}/suspension":
255 $ref: "./paths/holds.yaml#/~1holds~1{hold_id}~1suspension"
257 $ref: ./paths/ill_backends.yaml#/~1ill~1backends
258 "/ill/backends/{ill_backend_id}":
259 $ref: "./paths/ill_backends.yaml#/~1ill~1backends~1{ill_backend_id}"
261 $ref: ./paths/ill_requests.yaml#/~1ill~1requests
262 "/import_batches/{import_batch_id}/records/{import_record_id}/matches/chosen":
263 $ref: "./paths/import_batches.yaml#/~1import_batches~1{import_batch_id}~1records~1{import_record_id}~1matches~1chosen"
264 /import_batch_profiles:
265 $ref: ./paths/import_batch_profiles.yaml#/~1import_batch_profiles
266 "/import_batch_profiles/{import_batch_profile_id}":
267 $ref: "./paths/import_batch_profiles.yaml#/~1import_batch_profiles~1{import_batch_profile_id}"
269 $ref: ./paths/items.yaml#/~1items
271 $ref: "./paths/items.yaml#/~1items~1{item_id}"
272 "/items/{item_id}/bundled_items":
273 $ref: ./paths/items.yaml#/~1items~1{item_id}~1bundled_items
274 "/items/{item_id}/bundled_items/{bundled_item_id}":
275 $ref: ./paths/items.yaml#/~1items~1{item_id}~1bundled_items~1{bundled_item_id}
276 "/items/{item_id}/pickup_locations":
277 $ref: "./paths/items.yaml#/~1items~1{item_id}~1pickup_locations"
279 $ref: ./paths/jobs.yaml#/~1jobs
281 $ref: "./paths/jobs.yaml#/~1jobs~1{job_id}"
283 $ref: ./paths/libraries.yaml#/~1libraries
284 "/libraries/{library_id}":
285 $ref: "./paths/libraries.yaml#/~1libraries~1{library_id}"
286 "/oauth/login/{provider_code}/{interface}":
287 $ref: ./paths/oauth.yaml#/~1oauth~1login~1{provider_code}~1{interface}
289 $ref: ./paths/oauth.yaml#/~1oauth~1token
291 $ref: ./paths/patrons.yaml#/~1patrons
292 "/patrons/{patron_id}":
293 $ref: "./paths/patrons.yaml#/~1patrons~1{patron_id}"
294 "/patrons/{patron_id}/account":
295 $ref: "./paths/patrons_account.yaml#/~1patrons~1{patron_id}~1account"
296 "/patrons/{patron_id}/account/credits":
297 $ref: "./paths/patrons_account.yaml#/~1patrons~1{patron_id}~1account~1credits"
298 "/patrons/{patron_id}/account/debits":
299 $ref: "./paths/patrons_account.yaml#/~1patrons~1{patron_id}~1account~1debits"
300 "/patrons/{patron_id}/extended_attributes":
301 $ref: "./paths/patrons_extended_attributes.yaml#/~1patrons~1{patron_id}~1extended_attributes"
302 "/patrons/{patron_id}/extended_attributes/{extended_attribute_id}":
303 $ref: "./paths/patrons_extended_attributes.yaml#/~1patrons~1{patron_id}~1extended_attributes~1{extended_attribute_id}"
304 "/patrons/{patron_id}/holds":
305 $ref: "./paths/patrons_holds.yaml#/~1patrons~1{patron_id}~1holds"
306 "/patrons/{patron_id}/password":
307 $ref: "./paths/patrons_password.yaml#/~1patrons~1{patron_id}~1password"
308 "/patrons/{patron_id}/password/expiration_date":
309 $ref: "./paths/patrons_password.yaml#/~1patrons~1{patron_id}~1password~1expiration_date"
310 "/public/biblios/{biblio_id}":
311 $ref: "./paths/biblios.yaml#/~1public~1biblios~1{biblio_id}"
313 $ref: "./paths/items.yaml#/~1public~1items"
314 "/public/biblios/{biblio_id}/items":
315 $ref: "./paths/biblios.yaml#/~1public~1biblios~1{biblio_id}~1items"
316 "/public/biblios/{biblio_id}/ratings":
317 $ref: "./paths/biblios.yaml#/~1public~1biblios~1{biblio_id}~1ratings"
319 $ref: ./paths/libraries.yaml#/~1public~1libraries
320 "/public/libraries/{library_id}":
321 $ref: "./paths/libraries.yaml#/~1public~1libraries~1{library_id}"
322 "/public/oauth/login/{provider_code}/{interface}":
323 $ref: ./paths/public_oauth.yaml#/~1public~1oauth~1login~1{provider_code}~1{interface}
324 "/public/patrons/{patron_id}/article_requests/{article_request_id}":
325 $ref: "./paths/article_requests.yaml#/~1public~1patrons~1{patron_id}~1article_requests~1{article_request_id}"
326 "/public/patrons/{patron_id}/guarantors/can_see_charges":
327 $ref: "./paths/public_patrons.yaml#/~1public~1patrons~1{patron_id}~1guarantors~1can_see_charges"
328 "/public/patrons/{patron_id}/guarantors/can_see_checkouts":
329 $ref: "./paths/public_patrons.yaml#/~1public~1patrons~1{patron_id}~1guarantors~1can_see_checkouts"
330 "/public/patrons/{patron_id}/password":
331 $ref: "./paths/public_patrons.yaml#/~1public~1patrons~1{patron_id}~1password"
333 $ref: "./paths/tickets.yaml#/~1public~1tickets"
335 $ref: ./paths/quotes.yaml#/~1quotes
336 "/quotes/{quote_id}":
337 $ref: "./paths/quotes.yaml#/~1quotes~1{quote_id}"
339 $ref: ./paths/return_claims.yaml#/~1return_claims
340 "/return_claims/{claim_id}":
341 $ref: "./paths/return_claims.yaml#/~1return_claims~1{claim_id}"
342 "/return_claims/{claim_id}/notes":
343 $ref: "./paths/return_claims.yaml#/~1return_claims~1{claim_id}~1notes"
344 "/return_claims/{claim_id}/resolve":
345 $ref: "./paths/return_claims.yaml#/~1return_claims~1{claim_id}~1resolve"
346 "/rotas/{rota_id}/stages/{stage_id}/position":
347 $ref: "./paths/rotas.yaml#/~1rotas~1{rota_id}~1stages~1{stage_id}~1position"
349 $ref: ./paths/suggestions.yaml#/~1suggestions
350 "/suggestions/{suggestion_id}":
351 $ref: "./paths/suggestions.yaml#/~1suggestions~1{suggestion_id}"
352 /suggestions/managers:
353 $ref: paths/suggestions.yaml#/~1suggestions~1managers
355 $ref: "./paths/tickets.yaml#/~1tickets"
356 "/tickets/{ticket_id}":
357 $ref: "./paths/tickets.yaml#/~1tickets~1{ticket_id}"
358 "/tickets/{ticket_id}/updates":
359 $ref: "./paths/tickets.yaml#/~1tickets~1{ticket_id}~1updates"
361 $ref: ./paths/transfer_limits.yaml#/~1transfer_limits
362 /transfer_limits/batch:
363 $ref: ./paths/transfer_limits.yaml#/~1transfer_limits~1batch
364 "/transfer_limits/{limit_id}":
365 $ref: "./paths/transfer_limits.yaml#/~1transfer_limits~1{limit_id}"
367 advancededitormacro_id_pp:
368 description: Advanced editor macro internal identifier
370 name: advancededitormacro_id
374 description: Agreement internal identifier
379 agreement_period_id_pp:
380 description: Agreement period internal identifier
382 name: agreement_period_id
385 authorised_value_id_pp:
386 description: Authorised value internal identifier
388 name: authorised_value_id
392 description: Authority identifier
397 authority_type_header:
398 description: Authority type code. Use when content type is not application/json
399 name: x-authority-type
404 description: Framework id. Use when content type is not application/json
410 description: March schema. One of MARC21 or UNIMARC
411 name: x-record-schema
418 confirm_not_duplicate_header:
419 description: Confirm the posted element is not a duplicate
420 name: x-confirm-not-duplicate
424 identity_provider_id_pp:
425 description: Identity provider internal identifier
427 name: identity_provider_id
430 identity_provider_domain_id_pp:
431 description: Identity provider domain internal identifier
433 name: identity_provider_domain_id
437 description: Record internal identifier
442 candidate_match_id_pp:
443 description: Internal import record match identifier
445 name: candidate_match_id
449 description: Cash register internal identifier
451 name: cash_register_id
455 description: Cashup internal identifier
461 description: Internal checkout identifier
467 description: City internal identifier
473 description: Internal club identifier
478 eholdings_title_id_pp:
479 description: Title internal identifier
484 eholdings_package_id_pp:
485 description: Package internal identifier
490 eholdings_resource_id_pp:
491 description: Resource internal identifier
503 description: Internal hold identifier
508 import_batch_profile_id_pp:
509 description: Internal profile identifier
511 name: import_batch_profile_id
515 description: Internal import record identifier
517 name: import_record_id
521 description: Internal item identifier
527 description: Internal item identifier
532 description: Job internal identifier
538 description: Internal library identifier
544 description: License internal identifier
550 description: Matching criteria
561 collectionFormat: csv
562 description: Sorting criteria
570 description: Internal order identifier
576 description: "Page number, for paginated object listing"
582 description: Internal patron identifier
588 description: Internal patron identifier
593 description: "Page size, for paginated object listing"
599 description: Query filter sent through request"s body
606 description: Query filter sent as a request parameter
613 collectionFormat: multi
615 description: Quote internal identifier
621 description: Request id header
623 name: x-koha-request-id
627 name: search_filter_id
629 description: Search filter internal identifier
633 description: Item was seen flag
639 description: SMTP server internal identifier
645 description: Internal suggestion identifier
651 description: Internal ticket identifier
656 transfer_limit_id_pp:
657 description: Internal transfer limit identifier
663 description: Vendor id
673 url: http://www.gnu.org/licenses/gpl.txt
675 name: Koha Development Team
676 url: https://koha-community.org/
680 This API is documented in **OpenAPI format**.
684 The API supports the following authentication mechanisms
686 * HTTP Basic authentication
687 * OAuth2 (client credentials grant)
690 Both _Basic authentication_ and the _OAuth2_ flow, need to be enabled
691 by system preferences.
695 The API uses standard HTTP status codes to indicate the success or failure
696 of the API call. The body of the response will be JSON in the following format:
700 "error": "Current settings prevent the passed due date to be applied",
701 "error_code": "invalid_due_date"
705 Note: Some routes might offer additional attributes in their error responses but that"s
706 subject to change and thus not documented.
708 ## Filtering responses
710 The API allows for some advanced response filtering using a JSON based query syntax. The
711 query can be added to the requests:
713 * as a query parameter `q=`
714 * in the request body
716 For simple field equality matches we can use `{ "fieldname": "value" }` where the fieldname
717 matches one of the fields as described in the particular endpoints response object.
719 We can refine that with more complex matching clauses by nesting a the clause into the
720 object; `{ "fieldname": { "clause": "value" } }`.
722 Available matching clauses include ">", "<", ">=", "<=", "-like", and "-not_like".
724 We can filter on multiple fields by adding them to the JSON respresentation. Adding at `HASH`
725 level will result in an "AND" query, whilst combinding them in an `ARRAY` wilth result in an
726 "OR" query: `{ "field1": "value2", "field2": "value2" }` will filter the response to only those
727 results with both field1 containing value2 AND field2 containing value2 for example.
729 Additionally, if you are requesting related data be embedded into the response one can query
730 on the related data using dot notation in the field names.
734 The following request would return any patron with firstname "Henry" and lastname "Acevedo";
736 `curl -u koha:koha --request GET "http://127.0.0.1:8081/api/v1/patrons/" --data-raw "{ "surname": "Acevedo", "firstname": "Henry" }"`
738 The following request would return any patron whose lastname begins with "Ace";
740 `curl -u koha:koha --request GET "http://127.0.0.1:8081/api/v1/patrons/" --data-raw "{ "surname": { "-like": "Ace%" }"`
742 The following request would return any patron whose lastname is "Acevedo" OR "Bernardo"
744 `curl -u koha:koha --request GET "http://127.0.0.1:8081/api/v1/patrons/" --data-raw "{ "surname": [ "Acevedo", "Bernardo" ] }"`
746 The following request embeds the related patron extended attributes data and filters on it.
748 `curl -u koha:koha =--request GET 'http://127.0.0.1:8081/api/v1/patrons/' --header 'x-koha-embed: extended_attributes' --data-raw '{ "extended_attributes.code": "internet", "extended_attributes.attribute": "1" }'`
754 This optional header allows the api consumer to request additional related data
755 to be returned in the api response. It also allows for cross referencing in the
756 queries as described above. It accepts a comma delimited list of relation names.
758 Relations may on occasion also support dot delimited nesting to allow traversal.
762 This optional header should be passed to give your api request a library
763 context; If it is not included in the request, then the request context
764 will default to using your api comsumer"s assigned home library.
766 - description: "Handle two factor authentication flows\n"
768 x-displayName: Two factor authentication
769 - description: "Manage article requests\n"
770 name: article_requests
771 x-displayName: Article requests
772 - description: "Manage identity providers\n"
773 name: identity_providers
774 x-displayName: Identity providers
775 - description: "Manage baskets for the acquisitions module\n"
777 x-displayName: Baskets
778 - description: "Manage Authority records\n"
780 x-displayName: Authorities
781 - description: "Manage bibliographic records\n"
783 x-displayName: Biblios
784 - description: "Manage cash register cashups\n"
786 x-displayName: Cashups
787 - description: "Manage checkouts\n"
789 x-displayName: Checkouts
790 - description: "Manage circulation rules\n"
791 name: circulation_rules
792 x-displayName: Circulation rules
793 - description: "Manage cities\n"
795 x-displayName: Cities
796 - description: "Manage patron clubs\n"
799 - description: "Manage funds for the acquisitions module\n"
802 - description: "Manage holds\n"
805 - description: "Manage ILL module backends\n"
807 x-displayName: ILL backends
808 - description: "Manage ILL requests\n"
810 x-displayName: ILL requests
811 - description: "Manage import batches\n"
813 x-display-name: Import batches
814 - description: "Manage item groups\n"
816 x-displayName: Item groups
817 - description: "Manage items\n"
820 - description: "Manage jobs\n"
823 - description: "Manage libraries\n"
825 x-displayName: Libraries
826 - description: "Manage macros\n"
828 x-displayName: Macros
829 - description: "Manage acquisition orders\n"
831 x-displayName: Orders
832 - description: "Handle OAuth flows\n"
835 - description: "Manage patrons\n"
837 x-displayName: Patrons
838 - description: "Manage quotes\n"
840 x-displayName: Quotes
841 - description: "Manage return claims\n"
843 x-displayName: Return claims
844 - description: "Manage rotas\n"
847 - description: "Manage SMTP servers configurations\n"
849 x-displayName: SMTP servers
850 - description: "Manage transfer limits\n"
852 x-displayName: Transfer limits
853 - description: "Manage purchase suggestions\n"
855 x-displayName: Purchase suggestions
856 - description: "Manage vendors for the acquisitions module\n"
858 x-displayName: Vendors
859 - description: "Manage batch import profiles\n"
860 name: batch_import_profiles
861 x-displayName: Batch import profiles