authentik-api 2026.2.2 → 2026.5.0.rc1

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 (218) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/README_API.md +67 -15
  4. data/lib/authentik/api/api/admin_api.rb +5 -13
  5. data/lib/authentik/api/api/authenticators_api.rb +60 -60
  6. data/lib/authentik/api/api/core_api.rb +188 -63
  7. data/lib/authentik/api/api/crypto_api.rb +9 -13
  8. data/lib/authentik/api/api/endpoints_api.rb +1600 -679
  9. data/lib/authentik/api/api/enterprise_api.rb +5 -5
  10. data/lib/authentik/api/api/events_api.rb +141 -58
  11. data/lib/authentik/api/api/flows_api.rb +24 -106
  12. data/lib/authentik/api/api/lifecycle_api.rb +27 -18
  13. data/lib/authentik/api/api/managed_api.rb +79 -6
  14. data/lib/authentik/api/api/oauth2_api.rb +9 -9
  15. data/lib/authentik/api/api/outposts_api.rb +22 -22
  16. data/lib/authentik/api/api/policies_api.rb +57 -58
  17. data/lib/authentik/api/api/propertymappings_api.rb +79 -79
  18. data/lib/authentik/api/api/providers_api.rb +134 -196
  19. data/lib/authentik/api/api/rac_api.rb +10 -10
  20. data/lib/authentik/api/api/rbac_api.rb +15 -20
  21. data/lib/authentik/api/api/reports_api.rb +2 -2
  22. data/lib/authentik/api/api/schema_api.rb +4 -12
  23. data/lib/authentik/api/api/sources_api.rb +158 -219
  24. data/lib/authentik/api/api/ssf_api.rb +64 -7
  25. data/lib/authentik/api/api/stages_api.rb +723 -244
  26. data/lib/authentik/api/api/tasks_api.rb +11 -19
  27. data/lib/authentik/api/api/tenants_api.rb +10 -10
  28. data/lib/authentik/api/models/account_lockdown_stage.rb +372 -0
  29. data/lib/authentik/api/models/account_lockdown_stage_request.rb +219 -0
  30. data/lib/authentik/api/models/app_enum.rb +3 -2
  31. data/lib/authentik/api/models/apple_independent_secure_enclave.rb +246 -0
  32. data/lib/authentik/api/models/apple_independent_secure_enclave_request.rb +273 -0
  33. data/lib/authentik/api/models/application.rb +14 -4
  34. data/lib/authentik/api/models/application_request.rb +14 -4
  35. data/lib/authentik/api/models/authenticated_session_user_agent_device.rb +2 -30
  36. data/lib/authentik/api/models/authenticated_session_user_agent_os.rb +4 -60
  37. data/lib/authentik/api/models/authentication_enum.rb +2 -1
  38. data/lib/authentik/api/models/authenticator_validate_stage.rb +51 -4
  39. data/lib/authentik/api/models/authenticator_validate_stage_request.rb +51 -4
  40. data/lib/authentik/api/models/authenticator_web_authn_stage.rb +23 -2
  41. data/lib/authentik/api/models/authenticator_web_authn_stage_request.rb +23 -2
  42. data/lib/authentik/api/models/{flow_import_result.rb → blueprint_import_result.rb} +4 -4
  43. data/lib/authentik/api/models/brand.rb +11 -1
  44. data/lib/authentik/api/models/brand_request.rb +11 -1
  45. data/lib/authentik/api/models/certificate_key_pair.rb +1 -1
  46. data/lib/authentik/api/models/certificate_key_pair_key_type_enum.rb +37 -0
  47. data/lib/authentik/api/models/compatibility_mode_enum.rb +3 -1
  48. data/lib/authentik/api/models/{consent_stage_mode_enum.rb → consent_mode_enum.rb} +3 -3
  49. data/lib/authentik/api/models/consent_stage.rb +1 -1
  50. data/lib/authentik/api/models/consent_stage_request.rb +1 -1
  51. data/lib/authentik/api/models/country_code_enum.rb +3 -3
  52. data/lib/authentik/api/models/current_brand.rb +10 -1
  53. data/lib/authentik/api/models/current_brand_flags.rb +31 -27
  54. data/lib/authentik/api/models/delivery_method_enum.rb +3 -1
  55. data/lib/authentik/api/models/device_user_binding.rb +3 -45
  56. data/lib/authentik/api/models/event_matcher_policy.rb +15 -5
  57. data/lib/authentik/api/models/event_matcher_policy_request.rb +30 -5
  58. data/lib/authentik/api/models/event_stats.rb +187 -0
  59. data/lib/authentik/api/models/event_volume.rb +1 -1
  60. data/lib/authentik/api/models/events_requested_enum.rb +7 -1
  61. data/lib/authentik/api/models/force_binding_enum.rb +34 -0
  62. data/lib/authentik/api/models/{resident_key_requirement_enum.rb → format_enum.rb} +6 -7
  63. data/lib/authentik/api/models/geo_ip_policy.rb +1 -1
  64. data/lib/authentik/api/models/{detailed_country_field.rb → geo_ip_policy_countries_obj_inner.rb} +22 -26
  65. data/lib/authentik/api/models/google_chrome_connector.rb +326 -0
  66. data/lib/authentik/api/models/google_chrome_connector_request.rb +214 -0
  67. data/lib/authentik/api/models/grant_types_enum.rb +39 -0
  68. data/lib/authentik/api/models/group_ldap_source_connection.rb +30 -4
  69. data/lib/authentik/api/models/iframe_logout_challenge.rb +1 -1
  70. data/lib/authentik/api/models/invitation_send_email_request.rb +213 -0
  71. data/lib/authentik/api/models/key_type_enum.rb +3 -3
  72. data/lib/authentik/api/models/lang_enum.rb +131 -0
  73. data/lib/authentik/api/models/lifecycle_iteration.rb +30 -86
  74. data/lib/authentik/api/models/logout_url.rb +209 -0
  75. data/lib/authentik/api/models/model_enum.rb +3 -1
  76. data/lib/authentik/api/models/native_logout_challenge.rb +68 -37
  77. data/lib/authentik/api/models/notification_rule.rb +1 -15
  78. data/lib/authentik/api/models/notification_transport.rb +13 -2
  79. data/lib/authentik/api/models/notification_transport_request.rb +13 -2
  80. data/lib/authentik/api/models/o_auth2_provider.rb +12 -1
  81. data/lib/authentik/api/models/o_auth2_provider_request.rb +12 -1
  82. data/lib/authentik/api/models/operating_system.rb +0 -17
  83. data/lib/authentik/api/models/operating_system_request.rb +2 -9
  84. data/lib/authentik/api/models/paginated_account_lockdown_stage_list.rb +214 -0
  85. data/lib/authentik/api/models/paginated_apple_independent_secure_enclave_list.rb +214 -0
  86. data/lib/authentik/api/models/paginated_extra_role_object_permission_list.rb +32 -4
  87. data/lib/authentik/api/models/paginated_google_chrome_connector_list.rb +214 -0
  88. data/lib/authentik/api/models/patched_account_lockdown_stage_request.rb +212 -0
  89. data/lib/authentik/api/models/patched_apple_independent_secure_enclave_request.rb +235 -0
  90. data/lib/authentik/api/models/patched_application_request.rb +14 -4
  91. data/lib/authentik/api/models/patched_authenticator_validate_stage_request.rb +51 -4
  92. data/lib/authentik/api/models/patched_authenticator_web_authn_stage_request.rb +23 -2
  93. data/lib/authentik/api/models/patched_brand_request.rb +11 -1
  94. data/lib/authentik/api/models/patched_consent_stage_request.rb +1 -1
  95. data/lib/authentik/api/models/patched_event_matcher_policy_request.rb +30 -5
  96. data/lib/authentik/api/models/patched_google_chrome_connector_request.rb +190 -0
  97. data/lib/authentik/api/models/patched_notification_transport_request.rb +13 -2
  98. data/lib/authentik/api/models/patched_o_auth2_provider_request.rb +12 -1
  99. data/lib/authentik/api/models/patched_saml_provider_request.rb +17 -27
  100. data/lib/authentik/api/models/patched_saml_source_request.rb +11 -1
  101. data/lib/authentik/api/models/patched_settings_request_flags.rb +31 -27
  102. data/lib/authentik/api/models/patched_ssf_provider_request.rb +13 -4
  103. data/lib/authentik/api/models/policy_binding.rb +3 -45
  104. data/lib/authentik/api/models/prompt_type_enum.rb +4 -1
  105. data/lib/authentik/api/models/redirect_uri.rb +13 -4
  106. data/lib/authentik/api/models/redirect_uri_request.rb +13 -4
  107. data/lib/authentik/api/models/redirect_uri_type_enum.rb +34 -0
  108. data/lib/authentik/api/models/related_rule.rb +250 -0
  109. data/lib/authentik/api/models/saml_metadata.rb +0 -2
  110. data/lib/authentik/api/models/saml_provider.rb +98 -8
  111. data/lib/authentik/api/models/saml_provider_request.rb +17 -27
  112. data/lib/authentik/api/models/saml_source.rb +11 -1
  113. data/lib/authentik/api/models/saml_source_request.rb +11 -1
  114. data/lib/authentik/api/models/ssf_provider.rb +41 -4
  115. data/lib/authentik/api/models/ssf_provider_request.rb +13 -4
  116. data/lib/authentik/api/models/ssf_stream.rb +10 -1
  117. data/lib/authentik/api/models/ssf_stream_status_enum.rb +36 -0
  118. data/lib/authentik/api/models/task.rb +1 -1
  119. data/lib/authentik/api/models/{task_state_enum.rb → task_status_enum.rb} +3 -3
  120. data/lib/authentik/api/models/{notification_transport_mode_enum.rb → transport_mode_enum.rb} +3 -3
  121. data/lib/authentik/api/models/usage_enum.rb +33 -0
  122. data/lib/authentik/api/models/user_account_lockdown_request.rb +144 -0
  123. data/lib/authentik/api/models/user_ldap_source_connection.rb +30 -4
  124. data/lib/authentik/api/models/user_password_hash_set_request.rb +168 -0
  125. data/lib/authentik/api/models/vendor_enum.rb +2 -1
  126. data/lib/authentik/api/models/web_authn_hint_enum.rb +35 -0
  127. data/lib/authentik/api/version.rb +1 -1
  128. data/spec/api/admin_api_spec.rb +2 -2
  129. data/spec/api/core_api_spec.rb +27 -3
  130. data/spec/api/crypto_api_spec.rb +1 -1
  131. data/spec/api/endpoints_api_spec.rb +167 -0
  132. data/spec/api/events_api_spec.rb +33 -7
  133. data/spec/api/flows_api_spec.rb +4 -16
  134. data/spec/api/lifecycle_api_spec.rb +6 -3
  135. data/spec/api/managed_api_spec.rb +13 -0
  136. data/spec/api/policies_api_spec.rb +2 -1
  137. data/spec/api/providers_api_spec.rb +21 -19
  138. data/spec/api/schema_api_spec.rb +2 -2
  139. data/spec/api/sources_api_spec.rb +17 -16
  140. data/spec/api/ssf_api_spec.rb +12 -1
  141. data/spec/api/stages_api_spec.rb +117 -18
  142. data/spec/api/tasks_api_spec.rb +2 -2
  143. data/spec/models/account_lockdown_stage_request_spec.rb +60 -0
  144. data/spec/models/account_lockdown_stage_spec.rb +96 -0
  145. data/spec/models/apple_independent_secure_enclave_request_spec.rb +54 -0
  146. data/spec/models/apple_independent_secure_enclave_spec.rb +54 -0
  147. data/spec/models/application_request_spec.rb +6 -0
  148. data/spec/models/application_spec.rb +6 -0
  149. data/spec/models/authenticator_validate_stage_request_spec.rb +30 -0
  150. data/spec/models/authenticator_validate_stage_spec.rb +30 -0
  151. data/spec/models/authenticator_web_authn_stage_request_spec.rb +12 -0
  152. data/spec/models/authenticator_web_authn_stage_spec.rb +12 -0
  153. data/spec/models/{flow_import_result_spec.rb → blueprint_import_result_spec.rb} +6 -6
  154. data/spec/models/brand_request_spec.rb +6 -0
  155. data/spec/models/brand_spec.rb +6 -0
  156. data/spec/models/{notification_transport_mode_enum_spec.rb → certificate_key_pair_key_type_enum_spec.rb} +6 -6
  157. data/spec/models/{consent_stage_mode_enum_spec.rb → consent_mode_enum_spec.rb} +6 -6
  158. data/spec/models/current_brand_flags_spec.rb +2 -2
  159. data/spec/models/current_brand_spec.rb +6 -0
  160. data/spec/models/event_matcher_policy_request_spec.rb +6 -0
  161. data/spec/models/event_matcher_policy_spec.rb +6 -0
  162. data/spec/models/event_stats_spec.rb +36 -0
  163. data/spec/models/force_binding_enum_spec.rb +24 -0
  164. data/spec/models/format_enum_spec.rb +24 -0
  165. data/spec/models/{detailed_country_field_spec.rb → geo_ip_policy_countries_obj_inner_spec.rb} +6 -6
  166. data/spec/models/google_chrome_connector_request_spec.rb +48 -0
  167. data/spec/models/google_chrome_connector_spec.rb +78 -0
  168. data/spec/models/grant_types_enum_spec.rb +24 -0
  169. data/spec/models/group_ldap_source_connection_spec.rb +6 -0
  170. data/spec/models/invitation_send_email_request_spec.rb +48 -0
  171. data/spec/models/lang_enum_spec.rb +24 -0
  172. data/spec/models/lifecycle_iteration_spec.rb +2 -14
  173. data/spec/models/logout_url_spec.rb +60 -0
  174. data/spec/models/native_logout_challenge_spec.rb +13 -7
  175. data/spec/models/notification_transport_request_spec.rb +6 -0
  176. data/spec/models/notification_transport_spec.rb +6 -0
  177. data/spec/models/o_auth2_provider_request_spec.rb +6 -0
  178. data/spec/models/o_auth2_provider_spec.rb +6 -0
  179. data/spec/models/paginated_account_lockdown_stage_list_spec.rb +42 -0
  180. data/spec/models/paginated_apple_independent_secure_enclave_list_spec.rb +42 -0
  181. data/spec/models/paginated_extra_role_object_permission_list_spec.rb +6 -0
  182. data/spec/models/paginated_google_chrome_connector_list_spec.rb +42 -0
  183. data/spec/models/patched_account_lockdown_stage_request_spec.rb +60 -0
  184. data/spec/models/patched_apple_independent_secure_enclave_request_spec.rb +54 -0
  185. data/spec/models/patched_application_request_spec.rb +6 -0
  186. data/spec/models/patched_authenticator_validate_stage_request_spec.rb +30 -0
  187. data/spec/models/patched_authenticator_web_authn_stage_request_spec.rb +12 -0
  188. data/spec/models/patched_brand_request_spec.rb +6 -0
  189. data/spec/models/patched_event_matcher_policy_request_spec.rb +6 -0
  190. data/spec/models/patched_google_chrome_connector_request_spec.rb +48 -0
  191. data/spec/models/patched_notification_transport_request_spec.rb +6 -0
  192. data/spec/models/patched_o_auth2_provider_request_spec.rb +6 -0
  193. data/spec/models/patched_saml_provider_request_spec.rb +7 -1
  194. data/spec/models/patched_saml_source_request_spec.rb +6 -0
  195. data/spec/models/patched_settings_request_flags_spec.rb +2 -2
  196. data/spec/models/patched_ssf_provider_request_spec.rb +6 -0
  197. data/spec/models/redirect_uri_request_spec.rb +6 -0
  198. data/spec/models/redirect_uri_spec.rb +6 -0
  199. data/spec/models/redirect_uri_type_enum_spec.rb +24 -0
  200. data/spec/models/related_rule_spec.rb +54 -0
  201. data/spec/models/saml_provider_request_spec.rb +7 -1
  202. data/spec/models/saml_provider_spec.rb +25 -1
  203. data/spec/models/saml_source_request_spec.rb +6 -0
  204. data/spec/models/saml_source_spec.rb +6 -0
  205. data/spec/models/ssf_provider_request_spec.rb +6 -0
  206. data/spec/models/ssf_provider_spec.rb +12 -0
  207. data/spec/models/ssf_stream_spec.rb +6 -0
  208. data/spec/models/ssf_stream_status_enum_spec.rb +24 -0
  209. data/spec/models/{task_state_enum_spec.rb → task_status_enum_spec.rb} +6 -6
  210. data/spec/models/transport_mode_enum_spec.rb +24 -0
  211. data/spec/models/usage_enum_spec.rb +24 -0
  212. data/spec/models/user_account_lockdown_request_spec.rb +30 -0
  213. data/spec/models/user_ldap_source_connection_spec.rb +6 -0
  214. data/spec/models/user_password_hash_set_request_spec.rb +30 -0
  215. data/spec/models/web_authn_hint_enum_spec.rb +24 -0
  216. data/spec/zeitwerk_spec.rb +34 -0
  217. metadata +113 -32
  218. data/spec/models/resident_key_requirement_enum_spec.rb +0 -24
