Class: Auth0::Users::Permissions::Client
- Inherits:
-
Object
- Object
- Auth0::Users::Permissions::Client
- Defined in:
- lib/auth0/users/permissions/client.rb
Instance Method Summary collapse
-
#create(request_options: {}, **params) ⇒ untyped
Assign permissions to a user.
-
#delete(request_options: {}, **params) ⇒ untyped
Remove permissions from a user.
- #initialize(client:) ⇒ void constructor
-
#list(request_options: {}, **params) ⇒ Auth0::Types::ListUserPermissionsOffsetPaginatedResponseContent
Retrieve all permissions associated with the user.
Constructor Details
#initialize(client:) ⇒ void
10 11 12 |
# File 'lib/auth0/users/permissions/client.rb', line 10 def initialize(client:) @client = client end |
Instance Method Details
#create(request_options: {}, **params) ⇒ untyped
Assign permissions to a user.
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/auth0/users/permissions/client.rb', line 79 def create(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request_data = Auth0::Users::Permissions::Types::CreateUserPermissionsRequestContent.new(params).to_h non_body_param_names = ["id"] body = request_data.except(*non_body_param_names) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "POST", path: "users/#{URI.encode_uri_component(params[:id].to_s)}/permissions", 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
Remove permissions from a user.
116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
# File 'lib/auth0/users/permissions/client.rb', line 116 def delete(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request_data = Auth0::Users::Permissions::Types::DeleteUserPermissionsRequestContent.new(params).to_h non_body_param_names = ["id"] body = request_data.except(*non_body_param_names) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "DELETE", path: "users/#{URI.encode_uri_component(params[:id].to_s)}/permissions", 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 |
#list(request_options: {}, **params) ⇒ Auth0::Types::ListUserPermissionsOffsetPaginatedResponseContent
Retrieve all permissions associated with the user.
29 30 31 32 33 34 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 |
# File 'lib/auth0/users/permissions/client.rb', line 29 def list(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) query_param_names = %i[per_page page include_totals] query_params = {} query_params["per_page"] = params.fetch(:per_page, 50) query_params["page"] = params.fetch(:page, 0) query_params["include_totals"] = params.fetch(:include_totals, true) params = params.except(*query_param_names) Auth0::Internal::OffsetItemIterator.new( initial_page: query_params["page"], item_field: :permissions, has_next_field: nil, step: true ) do |next_page| query_params["page"] = next_page request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "users/#{URI.encode_uri_component(params[:id].to_s)}/permissions", 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) Auth0::Types::ListUserPermissionsOffsetPaginatedResponseContent.load(response.body) else error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end end |