From f068f337b5dad694c4e894f2cd72ad7108d6195f Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Mon, 7 Jan 2019 08:24:45 -0300 Subject: [PATCH] Bug 22061: OpenAPI spec Signed-off-by: Josef Moravec --- api/v1/swagger/paths.json | 3 ++ api/v1/swagger/paths/public_patrons.json | 86 ++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 api/v1/swagger/paths/public_patrons.json diff --git a/api/v1/swagger/paths.json b/api/v1/swagger/paths.json index 83dddb0..b41ef9e 100644 --- a/api/v1/swagger/paths.json +++ b/api/v1/swagger/paths.json @@ -40,5 +40,8 @@ }, "/rotas/{rota_id}/stages/{stage_id}/position": { "$ref": "paths/rotas.json#/~1rotas~1{rota_id}~1stages~1{stage_id}~1position" + }, + "/public/patrons/{patron_id}/password": { + "$ref": "paths/public_patrons.json#/~1public~1patrons~1{patron_id}~1password" } } diff --git a/api/v1/swagger/paths/public_patrons.json b/api/v1/swagger/paths/public_patrons.json new file mode 100644 index 0000000..29ce642 --- /dev/null +++ b/api/v1/swagger/paths/public_patrons.json @@ -0,0 +1,86 @@ +{ + "/public/patrons/{patron_id}/password": { + "post": { + "x-mojo-to": "Patrons::Password#set_public", + "operationId": "setPatronPasswordPublic", + "tags": [ + "patron" + ], + "parameters": [ + { + "$ref": "../parameters.json#/patron_id_pp" + }, + { + "name": "body", + "in": "body", + "description": "A JSON object containing password information", + "schema": { + "type": "object", + "properties": { + "password": { + "description": "New password (plain text)", + "type": "string" + }, + "password_2": { + "description": "Repeated new password (plain text)", + "type": "string" + }, + "old_password": { + "description": "Patron's original password", + "type": "string" + } + }, + "required": ["password", "password_2", "old_password"] + } + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Password changed" + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "../definitions.json#/error" + } + }, + "401": { + "description": "Authentication required", + "schema": { + "$ref": "../definitions.json#/error" + } + }, + "403": { + "description": "Access forbidden", + "schema": { + "$ref": "../definitions.json#/error" + } + }, + "404": { + "description": "Patron 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": { + "allow-owner": true + } + } + } +} -- 2.1.4