@@ -35,6 +35,9 @@ module Authentik::Api
35
35
 
36
36
  attr_accessor :group
37
37
 
38
+ # Hide this application from the user's My applications page.
39
+ attr_accessor :meta_hide
40
+
38
41
  class EnumAttributeValidator
39
42
  attr_reader :datatype
40
43
  attr_reader :allowable_values
@@ -70,7 +73,8 @@ module Authentik::Api
70
73
  :'meta_description' => :'meta_description',
71
74
  :'meta_publisher' => :'meta_publisher',
72
75
  :'policy_engine_mode' => :'policy_engine_mode',
73
- :'group' => :'group'
76
+ :'group' => :'group',
77
+ :'meta_hide' => :'meta_hide'
74
78
  }
75
79
  end
76
80
 
@@ -97,7 +101,8 @@ module Authentik::Api
97
101
  :'meta_description' => :'String',
98
102
  :'meta_publisher' => :'String',
99
103
  :'policy_engine_mode' => :'PolicyEngineMode',
100
- :'group' => :'String'
104
+ :'group' => :'String',
105
+ :'meta_hide' => :'Boolean'
101
106
  }
102
107
  end
103
108
 
@@ -169,6 +174,10 @@ module Authentik::Api
169
174
  if attributes.key?(:'group')
