Class: Auth0::DeviceCredentials::Client
- Inherits:
-
Object
- Object
- Auth0::DeviceCredentials::Client
- Defined in:
- lib/auth0/device_credentials/client.rb
Instance Method Summary collapse
-
#create_public_key(request_options: {}, **params) ⇒ Auth0::Types::CreatePublicKeyDeviceCredentialResponseContent
Create a device credential public key to manage refresh token rotation for a given
user_id. -
#delete(request_options: {}, **params) ⇒ untyped
Permanently delete a device credential (such as a refresh token or public key) with the given ID.
- #initialize(client:) ⇒ void constructor
-
#list(request_options: {}, **params) ⇒ Auth0::Types::ListDeviceCredentialsOffsetPaginatedResponseContent
Retrieve device credential information (
public_key,refresh_token, orrotating_refresh_token) associated with a specific user.
Constructor Details
#initialize(client:) ⇒ void
9 10 11 |
# File 'lib/auth0/device_credentials/client.rb', line 9 def initialize(client:) @client = client end |
Instance Method Details
#create_public_key(request_options: {}, **params) ⇒ Auth0::Types::CreatePublicKeyDeviceCredentialResponseContent
Create a device credential public key to manage refresh token rotation for a given user_id. Device Credentials
APIs are designed for ad-hoc administrative use only and paging is by default enabled for GET requests.
When refresh token rotation is enabled, the endpoint becomes consistent. For more information, read Signing Keys.
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
# File 'lib/auth0/device_credentials/client.rb', line 110 def create_public_key(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "POST", path: "device-credentials", body: Auth0::DeviceCredentials::Types::CreatePublicKeyDeviceCredentialRequestContent.new(params).to_h, 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) (response.body.to_s.empty? ? nil : Auth0::Types::CreatePublicKeyDeviceCredentialResponseContent.load(response.body)) else error_class = Auth0::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |
#delete(request_options: {}, **params) ⇒ untyped
Permanently delete a device credential (such as a refresh token or public key) with the given ID.
148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 |
# File 'lib/auth0/device_credentials/client.rb', line 148 def delete(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "DELETE", path: "device-credentials/#{URI.encode_uri_component(params[:id].to_s)}", 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::ListDeviceCredentialsOffsetPaginatedResponseContent
Retrieve device credential information (public_key, refresh_token, or rotating_refresh_token) associated
with a specific user.
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/auth0/device_credentials/client.rb', line 45 def list(request_options: {}, **params) params = Auth0::Internal::Types::Utils.normalize_keys(params) query_params = {} query_params["page"] = params.fetch(:page, 0) query_params["per_page"] = params.fetch(:per_page, 50) query_params["include_totals"] = params.fetch(:include_totals, true) query_params["fields"] = params[:fields] if params.key?(:fields) query_params["include_fields"] = params[:include_fields] if params.key?(:include_fields) query_params["user_id"] = params[:user_id] if params.key?(:user_id) query_params["client_id"] = params[:client_id] if params.key?(:client_id) query_params["type"] = params[:type] if params.key?(:type) Auth0::Internal::OffsetItemIterator.new( initial_page: query_params["page"], item_field: :device_credentials, has_next_field: nil, step: false ) do |next_page| query_params["page"] = next_page request = Auth0::Internal::JSON::Request.new( base_url: [:base_url], method: "GET", path: "device-credentials", 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::ListDeviceCredentialsOffsetPaginatedResponseContent.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 |