From 51a7cd899e7ff20d3e79d5d2a31862fc0d6f6e72 Mon Sep 17 00:00:00 2001 From: Blake Erickson Date: Wed, 22 Feb 2023 09:06:49 -0700 Subject: [PATCH] FEATURE: Add API scopes for group endpoints (#20401) Added two new api scopes for managing and administering groups. See https://meta.discourse.org/t/249710 --- app/models/api_key_scope.rb | 15 +++++++++++++++ config/locales/client.en.yml | 3 +++ spec/requests/admin/api_controller_spec.rb | 1 + 3 files changed, 19 insertions(+) diff --git a/app/models/api_key_scope.rb b/app/models/api_key_scope.rb index 9c077008767..f5aea4c94b5 100644 --- a/app/models/api_key_scope.rb +++ b/app/models/api_key_scope.rb @@ -158,6 +158,21 @@ class ApiKeyScope < ActiveRecord::Base actions: %w[user_badges#destroy], }, }, + groups: { + manage_groups: { + actions: %w[groups#members groups#add_members groups#remove_members], + params: %i[id], + }, + administer_groups: { + actions: %w[ + admin/groups#create + admin/groups#destroy + groups#show + groups#update + groups#index + ], + }, + }, search: { show: { actions: %w[search#show], diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml index 2cc1cbd7731..61c6647334f 100644 --- a/config/locales/client.en.yml +++ b/config/locales/client.en.yml @@ -4736,6 +4736,9 @@ en: list_user_badges: List user badges. assign_badge_to_user: Assign a badge to a user. revoke_badge_from_user: Revoke a badge from a user. + groups: + manage_groups: List, add, and remove group members. + administer_groups: List, show, create, update, and delete groups. search: show: Search using the `/search.json?q=term` endpoint. query: Search using the `/search/query?term=term` endpoint. diff --git a/spec/requests/admin/api_controller_spec.rb b/spec/requests/admin/api_controller_spec.rb index 4f92635a52e..b3e85bec6d1 100644 --- a/spec/requests/admin/api_controller_spec.rb +++ b/spec/requests/admin/api_controller_spec.rb @@ -427,6 +427,7 @@ RSpec.describe Admin::ApiController do "user_status", "global", "badges", + "groups", "categories", "search", "invites",