170
175
  self.group = attributes[:'group']
171
176
  end
177
+
178
+ if attributes.key?(:'meta_hide')
179
+ self.meta_hide = attributes[:'meta_hide']
180
+ end
172
181
  end
173
182
 
174
183
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -250,7 +259,8 @@ module Authentik::Api
250
259
  meta_description == o.meta_description &&
251
260
  meta_publisher == o.meta_publisher &&
252
261
  policy_engine_mode == o.policy_engine_mode &&
253
- group == o.group
262
+ group == o.group &&
263
+ meta_hide == o.meta_hide
254
264
  end
255
265
 
256
266
  # @see the `==` method
@@ -262,7 +272,7 @@ module Authentik::Api
262
272
  # Calculates hash code according to all attributes.
263
273
  # @return [Integer] Hash code
264
274
  def hash
265
- [name, slug, provider, backchannel_providers, open_in_new_tab, meta_launch_url, meta_icon, meta_description, meta_publisher, policy_engine_mode, group].hash
275
+ [name, slug, provider, backchannel_providers, open_in_new_tab, meta_launch_url, meta_icon, meta_description, meta_publisher, policy_engine_mode, group, meta_hide].hash
266
276
  end
267
277
 
268
278
  # Builds the object from hash
@@ -26,8 +26,18 @@ module Authentik::Api
26
26
  # Enforce user verification for WebAuthn devices.
