Class: Auth0::Users::Organizations::Client
- Inherits:
-
Object
- Object
- Auth0::Users::Organizations::Client
- Defined in:
- lib/auth0/users/organizations/client.rb
Instance Method Summary collapse
- #initialize(client:) ⇒ void constructor
-
#list(request_options: {}, **params) ⇒ Auth0::Types::ListUserOrganizationsOffsetPaginatedResponseContent
Retrieve list of the specified user's current Organization memberships.
Constructor Details
#initialize(client:) ⇒ void
10 11 12 |
# File 'lib/auth0/users/organizations/client.rb', line 10 def initialize(client:) @client = client end |
Instance Method Details
#list(request_options: {}, **params) ⇒ Auth0::Types::ListUserOrganizationsOffsetPaginatedResponseContent
Retrieve list of the specified user's current Organization memberships. User must be specified by user ID. For more information, review Auth0 Organizations.
This endpoint supports two types of pagination:
- Offset pagination
- Checkpoint pagination
Checkpoint pagination must be used if you need to retrieve more than 1000 organizations.
Checkpoint Pagination
To search by checkpoint, use the following parameters:
from: Optional id from which to start selection.take: The total number of entries to retrieve when using thefromparameter. Defaults to 50.
Note: The first time you call this endpoint using checkpoint pagination, omit the from parameter. If
there are more results, a next value is included in the response. You can use this for subsequent API calls.
When next is no longer included in the response, no pages are remaining.
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 |
# File 'lib/auth0/users/organizations/client.rb', line 48 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) Auth0::Internal::OffsetItemIterator.new( initial_page: query_params["page"], item_field: :organizations, 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: "users/#{URI.encode_uri_component(params[:id].to_s)}/organizations", 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 = Auth0::Types::ListUserOrganizationsOffsetPaginatedResponseContent.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 |