auth0 6.3.0 → 6.4.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.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +5 -4
  3. data/.fern/replay.lock +7 -1
  4. data/.version +1 -1
  5. data/CHANGELOG.md +6 -0
  6. data/examples/ruby-api/Gemfile.lock +1 -1
  7. data/lib/auth0/clients/types/create_client_request_content.rb +2 -0
  8. data/lib/auth0/experimentation/client.rb +10 -0
  9. data/lib/auth0/experimentation/experiments/client.rb +304 -0
  10. data/lib/auth0/experimentation/experiments/types/create_experiment_request_content.rb +27 -0
  11. data/lib/auth0/experimentation/experiments/types/list_experiments_request_parameters.rb +21 -0
  12. data/lib/auth0/experimentation/experiments/types/update_experiment_request_parameters.rb +25 -0
  13. data/lib/auth0/experimentation/experiments/types/update_experiment_status_request_content.rb +15 -0
  14. data/lib/auth0/experimentation/feature_flags/client.rb +280 -0
  15. data/lib/auth0/experimentation/feature_flags/types/create_feature_flag_request_content.rb +17 -0
  16. data/lib/auth0/experimentation/feature_flags/types/list_feature_flags_request_parameters.rb +19 -0
  17. data/lib/auth0/experimentation/feature_flags/types/update_feature_flag_request_content.rb +19 -0
  18. data/lib/auth0/experimentation/feature_flags/types/update_feature_flag_status_request_content.rb +15 -0
  19. data/lib/auth0/experimentation/feature_flags/variations/client.rb +230 -0
  20. data/lib/auth0/experimentation/feature_flags/variations/types/create_variation_request_content.rb +21 -0
  21. data/lib/auth0/experimentation/feature_flags/variations/types/update_variation_request_content.rb +23 -0
  22. data/lib/auth0/experimentation/segments/client.rb +228 -0
  23. data/lib/auth0/experimentation/segments/types/create_segment_request_content.rb +17 -0
  24. data/lib/auth0/experimentation/segments/types/list_segments_request_parameters.rb +17 -0
  25. data/lib/auth0/experimentation/segments/types/update_segment_request_content.rb +19 -0
  26. data/lib/auth0/organizations/client.rb +0 -5
  27. data/lib/auth0/resource_servers/types/create_resource_server_request_content.rb +2 -0
  28. data/lib/auth0/resource_servers/types/update_resource_server_request_content.rb +2 -0
  29. data/lib/auth0/types/allocation_item.rb +27 -0
  30. data/lib/auth0/types/allocation_request_item.rb +19 -0
  31. data/lib/auth0/types/{connection_deletion_behavior_enum.rb → allocation_strategy_enum.rb} +3 -3
  32. data/lib/auth0/types/async_approval_notifications_channels_enum.rb +1 -0
  33. data/lib/auth0/types/authentication_flow_enum.rb +16 -0
  34. data/lib/auth0/types/client_oidc_backchannel_logout_initiators_enum.rb +1 -0
  35. data/lib/auth0/types/client_oidc_support_allowed_scopes_enum.rb +14 -0
  36. data/lib/auth0/types/client_oidc_support_post.rb +15 -0
  37. data/lib/auth0/types/create_experiment_response_content.rb +45 -0
  38. data/lib/auth0/types/create_feature_flag_parameters.rb +23 -0
  39. data/lib/auth0/types/create_feature_flag_response_content.rb +23 -0
  40. data/lib/auth0/types/create_resource_server_response_content.rb +2 -0
  41. data/lib/auth0/types/create_segment_response_content.rb +21 -0
  42. data/lib/auth0/types/create_variation_response_content.rb +21 -0
  43. data/lib/auth0/types/{organization_deletion_behavior_enum.rb → default_config_enum.rb} +3 -3
  44. data/lib/auth0/types/experiment_list_item.rb +45 -0
  45. data/lib/auth0/types/experiment_status_enum.rb +15 -0
  46. data/lib/auth0/types/experiment_transition_status_enum.rb +14 -0
  47. data/lib/auth0/types/experiment_validation_error.rb +11 -0
  48. data/lib/auth0/types/feature_flag.rb +23 -0
  49. data/lib/auth0/types/feature_flag_config_param.rb +13 -0
  50. data/lib/auth0/types/feature_flag_config_param_type_enum.rb +15 -0
  51. data/lib/auth0/types/feature_flag_config_params.rb +23 -0
  52. data/lib/auth0/types/feature_flag_status_enum.rb +13 -0
  53. data/lib/auth0/types/feature_flag_type_enum.rb +12 -0
  54. data/lib/auth0/types/get_experiment_response_content.rb +45 -0
  55. data/lib/auth0/types/get_feature_flag_response_content.rb +23 -0
  56. data/lib/auth0/types/get_resource_server_response_content.rb +2 -0
  57. data/lib/auth0/types/get_segment_response_content.rb +21 -0
  58. data/lib/auth0/types/get_variation_response_content.rb +21 -0
  59. data/lib/auth0/types/list_experiments_response_content.rb +11 -0
  60. data/lib/auth0/types/list_feature_flags_response_content.rb +11 -0
  61. data/lib/auth0/types/list_segments_response_content.rb +11 -0
  62. data/lib/auth0/types/list_variations_response_content.rb +9 -0
  63. data/lib/auth0/types/oauth_scope.rb +3 -1
  64. data/lib/auth0/types/resource_server.rb +2 -0
  65. data/lib/auth0/types/resource_server_search_response.rb +2 -0
  66. data/lib/auth0/types/segment.rb +21 -0
  67. data/lib/auth0/types/segment_contains_expression.rb +9 -0
  68. data/lib/auth0/types/segment_ends_with_expression.rb +9 -0
  69. data/lib/auth0/types/segment_exists_expression.rb +9 -0
  70. data/lib/auth0/types/segment_match_conditions.rb +30 -0
  71. data/lib/auth0/types/segment_match_expression.rb +19 -0
  72. data/lib/auth0/types/segment_not_match_conditions.rb +30 -0
  73. data/lib/auth0/types/segment_rule.rb +11 -0
  74. data/lib/auth0/types/segment_starts_with_expression.rb +9 -0
  75. data/lib/auth0/types/segment_type_enum.rb +12 -0
  76. data/lib/auth0/types/segment_type_filter_enum.rb +12 -0
  77. data/lib/auth0/types/update_experiment_response_content.rb +45 -0
  78. data/lib/auth0/types/update_experiment_status_response_content.rb +45 -0
  79. data/lib/auth0/types/update_feature_flag_parameters.rb +23 -0
  80. data/lib/auth0/types/update_feature_flag_response_content.rb +23 -0
  81. data/lib/auth0/types/update_feature_flag_status_response_content.rb +23 -0
  82. data/lib/auth0/types/update_resource_server_response_content.rb +2 -0
  83. data/lib/auth0/types/update_segment_response_content.rb +21 -0
  84. data/lib/auth0/types/update_variation_overrides_map.rb +23 -0
  85. data/lib/auth0/types/update_variation_response_content.rb +21 -0
  86. data/lib/auth0/types/validate_experiment_response_content.rb +11 -0
  87. data/lib/auth0/types/variation.rb +21 -0
  88. data/lib/auth0/types/variation_overrides_map.rb +23 -0
  89. data/lib/auth0/users/client.rb +24 -17
  90. data/lib/auth0/version.rb +1 -1
  91. data/lib/auth0.rb +68 -9
  92. data/wiremock/wiremock-mappings.json +861 -123
  93. metadata +70 -11
  94. data/lib/auth0/organizations/organization_template/client.rb +0 -132
  95. data/lib/auth0/types/organization_template.rb +0 -39
  96. data/lib/auth0/types/organization_template_allowed_strategy_enum.rb +0 -17
  97. data/lib/auth0/types/organization_template_role_visibility_enum.rb +0 -13
  98. data/lib/auth0/types/organization_template_role_visibility_override.rb +0 -12
  99. data/lib/auth0/types/organization_template_role_visibility_policy.rb +0 -12
  100. data/lib/auth0/types/organization_template_use_for_organization_discovery.rb +0 -12