27
27
  attr_accessor :webauthn_user_verification
28
28
 
29
+ attr_accessor :webauthn_hints
30
+
29
31
  attr_accessor :webauthn_allowed_device_types
30
32
 
33
+ attr_accessor :email_otp_throttling_factor
34
+
35
+ attr_accessor :sms_otp_throttling_factor
36
+
37
+ attr_accessor :totp_otp_throttling_factor
38
+
39
+ attr_accessor :static_otp_throttling_factor
40
+
31
41
  class EnumAttributeValidator
32
42
  attr_reader :datatype
33
43
  attr_reader :allowable_values
@@ -59,7 +69,12 @@ module Authentik::Api
59
69
  :'configuration_stages' => :'configuration_stages',
60
70
  :'last_auth_threshold' => :'last_auth_threshold',
61
71
  :'webauthn_user_verification' => :'webauthn_user_verification',
62
- :'webauthn_allowed_device_types' => :'webauthn_allowed_device_types'
72
+ :'webauthn_hints' => :'webauthn_hints',
73
+ :'webauthn_allowed_device_types' => :'webauthn_allowed_device_types',
74
+ :'email_otp_throttling_factor' => :'email_otp_throttling_factor',
75
+ :'sms_otp_throttling_factor' => :'sms_otp_throttling_factor',
76
+ :'totp_otp_throttling_factor' => :'totp_otp_throttling_factor',
77
+ :'static_otp_throttling_factor' => :'static_otp_throttling_factor'
63
78
  }
64
79
  end
65
80
 
@@ -82,7 +97,12 @@ module Authentik::Api
82
97
  :'configuration_stages' => :'Array<String>',
83
98
  :'last_auth_threshold' => :'String',
84
99
  :'webauthn_user_verification' => :'UserVerificationEnum',
85
- :'webauthn_allowed_device_types' => :'Array<String>'
100
+ :'webauthn_hints' => :'Array<WebAuthnHintEnum>',
101
+ :'webauthn_allowed_device_types' => :'Array<String>',
102
+ :'email_otp_throttling_factor' => :'Float',
103
+ :'sms_otp_throttling_factor' => :'Float',
104
+ :'totp_otp_throttling_factor' => :'Float',
105
+ :'static_otp_throttling_factor' => :'Float'
86
106
  }
87
107
  end
88
108
 
@@ -136,11 +156,33 @@ module Authentik::Api
136
156
  self.webauthn_user_verification = attributes[:'webauthn_user_verification']
137
157
  end
138
158
 
159
+ if attributes.key?(:'webauthn_hints')
160
+ if (value = attributes[:'webauthn_hints']).is_a?(Array)
161
+ self.webauthn_hints = value
162
+ end
163
+ end
164
+
139
165
  if attributes.key?(:'webauthn_allowed_device_types')
140
166
  if (value = attributes[:'webauthn_allowed_device_types']).is_a?(Array)
