Skip to content

Commit cda8ee1

Browse files
feat: add Phone Provider Protection, Token Vault IP allowlist, and Cross App Access requesting app (#758)
Co-authored-by: fern-api[bot] <115122769+fern-api[bot]@users.noreply.github.com>
1 parent f694950 commit cda8ee1

47 files changed

Lines changed: 364 additions & 52 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.fern/metadata.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@
1010
"offsetSemantics": "page-index",
1111
"useDefaultRequestParameterValues": true
1212
},
13-
"originGitCommit": "df7ae8a82270ede4f3c8a94464e34131cd03ddcc",
14-
"originGitCommitIsDirty": true,
15-
"invokedBy": "manual",
13+
"originGitCommit": "708e068ccaf8e7742dbd2e18dea25e4ba5b0ce91",
14+
"originGitCommitIsDirty": false,
15+
"invokedBy": "ci",
16+
"ciProvider": "github",
1617
"sdkVersion": "5.20.1"
1718
}

lib/auth0.rb

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -289,8 +289,16 @@
289289
require_relative "auth0/types/client_token_endpoint_auth_method_enum"
290290
require_relative "auth0/types/client_token_exchange_type_enum"
291291
require_relative "auth0/types/client_token_exchange_configuration"
292+
require_relative "auth0/types/token_vault_privileged_access_ip_allowlist_entry"
293+
require_relative "auth0/types/client_token_vault_privileged_access_with_credential_id"
292294
require_relative "auth0/types/linked_client_configuration"
293295
require_relative "auth0/types/express_configuration"
296+
require_relative "auth0/types/fed_cm_login_google"
297+
require_relative "auth0/types/fed_cm_login"
298+
require_relative "auth0/types/native_social_login_apple"
299+
require_relative "auth0/types/native_social_login_facebook"
300+
require_relative "auth0/types/native_social_login_google"
301+
require_relative "auth0/types/native_social_login"
294302
require_relative "auth0/types/token_quota_client_credentials"
295303
require_relative "auth0/types/token_quota"
296304
require_relative "auth0/types/client"
@@ -323,6 +331,7 @@
323331
require_relative "auth0/types/client_signed_request_object_with_public_key"
324332
require_relative "auth0/types/client_token_endpoint_auth_method_or_null_enum"
325333
require_relative "auth0/types/client_token_exchange_configuration_or_null"
334+
require_relative "auth0/types/client_token_vault_privileged_access_with_public_key"
326335
require_relative "auth0/types/connected_account_access_type_enum"
327336
require_relative "auth0/types/connected_account"
328337
require_relative "auth0/types/connection_https_url_with_http_fallback255"
@@ -477,6 +486,7 @@
477486
require_relative "auth0/types/connection_fields_map_saml_value"
478487
require_relative "auth0/types/connection_fields_map_saml"
479488
require_relative "auth0/types/connection_options"
489+
require_relative "auth0/types/cross_app_access_requesting_app"
480490
require_relative "auth0/types/connection_for_list"
481491
require_relative "auth0/types/connection_for_organization"
482492
require_relative "auth0/types/connection_forward_req_info_sms"
@@ -1796,7 +1806,7 @@
17961806
require_relative "auth0/types/user_authentication_method_properties"
17971807
require_relative "auth0/types/create_user_authentication_method_response_content"
17981808
require_relative "auth0/types/user_app_metadata_schema"
1799-
require_relative "auth0/types/user_date_schema"
1809+
require_relative "auth0/types/user_id"
18001810
require_relative "auth0/types/user_identity_provider_enum"
18011811
require_relative "auth0/types/user_profile_data"
18021812
require_relative "auth0/types/user_identity_schema"
@@ -2186,8 +2196,8 @@
21862196
require_relative "auth0/types/event_stream_subscribe_events_response_content"
21872197
require_relative "auth0/types/event_stream_test_event_type_enum"
21882198
require_relative "auth0/types/express_configuration_or_null"
2189-
require_relative "auth0/types/fed_cm_login_google"
2190-
require_relative "auth0/types/fed_cm_login"
2199+
require_relative "auth0/types/fed_cm_login_google_patch"
2200+
require_relative "auth0/types/fed_cm_login_patch"
21912201
require_relative "auth0/types/federated_connection_token_set"
21922202
require_relative "auth0/types/flow_execution_debug"
21932203
require_relative "auth0/types/flow_execution_summary"
@@ -2302,6 +2312,8 @@
23022312
require_relative "auth0/types/get_organization_invitation_response_content"
23032313
require_relative "auth0/types/get_organization_response_content"
23042314
require_relative "auth0/types/get_partials_response_content"
2315+
require_relative "auth0/types/phone_provider_protection_backoff_strategy_enum"
2316+
require_relative "auth0/types/get_phone_provider_protection_response_content"
23052317
require_relative "auth0/types/get_phone_template_response_content"
23062318
require_relative "auth0/types/get_rate_limit_policy_response_content"
23072319
require_relative "auth0/types/refresh_token_date_object"
@@ -2502,14 +2514,15 @@
25022514
require_relative "auth0/types/log_stream_response_schema"
25032515
require_relative "auth0/types/log_stream_segment_sink"
25042516
require_relative "auth0/types/log_stream_sink_patch"
2505-
require_relative "auth0/types/native_social_login_apple"
2506-
require_relative "auth0/types/native_social_login_facebook"
2507-
require_relative "auth0/types/native_social_login_google"
2508-
require_relative "auth0/types/native_social_login"
2517+
require_relative "auth0/types/native_social_login_apple_patch"
2518+
require_relative "auth0/types/native_social_login_facebook_patch"
2519+
require_relative "auth0/types/native_social_login_google_patch"
2520+
require_relative "auth0/types/native_social_login_patch"
25092521
require_relative "auth0/types/organization_access_level_enum_with_null"
25102522
require_relative "auth0/types/partial_groups_enum"
25112523
require_relative "auth0/types/partial_phone_template_content"
25122524
require_relative "auth0/types/patch_client_credential_response_content"
2525+
require_relative "auth0/types/patch_phone_provider_protection_response_content"
25132526
require_relative "auth0/types/patch_rate_limit_policy_configuration_request_content_zero_action"
25142527
require_relative "auth0/types/patch_rate_limit_policy_configuration_request_content_zero"
25152528
require_relative "auth0/types/patch_rate_limit_policy_configuration_request_content_one_action"
@@ -2726,7 +2739,6 @@
27262739
require_relative "auth0/types/user_attribute_profile_patch_user_id"
27272740
require_relative "auth0/types/user_enrollment_auth_method_enum"
27282741
require_relative "auth0/types/user_enrollment_status_enum"
2729-
require_relative "auth0/types/user_id"
27302742
require_relative "auth0/types/user_identity"
27312743
require_relative "auth0/types/user_list_log_offset_paginated_response_content"
27322744
require_relative "auth0/types/user_multifactor_provider_enum"
@@ -2898,6 +2910,8 @@
28982910
require_relative "auth0/attack_protection/brute_force_protection/types/update_brute_force_settings_request_content"
28992911
require_relative "auth0/attack_protection/captcha/client"
29002912
require_relative "auth0/attack_protection/captcha/types/update_attack_protection_captcha_request_content"
2913+
require_relative "auth0/attack_protection/phone_provider_protection/client"
2914+
require_relative "auth0/attack_protection/phone_provider_protection/types/patch_phone_provider_protection_request_content"
29012915
require_relative "auth0/attack_protection/suspicious_ip_throttling/client"
29022916
require_relative "auth0/attack_protection/suspicious_ip_throttling/types/update_suspicious_ip_throttling_settings_request_content"
29032917
require_relative "auth0/branding/templates/client"

