{ "/acquisitions/vendors": { "get": { "x-mojo-to": "Acquisitions::Vendors#list", "operationId": "listVendors", "tags": ["vendors"], "summary": "List vendors", "produces": [ "application/json" ], "parameters": [{ "name": "name", "in": "query", "description": "Case insensitive search on vendor name", "required": false, "type": "string" }, { "name": "accountnumber", "in": "query", "description": "Case insensitive search on vendor's account number", "required": false, "type": "string" }, { "$ref": "../parameters.json#/match" }, { "$ref": "../parameters.json#/order_by" }, { "$ref": "../parameters.json#/page" }, { "$ref": "../parameters.json#/per_page" }, { "$ref": "../parameters.json#/q_param" }, { "$ref": "../parameters.json#/q_body" }, { "$ref": "../parameters.json#/q_header" }], "responses": { "200": { "description": "A list of vendors", "schema": { "type": "array", "items": { "$ref": "../definitions.json#/vendor" } } }, "401": { "description": "Authentication required", "schema": { "$ref": "../definitions.json#/error" } }, "403": { "description": "Access forbidden", "schema": { "$ref": "../definitions.json#/error" } }, "404": { "description": "Vendor 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": { "acquisition": "vendors_manage" } } }, "post": { "x-mojo-to": "Acquisitions::Vendors#add", "operationId": "addVendor", "tags": ["vendors"], "summary": "Add vendor", "parameters": [{ "name": "body", "in": "body", "description": "A JSON object representing a vendor", "required": true, "schema": { "$ref": "../definitions.json#/vendor" } }], "produces": [ "application/json" ], "responses": { "201": { "description": "Vendor added", "schema": { "$ref": "../definitions.json#/vendor" } }, "401": { "description": "Authentication required", "schema": { "$ref": "../definitions.json#/error" } }, "403": { "description": "Access forbidden", "schema": { "$ref": "../definitions.json#/error" } }, "404": { "description": "Vendor 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": { "acquisition": "vendors_manage" } } } }, "/acquisitions/vendors/{vendor_id}": { "get": { "x-mojo-to": "Acquisitions::Vendors#get", "operationId": "getVendor", "tags": ["vendors"], "summary": "Get vendor", "parameters": [{ "$ref": "../parameters.json#/vendoridPathParam" }], "produces": [ "application/json" ], "responses": { "200": { "description": "A vendor", "schema": { "$ref": "../definitions.json#/vendor" } }, "401": { "description": "Authentication required", "schema": { "$ref": "../definitions.json#/error" } }, "403": { "description": "Access forbidden", "schema": { "$ref": "../definitions.json#/error" } }, "404": { "description": "Vendor 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": { "acquisition": "vendors_manage" } } }, "put": { "x-mojo-to": "Acquisitions::Vendors#update", "operationId": "updateVendor", "tags": ["vendors"], "summary": "Update vendor", "parameters": [{ "$ref": "../parameters.json#/vendoridPathParam" }, { "name": "body", "in": "body", "description": "A JSON object representing a vendor", "required": true, "schema": { "$ref": "../definitions.json#/vendor" } }], "produces": [ "application/json" ], "responses": { "200": { "description": "A vendor", "schema": { "$ref": "../definitions.json#/vendor" } }, "401": { "description": "Authentication required", "schema": { "$ref": "../definitions.json#/error" } }, "403": { "description": "Access forbidden", "schema": { "$ref": "../definitions.json#/error" } }, "404": { "description": "Vendor 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": { "acquisition": "vendors_manage" } } }, "delete": { "x-mojo-to": "Acquisitions::Vendors#delete", "operationId": "deleteVendor", "tags": ["vendors"], "summary": "Delete vendor", "parameters": [{ "$ref": "../parameters.json#/vendoridPathParam" }], "produces": [ "application/json" ], "responses": { "204": { "description": "Vendor deleted" }, "401": { "description": "Authentication required", "schema": { "$ref": "../definitions.json#/error" } }, "403": { "description": "Access forbidden", "schema": { "$ref": "../definitions.json#/error" } }, "404": { "description": "Vendor 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": { "acquisition": "vendors_manage" } } } } }