141
167
  self.webauthn_allowed_device_types = value
142
168
  end
143
169
  end
170
+
171
+ if attributes.key?(:'email_otp_throttling_factor')
172
+ self.email_otp_throttling_factor = attributes[:'email_otp_throttling_factor']
173
+ end
174
+
175
+ if attributes.key?(:'sms_otp_throttling_factor')
176
+ self.sms_otp_throttling_factor = attributes[:'sms_otp_throttling_factor']
177
+ end
178
+
179
+ if attributes.key?(:'totp_otp_throttling_factor')
180
+ self.totp_otp_throttling_factor = attributes[:'totp_otp_throttling_factor']
181
+ end
182
+
183
+ if attributes.key?(:'static_otp_throttling_factor')
184
+ self.static_otp_throttling_factor = attributes[:'static_otp_throttling_factor']
185
+ end
144
186
  end
145
187
 
146
188
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -207,7 +249,12 @@ module Authentik::Api
207
249
  configuration_stages == o.configuration_stages &&
208
250
  last_auth_threshold == o.last_auth_threshold &&
209
251
  webauthn_user_verification == o.webauthn_user_verification &&
210
- webauthn_allowed_device_types == o.webauthn_allowed_device_types
252
+ webauthn_hints == o.webauthn_hints &&
253
+ webauthn_allowed_device_types == o.webauthn_allowed_device_types &&
254
+ email_otp_throttling_factor == o.email_otp_throttling_factor &&
255
+ sms_otp_throttling_factor == o.sms_otp_throttling_factor &&
256
+ totp_otp_throttling_factor == o.totp_otp_throttling_factor &&
257
+ static_otp_throttling_factor == o.static_otp_throttling_factor
211
258
  end
212
259
 
213
260
  # @see the `==` method
@@ -219,7 +266,7 @@ module Authentik::Api
219
266
  # Calculates hash code according to all attributes.
220
267
  # @return [Integer] Hash code
221
268
  def hash
222
- [name, not_configured_action, device_classes, configuration_stages, last_auth_threshold, webauthn_user_verification, webauthn_allowed_device_types].hash
269
+ [name, not_configured_action, device_classes, configuration_stages, last_auth_threshold, webauthn_user_verification, webauthn_hints, webauthn_allowed_device_types, email_otp_throttling_factor, sms_otp_throttling_factor, totp_otp_throttling_factor, static_otp_throttling_factor].hash
223
270
  end
224
271
 
225
272
  # Builds the object from hash
@@ -23,8 +23,13 @@ module Authentik::Api
23
23
 
24
24
  attr_accessor :resident_key_requirement
25
25
 
26
+ attr_accessor :hints
27
+
26
28
  attr_accessor :device_type_restrictions
27
29
 
30
+ # When enabled, a given device can only be registered once.
31
+ attr_accessor :prevent_duplicate_devices
32
+
28
33
  attr_accessor :max_attempts
29
34
 
30
35
  class EnumAttributeValidator
@@ -58,7 +63,9 @@ module Authentik::Api
58
63
  :'user_verification' => :'user_verification',
59
64
  :'authenticator_attachment' => :'authenticator_attachment',
60
65
  :'resident_key_requirement' => :'resident_key_requirement',
66
+ :'hints' => :'hints',
61
67
  :'device_type_restrictions' => :'device_type_restrictions',
68
+ :'prevent_duplicate_devices' => :'prevent_duplicate_devices',
62
69
  :'max_attempts' => :'max_attempts'
63
70
  }
64
71
  end
@@ -81,8 +88,10 @@ module Authentik::Api
81
88
  :'friendly_name' => :'String',
82
89
  :'user_verification' => :'UserVerificationEnum',
83
90
  :'authenticator_attachment' => :'AuthenticatorAttachmentEnum',
84
- :'resident_key_requirement' => :'ResidentKeyRequirementEnum',
91
+ :'resident_key_requirement' => :'UserVerificationEnum',
92
+ :'hints' => :'Array<WebAuthnHintEnum>',
85
93
  :'device_type_restrictions' => :'Array<String>',
94
+ :'prevent_duplicate_devices' => :'Boolean',
86
95
  :'max_attempts' => :'Integer'
87
96
  }
88
97
  end
@@ -135,12 +144,22 @@ module Authentik::Api
135
144
  self.resident_key_requirement = attributes[:'resident_key_requirement']
136
145
  end
137
146
 
147
+ if attributes.key?(:'hints')
148
+ if (value = attributes[:'hints']).is_a?(Array)
149
+ self.hints = value
150
+ end
151
+ end
152
+
138
153
  if attributes.key?(:'device_type_restrictions')
139
154
  if (value = attributes[:'device_type_restrictions']).is_a?(Array)
140
155
  self.device_type_restrictions = value
141
156
  end
142
157
  end
143
158
 
159
+ if attributes.key?(:'prevent_duplicate_devices')
160
+ self.prevent_duplicate_devices = attributes[:'prevent_duplicate_devices']
161
+ end
162
+
144
163
  if attributes.key?(:'max_attempts')
145
164
  self.max_attempts = attributes[:'max_attempts']
146
165
  end
@@ -219,7 +238,9 @@ module Authentik::Api
219
238
  user_verification == o.user_verification &&
220
239
  authenticator_attachment == o.authenticator_attachment &&
221
240
  resident_key_requirement == o.resident_key_requirement &&
241
+ hints == o.hints &&
222
242
  device_type_restrictions == o.device_type_restrictions &&
243
+ prevent_duplicate_devices == o.prevent_duplicate_devices &&
223
244
  max_attempts == o.max_attempts
224
245
  end
225
246
 
@@ -232,7 +253,7 @@ module Authentik::Api
232
253
  # Calculates hash code according to all attributes.