lib/auth0/attack_protection/client.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ def captcha
3030
@captcha ||= Auth0::AttackProtection::Captcha::Client.new(client: @client)
3131
end
3232

33+
# @return [Auth0::PhoneProviderProtection::Client]
34+
def phone_provider_protection
35+
@phone_provider_protection ||= Auth0::AttackProtection::PhoneProviderProtection::Client.new(client: @client)
36+
end
37+
3338
# @return [Auth0::SuspiciousIPThrottling::Client]
3439
def suspicious_ip_throttling
3540
@suspicious_ip_throttling ||= Auth0::AttackProtection::SuspiciousIPThrottling::Client.new(client: @client)
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# frozen_string_literal: true
2+
3+
module Auth0
4+
module AttackProtection
5+
module PhoneProviderProtection
6+
class Client
7+
# @param client [Auth0::Internal::Http::RawClient]
8+
#
9+
# @return [void]
10+
def initialize(client:)
11+
@client = client
12+
end
13+
14+
# Get the phone provider protection configuration for a tenant.
15+
#
16+
# @param request_options [Hash]
17+
# @param _params [Hash]
18+
# @option request_options [String] :base_url
19+
# @option request_options [Hash{String => Object}] :additional_headers
20+
# @option request_options [Hash{String => Object}] :additional_query_parameters
21+
# @option request_options [Hash{String => Object}] :additional_body_parameters
22+
# @option request_options [Integer] :timeout_in_seconds
23+
#
24+
# @return [Auth0::Types::GetPhoneProviderProtectionResponseContent]
25+
def get(request_options: {}, **_params)
26+
request = Auth0::Internal::JSON::Request.new(
27+
base_url: request_options[:base_url],
28+
method: "GET",
29+
path: "attack-protection/phone-provider-protection",
30+
request_options: request_options
31+
)
32+
begin
33+
response = @client.send(request)
34+
rescue Net::HTTPRequestTimeout
35+
raise Auth0::Errors::TimeoutError
36+
end
37+
code = response.code.to_i
38+
if code.between?(200, 299)
39+
Auth0::Types::GetPhoneProviderProtectionResponseContent.load(response.body)
40+
else
41+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
42+
raise error_class.new(response.body, code: code)
43+
end
44+
end
45+
46+
# Update the phone provider protection configuration for a tenant.
47+
#
48+
# @param request_options [Hash]
49+
# @param params [Auth0::AttackProtection::PhoneProviderProtection::Types::PatchPhoneProviderProtectionRequestContent]
50+
# @option request_options [String] :base_url
51+
# @option request_options [Hash{String => Object}] :additional_headers
52+
# @option request_options [Hash{String => Object}] :additional_query_parameters
53+
# @option request_options [Hash{String => Object}] :additional_body_parameters
54+
# @option request_options [Integer] :timeout_in_seconds
55+
#
56+
# @return [Auth0::Types::PatchPhoneProviderProtectionResponseContent]
57+
def patch(request_options: {}, **params)
58+
params = Auth0::Internal::Types::Utils.normalize_keys(params)
59+
request = Auth0::Internal::JSON::Request.new(
60+
base_url: request_options[:base_url],
61+
method: "PATCH",
62+
path: "attack-protection/phone-provider-protection",
63+
body: Auth0::AttackProtection::PhoneProviderProtection::Types::PatchPhoneProviderProtectionRequestContent.new(params).to_h,
64+
request_options: request_options
65+
)
66+
begin
67+
response = @client.send(request)
68+
rescue Net::HTTPRequestTimeout
69+
raise Auth0::Errors::TimeoutError
70+
end
71+
code = response.code.to_i
72+
if code.between?(200, 299)
73+
Auth0::Types::PatchPhoneProviderProtectionResponseContent.load(response.body)
74+
else
75+
error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
76+
raise error_class.new(response.body, code: code)
77+
end
78+
end
79+
end
80+
end
81+
end
82+
end
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# frozen_string_literal: true
2+
3+
module Auth0
4+
module AttackProtection
5+
module PhoneProviderProtection
6+
module Types
7+
class PatchPhoneProviderProtectionRequestContent < Internal::Types::Model
8+
field :type, -> { Auth0::Types::PhoneProviderProtectionBackoffStrategyEnum }, optional: false, nullable: false
9+
end
10+
end
11+
end
12+
end
13+
end

