From 9da9bbf90736cdfdcdf55c093f157f5c440883df Mon Sep 17 00:00:00 2001 From: Mihai Doarna Date: Fri, 17 Nov 2023 14:07:26 +0200 Subject: [PATCH] Add swagger code for the removeProviderSettings API method (#78270) * add swagger code for the remove provider SSO settings API method * replace fine grained with role based * address feedback --- pkg/services/ssosettings/api/api.go | 21 ++++++++++++++++ public/api-merged.json | 35 +++++++++++++++++++++++++++ public/openapi3.json | 37 +++++++++++++++++++++++++++++ 3 files changed, 93 insertions(+) diff --git a/pkg/services/ssosettings/api/api.go b/pkg/services/ssosettings/api/api.go index 7d4dc388e7f..0b062d61fa3 100644 --- a/pkg/services/ssosettings/api/api.go +++ b/pkg/services/ssosettings/api/api.go @@ -99,6 +99,20 @@ func (api *Api) updateProviderSettings(c *contextmodel.ReqContext) response.Resp return response.JSON(http.StatusNoContent, nil) } +// swagger:route DELETE /v1/sso-settings/{key} sso_settings removeProviderSettings +// +// # Remove SSO Settings +// +// # Remove an SSO Settings entry by Key +// +// You need to have a permission with action `settings:write` with scope `settings:auth.:*`. +// +// Responses: +// 204: okResponse +// 400: badRequestError +// 401: unauthorisedError +// 403: forbiddenError +// 500: internalServerError func (api *Api) removeProviderSettings(c *contextmodel.ReqContext) response.Response { key, ok := web.Params(c.Req)[":key"] if !ok { @@ -112,3 +126,10 @@ func (api *Api) removeProviderSettings(c *contextmodel.ReqContext) response.Resp return response.JSON(http.StatusNoContent, nil) } + +// swagger:parameters removeProviderSettings +type RemoveProviderSettingsParams struct { + // in:path + // required:true + Key string `json:"key"` +} diff --git a/public/api-merged.json b/public/api-merged.json index 2a52d501455..08be9a2dab5 100644 --- a/public/api-merged.json +++ b/public/api-merged.json @@ -10861,6 +10861,41 @@ } } } + }, + "/v1/sso-settings/{key}": { + "delete": { + "description": "# Remove an SSO Settings entry by Key\n\nYou need to have a permission with action `settings:write` with scope `settings:auth.\u003cprovider\u003e:*`.", + "tags": [ + "sso_settings" + ], + "summary": "Remove SSO Settings", + "operationId": "removeProviderSettings", + "parameters": [ + { + "type": "string", + "name": "key", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/okResponse" + }, + "400": { + "$ref": "#/responses/badRequestError" + }, + "401": { + "$ref": "#/responses/unauthorisedError" + }, + "403": { + "$ref": "#/responses/forbiddenError" + }, + "500": { + "$ref": "#/responses/internalServerError" + } + } + } } }, "definitions": { diff --git a/public/openapi3.json b/public/openapi3.json index 4e8abe22106..8561c4defe2 100644 --- a/public/openapi3.json +++ b/public/openapi3.json @@ -23803,6 +23803,43 @@ "users" ] } + }, + "/v1/sso-settings/{key}": { + "delete": { + "description": "# Remove an SSO Settings entry by Key\n\nYou need to have a permission with action `settings:write` with scope `settings:auth.\u003cprovider\u003e:*`.", + "operationId": "removeProviderSettings", + "parameters": [ + { + "in": "path", + "name": "key", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "$ref": "#/components/responses/okResponse" + }, + "400": { + "$ref": "#/components/responses/badRequestError" + }, + "401": { + "$ref": "#/components/responses/unauthorisedError" + }, + "403": { + "$ref": "#/components/responses/forbiddenError" + }, + "500": { + "$ref": "#/components/responses/internalServerError" + } + }, + "summary": "Remove SSO Settings", + "tags": [ + "sso_settings" + ] + } } }, "security": [