233
254
  # @return [Integer] Hash code
234
255
  def hash
235
- [name, configure_flow, friendly_name, user_verification, authenticator_attachment, resident_key_requirement, device_type_restrictions, max_attempts].hash
256
+ [name, configure_flow, friendly_name, user_verification, authenticator_attachment, resident_key_requirement, hints, device_type_restrictions, prevent_duplicate_devices, max_attempts].hash
236
257
  end
237
258
 
238
259
  # Builds the object from hash
@@ -37,6 +37,8 @@ module Authentik::Api
37
37
 
38
38
  attr_accessor :flow_device_code
39
39
 
40
+ attr_accessor :flow_lockdown
41
+
40
42
  # When set, external users will be redirected to this application after authenticating.
41
43
  attr_accessor :default_application
42
44
 
@@ -64,6 +66,7 @@ module Authentik::Api
64
66
  :'flow_unenrollment' => :'flow_unenrollment',
65
67
  :'flow_user_settings' => :'flow_user_settings',
66
68
  :'flow_device_code' => :'flow_device_code',
69
+ :'flow_lockdown' => :'flow_lockdown',
67
70
  :'default_application' => :'default_application',
68
71
  :'web_certificate' => :'web_certificate',
69
72
  :'client_certificates' => :'client_certificates',
@@ -97,6 +100,7 @@ module Authentik::Api
97
100
  :'flow_unenrollment' => :'String',
98
101
  :'flow_user_settings' => :'String',
99
102
  :'flow_device_code' => :'String',
103
+ :'flow_lockdown' => :'String',
100
104
  :'default_application' => :'String',
101
105
  :'web_certificate' => :'String',
102
106
  :'client_certificates' => :'Array<String>',
@@ -113,6 +117,7 @@ module Authentik::Api
113
117
  :'flow_unenrollment',
114
118
  :'flow_user_settings',
115
119
  :'flow_device_code',
120
+ :'flow_lockdown',
116
121
  :'default_application',
117
122
  :'web_certificate',
118
123
  ])
@@ -186,6 +191,10 @@ module Authentik::Api
186
191
  self.flow_device_code = attributes[:'flow_device_code']
187
192
  end
188
193
 
194
+ if attributes.key?(:'flow_lockdown')
195
+ self.flow_lockdown = attributes[:'flow_lockdown']
196
+ end
197
+
189
198
  if attributes.key?(:'default_application')
190
199
  self.default_application = attributes[:'default_application']
191
200
  end
@@ -335,6 +344,7 @@ module Authentik::Api
335
344
  flow_unenrollment == o.flow_unenrollment &&
336
345
  flow_user_settings == o.flow_user_settings &&
337
346
  flow_device_code == o.flow_device_code &&
347
+ flow_lockdown == o.flow_lockdown &&
338
348
  default_application == o.default_application &&
339
349
  web_certificate == o.web_certificate &&
340
350
  client_certificates == o.client_certificates &&
@@ -350,7 +360,7 @@ module Authentik::Api
350
360
  # Calculates hash code according to all attributes.
351
361
  # @return [Integer] Hash code
352
362
  def hash
353
- [domain, default, branding_title, branding_logo, branding_favicon, branding_custom_css, branding_default_flow_background, flow_authentication, flow_invalidation, flow_recovery, flow_unenrollment, flow_user_settings, flow_device_code, default_application, web_certificate, client_certificates, attributes].hash
363
+ [domain, default, branding_title, branding_logo, branding_favicon, branding_custom_css, branding_default_flow_background, flow_authentication, flow_invalidation, flow_recovery, flow_unenrollment, flow_user_settings, flow_device_code, flow_lockdown, default_application, web_certificate, client_certificates, attributes].hash
354
364
  end
355
365
 
356
366
  # Builds the object from hash
@@ -62,7 +62,7 @@ module Authentik::Api
62
62
  def self.openapi_types
63
63
  {
64
64
  :'name' => :'String',
65
- :'mode' => :'ConsentStageModeEnum',
65
+ :'mode' => :'ConsentModeEnum',
66
66
  :'consent_expire_in' => :'String'
67
67
  }
68
68
  end
@@ -27,6 +27,8 @@ module Authentik::Api
27
27
  # Match events created by selected model. When left empty, all models are matched. When an app is selected, all the application's models are matched.
28
28
  attr_accessor :model
29
29
 
30
+ attr_accessor :query
31
+
30
32
  class EnumAttributeValidator
31
33
  attr_reader :datatype
32
34
  attr_reader :allowable_values
@@ -57,7 +59,8 @@ module Authentik::Api
57
59
  :'action' => :'action',
58
60
  :'client_ip' => :'client_ip',
59
61
  :'app' => :'app',
60
- :'model' => :'model'
62
+ :'model' => :'model',
63
+ :'query' => :'query'
61
64
  }
62
65
  end
63
66
 
@@ -79,7 +82,8 @@ module Authentik::Api
79
82
  :'action' => :'EventActions',
80
83
  :'client_ip' => :'String',
81
84
  :'app' => :'AppEnum',
82
- :'model' => :'ModelEnum'
85
+ :'model' => :'ModelEnum',
86
+ :'query' => :'String'
83
87
  }
84
88
  end
85
89
 
@@ -89,7 +93,8 @@ module Authentik::Api
89
93
  :'action',
90
94
  :'client_ip',
91
95
  :'app',
92
- :'model'
96
+ :'model',
97
+ :'query'
93
98
  ])
94
99
  end
95
100
 
@@ -132,6 +137,10 @@ module Authentik::Api
132
137
  if attributes.key?(:'model')
133
138
  self.model = attributes[:'model']
134
139
  end
140
+
141
+ if attributes.key?(:'query')
142
+ self.query = attributes[:'query']
143
+ end
135
144
  end