lib/auth0/clients/types/create_client_request_content.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ class CreateClientRequestContent < Internal::Types::Model
9090

9191
field :signed_request_object, -> { Auth0::Types::ClientSignedRequestObjectWithPublicKey }, optional: true, nullable: false
9292

93+
field :token_vault_privileged_access, -> { Auth0::Types::ClientTokenVaultPrivilegedAccessWithPublicKey }, optional: true, nullable: false
94+
9395
field :compliance_level, -> { Auth0::Types::ClientComplianceLevelEnum }, optional: true, nullable: false
9496

9597
field :skip_non_verifiable_callback_uri_confirmation_prompt, -> { Internal::Types::Boolean }, optional: true, nullable: false

lib/auth0/clients/types/update_client_request_content.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,9 @@ class UpdateClientRequestContent < Internal::Types::Model
7474

7575
field :initiate_login_uri, -> { String }, optional: true, nullable: false
7676

77-
field :native_social_login, -> { Auth0::Types::NativeSocialLogin }, optional: true, nullable: false
77+
field :native_social_login, -> { Auth0::Types::NativeSocialLoginPatch }, optional: true, nullable: false
7878

79-
field :fedcm_login, -> { Auth0::Types::FedCmLogin }, optional: true, nullable: false
79+
field :fedcm_login, -> { Auth0::Types::FedCmLoginPatch }, optional: true, nullable: false
8080

