Class: Auth0::Roles::Groups::Client
- Inherits:
-
Object
- Object
- Auth0::Roles::Groups::Client
- Defined in:
- lib/auth0/roles/groups/client.rb
Instance Method Summary collapse
-
#create(request_options: {}, **params) ⇒ untyped
Assign one or more groups to a specified role.
-
#delete(request_options: {}, **params) ⇒ untyped
Unassign one or more groups from a specified role.
-
#get(request_options: {}, **params) ⇒ Auth0::Types::ListRoleGroupsResponseContent
Lists the groups to which the specified role is assigned.
- #initialize(client:) ⇒ void constructor
Constructor Details
#initialize(client:) ⇒ void
10 11 12 |
# File 'lib/auth0/roles/groups/client.rb', line 10 def initialize(client:) @client = client end |
Instance Method Details
#create(request_options: {}, **params) ⇒ untyped
Assign one or more groups to a specified role.
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/auth0/roles/groups/client.rb', line 88 def create(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request_data = Auth0::Roles::Groups::Types::AssignRoleGroupsRequestContent.new(params).to_h non_body_param_names = %w[id] body = request_data.except(*non_body_param_names) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "POST", path: "roles/#{URI.encode_uri_component(params[:id].to_s)}/groups", body: body, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Auth0::Errors::TimeoutError end code = response.code.to_i return if code.between?(200, 299) error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end |
#delete(request_options: {}, **params) ⇒ untyped
Unassign one or more groups from a specified role.
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 |
# File 'lib/auth0/roles/groups/client.rb', line 131 def delete(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request_data = Auth0::Roles::Groups::Types::DeleteRoleGroupsRequestContent.new(params).to_h non_body_param_names = %w[id] body = request_data.except(*non_body_param_names) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "DELETE", path: "roles/#{URI.encode_uri_component(params[:id].to_s)}/groups", body: body, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Auth0::Errors::TimeoutError end code = response.code.to_i return if code.between?(200, 299) error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end |
#get(request_options: {}, **params) ⇒ Auth0::Types::ListRoleGroupsResponseContent
Lists the groups to which the specified role is assigned.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/auth0/roles/groups/client.rb', line 35 def get(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) query_params = {} query_params["from"] = params[:from] if params.key?(:from) query_params["take"] = params.fetch(:take, 50) Auth0::Internal::CursorItemIterator.new( cursor_field: :next_, item_field: :groups, initial_cursor: query_params["from"] ) do |next_cursor| query_params["from"] = next_cursor request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "roles/#{URI.encode_uri_component(params[:id].to_s)}/groups", query: query_params, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Auth0::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) parsed_response = (response.body.to_s.empty? ? nil : Auth0::Types::ListRoleGroupsResponseContent.load(response.body)) [parsed_response, response] else error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end end |