136
145
 
137
146
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -147,6 +156,10 @@ module Authentik::Api
147
156
  invalid_properties.push('invalid value for "client_ip", the character length must be greater than or equal to 1.')
148
157
  end
149
158
 
159
+ if !@query.nil? && @query.to_s.length < 1
160
+ invalid_properties.push('invalid value for "query", the character length must be greater than or equal to 1.')
161
+ end
162
+
150
163
  invalid_properties
151
164
  end
152
165
 
@@ -156,6 +169,7 @@ module Authentik::Api
156
169
  warn '[DEPRECATED] the `valid?` method is obsolete'
157
170
  return false if !@name.nil? && @name.to_s.length < 1
158
171
  return false if !@client_ip.nil? && @client_ip.to_s.length < 1
172
+ return false if !@query.nil? && @query.to_s.length < 1
159
173
  true
160
174
  end
161
175
 
@@ -183,6 +197,16 @@ module Authentik::Api
183
197
  @client_ip = client_ip
184
198
  end
185
199
 
200
+ # Custom attribute writer method with validation
201
+ # @param [Object] query Value to be assigned
202
+ def query=(query)
203
+ if !query.nil? && query.to_s.length < 1
204
+ fail ArgumentError, 'invalid value for "query", the character length must be greater than or equal to 1.'
205
+ end
206
+
207
+ @query = query
208
+ end
209
+
186
210
  # Checks equality by comparing each attribute.
187
211
  # @param [Object] Object to be compared
188
212
  def ==(o)
@@ -193,7 +217,8 @@ module Authentik::Api
193
217
  action == o.action &&
194
218
  client_ip == o.client_ip &&
195
219
  app == o.app &&
196
- model == o.model
220
+ model == o.model &&
221
+ query == o.query
197
222
  end
198
223
 
199
224
  # @see the `==` method
@@ -205,7 +230,7 @@ module Authentik::Api
205
230
  # Calculates hash code according to all attributes.
206
231
  # @return [Integer] Hash code
207
232
  def hash
208
- [name, execution_logging, action, client_ip, app, model].hash
233
+ [name, execution_logging, action, client_ip, app, model, query].hash
209
234
  end
210
235
 
211
236
  # Builds the object from hash