8181
field :refresh_token, -> { Auth0::Types::ClientRefreshTokenConfiguration }, optional: true, nullable: false
8282

@@ -96,6 +96,8 @@ class UpdateClientRequestContent < Internal::Types::Model
9696

9797
field :signed_request_object, -> { Auth0::Types::ClientSignedRequestObjectWithCredentialID }, optional: true, nullable: false
9898

99+
field :token_vault_privileged_access, -> { Auth0::Types::ClientTokenVaultPrivilegedAccessWithCredentialID }, optional: true, nullable: false
100+
99101
field :compliance_level, -> { Auth0::Types::ClientComplianceLevelEnum }, optional: true, nullable: false
100102

101103
field :skip_non_verifiable_callback_uri_confirmation_prompt, -> { Internal::Types::Boolean }, optional: true, nullable: false

lib/auth0/connections/types/create_connection_request_content.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ class CreateConnectionRequestContent < Internal::Types::Model
2525
field :authentication, -> { Auth0::Types::ConnectionAuthenticationPurpose }, optional: true, nullable: false
2626

2727
field :connected_accounts, -> { Auth0::Types::ConnectionConnectedAccountsPurpose }, optional: true, nullable: false
28+
29+
field :cross_app_access_requesting_app, -> { Auth0::Types::CrossAppAccessRequestingApp }, optional: true, nullable: false
2830
end
2931
end
3032
end

lib/auth0/connections/types/update_connection_request_content.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ class UpdateConnectionRequestContent < Internal::Types::Model
2323
field :authentication, -> { Auth0::Types::ConnectionAuthenticationPurpose }, optional: true, nullable: false
2424

2525
field :connected_accounts, -> { Auth0::Types::ConnectionConnectedAccountsPurpose }, optional: true, nullable: false
26+
27+
field :cross_app_access_requesting_app, -> { Auth0::Types::CrossAppAccessRequestingApp }, optional: true, nullable: false
2628
end
2729
end
2830
end

lib/auth0/email_templates/client.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ def create(request_options: {}, **params)
4545
end
4646

4747
# Retrieve an email template by pre-defined name. These names are `verify_email`, `verify_email_by_code`,
48-
# `reset_email`, `reset_email_by_code`, `welcome_email`, `blocked_account`, `stolen_credentials`,
49-
# `enrollment_email`, `mfa_oob_code`, `user_invitation`, and `async_approval`. The names `change_password`, and
50-
# `password_reset` are also supported for legacy scenarios.
48+
# `auth_email_by_code`, `reset_email`, `reset_email_by_code`, `welcome_email`, `blocked_account`,
49+
# `stolen_credentials`, `enrollment_email`, `mfa_oob_code`, `user_invitation`, and `async_approval`. The names
50+
# `change_password`, and `password_reset` are also supported for legacy scenarios.
5151
#
5252
# @param request_options [Hash]
5353
# @param params [Hash]

0 commit comments

Comments
 (0)