auth0 6.4.0 → 6.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.fern/metadata.json +3 -3
- data/.fern/replay.lock +7 -1
- data/.version +1 -1
- data/CHANGELOG.md +9 -0
- data/examples/ruby-api/Gemfile.lock +1 -1
- data/lib/auth0/attack_protection/brute_force_protection/types/update_brute_force_settings_request_content.rb +2 -0
- data/lib/auth0/attack_protection/captcha_policies/client.rb +210 -0
- data/lib/auth0/attack_protection/captcha_policies/types/create_attack_protection_captcha_policy_request_content.rb +21 -0
- data/lib/auth0/attack_protection/captcha_policies/types/update_attack_protection_captcha_policy_request_content.rb +23 -0
- data/lib/auth0/attack_protection/client.rb +5 -0
- data/lib/auth0/client.rb +5 -0
- data/lib/auth0/client_grants/client.rb +72 -0
- data/lib/auth0/client_grants/types/search_client_grants_request_parameters.rb +23 -0
- data/lib/auth0/client_profiles/client.rb +233 -0
- data/lib/auth0/client_profiles/types/create_client_profile_request_content.rb +17 -0
- data/lib/auth0/client_profiles/types/list_client_profiles_request_parameters.rb +13 -0
- data/lib/auth0/client_profiles/types/update_client_profile_request_content.rb +19 -0
- data/lib/auth0/clients/client.rb +81 -0
- data/lib/auth0/clients/types/create_client_request_content.rb +2 -0
- data/lib/auth0/clients/types/search_clients_request_parameters.rb +23 -0
- data/lib/auth0/clients/types/update_client_request_content.rb +4 -0
- data/lib/auth0/email_templates/client.rb +14 -2
- data/lib/auth0/experimentation/experiments/client.rb +0 -46
- data/lib/auth0/experimentation/experiments/types/update_experiment_request_parameters.rb +2 -0
- data/lib/auth0/experimentation/feature_flags/client.rb +0 -45
- data/lib/auth0/experimentation/feature_flags/types/update_feature_flag_request_content.rb +2 -0
- data/lib/auth0/experimentation/segments/types/update_segment_request_content.rb +2 -0
- data/lib/auth0/internal/types/model.rb +15 -6
- data/lib/auth0/roles/client.rb +2 -1
- data/lib/auth0/tenants/settings/types/update_tenant_settings_request_content.rb +4 -0
- data/lib/auth0/types/{update_feature_flag_status_response_content.rb → attack_protection_captcha_policy.rb} +5 -4
- data/lib/auth0/types/attack_protection_captcha_policy_action.rb +24 -0
- data/lib/auth0/types/attack_protection_captcha_policy_action_input.rb +24 -0
- data/lib/auth0/types/attack_protection_captcha_policy_match.rb +12 -0
- data/lib/auth0/types/brute_force_protection_form_submission_mode_enum.rb +12 -0
- data/lib/auth0/types/captcha_active_provider_enum.rb +17 -0
- data/lib/auth0/types/captcha_policy_action_arkose.rb +16 -0
- data/lib/auth0/types/captcha_policy_action_arkose_input.rb +18 -0
- data/lib/auth0/types/captcha_policy_action_auth_challenge.rb +10 -0
- data/lib/auth0/types/captcha_policy_action_friendly_captcha.rb +10 -0
- data/lib/auth0/types/captcha_policy_action_friendly_captcha_input.rb +12 -0
- data/lib/auth0/types/captcha_policy_action_hcaptcha.rb +10 -0
- data/lib/auth0/types/captcha_policy_action_hcaptcha_input.rb +12 -0
- data/lib/auth0/types/captcha_policy_action_recaptcha_enterprise.rb +12 -0
- data/lib/auth0/types/captcha_policy_action_recaptcha_enterprise_input.rb +14 -0
- data/lib/auth0/types/captcha_policy_action_recaptcha_v2.rb +10 -0
- data/lib/auth0/types/captcha_policy_action_recaptcha_v2input.rb +12 -0
- data/lib/auth0/types/captcha_policy_action_simple_captcha.rb +8 -0
- data/lib/auth0/types/cimd_external_metadata_created_by_enum.rb +12 -0
- data/lib/auth0/types/client.rb +4 -0
- data/lib/auth0/types/client_anonymous_session_transfer_network_binding_enum.rb +13 -0
- data/lib/auth0/types/client_external_metadata_status_enum.rb +12 -0
- data/lib/auth0/types/client_grant_sort_field_enum.rb +12 -0
- data/lib/auth0/types/client_oidc_support_patch.rb +14 -0
- data/lib/auth0/types/client_profile.rb +21 -0
- data/lib/auth0/types/client_profile_apply_policy.rb +12 -0
- data/lib/auth0/types/client_profile_apply_policy_external_metadata_created_by_enum.rb +11 -0
- data/lib/auth0/types/client_profile_apply_policy_external_metadata_type_enum.rb +11 -0
- data/lib/auth0/types/client_profile_client_configuration.rb +18 -0
- data/lib/auth0/types/client_profile_client_configuration_organization_discovery_method_enum.rb +12 -0
- data/lib/auth0/types/client_profile_client_configuration_organization_discovery_methods.rb +10 -0
- data/lib/auth0/types/client_profile_client_configuration_organization_require_behavior.rb +10 -0
- data/lib/auth0/types/client_profile_client_configuration_organization_require_behavior_enum.rb +13 -0
- data/lib/auth0/types/client_profile_client_configuration_organization_usage.rb +10 -0
- data/lib/auth0/types/client_profile_client_configuration_organization_usage_enum.rb +13 -0
- data/lib/auth0/types/client_profile_client_configuration_refresh_token.rb +14 -0
- data/lib/auth0/types/client_profile_client_configuration_require_proof_of_possession.rb +10 -0
- data/lib/auth0/types/client_profile_description.rb +23 -0
- data/lib/auth0/types/client_profile_id.rb +23 -0
- data/lib/auth0/types/client_profile_name.rb +23 -0
- data/lib/auth0/types/client_profile_refresh_token_idle_token_lifetime.rb +10 -0
- data/lib/auth0/types/client_profile_refresh_token_leeway.rb +10 -0
- data/lib/auth0/types/client_profile_refresh_token_token_lifetime.rb +10 -0
- data/lib/auth0/types/client_search_response.rb +139 -0
- data/lib/auth0/types/client_sort_field_enum.rb +12 -0
- data/lib/auth0/types/connection_profile_provisioning.rb +2 -0
- data/lib/auth0/types/connection_profile_provisioning_google_workspace.rb +10 -0
- data/lib/auth0/types/connection_profile_provisioning_google_workspace_sync_users.rb +23 -0
- data/lib/auth0/types/connection_profile_strategy_overrides_provisioning.rb +2 -0
- data/lib/auth0/types/connection_response_common.rb +6 -6
- data/lib/auth0/types/connection_response_content_ad.rb +2 -2
- data/lib/auth0/types/connection_response_content_adfs.rb +2 -2
- data/lib/auth0/types/connection_response_content_amazon.rb +2 -2
- data/lib/auth0/types/connection_response_content_apple.rb +2 -2
- data/lib/auth0/types/connection_response_content_auth0.rb +2 -2
- data/lib/auth0/types/connection_response_content_auth0oidc.rb +2 -2
- data/lib/auth0/types/connection_response_content_azure_ad.rb +2 -2
- data/lib/auth0/types/connection_response_content_baidu.rb +2 -2
- data/lib/auth0/types/connection_response_content_bitbucket.rb +2 -2
- data/lib/auth0/types/connection_response_content_bitly.rb +2 -2
- data/lib/auth0/types/connection_response_content_box.rb +2 -2
- data/lib/auth0/types/connection_response_content_custom.rb +2 -2
- data/lib/auth0/types/connection_response_content_daccount.rb +2 -2
- data/lib/auth0/types/connection_response_content_dropbox.rb +2 -2
- data/lib/auth0/types/connection_response_content_dwolla.rb +2 -2
- data/lib/auth0/types/connection_response_content_email.rb +2 -2
- data/lib/auth0/types/connection_response_content_evernote.rb +2 -2
- data/lib/auth0/types/connection_response_content_evernote_sandbox.rb +2 -2
- data/lib/auth0/types/connection_response_content_exact.rb +2 -2
- data/lib/auth0/types/connection_response_content_facebook.rb +2 -2
- data/lib/auth0/types/connection_response_content_fitbit.rb +2 -2
- data/lib/auth0/types/connection_response_content_git_hub.rb +2 -2
- data/lib/auth0/types/connection_response_content_google_apps.rb +2 -2
- data/lib/auth0/types/connection_response_content_google_o_auth2.rb +2 -2
- data/lib/auth0/types/connection_response_content_instagram.rb +2 -2
- data/lib/auth0/types/connection_response_content_ip.rb +2 -2
- data/lib/auth0/types/connection_response_content_line.rb +2 -2
- data/lib/auth0/types/connection_response_content_linkedin.rb +2 -2
- data/lib/auth0/types/connection_response_content_o_auth1.rb +2 -2
- data/lib/auth0/types/connection_response_content_o_auth2.rb +2 -2
- data/lib/auth0/types/connection_response_content_office365.rb +2 -2
- data/lib/auth0/types/connection_response_content_oidc.rb +2 -2
- data/lib/auth0/types/connection_response_content_okta.rb +2 -2
- data/lib/auth0/types/connection_response_content_paypal.rb +2 -2
- data/lib/auth0/types/connection_response_content_paypal_sandbox.rb +2 -2
- data/lib/auth0/types/connection_response_content_ping_federate.rb +2 -2
- data/lib/auth0/types/connection_response_content_planning_center.rb +2 -2
- data/lib/auth0/types/connection_response_content_salesforce.rb +2 -2
- data/lib/auth0/types/connection_response_content_salesforce_community.rb +2 -2
- data/lib/auth0/types/connection_response_content_salesforce_sandbox.rb +2 -2
- data/lib/auth0/types/connection_response_content_saml.rb +2 -2
- data/lib/auth0/types/connection_response_content_sharepoint.rb +2 -2
- data/lib/auth0/types/connection_response_content_shop.rb +2 -2
- data/lib/auth0/types/connection_response_content_shopify.rb +2 -2
- data/lib/auth0/types/connection_response_content_sms.rb +2 -2
- data/lib/auth0/types/connection_response_content_soundcloud.rb +2 -2
- data/lib/auth0/types/connection_response_content_thirty_seven_signals.rb +2 -2
- data/lib/auth0/types/connection_response_content_twitter.rb +2 -2
- data/lib/auth0/types/connection_response_content_untappd.rb +2 -2
- data/lib/auth0/types/connection_response_content_vkontakte.rb +2 -2
- data/lib/auth0/types/connection_response_content_weibo.rb +2 -2
- data/lib/auth0/types/connection_response_content_windows_live.rb +2 -2
- data/lib/auth0/types/connection_response_content_wordpress.rb +2 -2
- data/lib/auth0/types/connection_response_content_yahoo.rb +2 -2
- data/lib/auth0/types/connection_response_content_yandex.rb +2 -2
- data/lib/auth0/types/create_client_response_content.rb +4 -0
- data/lib/auth0/types/create_segment_response_content.rb +2 -0
- data/lib/auth0/types/enabled_features_enum.rb +1 -0
- data/lib/auth0/types/event_stream_cloud_event_connection_created_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_connection_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_connection_updated_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_created_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_member_added_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_member_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_role_assigned_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_role_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_group_updated_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_object.rb +2 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_object_organization_member_access_level.rb +18 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_object_organization_member_access_level0enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_object_organization_member_access_level1enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_object_organization_member_access_level2enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_object_organization_member_access_level3enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_previous_object.rb +2 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_previous_object_organization_member_access_l_1dbe67.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_previous_object_organization_member_access_l_4de563.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_previous_object_organization_member_access_l_7087fd.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_previous_object_organization_member_access_l_a4ce06.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_added_previous_object_organization_member_access_level.rb +18 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_removed_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_object.rb +2 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_object_organization_member_access_level.rb +18 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_object_organization_member_access_level0enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_object_organization_member_access_level1enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_object_organization_member_access_level2enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_object_organization_member_access_level3enum.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_previous_object.rb +2 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_previous_object_organization_member_access_3669df.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_previous_object_organization_member_access_55f897.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_previous_object_organization_member_access_66926d.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_previous_object_organization_member_access_88dadc.rb +11 -0
- data/lib/auth0/types/event_stream_cloud_event_org_connection_updated_previous_object_organization_member_access_level.rb +18 -0
- data/lib/auth0/types/event_stream_cloud_event_org_created_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_group_role_assigned_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_group_role_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_member_added_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_member_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_member_role_assigned_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_member_role_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_org_updated_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_user_created_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_user_deleted_cloud_event.rb +1 -1
- data/lib/auth0/types/event_stream_cloud_event_user_updated_cloud_event.rb +1 -1
- data/lib/auth0/types/get_brute_force_settings_response_content.rb +2 -0
- data/lib/auth0/types/get_client_response_content.rb +4 -0
- data/lib/auth0/types/get_segment_response_content.rb +2 -0
- data/lib/auth0/types/get_tenant_settings_response_content.rb +4 -0
- data/lib/auth0/types/list_attack_protection_captcha_policies_response_content.rb +23 -0
- data/lib/auth0/types/list_client_profiles_paginated_response_content.rb +12 -0
- data/lib/auth0/types/oauth_scope.rb +4 -0
- data/lib/auth0/types/preview_cimd_metadata_response_content.rb +2 -0
- data/lib/auth0/types/role_owner_id.rb +23 -0
- data/lib/auth0/types/role_owner_id_filter.rb +23 -0
- data/lib/auth0/types/rotate_client_secret_response_content.rb +4 -0
- data/lib/auth0/types/search_client_grants_response_content.rb +11 -0
- data/lib/auth0/types/search_clients_response_content.rb +11 -0
- data/lib/auth0/types/search_organization.rb +0 -2
- data/lib/auth0/types/segment.rb +2 -0
- data/lib/auth0/types/segment_status_enum.rb +12 -0
- data/lib/auth0/types/system_role_owner_id.rb +11 -0
- data/lib/auth0/types/update_brute_force_settings_response_content.rb +2 -0
- data/lib/auth0/types/update_client_response_content.rb +4 -0
- data/lib/auth0/types/update_segment_response_content.rb +2 -0
- data/lib/auth0/types/update_tenant_settings_response_content.rb +4 -0
- data/lib/auth0/version.rb +1 -1
- data/lib/auth0.rb +84 -5
- data/wiremock/wiremock-mappings.json +479 -91
- metadata +85 -6
- data/lib/auth0/experimentation/experiments/types/update_experiment_status_request_content.rb +0 -15
- data/lib/auth0/experimentation/feature_flags/types/update_feature_flag_status_request_content.rb +0 -15
- data/lib/auth0/types/update_experiment_status_response_content.rb +0 -45
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Auth0
|
|
4
|
+
module ClientProfiles
|
|
5
|
+
class Client
|
|
6
|
+
# @param client [Auth0::Internal::Http::RawClient]
|
|
7
|
+
#
|
|
8
|
+
# @return [void]
|
|
9
|
+
def initialize(client:)
|
|
10
|
+
@client = client
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
# Retrieve a paginated list of client profiles for the tenant. Uses checkpoint pagination: pass the
|
|
14
|
+
# <code>next</code> cursor from a previous response as the <code>from</code> query parameter to retrieve the
|
|
15
|
+
# following page.
|
|
16
|
+
#
|
|
17
|
+
# @param request_options [Hash]
|
|
18
|
+
# @param params [Hash]
|
|
19
|
+
# @option request_options [String] :base_url
|
|
20
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
21
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
22
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
23
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
24
|
+
# @option params [String, nil] :from
|
|
25
|
+
# @option params [Integer, nil] :take
|
|
26
|
+
#
|
|
27
|
+
# @example
|
|
28
|
+
# client.client_profiles.list(
|
|
29
|
+
# from: "from",
|
|
30
|
+
# take: 1
|
|
31
|
+
# )
|
|
32
|
+
#
|
|
33
|
+
# @return [Auth0::Types::ListClientProfilesPaginatedResponseContent]
|
|
34
|
+
def list(request_options: {}, **params)
|
|
35
|
+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
36
|
+
query_params = {}
|
|
37
|
+
query_params["from"] = params[:from] if params.key?(:from)
|
|
38
|
+
query_params["take"] = params.fetch(:take, 50)
|
|
39
|
+
|
|
40
|
+
Auth0::Internal::CursorItemIterator.new(
|
|
41
|
+
cursor_field: :next_,
|
|
42
|
+
item_field: :client_profiles,
|
|
43
|
+
initial_cursor: query_params["from"]
|
|
44
|
+
) do |next_cursor|
|
|
45
|
+
query_params["from"] = next_cursor
|
|
46
|
+
request = Auth0::Internal::JSON::Request.new(
|
|
47
|
+
base_url: request_options[:base_url],
|
|
48
|
+
method: "GET",
|
|
49
|
+
path: "client-profiles",
|
|
50
|
+
query: query_params,
|
|
51
|
+
request_options: request_options
|
|
52
|
+
)
|
|
53
|
+
begin
|
|
54
|
+
response = @client.send(request)
|
|
55
|
+
rescue Net::HTTPRequestTimeout
|
|
56
|
+
raise Auth0::Errors::TimeoutError
|
|
57
|
+
end
|
|
58
|
+
code = response.code.to_i
|
|
59
|
+
if code.between?(200, 299)
|
|
60
|
+
parsed_response = (response.body.to_s.empty? ? nil : Auth0::Types::ListClientProfilesPaginatedResponseContent.load(response.body))
|
|
61
|
+
[parsed_response, response]
|
|
62
|
+
else
|
|
63
|
+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
64
|
+
raise error_class.new(response.body, code: code)
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# Create a client profile. At most one profile is allowed per tenant in this release; attempting to create a
|
|
70
|
+
# second returns <code>409 Conflict</code>. The profile governs Dynamic CIMD clients matched by its
|
|
71
|
+
# <code>apply_policy</code> at runtime.
|
|
72
|
+
#
|
|
73
|
+
# @param request_options [Hash]
|
|
74
|
+
# @param params [Auth0::ClientProfiles::Types::CreateClientProfileRequestContent]
|
|
75
|
+
# @option request_options [String] :base_url
|
|
76
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
77
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
78
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
79
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
80
|
+
#
|
|
81
|
+
# @example
|
|
82
|
+
# client.client_profiles.create(
|
|
83
|
+
# name: "name",
|
|
84
|
+
# client_configuration: {},
|
|
85
|
+
# apply_policy: {
|
|
86
|
+
# external_metadata_type: "cimd",
|
|
87
|
+
# external_metadata_created_by: "client"
|
|
88
|
+
# }
|
|
89
|
+
# )
|
|
90
|
+
#
|
|
91
|
+
# @return [Auth0::Types::ClientProfile]
|
|
92
|
+
def create(request_options: {}, **params)
|
|
93
|
+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
94
|
+
request = Auth0::Internal::JSON::Request.new(
|
|
95
|
+
base_url: request_options[:base_url],
|
|
96
|
+
method: "POST",
|
|
97
|
+
path: "client-profiles",
|
|
98
|
+
body: Auth0::ClientProfiles::Types::CreateClientProfileRequestContent.new(params).to_h,
|
|
99
|
+
request_options: request_options
|
|
100
|
+
)
|
|
101
|
+
begin
|
|
102
|
+
response = @client.send(request)
|
|
103
|
+
rescue Net::HTTPRequestTimeout
|
|
104
|
+
raise Auth0::Errors::TimeoutError
|
|
105
|
+
end
|
|
106
|
+
code = response.code.to_i
|
|
107
|
+
if code.between?(200, 299)
|
|
108
|
+
(response.body.to_s.empty? ? nil : Auth0::Types::ClientProfile.load(response.body))
|
|
109
|
+
else
|
|
110
|
+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
111
|
+
raise error_class.new(response.body, code: code)
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# Retrieve a single client profile by its identifier. Returns <code>404</code> if no profile with the given ID
|
|
116
|
+
# exists for the tenant.
|
|
117
|
+
#
|
|
118
|
+
# @param request_options [Hash]
|
|
119
|
+
# @param params [Hash]
|
|
120
|
+
# @option request_options [String] :base_url
|
|
121
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
122
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
123
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
124
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
125
|
+
# @option params [Auth0::Types::ClientProfileID] :id
|
|
126
|
+
#
|
|
127
|
+
# @example
|
|
128
|
+
# client.client_profiles.get(id: "id")
|
|
129
|
+
#
|
|
130
|
+
# @return [Auth0::Types::ClientProfile]
|
|
131
|
+
def get(request_options: {}, **params)
|
|
132
|
+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
133
|
+
request = Auth0::Internal::JSON::Request.new(
|
|
134
|
+
base_url: request_options[:base_url],
|
|
135
|
+
method: "GET",
|
|
136
|
+
path: "client-profiles/#{URI.encode_uri_component(params[:id].to_s)}",
|
|
137
|
+
request_options: request_options
|
|
138
|
+
)
|
|
139
|
+
begin
|
|
140
|
+
response = @client.send(request)
|
|
141
|
+
rescue Net::HTTPRequestTimeout
|
|
142
|
+
raise Auth0::Errors::TimeoutError
|
|
143
|
+
end
|
|
144
|
+
code = response.code.to_i
|
|
145
|
+
if code.between?(200, 299)
|
|
146
|
+
(response.body.to_s.empty? ? nil : Auth0::Types::ClientProfile.load(response.body))
|
|
147
|
+
else
|
|
148
|
+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
149
|
+
raise error_class.new(response.body, code: code)
|
|
150
|
+
end
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
# Delete a client profile. Idempotent: returns <code>204 No Content</code> whether or not a profile with the given
|
|
154
|
+
# ID existed. Deleting the profile removes fleet governance for matched clients immediately.
|
|
155
|
+
#
|
|
156
|
+
# @param request_options [Hash]
|
|
157
|
+
# @param params [Hash]
|
|
158
|
+
# @option request_options [String] :base_url
|
|
159
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
160
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
161
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
162
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
163
|
+
# @option params [Auth0::Types::ClientProfileID] :id
|
|
164
|
+
#
|
|
165
|
+
# @example
|
|
166
|
+
# client.client_profiles.delete(id: "id")
|
|
167
|
+
#
|
|
168
|
+
# @return [untyped]
|
|
169
|
+
def delete(request_options: {}, **params)
|
|
170
|
+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
171
|
+
request = Auth0::Internal::JSON::Request.new(
|
|
172
|
+
base_url: request_options[:base_url],
|
|
173
|
+
method: "DELETE",
|
|
174
|
+
path: "client-profiles/#{URI.encode_uri_component(params[:id].to_s)}",
|
|
175
|
+
request_options: request_options
|
|
176
|
+
)
|
|
177
|
+
begin
|
|
178
|
+
response = @client.send(request)
|
|
179
|
+
rescue Net::HTTPRequestTimeout
|
|
180
|
+
raise Auth0::Errors::TimeoutError
|
|
181
|
+
end
|
|
182
|
+
code = response.code.to_i
|
|
183
|
+
return if code.between?(200, 299)
|
|
184
|
+
|
|
185
|
+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
186
|
+
raise error_class.new(response.body, code: code)
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
# Update a client profile. Supports partial updates at the top level (JSON Merge Patch); omitted top-level fields
|
|
190
|
+
# remain unchanged. Nested objects such as <code>client_configuration</code> must be supplied in full.
|
|
191
|
+
#
|
|
192
|
+
# @param request_options [Hash]
|
|
193
|
+
# @param params [Auth0::ClientProfiles::Types::UpdateClientProfileRequestContent]
|
|
194
|
+
# @option request_options [String] :base_url
|
|
195
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
196
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
197
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
198
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
199
|
+
# @option params [Auth0::Types::ClientProfileID] :id
|
|
200
|
+
#
|
|
201
|
+
# @example
|
|
202
|
+
# client.client_profiles.update(id: "id")
|
|
203
|
+
#
|
|
204
|
+
# @return [Auth0::Types::ClientProfile]
|
|
205
|
+
def update(request_options: {}, **params)
|
|
206
|
+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
207
|
+
request_data = Auth0::ClientProfiles::Types::UpdateClientProfileRequestContent.new(params).to_h
|
|
208
|
+
non_body_param_names = %w[id]
|
|
209
|
+
body = request_data.except(*non_body_param_names)
|
|
210
|
+
|
|
211
|
+
request = Auth0::Internal::JSON::Request.new(
|
|
212
|
+
base_url: request_options[:base_url],
|
|
213
|
+
method: "PATCH",
|
|
214
|
+
path: "client-profiles/#{URI.encode_uri_component(params[:id].to_s)}",
|
|
215
|
+
body: body,
|
|
216
|
+
request_options: request_options
|
|
217
|
+
)
|
|
218
|
+
begin
|
|
219
|
+
response = @client.send(request)
|
|
220
|
+
rescue Net::HTTPRequestTimeout
|
|
221
|
+
raise Auth0::Errors::TimeoutError
|
|
222
|
+
end
|
|
223
|
+
code = response.code.to_i
|
|
224
|
+
if code.between?(200, 299)
|
|
225
|
+
(response.body.to_s.empty? ? nil : Auth0::Types::ClientProfile.load(response.body))
|
|
226
|
+
else
|
|
227
|
+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
228
|
+
raise error_class.new(response.body, code: code)
|
|
229
|
+
end
|
|
230
|
+
end
|
|
231
|
+
end
|
|
232
|
+
end
|
|
233
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Auth0
|
|
4
|
+
module ClientProfiles
|
|
5
|
+
module Types
|
|
6
|
+
class CreateClientProfileRequestContent < Internal::Types::Model
|
|
7
|
+
field :name, -> { String }, optional: false, nullable: false
|
|
8
|
+
|
|
9
|
+
field :description, -> { String }, optional: true, nullable: false
|
|
10
|
+
|
|
11
|
+
field :client_configuration, -> { Auth0::Types::ClientProfileClientConfiguration }, optional: false, nullable: false
|
|
12
|
+
|
|
13
|
+
field :apply_policy, -> { Auth0::Types::ClientProfileApplyPolicy }, optional: false, nullable: false
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Auth0
|
|
4
|
+
module ClientProfiles
|
|
5
|
+
module Types
|
|
6
|
+
class ListClientProfilesRequestParameters < Internal::Types::Model
|
|
7
|
+
field :from, -> { String }, optional: true, nullable: false
|
|
8
|
+
|
|
9
|
+
field :take, -> { Integer }, optional: true, nullable: false
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Auth0
|
|
4
|
+
module ClientProfiles
|
|
5
|
+
module Types
|
|
6
|
+
class UpdateClientProfileRequestContent < Internal::Types::Model
|
|
7
|
+
field :id, -> { String }, optional: false, nullable: false
|
|
8
|
+
|
|
9
|
+
field :name, -> { String }, optional: true, nullable: false
|
|
10
|
+
|
|
11
|
+
field :description, -> { String }, optional: true, nullable: false
|
|
12
|
+
|
|
13
|
+
field :client_configuration, -> { Auth0::Types::ClientProfileClientConfiguration }, optional: true, nullable: false
|
|
14
|
+
|
|
15
|
+
field :apply_policy, -> { Auth0::Types::ClientProfileApplyPolicy }, optional: true, nullable: false
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
data/lib/auth0/clients/client.rb
CHANGED
|
@@ -257,6 +257,87 @@ module Auth0
|
|
|
257
257
|
end
|
|
258
258
|
end
|
|
259
259
|
|
|
260
|
+
# Search clients using SCIM or Lucene filter syntax with low-latency, eventually consistent results.
|
|
261
|
+
# Use the parser parameter to specify "scim" or "lucene" syntax (default: "lucene").
|
|
262
|
+
# This endpoint provides an alternative to the standard GET /clients endpoint with better performance
|
|
263
|
+
# for complex queries. Results may not reflect recent updates immediately.
|
|
264
|
+
#
|
|
265
|
+
# - This endpoint only supports `read:clients` and `read:client_summary` scopes. The `read:client_keys` and
|
|
266
|
+
# `read:client_credentials` scopes are not supported.
|
|
267
|
+
# - The following fields are never returned by this endpoint:
|
|
268
|
+
# - `client_secret`
|
|
269
|
+
# - `encryption_key`
|
|
270
|
+
# - `signing_keys`
|
|
271
|
+
# - `owners`
|
|
272
|
+
# - `addons`
|
|
273
|
+
#
|
|
274
|
+
# @param request_options [Hash]
|
|
275
|
+
# @param params [Hash]
|
|
276
|
+
# @option request_options [String] :base_url
|
|
277
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
278
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
279
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
280
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
281
|
+
# @option params [String, nil] :q
|
|
282
|
+
# @option params [Auth0::Types::SearchParserEnum, nil] :parser
|
|
283
|
+
# @option params [String, nil] :fields
|
|
284
|
+
# @option params [Boolean, nil] :include_fields
|
|
285
|
+
# @option params [Integer, nil] :take
|
|
286
|
+
# @option params [String, nil] :from
|
|
287
|
+
# @option params [Auth0::Types::ClientSortFieldEnum, nil] :sort
|
|
288
|
+
#
|
|
289
|
+
# @example
|
|
290
|
+
# client.clients.search(
|
|
291
|
+
# q: "q",
|
|
292
|
+
# parser: "scim",
|
|
293
|
+
# fields: "fields",
|
|
294
|
+
# include_fields: true,
|
|
295
|
+
# take: 1,
|
|
296
|
+
# from: "from",
|
|
297
|
+
# sort: "name"
|
|
298
|
+
# )
|
|
299
|
+
#
|
|
300
|
+
# @return [Auth0::Types::SearchClientsResponseContent]
|
|
301
|
+
def search(request_options: {}, **params)
|
|
302
|
+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
303
|
+
query_params = {}
|
|
304
|
+
query_params["q"] = params[:q] if params.key?(:q)
|
|
305
|
+
query_params["parser"] = params[:parser] if params.key?(:parser)
|
|
306
|
+
query_params["fields"] = params[:fields] if params.key?(:fields)
|
|
307
|
+
query_params["include_fields"] = params[:include_fields] if params.key?(:include_fields)
|
|
308
|
+
query_params["take"] = params.fetch(:take, 50)
|
|
309
|
+
query_params["from"] = params[:from] if params.key?(:from)
|
|
310
|
+
query_params["sort"] = params[:sort] if params.key?(:sort)
|
|
311
|
+
|
|
312
|
+
Auth0::Internal::CursorItemIterator.new(
|
|
313
|
+
cursor_field: :next_,
|
|
314
|
+
item_field: :clients,
|
|
315
|
+
initial_cursor: query_params["from"]
|
|
316
|
+
) do |next_cursor|
|
|
317
|
+
query_params["from"] = next_cursor
|
|
318
|
+
request = Auth0::Internal::JSON::Request.new(
|
|
319
|
+
base_url: request_options[:base_url],
|
|
320
|
+
method: "GET",
|
|
321
|
+
path: "clients/search",
|
|
322
|
+
query: query_params,
|
|
323
|
+
request_options: request_options
|
|
324
|
+
)
|
|
325
|
+
begin
|
|
326
|
+
response = @client.send(request)
|
|
327
|
+
rescue Net::HTTPRequestTimeout
|
|
328
|
+
raise Auth0::Errors::TimeoutError
|
|
329
|
+
end
|
|
330
|
+
code = response.code.to_i
|
|
331
|
+
if code.between?(200, 299)
|
|
332
|
+
parsed_response = (response.body.to_s.empty? ? nil : Auth0::Types::SearchClientsResponseContent.load(response.body))
|
|
333
|
+
[parsed_response, response]
|
|
334
|
+
else
|
|
335
|
+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
336
|
+
raise error_class.new(response.body, code: code)
|
|
337
|
+
end
|
|
338
|
+
end
|
|
339
|
+
end
|
|
340
|
+
|
|
260
341
|
# Retrieve client details by ID. Clients are SSO connections or Applications linked with your Auth0 tenant. A list
|
|
261
342
|
# of fields to include or exclude may also be specified.
|
|
262
343
|
# For more information, read [Applications in Auth0](https://www.auth0.com/docs/get-started/applications) and
|
|
@@ -108,6 +108,8 @@ module Auth0
|
|
|
108
108
|
|
|
109
109
|
field :anonymous_sessions, -> { Auth0::Types::CreateAnonymousSessions }, optional: true, nullable: false
|
|
110
110
|
|
|
111
|
+
field :enforce_anon_session_transfer_network_binding, -> { Auth0::Types::ClientAnonymousSessionTransferNetworkBindingEnum }, optional: true, nullable: false
|
|
112
|
+
|
|
111
113
|
field :third_party_security_mode, -> { Auth0::Types::ClientThirdPartySecurityModeEnum }, optional: true, nullable: false
|
|
112
114
|
|
|
113
115
|
field :redirection_policy, -> { Auth0::Types::ClientRedirectionPolicyEnum }, optional: true, nullable: false
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Auth0
|
|
4
|
+
module Clients
|
|
5
|
+
module Types
|
|
6
|
+
class SearchClientsRequestParameters < Internal::Types::Model
|
|
7
|
+
field :q, -> { String }, optional: true, nullable: false
|
|
8
|
+
|
|
9
|
+
field :parser, -> { Auth0::Types::SearchParserEnum }, optional: true, nullable: false
|
|
10
|
+
|
|
11
|
+
field :fields, -> { String }, optional: true, nullable: false
|
|
12
|
+
|
|
13
|
+
field :include_fields, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
14
|
+
|
|
15
|
+
field :take, -> { Integer }, optional: true, nullable: false
|
|
16
|
+
|
|
17
|
+
field :from, -> { String }, optional: true, nullable: false
|
|
18
|
+
|
|
19
|
+
field :sort, -> { Auth0::Types::ClientSortFieldEnum }, optional: true, nullable: false
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -68,6 +68,8 @@ module Auth0
|
|
|
68
68
|
|
|
69
69
|
field :anonymous_sessions, -> { Auth0::Types::UpdateAnonymousSessions }, optional: true, nullable: false
|
|
70
70
|
|
|
71
|
+
field :enforce_anon_session_transfer_network_binding, -> { Auth0::Types::ClientAnonymousSessionTransferNetworkBindingEnum }, optional: true, nullable: false
|
|
72
|
+
|
|
71
73
|
field :form_template, -> { String }, optional: true, nullable: false
|
|
72
74
|
|
|
73
75
|
field :addons, -> { Auth0::Types::ClientAddons }, optional: true, nullable: false
|
|
@@ -121,6 +123,8 @@ module Auth0
|
|
|
121
123
|
field :third_party_security_mode, -> { Auth0::Types::ClientThirdPartySecurityModeEnum }, optional: true, nullable: false
|
|
122
124
|
|
|
123
125
|
field :redirection_policy, -> { Auth0::Types::ClientRedirectionPolicyEnum }, optional: true, nullable: false
|
|
126
|
+
|
|
127
|
+
field :oidc_support, -> { Auth0::Types::ClientOidcSupportPatch }, optional: true, nullable: false
|
|
124
128
|
end
|
|
125
129
|
end
|
|
126
130
|
end
|
|
@@ -21,7 +21,14 @@ module Auth0
|
|
|
21
21
|
# @option request_options [Integer] :timeout_in_seconds
|
|
22
22
|
#
|
|
23
23
|
# @example
|
|
24
|
-
# client.email_templates.create(
|
|
24
|
+
# client.email_templates.create(
|
|
25
|
+
# template: "verify_email",
|
|
26
|
+
# body: nil,
|
|
27
|
+
# from: nil,
|
|
28
|
+
# subject: nil,
|
|
29
|
+
# syntax: nil,
|
|
30
|
+
# enabled: nil
|
|
31
|
+
# )
|
|
25
32
|
#
|
|
26
33
|
# @return [Auth0::Types::CreateEmailTemplateResponseContent]
|
|
27
34
|
def create(request_options: {}, **params)
|
|
@@ -101,7 +108,12 @@ module Auth0
|
|
|
101
108
|
# @example
|
|
102
109
|
# client.email_templates.set(
|
|
103
110
|
# template_name: "verify_email",
|
|
104
|
-
# template: "verify_email"
|
|
111
|
+
# template: "verify_email",
|
|
112
|
+
# body: nil,
|
|
113
|
+
# from: nil,
|
|
114
|
+
# subject: nil,
|
|
115
|
+
# syntax: nil,
|
|
116
|
+
# enabled: nil
|
|
105
117
|
# )
|
|
106
118
|
#
|
|
107
119
|
# @return [Auth0::Types::SetEmailTemplateResponseContent]
|
|
@@ -278,52 +278,6 @@ module Auth0
|
|
|
278
278
|
end
|
|
279
279
|
end
|
|
280
280
|
|
|
281
|
-
# Transitions an experiment through its lifecycle: draft → active, active → paused, paused → active,
|
|
282
|
-
# active/paused → completed. Activation runs full readiness validation.
|
|
283
|
-
#
|
|
284
|
-
# @param request_options [Hash]
|
|
285
|
-
# @param params [Auth0::Experimentation::Experiments::Types::UpdateExperimentStatusRequestContent]
|
|
286
|
-
# @option request_options [String] :base_url
|
|
287
|
-
# @option request_options [Hash{String => Object}] :additional_headers
|
|
288
|
-
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
289
|
-
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
290
|
-
# @option request_options [Integer] :timeout_in_seconds
|
|
291
|
-
# @option params [String] :id
|
|
292
|
-
#
|
|
293
|
-
# @example
|
|
294
|
-
# client.experimentation.experiments.update_status(
|
|
295
|
-
# id: "id",
|
|
296
|
-
# status: "active"
|
|
297
|
-
# )
|
|
298
|
-
#
|
|
299
|
-
# @return [Auth0::Types::UpdateExperimentStatusResponseContent]
|
|
300
|
-
def update_status(request_options: {}, **params)
|
|
301
|
-
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
302
|
-
request_data = Auth0::Experimentation::Experiments::Types::UpdateExperimentStatusRequestContent.new(params).to_h
|
|
303
|
-
non_body_param_names = %w[id]
|
|
304
|
-
body = request_data.except(*non_body_param_names)
|
|
305
|
-
|
|
306
|
-
request = Auth0::Internal::JSON::Request.new(
|
|
307
|
-
base_url: request_options[:base_url],
|
|
308
|
-
method: "POST",
|
|
309
|
-
path: "experimentation/experiments/#{URI.encode_uri_component(params[:id].to_s)}/status",
|
|
310
|
-
body: body,
|
|
311
|
-
request_options: request_options
|
|
312
|
-
)
|
|
313
|
-
begin
|
|
314
|
-
response = @client.send(request)
|
|
315
|
-
rescue Net::HTTPRequestTimeout
|
|
316
|
-
raise Auth0::Errors::TimeoutError
|
|
317
|
-
end
|
|
318
|
-
code = response.code.to_i
|
|
319
|
-
if code.between?(200, 299)
|
|
320
|
-
(response.body.to_s.empty? ? nil : Auth0::Types::UpdateExperimentStatusResponseContent.load(response.body))
|
|
321
|
-
else
|
|
322
|
-
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
323
|
-
raise error_class.new(response.body, code: code)
|
|
324
|
-
end
|
|
325
|
-
end
|
|
326
|
-
|
|
327
281
|
# Checks whether an experiment is ready to be activated. Returns is_valid boolean and an errors array describing
|
|
328
282
|
# any blockers. Read-only; no state is modified.
|
|
329
283
|
#
|
|
@@ -18,6 +18,8 @@ module Auth0
|
|
|
18
18
|
field :default_config, -> { Auth0::Types::DefaultConfigEnum }, optional: true, nullable: false
|
|
19
19
|
|
|
20
20
|
field :levels, -> { Internal::Types::Array[Integer] }, optional: true, nullable: false
|
|
21
|
+
|
|
22
|
+
field :status, -> { Auth0::Types::ExperimentTransitionStatusEnum }, optional: true, nullable: false
|
|
21
23
|
end
|
|
22
24
|
end
|
|
23
25
|
end
|
|
@@ -225,51 +225,6 @@ module Auth0
|
|
|
225
225
|
end
|
|
226
226
|
end
|
|
227
227
|
|
|
228
|
-
# Transitions a feature flag through its lifecycle states: draft → active, draft → archived, active → archived.
|
|
229
|
-
#
|
|
230
|
-
# @param request_options [Hash]
|
|
231
|
-
# @param params [Auth0::Experimentation::FeatureFlags::Types::UpdateFeatureFlagStatusRequestContent]
|
|
232
|
-
# @option request_options [String] :base_url
|
|
233
|
-
# @option request_options [Hash{String => Object}] :additional_headers
|
|
234
|
-
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
235
|
-
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
236
|
-
# @option request_options [Integer] :timeout_in_seconds
|
|
237
|
-
# @option params [String] :id
|
|
238
|
-
#
|
|
239
|
-
# @example
|
|
240
|
-
# client.experimentation.feature_flags.update_status(
|
|
241
|
-
# id: "id",
|
|
242
|
-
# status: "draft"
|
|
243
|
-
# )
|
|
244
|
-
#
|
|
245
|
-
# @return [Auth0::Types::UpdateFeatureFlagStatusResponseContent]
|
|
246
|
-
def update_status(request_options: {}, **params)
|
|
247
|
-
params = Auth0::Internal::Types::Utils.normalize_keys(params)
|
|
248
|
-
request_data = Auth0::Experimentation::FeatureFlags::Types::UpdateFeatureFlagStatusRequestContent.new(params).to_h
|
|
249
|
-
non_body_param_names = %w[id]
|
|
250
|
-
body = request_data.except(*non_body_param_names)
|
|
251
|
-
|
|
252
|
-
request = Auth0::Internal::JSON::Request.new(
|
|
253
|
-
base_url: request_options[:base_url],
|
|
254
|
-
method: "POST",
|
|
255
|
-
path: "experimentation/feature-flags/#{URI.encode_uri_component(params[:id].to_s)}/status",
|
|
256
|
-
body: body,
|
|
257
|
-
request_options: request_options
|
|
258
|
-
)
|
|
259
|
-
begin
|
|
260
|
-
response = @client.send(request)
|
|
261
|
-
rescue Net::HTTPRequestTimeout
|
|
262
|
-
raise Auth0::Errors::TimeoutError
|
|
263
|
-
end
|
|
264
|
-
code = response.code.to_i
|
|
265
|
-
if code.between?(200, 299)
|
|
266
|
-
(response.body.to_s.empty? ? nil : Auth0::Types::UpdateFeatureFlagStatusResponseContent.load(response.body))
|
|
267
|
-
else
|
|
268
|
-
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
|
|
269
|
-
raise error_class.new(response.body, code: code)
|
|
270
|
-
end
|
|
271
|
-
end
|
|
272
|
-
|
|
273
228
|
# @return [Auth0::Variations::Client]
|
|
274
229
|
def variations
|
|
275
230
|
@variations ||= Auth0::Experimentation::FeatureFlags::Variations::Client.new(client: @client)
|
|
@@ -12,6 +12,8 @@ module Auth0
|
|
|
12
12
|
field :description, -> { String }, optional: true, nullable: false
|
|
13
13
|
|
|
14
14
|
field :parameters, -> { Internal::Types::Hash[String, Auth0::Types::FeatureFlagConfigParam] }, optional: true, nullable: false
|
|
15
|
+
|
|
16
|
+
field :status, -> { Auth0::Types::FeatureFlagStatusEnum }, optional: true, nullable: false
|
|
15
17
|
end
|
|
16
18
|
end
|
|
17
19
|
end
|
|
@@ -12,6 +12,8 @@ module Auth0
|
|
|
12
12
|
field :description, -> { String }, optional: true, nullable: false
|
|
13
13
|
|
|
14
14
|
field :rules, -> { Internal::Types::Array[Auth0::Types::SegmentRule] }, optional: true, nullable: false
|
|
15
|
+
|
|
16
|
+
field :status, -> { Auth0::Types::SegmentStatusEnum }, optional: true, nullable: false
|
|
15
17
|
end
|
|
16
18
|
end
|
|
17
19
|
end
|
|
@@ -141,13 +141,22 @@ module Auth0
|
|
|
141
141
|
values = Utils.symbolize_keys(values.dup)
|
|
142
142
|
|
|
143
143
|
self.class.fields.each do |field_name, field|
|
|
144
|
-
|
|
144
|
+
# key?/nil? checks keep an explicit `false`, and both keys are consumed so neither leaks into extra fields
|
|
145
|
+
value = nil
|
|
146
|
+
[field.api_name.to_sym, field_name].uniq.each do |key|
|
|
147
|
+
next unless values.key?(key)
|
|
145
148
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
149
|
+
candidate = values.delete(key)
|
|
150
|
+
value = candidate if value.nil?
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
field_value = if !value.nil?
|
|
154
|
+
value
|
|
155
|
+
elsif field.literal?
|
|
156
|
+
field.value
|
|
157
|
+
elsif !field.default.nil?
|
|
158
|
+
field.default
|
|
159
|
+
end
|
|
151
160
|
|
|
152
161
|
@data[field_name] = Utils.coerce(field.type, field_value)
|
|
153
162
|
end
|
data/lib/auth0/roles/client.rb
CHANGED
|
@@ -10,7 +10,8 @@ module Auth0
|
|
|
10
10
|
@client = client
|
|
11
11
|
end
|
|
12
12
|
|
|
13
|
-
# Retrieve
|
|
13
|
+
# Retrieve a list of roles. Includes roles created in your tenant and, when `owner_id=auth0` is supplied,
|
|
14
|
+
# Auth0-managed System Roles.
|
|
14
15
|
#
|
|
15
16
|
# **Note**: The returned list does not include standard roles available for tenant members, such as Admin or
|
|
16
17
|
# Support Access.
|
|
@@ -77,12 +77,16 @@ module Auth0
|
|
|
77
77
|
|
|
78
78
|
field :authorization_response_iss_parameter_supported, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
79
79
|
|
|
80
|
+
field :dpop_strict_refresh_token_binding, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
81
|
+
|
|
80
82
|
field :skip_non_verifiable_callback_uri_confirmation_prompt, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
81
83
|
|
|
82
84
|
field :resource_parameter_profile, -> { Auth0::Types::TenantSettingsResourceParameterProfile }, optional: true, nullable: false
|
|
83
85
|
|
|
84
86
|
field :client_id_metadata_document_supported, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
85
87
|
|
|
88
|
+
field :client_id_metadata_document_dynamic_registration_supported, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
89
|
+
|
|
86
90
|
field :enable_ai_guide, -> { Internal::Types::Boolean }, optional: true, nullable: false
|
|
87
91
|
|
|
88
92
|
field :phone_consolidated_experience, -> { Internal::Types::Boolean }, optional: true, nullable: false
|