@@ -0,0 +1,190 @@
1
+ =begin
2
+ This file is automatically generated by: https://openapi-generator.tech.
3
+ Any manual changes will be lost when the OpenAPI scheme changes.
4
+
5
+ =end
6
+
7
+ require 'date'
8
+ require 'time'
9
+
10
+ module Authentik::Api
11
+ # GoogleChromeConnector Serializer
12
+ class PatchedGoogleChromeConnectorRequest < ApiModelBase
13
+ attr_accessor :connector_uuid
14
+
15
+ attr_accessor :name
16
+
17
+ attr_accessor :enabled
18
+
19
+ attr_accessor :credentials
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'connector_uuid' => :'connector_uuid',
25
+ :'name' => :'name',
26
+ :'enabled' => :'enabled',
27
+ :'credentials' => :'credentials'
28
+ }
29
+ end
30
+
31
+ # Returns attribute mapping this model knows about
32
+ def self.acceptable_attribute_map
33
+ attribute_map
34
+ end
35
+
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ acceptable_attribute_map.values
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ def self.openapi_types
43
+ {
44
+ :'connector_uuid' => :'String',
45
+ :'name' => :'String',
46
+ :'enabled' => :'Boolean',
47
+ :'credentials' => :'Hash<String, Object>'
48
+ }
49
+ end
50
+
51
+ # List of attributes with nullable: true
52
+ def self.openapi_nullable
53
+ Set.new([
54
+ ])
55
+ end
56
+
57
+ # Initializes the object
58
+ # @param [Hash] attributes Model attributes in the form of hash
59
+ def initialize(attributes = {})
60
+ if (!attributes.is_a?(Hash))
61
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::PatchedGoogleChromeConnectorRequest` initialize method"
62
+ end
63
+
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ acceptable_attribute_map = self.class.acceptable_attribute_map
66
+ attributes = attributes.each_with_object({}) { |(k, v), h|
67
+ if (!acceptable_attribute_map.key?(k.to_sym))
68
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::PatchedGoogleChromeConnectorRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
69
+ end
70
+ h[k.to_sym] = v
71
+ }
72
+
73
+ if attributes.key?(:'connector_uuid')
74
+ self.connector_uuid = attributes[:'connector_uuid']
75
+ end
76
+
77
+ if attributes.key?(:'name')
78
+ self.name = attributes[:'name']
79
+ end
80
+
81
+ if attributes.key?(:'enabled')
82
+ self.enabled = attributes[:'enabled']
83
+ end
84
+
85
+ if attributes.key?(:'credentials')
86
+ if (value = attributes[:'credentials']).is_a?(Hash)
87
+ self.credentials = value
88
+ end
89
+ end
90
+ end
91
+
92
+ # Show invalid properties with the reasons. Usually used together with valid?
93
+ # @return Array for valid properties with the reasons
94
+ def list_invalid_properties
95
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
96
+ invalid_properties = Array.new
97
+ if !@name.nil? && @name.to_s.length < 1
98
+ invalid_properties.push('invalid value for "name", the character length must be greater than or equal to 1.')
99
+ end
100
+
101
+ invalid_properties
102
+ end
103
+
104
+ # Check to see if the all the properties in the model are valid
105
+ # @return true if the model is valid
106
+ def valid?
107
+ warn '[DEPRECATED] the `valid?` method is obsolete'
108
+ return false if !@name.nil? && @name.to_s.length < 1
109
+ true
110
+ end
111
+
112
+ # Custom attribute writer method with validation
113
+ # @param [Object] name Value to be assigned
114
+ def name=(name)
115
+ if name.nil?
116
+ fail ArgumentError, 'name cannot be nil'
117
+ end
118
+
119
+ if name.to_s.length < 1
120
+ fail ArgumentError, 'invalid value for "name", the character length must be greater than or equal to 1.'
121
+ end
122
+
123
+ @name = name
124
+ end
125
+
126
+ # Checks equality by comparing each attribute.
127
+ # @param [Object] Object to be compared
128
+ def ==(o)
129
+ return true if self.equal?(o)
130
+ self.class == o.class &&
131
+ connector_uuid == o.connector_uuid &&
132
+ name == o.name &&
133
+ enabled == o.enabled &&
134
+ credentials == o.credentials
135
+ end
136
+
137
+ # @see the `==` method
138
+ # @param [Object] Object to be compared
139
+ def eql?(o)
140
+ self == o
141
+ end
142
+
143
+ # Calculates hash code according to all attributes.
144
+ # @return [Integer] Hash code
145
+ def hash
146
+ [connector_uuid, name, enabled, credentials].hash
147
+ end
148
+
149
+ # Builds the object from hash
150
+ # @param [Hash] attributes Model attributes in the form of hash
151
+ # @return [Object] Returns the model itself
152
+ def self.build_from_hash(attributes)
153
+ return nil unless attributes.is_a?(Hash)
154
+ attributes = attributes.transform_keys(&:to_sym)
155
+ transformed_hash = {}
156
+ openapi_types.each_pair do |key, type|
157
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
158
+ transformed_hash["#{key}"] = nil
159
+ elsif type =~ /\AArray<(.*)>/i
160
+ # check to ensure the input is an array given that the attribute
161
+ # is documented as an array but the input is not
162
+ if attributes[attribute_map[key]].is_a?(Array)
163
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
164
+ end
165
+ elsif !attributes[attribute_map[key]].nil?
166
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
167
+ end
168
+ end
169
+ new(transformed_hash)
170
+ end
171
+
172
+ # Returns the object in the form of hash
173
+ # @return [Hash] Returns the object in the form of hash
174
+ def to_hash
175
+ hash = {}
176
+ self.class.attribute_map.each_pair do |attr, param|
177
+ value = self.send(attr)
178
+ if value.nil?
179
+ is_nullable = self.class.openapi_nullable.include?(attr)
180
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
181
+ end
182
+
183
+ hash[param] = _to_hash(value)
184
+ end
185
+ hash
186
+ end
187
+
188
+ end
189
+
190
+ end
@@ -16,6 +16,9 @@ module Authentik::Api
16
16
 
17
17
  attr_accessor :webhook_url
18
18
 
19
+ # When set, the selected ceritifcate is used to validate the certificate of the webhook server.
20
+ attr_accessor :webhook_ca
21
+
19
22
  # Customize the body of the request. Mapping should return data that is JSON-serializable.
20
23
  attr_accessor :webhook_mapping_body
21
24
 
@@ -57,6 +60,7 @@ module Authentik::Api
57
60
  :'name' => :'name',
58
61
  :'mode' => :'mode',
59
62
  :'webhook_url' => :'webhook_url',
63
+ :'webhook_ca' => :'webhook_ca',
60
64
  :'webhook_mapping_body' => :'webhook_mapping_body',
61
65
  :'webhook_mapping_headers' => :'webhook_mapping_headers',
62
66
  :'email_subject_prefix' => :'email_subject_prefix',
@@ -79,8 +83,9 @@ module Authentik::Api
79
83
  def self.openapi_types
80
84
  {
81
85
  :'name' => :'String',
82
- :'mode' => :'NotificationTransportModeEnum',
86
+ :'mode' => :'TransportModeEnum',
83
87
  :'webhook_url' => :'String',
88
+ :'webhook_ca' => :'String',
84
89
  :'webhook_mapping_body' => :'String',
85
90
  :'webhook_mapping_headers' => :'String',
86
91
  :'email_subject_prefix' => :'String',
@@ -92,6 +97,7 @@ module Authentik::Api
92
97
  # List of attributes with nullable: true
93
98
  def self.openapi_nullable
94
99
  Set.new([
100
+ :'webhook_ca',
95
101
  :'webhook_mapping_body',
96
102
  :'webhook_mapping_headers',
97
103
  ])
@@ -125,6 +131,10 @@ module Authentik::Api
125
131
  self.webhook_url = attributes[:'webhook_url']
126
132
  end
127
133
 
134
+ if attributes.key?(:'webhook_ca')
135
+ self.webhook_ca = attributes[:'webhook_ca']
136
+ end
137
+
128
138
  if attributes.key?(:'webhook_mapping_body')
129
139
  self.webhook_mapping_body = attributes[:'webhook_mapping_body']
130
140
  end
@@ -207,6 +217,7 @@ module Authentik::Api
207
217
  name == o.name &&
208
218
  mode == o.mode &&
209
219
  webhook_url == o.webhook_url &&
220
+ webhook_ca == o.webhook_ca &&
210
221
  webhook_mapping_body == o.webhook_mapping_body &&
211
222
  webhook_mapping_headers == o.webhook_mapping_headers &&
212
223
  email_subject_prefix == o.email_subject_prefix &&
@@ -223,7 +234,7 @@ module Authentik::Api
223
234
  # Calculates hash code according to all attributes.
224
235
  # @return [Integer] Hash code
225
236
  def hash
226
- [name, mode, webhook_url, webhook_mapping_body, webhook_mapping_headers, email_subject_prefix, email_template, send_once].hash
237
+ [name, mode, webhook_url, webhook_ca, webhook_mapping_body, webhook_mapping_headers, email_subject_prefix, email_template, send_once].hash
227
238
  end
228
239
 
229
240
  # Builds the object from hash