Koha/api/v1/swagger/paths/import_batch_profiles.json
Tomas Cohen Arazi 051a06e69b Bug 28370: Add missing additionalProperties in spec
This patch adds missing attribute to the object definitions in the spec.
We wrongly supposed it was the default, but it proved not.

To test:
1. Apply this patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1
=> SUCCESS: Tests pass, nothing breaks!
3. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2021-05-25 09:28:17 +02:00

362 lines
10 KiB
JSON

{
"/import_batch_profiles": {
"get": {
"x-mojo-to": "ImportBatchProfiles#list",
"operationId": "listImportBatchProfiles",
"tags": [
"ImportBatchProfiles"
],
"parameters": [
{
"name": "name",
"in": "query",
"description": "Search on profile's name",
"required": false,
"type": "string"
},
{
"$ref": "../parameters.json#/match"
},
{
"$ref": "../parameters.json#/order_by"
},
{
"$ref": "../parameters.json#/page"
},
{
"$ref": "../parameters.json#/per_page"
}
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"responses": {
"200": {
"description": "A list of import batch profiles",
"schema": {
"$ref": "../definitions.json#/import_batch_profiles"
}
},
"401": {
"description": "Authentication required",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"403": {
"description": "Access forbidden",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"503": {
"description": "Under maintenance",
"schema": {
"$ref": "../definitions.json#/error"
}
}
},
"x-koha-authorization": {
"permissions": {
"tools": "stage_marc_import"
}
}
},
"post": {
"x-mojo-to": "ImportBatchProfiles#add",
"operationId": "addImportBatchProfiles",
"tags": [
"ImportBatchProfiles"
],
"parameters": [
{
"name": "body",
"in": "body",
"description": "A JSON object containing a import batch profile",
"required": true,
"schema": {
"type": "object",
"properties": {
"name": {
"description": "name of this profile",
"type": "string"
},
"matcher_id": {
"description": "the id of the match rule used (matchpoints.matcher_id)",
"type": ["integer", "null"]
},
"template_id": {
"description": "the id of the marc modification template",
"type": ["integer", "null"]
},
"overlay_action": {
"description": "how to handle duplicate records",
"type": ["string", "null"]
},
"nomatch_action": {
"description": "how to handle records where no match is found",
"type": ["string", "null"]
},
"item_action": {
"description": "what to do with item records",
"type": ["string", "null"]
},
"parse_items": {
"description": "should items be parsed",
"type": ["boolean", "null"]
},
"record_type": {
"description": "type of record in the batch",
"type": ["string", "null"]
},
"encoding": {
"description": "file encoding",
"type": ["string", "null"]
},
"format": {
"description": "marc format",
"type": ["string", "null"]
},
"comments": {
"description": "any comments added when the file was uploaded",
"type": ["string", "null"]
}
},
"additionalProperties": false
}
}
],
"consumes": ["application/json"],
"produces": ["application/json"],
"responses": {
"201": {
"description": "Created Profile",
"schema": {
"$ref": "../definitions.json#/import_batch_profile"
}
},
"400": {
"description": "Missing or wrong parameters",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"401": {
"description": "Authentication required",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"403": {
"description": "Hold not allowed",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"404": {
"description": "Borrower not found",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"503": {
"description": "Under maintenance",
"schema": {
"$ref": "../definitions.json#/error"
}
}
},
"x-koha-authorization": {
"permissions": {
"tools": "stage_marc_import"
}
}
}
},
"/import_batch_profiles/{import_batch_profile_id}": {
"put": {
"x-mojo-to": "ImportBatchProfiles#edit",
"operationId": "editImportBatchProfiles",
"tags": [
"ImportBatchProfiles"
],
"parameters": [
{
"$ref": "../parameters.json#/import_batch_profile_id_pp"
},
{
"name": "body",
"in": "body",
"description": "A JSON object containing a import batch profile",
"required": true,
"schema": {
"type": "object",
"properties": {
"name": {
"description": "name of this profile",
"type": "string"
},
"matcher_id": {
"description": "the id of the match rule used (matchpoints.matcher_id)",
"type": ["integer", "null"]
},
"template_id": {
"description": "the id of the marc modification template",
"type": ["integer", "null"]
},
"overlay_action": {
"description": "how to handle duplicate records",
"type": ["string", "null"]
},
"nomatch_action": {
"description": "how to handle records where no match is found",
"type": ["string", "null"]
},
"item_action": {
"description": "what to do with item records",
"type": ["string", "null"]
},
"parse_items": {
"description": "should items be parsed",
"type": ["boolean", "null"]
},
"record_type": {
"description": "type of record in the batch",
"type": ["string", "null"]
},
"encoding": {
"description": "file encoding",
"type": ["string", "null"]
},
"format": {
"description": "marc format",
"type": ["string", "null"]
},
"comments": {
"description": "any comments added when the file was uploaded",
"type": ["string", "null"]
}
},
"additionalProperties": false
}
}
],
"consumes": ["application/json"],
"produces": ["application/json"],
"responses": {
"200": {
"description": "Updated profile",
"schema": {
"$ref": "../definitions.json#/import_batch_profile"
}
},
"400": {
"description": "Missing or wrong parameters",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"401": {
"description": "Authentication required",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"403": {
"description": "Hold not allowed",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"404": {
"description": "Borrower not found",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"503": {
"description": "Under maintenance",
"schema": {
"$ref": "../definitions.json#/error"
}
}
},
"x-koha-authorization": {
"permissions": {
"tools": "stage_marc_import"
}
}
},
"delete": {
"x-mojo-to": "ImportBatchProfiles#delete",
"operationId": "deleteImportBatchProfiles",
"tags": ["ImportBatchProfiles"],
"parameters": [{
"$ref": "../parameters.json#/import_batch_profile_id_pp"
}
],
"produces": ["application/json"],
"responses": {
"204": {
"description": "Profile deleted"
},
"401": {
"description": "Authentication required",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"403": {
"description": "Hold not allowed",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"404": {
"description": "Hold not found",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "../definitions.json#/error"
}
},
"503": {
"description": "Under maintenance",
"schema": {
"$ref": "../definitions.json#/error"
}
}
},
"x-koha-authorization": {
"permissions": {
"tools": "stage_marc_import"
}
}
}
}
}