Koha-clms/api/v1/swagger/definitions
Lari Taskula c42848609c
Bug 38365: Make swagger-cli happy
Schema type [array,object] is not valid in OpenAPI version 2.

There are two different CSP reporting directives.

One is the now deprecated "report-uri" directive. Browsers typically send a single
JSON object following the CSP2 specification.

"report-uri" is deprecated in CSP3 in favor of the newer "report-to" directive. It
is expected to contain an array of report objects.

There are browser that do not yet support the "report-to" directive, so both
directives should be supported.

There are also variations among the "report-uri" format. See
https://www.tollmanz.com/content-security-policy-report-samples/

Because of these variations, it becomes quite complex to handle the most common
cases in a single API endpoint.

We could build two separate endpoints for both directives.

Or we can accept any type of input and handle the variations in a single endpoint.
This patch attempts to do that.

Before this patch input parameters were validated by JSON::Validator. That is the
normal and recommended way to build OpenAPI endpoints in Koha. After this patch we
remove all input parameter restrictions from the OpenAPI spec, and simply accept
any type of body.

This means the controller will now always return a HTTP 204 regardless of the type
of data passed to the controller. It instead truncates too long input before
writing them into log files.

As this is not an endpoint that developers will build new Koha clients for, we
do not have to offer a very in-depth input parameter spec for this endpoint.