@@ -0,0 +1,228 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Experimentation
5
+ module Segments
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
+ # Retrieve a paginated list of segments for the 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
+ # @option params [String, nil] :from
24
+ # @option params [Integer, nil] :take
25
+ # @option params [Auth0::Types::SegmentTypeFilterEnum, nil] :type
26
+ #
27
+ # @example
28
+ # client.experimentation.segments.list(
29
+ # from: "from",
30
+ # take: 1,
31
+ # type: "auth0"
32
+ # )
33
+ #
34
+ # @return [Auth0::Types::ListSegmentsResponseContent]
35
+ def list(request_options: {}, **params)
36
+ params = Auth0::Internal::Types::Utils.normalize_keys(params)
37
+ query_params = {}
38
+ query_params["from"] = params[:from] if params.key?(:from)
39
+ query_params["take"] = params.fetch(:take, 50)
40
+ query_params["type"] = params[:type] if params.key?(:type)
41
+
42
+ Auth0::Internal::CursorItemIterator.new(
43
+ cursor_field: :next_,
44
+ item_field: :segments,
45
+ initial_cursor: query_params["from"]
46
+ ) do |next_cursor|
47
+ query_params["from"] = next_cursor
48
+ request = Auth0::Internal::JSON::Request.new(
49
+ base_url: request_options[:base_url],
50
+ method: "GET",
51
+ path: "experimentation/segments",
52
+ query: query_params,
53
+ request_options: request_options
54
+ )
55
+ begin
56
+ response = @client.send(request)
57
+ rescue Net::HTTPRequestTimeout
58
+ raise Auth0::Errors::TimeoutError
59
+ end
60
+ code = response.code.to_i
61
+ if code.between?(200, 299)
62
+ parsed_response = (response.body.to_s.empty? ? nil : Auth0::Types::ListSegmentsResponseContent.load(response.body))
63
+ [parsed_response, response]
64
+ else
65
+ error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
66
+ raise error_class.new(response.body, code: code)
67
+ end
68
+ end
69
+ end
70
+
71
+ # Create a new segment with rule-based membership criteria for use in experiments.
72
+ #
73
+ # @param request_options [Hash]
74
+ # @param params [Auth0::Experimentation::Segments::Types::CreateSegmentRequestContent]
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.experimentation.segments.create(
83
+ # name: "name",
84
+ # rules: [{}]
85
+ # )
86
+ #
87
+ # @return [Auth0::Types::CreateSegmentResponseContent]
88
+ def create(request_options: {}, **params)
89
+ params = Auth0::Internal::Types::Utils.normalize_keys(params)
90
+ request = Auth0::Internal::JSON::Request.new(
91
+ base_url: request_options[:base_url],
92
+ method: "POST",
93
+ path: "experimentation/segments",
94
+ body: Auth0::Experimentation::Segments::Types::CreateSegmentRequestContent.new(params).to_h,
95
+ request_options: request_options
96
+ )
97
+ begin
98
+ response = @client.send(request)
99
+ rescue Net::HTTPRequestTimeout
100
+ raise Auth0::Errors::TimeoutError
101
+ end
102
+ code = response.code.to_i
103
+ if code.between?(200, 299)
104
+ (response.body.to_s.empty? ? nil : Auth0::Types::CreateSegmentResponseContent.load(response.body))
105
+ else
106
+ error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
107
+ raise error_class.new(response.body, code: code)
108
+ end
109
+ end
110
+
111
+ # Retrieve a single segment by its ID.
112
+ #
113
+ # @param request_options [Hash]
114
+ # @param params [Hash]
115
+ # @option request_options [String] :base_url
116
+ # @option request_options [Hash{String => Object}] :additional_headers
117
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
118
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
119
+ # @option request_options [Integer] :timeout_in_seconds
120
+ # @option params [String] :id
121
+ #
122
+ # @example
123
+ # client.experimentation.segments.get(id: "id")
124
+ #
125
+ # @return [Auth0::Types::GetSegmentResponseContent]
126
+ def get(request_options: {}, **params)
127
+ params = Auth0::Internal::Types::Utils.normalize_keys(params)
128
+ request = Auth0::Internal::JSON::Request.new(
129
+ base_url: request_options[:base_url],
130
+ method: "GET",
131
+ path: "experimentation/segments/#{URI.encode_uri_component(params[:id].to_s)}",
132
+ request_options: request_options
133
+ )
134
+ begin
135
+ response = @client.send(request)
136
+ rescue Net::HTTPRequestTimeout
137
+ raise Auth0::Errors::TimeoutError
138
+ end
139
+ code = response.code.to_i
140
+ if code.between?(200, 299)
141
+ (response.body.to_s.empty? ? nil : Auth0::Types::GetSegmentResponseContent.load(response.body))
142
+ else
143
+ error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
144
+ raise error_class.new(response.body, code: code)
145
+ end
146
+ end
147
+
148
+ # Delete a segment by ID. Idempotent: returns 204 even if segment does not exist.
149
+ #
150
+ # @param request_options [Hash]
151
+ # @param params [Hash]
152
+ # @option request_options [String] :base_url
153
+ # @option request_options [Hash{String => Object}] :additional_headers
154
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
155
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
156
+ # @option request_options [Integer] :timeout_in_seconds
157
+ # @option params [String] :id
158
+ #
159
+ # @example
160
+ # client.experimentation.segments.delete(id: "id")
161
+ #
162
+ # @return [untyped]
163
+ def delete(request_options: {}, **params)
164
+ params = Auth0::Internal::Types::Utils.normalize_keys(params)
165
+ request = Auth0::Internal::JSON::Request.new(
166
+ base_url: request_options[:base_url],
167
+ method: "DELETE",
168
+ path: "experimentation/segments/#{URI.encode_uri_component(params[:id].to_s)}",
169
+ request_options: request_options
170
+ )
171
+ begin
172
+ response = @client.send(request)
173
+ rescue Net::HTTPRequestTimeout
174
+ raise Auth0::Errors::TimeoutError
175
+ end
176
+ code = response.code.to_i
177
+ return if code.between?(200, 299)
178
+
179
+ error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
180
+ raise error_class.new(response.body, code: code)
181
+ end
182
+
183
+ # Partially update a segment by ID. Only provided fields are updated. Sending rules replaces the entire rules
184
+ # array.
185
+ #
186
+ # @param request_options [Hash]
187
+ # @param params [Auth0::Experimentation::Segments::Types::UpdateSegmentRequestContent]
188
+ # @option request_options [String] :base_url
189
+ # @option request_options [Hash{String => Object}] :additional_headers
190
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
191
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
192
+ # @option request_options [Integer] :timeout_in_seconds
193
+ # @option params [String] :id
194
+ #
195
+ # @example
196
+ # client.experimentation.segments.update(id: "id")
197
+ #
198
+ # @return [Auth0::Types::UpdateSegmentResponseContent]
199
+ def update(request_options: {}, **params)
200
+ params = Auth0::Internal::Types::Utils.normalize_keys(params)
201
+ request_data = Auth0::Experimentation::Segments::Types::UpdateSegmentRequestContent.new(params).to_h
202
+ non_body_param_names = %w[id]
203
+ body = request_data.except(*non_body_param_names)
204
+
205
+ request = Auth0::Internal::JSON::Request.new(
206
+ base_url: request_options[:base_url],
207
+ method: "PATCH",
208
+ path: "experimentation/segments/#{URI.encode_uri_component(params[:id].to_s)}",
209
+ body: body,
210
+ request_options: request_options
211
+ )
212
+ begin
213
+ response = @client.send(request)
214
+ rescue Net::HTTPRequestTimeout
215
+ raise Auth0::Errors::TimeoutError
216
+ end
217
+ code = response.code.to_i
218
+ if code.between?(200, 299)
219
+ (response.body.to_s.empty? ? nil : Auth0::Types::UpdateSegmentResponseContent.load(response.body))
220
+ else
221
+ error_class = Auth0::Errors::ResponseError.subclass_for_code(code)
222
+ raise error_class.new(response.body, code: code)
223
+ end
224
+ end
225
+ end
226
+ end
227
+ end
228
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Experimentation
5
+ module Segments
6
+ module Types
7
+ class CreateSegmentRequestContent < Internal::Types::Model
8
+ field :name, -> { String }, optional: false, nullable: false
9
+
10
+ field :description, -> { String }, optional: true, nullable: false
11
+
12
+ field :rules, -> { Internal::Types::Array[Auth0::Types::SegmentRule] }, optional: false, nullable: false
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Experimentation
5
+ module Segments
6
+ module Types
7
+ class ListSegmentsRequestParameters < Internal::Types::Model
8
+ field :from, -> { String }, optional: true, nullable: false
9
+
10
+ field :take, -> { Integer }, optional: true, nullable: false
11
+
12
+ field :type, -> { Auth0::Types::SegmentTypeFilterEnum }, optional: true, nullable: false
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Experimentation
5
+ module Segments
6
+ module Types
7
+ class UpdateSegmentRequestContent < Internal::Types::Model
8
+ field :id, -> { String }, optional: false, nullable: false
9
+
10
+ field :name, -> { String }, optional: true, nullable: false
11
+
12
+ field :description, -> { String }, optional: true, nullable: false
13
+
14
+ field :rules, -> { Internal::Types::Array[Auth0::Types::SegmentRule] }, optional: true, nullable: false
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -402,11 +402,6 @@ module Auth0
402
402
  @members ||= Auth0::Organizations::Members::Client.new(client: @client)
403
403
  end
404
404
 
405
- # @return [Auth0::OrganizationTemplate::Client]
406
- def organization_template
407
- @organization_template ||= Auth0::Organizations::OrganizationTemplate::Client.new(client: @client)
408
- end
409
-
410
405
  # @return [Auth0::Groups::Client]
411
406
  def groups
412
407
  @groups ||= Auth0::Organizations::Groups::Client.new(client: @client)
@@ -36,6 +36,8 @@ module Auth0
36
36
 
37
37
  field :consent_policy, -> { Auth0::Types::ResourceServerConsentPolicyEnum }, optional: true, nullable: false
38
38
 
39
+ field :require_consent_non_repudiation, -> { Internal::Types::Boolean }, optional: true, nullable: false
40
+
39
41
  field :authorization_details, -> { Internal::Types::Array[Object] }, optional: true, nullable: false
40
42
 
41
43
  field :proof_of_possession, -> { Auth0::Types::ResourceServerProofOfPossession }, optional: true, nullable: false
@@ -36,6 +36,8 @@ module Auth0
36
36
 
37
37
  field :consent_policy, -> { Auth0::Types::ResourceServerConsentPolicyEnum }, optional: true, nullable: false
38
38
 
39
+ field :require_consent_non_repudiation, -> { Internal::Types::Boolean }, optional: true, nullable: false
40
+
39
41
  field :authorization_details, -> { Internal::Types::Array[Object] }, optional: true, nullable: false
40
42
 
41
43
  field :proof_of_possession, -> { Auth0::Types::ResourceServerProofOfPossession }, optional: true, nullable: false
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class AllocationItem < Internal::Types::Model
6
+ field :variation_id, -> { String }, optional: true, nullable: false
7
+
8
+ field :variation_name, -> { String }, optional: true, nullable: false
9
+
10
+ field :segment_id, -> { String }, optional: true, nullable: false
11
+
12
+ field :segment_name, -> { String }, optional: true, nullable: false
13
+
14
+ field :weight, -> { Integer }, optional: true, nullable: false
15
+
16
+ field :priority, -> { Integer }, optional: true, nullable: false
17
+
18
+ field :is_control, -> { Internal::Types::Boolean }, optional: true, nullable: false
19
+
20
+ field :is_fallback, -> { Internal::Types::Boolean }, optional: true, nullable: false
21
+
22
+ field :variation_snapshot, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
23
+
24
+ field :segment_snapshot, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class AllocationRequestItem < Internal::Types::Model
6
+ field :variation_id, -> { String }, optional: false, nullable: false
7
+
8
+ field :weight, -> { Integer }, optional: true, nullable: false
9
+
10
+ field :segment_id, -> { String }, optional: true, nullable: false
11
+
12
+ field :priority, -> { Integer }, optional: true, nullable: false
13
+
14
+ field :is_control, -> { Internal::Types::Boolean }, optional: false, nullable: false
15
+
16
+ field :is_fallback, -> { Internal::Types::Boolean }, optional: true, nullable: false
17
+ end
18
+ end
19
+ end
@@ -2,11 +2,11 @@
2
2
 
3
3
  module Auth0
4
4
  module Types
5
- module ConnectionDeletionBehaviorEnum
5
+ module AllocationStrategyEnum
6
6
  extend Auth0::Internal::Types::Enum
7
7
 
8
- ALLOW = "allow"
9
- ALLOW_IF_EMPTY = "allow_if_empty"
8
+ PERCENTAGE = "percentage"
9
+ SEGMENT = "segment"
10
10
  end
11
11
  end
12
12
  end
@@ -7,6 +7,7 @@ module Auth0
7
7
 
8
8
  GUARDIAN_PUSH = "guardian-push"
9
9
  EMAIL = "email"
10
+ MY_ACCOUNT = "my-account"
10
11
  end
11
12
  end
12
13
  end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ module AuthenticationFlowEnum
6
+ extend Auth0::Internal::Types::Enum
7
+
8
+ AUTHENTICATION = "authentication"
9
+ MFA_ENROLLMENT = "mfa_enrollment"
10
+ MFA_CHALLENGE = "mfa_challenge"
11
+ PASSWORD_RESET = "password_reset"
12
+ PASSKEY_ENROLLMENT = "passkey_enrollment"
13
+ ALL = "all"
14
+ end
15
+ end
16
+ end
@@ -14,6 +14,7 @@ module Auth0
14
14
  EMAIL_IDENTIFIER_CHANGED = "email-identifier-changed"
15
15
  MFA_PHONE_UNENROLLED = "mfa-phone-unenrolled"
16
16
  ACCOUNT_DEACTIVATED = "account-deactivated"
17
+ PROFILE_CHANGED = "profile-changed"
17
18
  end
18
19
  end
19
20
  end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ module ClientOidcSupportAllowedScopesEnum
6
+ extend Auth0::Internal::Types::Enum
7
+
8
+ PROFILE = "profile"
9
+ EMAIL = "email"
10
+ ADDRESS = "address"
11
+ PHONE = "phone"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ # OIDC support configuration for a client. Controls whether OIDC flows are allowed and which scopes the client may
6
+ # request.
7
+ class ClientOidcSupportPost < Internal::Types::Model
8
+ field :is_allowed, -> { Internal::Types::Boolean }, optional: false, nullable: false
9
+
10
+ field :allow_all_scopes, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
+
12
+ field :allowed_scopes, -> { Internal::Types::Array[Auth0::Types::ClientOidcSupportAllowedScopesEnum] }, optional: true, nullable: false
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class CreateExperimentResponseContent < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :name, -> { String }, optional: false, nullable: false
9
+
10
+ field :description, -> { String }, optional: true, nullable: false
11
+
12
+ field :feature_flag_id, -> { String }, optional: false, nullable: false
13
+
14
+ field :feature_flag_name, -> { String }, optional: true, nullable: false
15
+
16
+ field :authentication_flow, -> { String }, optional: false, nullable: false
17
+
18
+ field :allocation_strategy, -> { Auth0::Types::AllocationStrategyEnum }, optional: false, nullable: false
19
+
20
+ field :status, -> { Auth0::Types::ExperimentStatusEnum }, optional: false, nullable: false
21
+
22
+ field :is_valid, -> { Internal::Types::Boolean }, optional: false, nullable: false
23
+
24
+ field :default_config, -> { Auth0::Types::DefaultConfigEnum }, optional: true, nullable: false
25
+
26
+ field :feature_flag_snapshot, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
27
+
28
+ field :allocations, -> { Internal::Types::Array[Auth0::Types::AllocationItem] }, optional: false, nullable: false
29
+
30
+ field :editable_fields, -> { Internal::Types::Array[String] }, optional: false, nullable: false
31
+
32
+ field :levels, -> { Internal::Types::Array[Integer] }, optional: true, nullable: false
33
+
34
+ field :current_level, -> { Integer }, optional: true, nullable: false
35
+
36
+ field :started_at, -> { String }, optional: true, nullable: false
37
+
38
+ field :ended_at, -> { String }, optional: true, nullable: false
39
+
40
+ field :created_at, -> { String }, optional: false, nullable: false
41
+
42
+ field :updated_at, -> { String }, optional: false, nullable: false
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ module CreateFeatureFlagParameters
6
+ # CreateFeatureFlagParameters is an alias for Hash
7
+
8
+ # @option str [String]
9
+ #
10
+ # @return [untyped]
11
+ def self.load(str)
12
+ ::JSON.parse(str)
13
+ end
14
+
15
+ # @option value [untyped]
16
+ #
17
+ # @return [String]
18
+ def self.dump(value)
19
+ ::JSON.generate(value)
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class CreateFeatureFlagResponseContent < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :name, -> { String }, optional: false, nullable: false
9
+
10
+ field :description, -> { String }, optional: true, nullable: false
11
+
12
+ field :type, -> { Auth0::Types::FeatureFlagTypeEnum }, optional: false, nullable: false
13
+
14
+ field :status, -> { Auth0::Types::FeatureFlagStatusEnum }, optional: false, nullable: false
15
+
16
+ field :parameters, -> { Internal::Types::Hash[String, Auth0::Types::FeatureFlagConfigParam] }, optional: true, nullable: false
17
+
18
+ field :created_at, -> { String }, optional: false, nullable: false
19
+
20
+ field :updated_at, -> { String }, optional: false, nullable: false
21
+ end
22
+ end
23
+ end
@@ -41,6 +41,8 @@ module Auth0
41
41
 
42
42
  field :consent_policy, -> { Auth0::Types::ResourceServerConsentPolicyEnum }, optional: true, nullable: false
43
43
 
44
+ field :require_consent_non_repudiation, -> { Internal::Types::Boolean }, optional: true, nullable: false
45
+
44
46
  field :authorization_details, -> { Internal::Types::Array[Object] }, optional: true, nullable: false
45
47
 
46
48
  field :proof_of_possession, -> { Auth0::Types::ResourceServerProofOfPossession }, optional: true, nullable: false
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class CreateSegmentResponseContent < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :name, -> { String }, optional: false, nullable: false
9
+
10
+ field :description, -> { String }, optional: true, nullable: false
11
+
12
+ field :type, -> { Auth0::Types::SegmentTypeEnum }, optional: false, nullable: false
13
+
14
+ field :rules, -> { Internal::Types::Array[Auth0::Types::SegmentRule] }, optional: false, nullable: false
15
+
16
+ field :created_at, -> { String }, optional: false, nullable: false
17
+
18
+ field :updated_at, -> { String }, optional: false, nullable: false
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class CreateVariationResponseContent < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :feature_flag_id, -> { String }, optional: false, nullable: false
9
+
10
+ field :name, -> { String }, optional: false, nullable: false
11
+
12
+ field :description, -> { String }, optional: true, nullable: false
13
+
14
+ field :overrides, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
15
+
16
+ field :created_at, -> { String }, optional: false, nullable: false
17
+
18
+ field :updated_at, -> { String }, optional: false, nullable: false
19
+ end
20
+ end
21
+ end
@@ -2,11 +2,11 @@
2
2
 
3
3
  module Auth0
4
4
  module Types
5
- module OrganizationDeletionBehaviorEnum
5
+ module DefaultConfigEnum
6
6
  extend Auth0::Internal::Types::Enum
7
7
 
8
- ALLOW = "allow"
9
- ALLOW_IF_EMPTY = "allow_if_empty"
8
+ TENANT = "tenant"
9
+ FLAG = "flag"
10
10
  end
11
11
  end
12
12
  end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Auth0
4
+ module Types
5
+ class ExperimentListItem < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :name, -> { String }, optional: false, nullable: false
9
+
10
+ field :description, -> { String }, optional: true, nullable: false
11
+
12
+ field :feature_flag_id, -> { String }, optional: false, nullable: false
13
+
14
+ field :feature_flag_name, -> { String }, optional: true, nullable: false
15
+
16
+ field :authentication_flow, -> { String }, optional: false, nullable: false
17
+
18
+ field :allocation_strategy, -> { Auth0::Types::AllocationStrategyEnum }, optional: false, nullable: false
19
+
20
+ field :status, -> { Auth0::Types::ExperimentStatusEnum }, optional: false, nullable: false
21
+
22
+ field :is_valid, -> { Internal::Types::Boolean }, optional: false, nullable: false
23
+
24
+ field :default_config, -> { Auth0::Types::DefaultConfigEnum }, optional: true, nullable: false
25
+
26
+ field :feature_flag_snapshot, -> { Internal::Types::Hash[String, Object] }, optional: true, nullable: false
27
+
28
+ field :allocations, -> { Internal::Types::Array[Auth0::Types::AllocationItem] }, optional: false, nullable: false
29
+
30
+ field :editable_fields, -> { Internal::Types::Array[String] }, optional: false, nullable: false
31
+
32
+ field :levels, -> { Internal::Types::Array[Integer] }, optional: true, nullable: false
33
+
34
+ field :current_level, -> { Integer }, optional: true, nullable: false
35
+
36
+ field :started_at, -> { String }, optional: true, nullable: false
37
+
38
+ field :ended_at, -> { String }, optional: true, nullable: false
39
+
40
+ field :created_at, -> { String }, optional: false, nullable: false
41
+
42
+ field :updated_at, -> { String }, optional: false, nullable: false
43
+ end
44
+ end
45
+ end