--- /dev/null
+{
+ "/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
+ }
+ }
+ }
+}