To test:
1. t/db_dependent/api/v1/public/csp_reports.t

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2026-03-16 11:57:37 +01:00
..
account_line.yaml Bug 22421: (QA follow-up) Update API mapping and specs 2024-11-08 17:06:06 +01:00
additional_content.yaml Bug 39900: Add translated_contents embed 2025-08-14 16:05:54 -06:00
advancededitormacro.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
allows_renewal.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
authorised_value.yaml Bug 32981: Add endpoint to get AV for given category 2023-03-02 12:00:10 -03:00
authorised_value_category.yaml Bug 28869: (RM follow-up) Add missing field in api definition 2024-05-17 14:39:54 +01:00
basket.yaml Bug 29668: Add API route to add a basket 2026-01-21 15:28:09 -07:00
booking.yaml Bug 40134: Implement optimal item selection for 'any item' bookings 2026-02-10 08:50:56 -07:00
booking_patch.yaml Bug 40134: Implement optimal item selection for 'any item' bookings 2026-02-10 08:50:56 -07:00
bundle_link.yaml Bug 29560: (follow-up) Split prepare and store logic 2024-07-15 11:04:05 +02:00
cash_register.yaml Bug 36481: (QA follow-up) Rename branch_default to library_default 2024-05-01 13:51:41 +01:00
cashup.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
checkout.yaml Bug 41700: Update note_date to datetime 2026-01-28 14:24:05 -07:00
checkout_availability.yaml Bug 23336: (follow-up) Add checkout_availability schema 2023-07-05 12:17:19 -03:00
checkouts.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
circ-rule-kind.yaml Bug 36641: Add endpoint for fetching circulation rules 2024-07-18 18:25:43 +02:00
circulation_rules.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
city.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
club_hold.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
club_hold_patron_hold.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
club_hold_patron_holds.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
club_holds.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
credit.yaml Bug 29453: (follow-up) Add tests and fix minimum amount in credit.yaml definition 2023-05-05 12:13:51 -03:00
debit.yaml Bug 22421: (QA follow-up) Update API mapping and specs 2024-11-08 17:06:06 +01:00
desk.yaml Bug 36480: Add GET /libraries/:library_id/desks 2024-04-26 18:06:10 +02:00
edifact_file.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_agreement.yaml Bug 40512: Add maxLength to erm agreements 2025-10-02 09:38:18 -06:00
erm_agreement_license.yaml Bug 32030: ERM - link licenses to an agreement 2022-11-08 09:43:45 -03:00
erm_agreement_period.yaml Bug 39438: Add additional fields support to ERM agreement periods 2026-01-30 10:54:10 -07:00
erm_agreement_relationship.yaml Bug 32030: ERM - related agreement - REST API 2022-11-08 09:43:51 -03:00
erm_config.yaml Bug 33606: Add a erm/config route to retrieve the ERM config needed for the Vue app 2023-07-06 12:24:13 -03:00
erm_counter_file.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_counter_log.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_counter_registry.yaml Bug 35757: Add new fields to api definitions 2024-01-11 12:10:44 +01:00
erm_custom_report.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_default_usage_report.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_document.yaml Bug 32030: Add document to license - REST API spec 2022-11-08 09:44:31 -03:00
erm_eholdings_package.yaml Bug 37577: Add additional fields for ERM packages 2024-11-08 16:09:19 +01:00
erm_eholdings_package_agreement.yaml Bug 32030: Rename Package|Resource|Title 2022-11-08 09:44:02 -03:00
erm_eholdings_resource.yaml Bug 32030: Proxy with HoldingsIQ 2022-11-08 09:44:07 -03:00
erm_eholdings_title.yaml Bug 40192: Add additional fields support to ERM titles 2026-01-22 09:25:57 -07:00
erm_license.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_license_agreement.yaml Bug 32030: ERM - link licenses to an agreement 2022-11-08 09:43:45 -03:00
erm_sushi_service.yaml Bug 39007: Update API spec and unit test 2025-01-31 15:57:32 +01:00
erm_usage_data_provider.yaml Bug 37856: Add service_platform field 2024-09-27 18:00:37 +02:00
erm_usage_database.yaml Bug 34587: Add list endpoints for usage_databases/items/platforms 2023-10-31 16:46:08 -03:00
erm_usage_item.yaml Bug 34587: Add list endpoints for usage_databases/items/platforms 2023-10-31 16:46:08 -03:00
erm_usage_mus.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_usage_platform.yaml Bug 34587: Add list endpoints for usage_databases/items/platforms 2023-10-31 16:46:08 -03:00
erm_usage_title.yaml Bug 34587: Move YOP to mus/yus instead of erm_usage_titles 2023-10-31 16:46:29 -03:00
erm_usage_yus.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
erm_user_role.yaml Bug 32154: Missing primary key on erm_user_roles table 2022-11-11 08:54:34 -03:00
error.yaml Bug 28020: Add error_code to error responses 2022-01-05 13:33:46 -10:00
extended_attribute_type.yaml Bug 35044: Add repetable to REST API spec 2024-08-23 18:21:25 +02:00
extended_attribute_value.yaml Bug 40541: Add missing new line at the end of files when missing 2025-07-31 12:42:09 -06:00
file_transport.yaml Bug 39190: Rename API from sftp_servers to file_transports 2025-09-19 13:23:25 -06:00
fund.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
hold.yaml Bug 41456: Fix item type searching and filtering on the holds history table 2025-12-29 09:56:19 -07:00
hold_group.yaml Bug 40529: Add hold group targets logic 2025-11-03 14:13:14 -07:00
holds.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
identity_provider.yaml Bug 33859: Use the phrase 'Identity providers' instead of 'Authentication providers' 2023-06-05 14:36:03 -03:00
identity_provider_domain.yaml Bug 37711: API changes 2025-11-05 07:12:31 -07:00
ill_backend.yaml Bug 22440: Move backend statuses api endpoint 2023-05-05 09:13:43 -03:00
ill_backends.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
ill_batch.yaml Bug 30719: (QA follow-up) Pick better column names and cleanup 2023-10-17 14:45:23 -03:00
ill_batches.yaml Bug 30719: (QA follow-up) Rename illbatches endpoint to ill/batches 2023-10-17 14:45:20 -03:00
ill_batchstatus.yaml Bug 30719: (QA follow-up) Rename illbatchstatuses 2023-10-17 14:45:22 -03:00
ill_batchstatuses.yaml Bug 30719: (QA follow-up) Rename illbatchstatuses 2023-10-17 14:45:22 -03:00
ill_request.yaml Bug 30719: Rename `batch` for `ill_batch` in Koha::Illrequest 2023-10-17 14:45:25 -03:00
ill_status.yaml Bug 22440: ILL API changes 2023-05-05 09:13:42 -03:00
import_batch_profile.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
import_batch_profiles.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
import_record_match.yaml Bug 22785: Allow option to choose which record match is applied during import 2022-05-03 11:19:50 -10:00
invoice.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
item.yaml Bug 40433: Add missing maxLength to item, library and patron 2025-07-21 14:01:28 -06:00
item_group.yaml Bug 24857: API spec 2022-07-08 15:59:55 -03:00
item_type.yaml Bug 20644: (follow-up) Fix swagger description + put "inherit" by default 2025-08-22 07:44:59 -06:00
item_type_translated_description.yaml Bug 34008: Add REST endpoint for list of itemtypes 2023-11-01 17:23:14 -03:00
job.yaml Bug 39771: Make `data` attribute nullable for jobs 2025-05-09 09:12:06 +02:00
library.yaml Bug 40433: Add missing maxLength to item, library and patron 2025-07-21 14:01:28 -06:00
list.yaml Bug 28965: Add /public/lists 2024-11-08 16:09:21 +01:00
merge_biblios.yaml Bug 33036: REST API: Merge biblio records implements merging of records 2024-03-18 11:03:39 +01:00
order.yaml Bug 8179: Receive multiple orders 2023-05-15 08:53:47 -03:00
order_claim.yaml Bug 39830: Add order claim object definition 2025-09-29 14:02:21 -06:00
patron.yaml Bug 28701: Add mexlength to the API spec 2026-01-13 15:20:08 -07:00
patron_account_credit.yaml Bug 23012: Show the PROCESSING_FOUND account credit type 2022-10-24 17:43:28 -03:00
patron_balance.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
patron_category.yaml Bug 40179: Add maxLength to patron_category spec file 2025-07-08 15:42:08 -06:00
patron_extended_attribute.yaml Bug 31381: Handle null attributes in list 2022-11-30 15:58:13 -03:00
preservation_config.yaml Bug 30708: Do not allow non-authorised users to edit the settings 2023-10-18 15:42:01 -03:00
preservation_processing.yaml Bug 33547: Add print slip 2023-10-23 11:33:51 -03:00
preservation_processing_attribute.yaml Bug 30708: REST API specs 2023-10-18 15:41:40 -03:00
preservation_train.yaml Bug 30708: Fix API specs 2023-10-20 10:00:58 -03:00
preservation_train_item.yaml Bug 35230: (bug 30708 follow-up) fix description for catalogue_item 2023-11-03 12:04:47 -03:00
quote.yaml Bug 30903: Fix POST /quote 2022-07-06 16:42:05 -03:00
recall.yaml Bug 35967: (QA follow-up) `status` is not nullable 2024-04-19 19:54:44 +02:00
recalls.yaml Bug 35967: Add REST API endpoint to list patron recalls 2024-04-19 19:54:43 +02:00
record_source.yaml Bug 37513: Allow embedding usage_count in record sources 2024-08-27 12:14:25 +02:00
renewal.yaml Bug 30642: Make renewal_type an enum in spec and add test 2023-02-10 11:08:00 -03:00
renewals.yaml Bug 30275: (follow-up) Rebase fixes 2022-07-05 09:46:12 -03:00
return_claim.yaml Bug 30194: (follow-up) Simply OpenAPI Specification 2022-03-29 16:44:31 +02:00
rota.yaml Bug 35430: Add rota endpoints for stockrotation 2024-06-28 13:49:26 +02:00
search_filter.yaml Bug 17170: (QA follow-up) Spec cleanup 2022-10-21 11:15:22 -03:00
sip2_account.yaml Bug 37893: (QA follow-up): Remove plaintext password storage from SIP2 2025-11-18 11:21:06 -07:00
sip2_institution.yaml Bug 37893: REST API specs 2025-11-18 11:20:44 -07:00
sip2_system_preference_override.yaml Bug 37893: SIP2 System preference overrides 2025-11-18 11:20:56 -07:00
smtp_server.yaml Bug 27424: Add ability to specify an SMTP server in the database as the default server 2023-01-31 10:52:48 -03:00
suggestion.yaml Bug 33430: (follow-up) Fix API spec terminology 2025-05-19 18:54:23 +02:00
ticket.yaml Bug 35657: Add support for assignee_id to ticket_updates endpoint 2024-05-02 15:03:35 +02:00
ticket_update.yaml Bug 35657: Add support for assignee_id to ticket_updates endpoint 2024-05-02 15:03:35 +02:00
transfer_limit.yaml Bug 29620: Move the OpenAPI spec to YAML format 2021-12-07 12:33:35 -10:00
vendor.yaml Bug 38207: Update UI to use new field 2026-01-22 09:26:04 -07:00
vendor_alias.yaml Bug 39838: Add `vendor_alias` definition in swagger 2025-05-13 18:47:03 +02:00
vendor_interface.yaml Bug 39837: Add definition in swagger 2025-05-13 18:47:06 +02:00
vendor_issue.yaml Bug 33105: Fix vendor api spec 2023-07-20 10:59:29 -03:00
vendors_config.yaml Bug 38208: Provide a link from vendors to ERM 2025-11-03 14:13:34 -07:00