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
@@ -118,7 +118,7 @@ module Authentik::Api
118
118
  fail ArgumentError, "Missing the required parameter 'id' when calling TasksApi.tasks_schedules_partial_update"
119
119
  end
120
120
  # resource path
121
- local_var_path = '/tasks/schedules/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
121
+ local_var_path = '/tasks/schedules/{id}/'.sub('{id}', CGI.escape(id.to_s))
122
122
 
123
123
  # query parameters
124
124
  query_params = opts[:query_params] || {}
@@ -182,7 +182,7 @@ module Authentik::Api
182
182
  fail ArgumentError, "Missing the required parameter 'id' when calling TasksApi.tasks_schedules_retrieve"
183
183
  end
184
184
  # resource path
185
- local_var_path = '/tasks/schedules/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
185
+ local_var_path = '/tasks/schedules/{id}/'.sub('{id}', CGI.escape(id.to_s))
186
186
 
187
187
  # query parameters
188
188
  query_params = opts[:query_params] || {}
@@ -243,7 +243,7 @@ module Authentik::Api
243
243
  fail ArgumentError, "Missing the required parameter 'id' when calling TasksApi.tasks_schedules_send_create"
244
244
  end
245
245
  # resource path
246
- local_var_path = '/tasks/schedules/{id}/send/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
246
+ local_var_path = '/tasks/schedules/{id}/send/'.sub('{id}', CGI.escape(id.to_s))
247
247
 
248
248
  # query parameters
249
249
  query_params = opts[:query_params] || {}
@@ -308,7 +308,7 @@ module Authentik::Api
308
308
  fail ArgumentError, "Missing the required parameter 'schedule_request' when calling TasksApi.tasks_schedules_update"
309
309
  end
310
310
  # resource path
311
- local_var_path = '/tasks/schedules/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
311
+ local_var_path = '/tasks/schedules/{id}/'.sub('{id}', CGI.escape(id.to_s))
312
312
 
313
313
  # query parameters
314
314
  query_params = opts[:query_params] || {}
@@ -354,7 +354,7 @@ module Authentik::Api
354
354
 
355
355
  # @param [Hash] opts the optional parameters
356
356
  # @option opts [String] :actor_name
357
- # @option opts [Array<String>] :aggregated_status
357
+ # @option opts [Array<TaskAggregatedStatusEnum>] :aggregated_status
358
358
  # @option opts [String] :ordering Which field to use when ordering the results.
359
359
  # @option opts [Integer] :page A page number within the paginated result set.
360
360
  # @option opts [Integer] :page_size Number of results to return per page.
@@ -364,7 +364,7 @@ module Authentik::Api
364
364
  # @option opts [String] :rel_obj_id
365
365
  # @option opts [Boolean] :rel_obj_id__isnull
366
366
  # @option opts [String] :search A search term.
367
- # @option opts [String] :state Task status
367
+ # @option opts [TaskStatusEnum] :state
368
368
  # @return [PaginatedTaskList]
369
369
  def tasks_tasks_list(opts = {})
370
370
  data, _status_code, _headers = tasks_tasks_list_with_http_info(opts)
@@ -373,7 +373,7 @@ module Authentik::Api
373
373
 
374
374
  # @param [Hash] opts the optional parameters
375
375
  # @option opts [String] :actor_name
376
- # @option opts [Array<String>] :aggregated_status
376
+ # @option opts [Array<TaskAggregatedStatusEnum>] :aggregated_status
377
377
  # @option opts [String] :ordering Which field to use when ordering the results.
378
378
  # @option opts [Integer] :page A page number within the paginated result set.
379
379
  # @option opts [Integer] :page_size Number of results to return per page.
@@ -383,20 +383,12 @@ module Authentik::Api
383
383
  # @option opts [String] :rel_obj_id
384
384
  # @option opts [Boolean] :rel_obj_id__isnull
385
385
  # @option opts [String] :search A search term.
386
- # @option opts [String] :state Task status
386
+ # @option opts [TaskStatusEnum] :state
387
387
  # @return [Array<(PaginatedTaskList, Integer, Hash)>] PaginatedTaskList data, response status code and response headers
388
388
  def tasks_tasks_list_with_http_info(opts = {})
389
389
  if @api_client.config.debugging
390
390
  @api_client.config.logger.debug 'Calling API: TasksApi.tasks_tasks_list ...'
391
391
  end
392
- allowable_values = ["consumed", "done", "error", "info", "postprocess", "preprocess", "queued", "rejected", "running", "warning"]
393
- if @api_client.config.client_side_validation && opts[:'aggregated_status'] && !opts[:'aggregated_status'].all? { |item| allowable_values.include?(item) }
394
- fail ArgumentError, "invalid value for \"aggregated_status\", must include one of #{allowable_values}"
395
- end
396
- allowable_values = ["consumed", "done", "postprocess", "preprocess", "queued", "rejected", "running"]
397
- if @api_client.config.client_side_validation && opts[:'state'] && !allowable_values.include?(opts[:'state'])
398
- fail ArgumentError, "invalid value for \"state\", must be one of #{allowable_values}"
399
- end
400
392
  # resource path
401
393
  local_var_path = '/tasks/tasks/'
402
394
 
@@ -469,7 +461,7 @@ module Authentik::Api
469
461
  fail ArgumentError, "Missing the required parameter 'message_id' when calling TasksApi.tasks_tasks_retrieve"
470
462
  end
471
463
  # resource path
472
- local_var_path = '/tasks/tasks/{message_id}/'.sub('{' + 'message_id' + '}', CGI.escape(message_id.to_s))
464
+ local_var_path = '/tasks/tasks/{message_id}/'.sub('{message_id}', CGI.escape(message_id.to_s))
473
465
 
474
466
  # query parameters
475
467
  query_params = opts[:query_params] || {}
@@ -530,7 +522,7 @@ module Authentik::Api
530
522
  fail ArgumentError, "Missing the required parameter 'message_id' when calling TasksApi.tasks_tasks_retry_create"
531
523
  end
532
524
  # resource path
533
- local_var_path = '/tasks/tasks/{message_id}/retry/'.sub('{' + 'message_id' + '}', CGI.escape(message_id.to_s))
525
+ local_var_path = '/tasks/tasks/{message_id}/retry/'.sub('{message_id}', CGI.escape(message_id.to_s))
534
526
 
535
527
  # query parameters
536
528
  query_params = opts[:query_params] || {}
@@ -640,7 +632,7 @@ module Authentik::Api
640
632
  @api_client.config.logger.debug 'Calling API: TasksApi.tasks_workers_list ...'
641
633
  end
642
634
  # resource path
643
- local_var_path = '/tasks/workers'
635
+ local_var_path = '/tasks/workers/'
644
636
 
645
637
  # query parameters
646
638
  query_params = opts[:query_params] || {}
@@ -101,7 +101,7 @@ module Authentik::Api
101
101
  fail ArgumentError, "Missing the required parameter 'id' when calling TenantsApi.tenants_domains_destroy"
102
102
  end
103
103
  # resource path
104
- local_var_path = '/tenants/domains/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
104
+ local_var_path = '/tenants/domains/{id}/'.sub('{id}', CGI.escape(id.to_s))
105
105
 
106
106
  # query parameters
107
107
  query_params = opts[:query_params] || {}
@@ -231,7 +231,7 @@ module Authentik::Api
231
231
  fail ArgumentError, "Missing the required parameter 'id' when calling TenantsApi.tenants_domains_partial_update"
232
232
  end
233
233
  # resource path
234
- local_var_path = '/tenants/domains/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
234
+ local_var_path = '/tenants/domains/{id}/'.sub('{id}', CGI.escape(id.to_s))
235
235
 
236
236
  # query parameters
237
237
  query_params = opts[:query_params] || {}
@@ -297,7 +297,7 @@ module Authentik::Api
297
297
  fail ArgumentError, "Missing the required parameter 'id' when calling TenantsApi.tenants_domains_retrieve"
298
298
  end
299
299
  # resource path
300
- local_var_path = '/tenants/domains/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
300
+ local_var_path = '/tenants/domains/{id}/'.sub('{id}', CGI.escape(id.to_s))
301
301
 
302
302
  # query parameters
303
303
  query_params = opts[:query_params] || {}
@@ -364,7 +364,7 @@ module Authentik::Api
364
364
  fail ArgumentError, "Missing the required parameter 'domain_request' when calling TenantsApi.tenants_domains_update"
365
365
  end
366
366
  # resource path
367
- local_var_path = '/tenants/domains/{id}/'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
367
+ local_var_path = '/tenants/domains/{id}/'.sub('{id}', CGI.escape(id.to_s))
368
368
 
369
369
  # query parameters
370
370
  query_params = opts[:query_params] || {}
@@ -502,7 +502,7 @@ module Authentik::Api
502
502
  fail ArgumentError, "Missing the required parameter 'tenant_admin_group_request_request' when calling TenantsApi.tenants_tenants_create_admin_group_create"
503
503
  end
504
504
  # resource path
505
- local_var_path = '/tenants/tenants/{tenant_uuid}/create_admin_group/'.sub('{' + 'tenant_uuid' + '}', CGI.escape(tenant_uuid.to_s))
505
+ local_var_path = '/tenants/tenants/{tenant_uuid}/create_admin_group/'.sub('{tenant_uuid}', CGI.escape(tenant_uuid.to_s))
506
506
 
507
507
  # query parameters
508
508
  query_params = opts[:query_params] || {}
@@ -574,7 +574,7 @@ module Authentik::Api
574
574
  fail ArgumentError, "Missing the required parameter 'tenant_recovery_key_request_request' when calling TenantsApi.tenants_tenants_create_recovery_key_create"
575
575
  end
576
576
  # resource path
577
- local_var_path = '/tenants/tenants/{tenant_uuid}/create_recovery_key/'.sub('{' + 'tenant_uuid' + '}', CGI.escape(tenant_uuid.to_s))
577
+ local_var_path = '/tenants/tenants/{tenant_uuid}/create_recovery_key/'.sub('{tenant_uuid}', CGI.escape(tenant_uuid.to_s))
578
578
 
579
579
  # query parameters
580
580
  query_params = opts[:query_params] || {}
@@ -640,7 +640,7 @@ module Authentik::Api
640
640
  fail ArgumentError, "Missing the required parameter 'tenant_uuid' when calling TenantsApi.tenants_tenants_destroy"
641
641
  end
642
642
  # resource path
643
- local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{' + 'tenant_uuid' + '}', CGI.escape(tenant_uuid.to_s))
643
+ local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{tenant_uuid}', CGI.escape(tenant_uuid.to_s))
644
644
 
645
645
  # query parameters
646
646
  query_params = opts[:query_params] || {}
@@ -770,7 +770,7 @@ module Authentik::Api
770
770
  fail ArgumentError, "Missing the required parameter 'tenant_uuid' when calling TenantsApi.tenants_tenants_partial_update"
771
771
  end
772
772
  # resource path
773
- local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{' + 'tenant_uuid' + '}', CGI.escape(tenant_uuid.to_s))
773
+ local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{tenant_uuid}', CGI.escape(tenant_uuid.to_s))
774
774
 
775
775
  # query parameters
776
776
  query_params = opts[:query_params] || {}
@@ -836,7 +836,7 @@ module Authentik::Api
836
836
  fail ArgumentError, "Missing the required parameter 'tenant_uuid' when calling TenantsApi.tenants_tenants_retrieve"
837
837
  end
838
838
  # resource path
839
- local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{' + 'tenant_uuid' + '}', CGI.escape(tenant_uuid.to_s))
839
+ local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{tenant_uuid}', CGI.escape(tenant_uuid.to_s))
840
840
 
841
841
  # query parameters
842
842
  query_params = opts[:query_params] || {}
@@ -903,7 +903,7 @@ module Authentik::Api
903
903
  fail ArgumentError, "Missing the required parameter 'tenant_request' when calling TenantsApi.tenants_tenants_update"
904
904
  end
905
905
  # resource path
906
- local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{' + 'tenant_uuid' + '}', CGI.escape(tenant_uuid.to_s))
906
+ local_var_path = '/tenants/tenants/{tenant_uuid}/'.sub('{tenant_uuid}', CGI.escape(tenant_uuid.to_s))
907
907
 
908
908
  # query parameters
909
909
  query_params = opts[:query_params] || {}
@@ -0,0 +1,372 @@
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
+ # AccountLockdownStage Serializer
12
+ class AccountLockdownStage < ApiModelBase
13
+ attr_accessor :pk
14
+
15
+ attr_accessor :name
16
+
17
+ # Get object type so that we know how to edit the object
18
+ attr_accessor :component
19
+
20
+ # Return object's verbose_name
21
+ attr_accessor :verbose_name
22
+
23
+ # Return object's plural verbose_name
24
+ attr_accessor :verbose_name_plural
25
+
26
+ # Return internal model name
27
+ attr_accessor :meta_model_name
28
+
29
+ attr_accessor :flow_set
30
+
31
+ # Deactivate the user account (set is_active to False)
32
+ attr_accessor :deactivate_user
33
+
34
+ # Set an unusable password for the user
35
+ attr_accessor :set_unusable_password
36
+
37
+ # Delete all active sessions for the user
38
+ attr_accessor :delete_sessions
39
+
40
+ # Revoke all tokens for the user (API, app password, recovery, verification, OAuth)
41
+ attr_accessor :revoke_tokens
42
+
43
+ # Flow to redirect users to after self-service lockdown. This flow should not require authentication since the user's session is deleted.
44
+ attr_accessor :self_service_completion_flow
45
+
46
+ # Attribute mapping from ruby-style variable name to JSON key.
47
+ def self.attribute_map
48
+ {
49
+ :'pk' => :'pk',
50
+ :'name' => :'name',
51
+ :'component' => :'component',
52
+ :'verbose_name' => :'verbose_name',
53
+ :'verbose_name_plural' => :'verbose_name_plural',
54
+ :'meta_model_name' => :'meta_model_name',
55
+ :'flow_set' => :'flow_set',
56
+ :'deactivate_user' => :'deactivate_user',
57
+ :'set_unusable_password' => :'set_unusable_password',
58
+ :'delete_sessions' => :'delete_sessions',
59
+ :'revoke_tokens' => :'revoke_tokens',
60
+ :'self_service_completion_flow' => :'self_service_completion_flow'
61
+ }
62
+ end
63
+
64
+ # Returns attribute mapping this model knows about
65
+ def self.acceptable_attribute_map
66
+ attribute_map
67
+ end
68
+
69
+ # Returns all the JSON keys this model knows about
70
+ def self.acceptable_attributes
71
+ acceptable_attribute_map.values
72
+ end
73
+
74
+ # Attribute type mapping.
75
+ def self.openapi_types
76
+ {
77
+ :'pk' => :'String',
78
+ :'name' => :'String',
79
+ :'component' => :'String',
80
+ :'verbose_name' => :'String',
81
+ :'verbose_name_plural' => :'String',
82
+ :'meta_model_name' => :'String',
83
+ :'flow_set' => :'Array<FlowSet>',
84
+ :'deactivate_user' => :'Boolean',
85
+ :'set_unusable_password' => :'Boolean',
86
+ :'delete_sessions' => :'Boolean',
87
+ :'revoke_tokens' => :'Boolean',
88
+ :'self_service_completion_flow' => :'String'
89
+ }
90
+ end
91
+
92
+ # List of attributes with nullable: true
93
+ def self.openapi_nullable
94
+ Set.new([
95
+ :'self_service_completion_flow'
96
+ ])
97
+ end
98
+
99
+ # Initializes the object
100
+ # @param [Hash] attributes Model attributes in the form of hash
101
+ def initialize(attributes = {})
102
+ if (!attributes.is_a?(Hash))
103
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::AccountLockdownStage` initialize method"
104
+ end
105
+
106
+ # check to see if the attribute exists and convert string to symbol for hash key
107
+ acceptable_attribute_map = self.class.acceptable_attribute_map
108
+ attributes = attributes.each_with_object({}) { |(k, v), h|
109
+ if (!acceptable_attribute_map.key?(k.to_sym))
110
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::AccountLockdownStage`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
111
+ end
112
+ h[k.to_sym] = v
113
+ }
114
+
115
+ if attributes.key?(:'pk')
116
+ self.pk = attributes[:'pk']
117
+ else
118
+ self.pk = nil
119
+ end
120
+
121
+ if attributes.key?(:'name')
122
+ self.name = attributes[:'name']
123
+ else
124
+ self.name = nil
125
+ end
126
+
127
+ if attributes.key?(:'component')
128
+ self.component = attributes[:'component']
129
+ else
130
+ self.component = nil
131
+ end
132
+
133
+ if attributes.key?(:'verbose_name')
134
+ self.verbose_name = attributes[:'verbose_name']
135
+ else
136
+ self.verbose_name = nil
137
+ end
138
+
139
+ if attributes.key?(:'verbose_name_plural')
140
+ self.verbose_name_plural = attributes[:'verbose_name_plural']
141
+ else
142
+ self.verbose_name_plural = nil
143
+ end
144
+
145
+ if attributes.key?(:'meta_model_name')
146
+ self.meta_model_name = attributes[:'meta_model_name']
147
+ else
148
+ self.meta_model_name = nil
149
+ end
150
+
151
+ if attributes.key?(:'flow_set')
152
+ if (value = attributes[:'flow_set']).is_a?(Array)
153
+ self.flow_set = value
154
+ end
155
+ else
156
+ self.flow_set = nil
157
+ end
158
+
159
+ if attributes.key?(:'deactivate_user')
160
+ self.deactivate_user = attributes[:'deactivate_user']
161
+ end
162
+
163
+ if attributes.key?(:'set_unusable_password')
164
+ self.set_unusable_password = attributes[:'set_unusable_password']
165
+ end
166
+
167
+ if attributes.key?(:'delete_sessions')
168
+ self.delete_sessions = attributes[:'delete_sessions']
169
+ end
170
+
171
+ if attributes.key?(:'revoke_tokens')
172
+ self.revoke_tokens = attributes[:'revoke_tokens']
173
+ end
174
+
175
+ if attributes.key?(:'self_service_completion_flow')
176
+ self.self_service_completion_flow = attributes[:'self_service_completion_flow']
177
+ end
178
+ end
179
+
180
+ # Show invalid properties with the reasons. Usually used together with valid?
181
+ # @return Array for valid properties with the reasons
182
+ def list_invalid_properties
183
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
184
+ invalid_properties = Array.new
185
+ if @pk.nil?
186
+ invalid_properties.push('invalid value for "pk", pk cannot be nil.')
187
+ end
188
+
189
+ if @name.nil?
190
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
191
+ end
192
+
193
+ if @component.nil?
194
+ invalid_properties.push('invalid value for "component", component cannot be nil.')
195
+ end
196
+
197
+ if @verbose_name.nil?
198
+ invalid_properties.push('invalid value for "verbose_name", verbose_name cannot be nil.')
199
+ end
200
+
201
+ if @verbose_name_plural.nil?
202
+ invalid_properties.push('invalid value for "verbose_name_plural", verbose_name_plural cannot be nil.')
203
+ end
204
+
205
+ if @meta_model_name.nil?
206
+ invalid_properties.push('invalid value for "meta_model_name", meta_model_name cannot be nil.')
207
+ end
208
+
209
+ if @flow_set.nil?
210
+ invalid_properties.push('invalid value for "flow_set", flow_set cannot be nil.')
211
+ end
212
+
213
+ invalid_properties
214
+ end
215
+
216
+ # Check to see if the all the properties in the model are valid
217
+ # @return true if the model is valid
218
+ def valid?
219
+ warn '[DEPRECATED] the `valid?` method is obsolete'
220
+ return false if @pk.nil?
221
+ return false if @name.nil?
222
+ return false if @component.nil?
223
+ return false if @verbose_name.nil?
224
+ return false if @verbose_name_plural.nil?
225
+ return false if @meta_model_name.nil?
226
+ return false if @flow_set.nil?
227
+ true
228
+ end
229
+
230
+ # Custom attribute writer method with validation
231
+ # @param [Object] pk Value to be assigned
232
+ def pk=(pk)
233
+ if pk.nil?
234
+ fail ArgumentError, 'pk cannot be nil'
235
+ end
236
+
237
+ @pk = pk
238
+ end
239
+
240
+ # Custom attribute writer method with validation
241
+ # @param [Object] name Value to be assigned
242
+ def name=(name)
243
+ if name.nil?
244
+ fail ArgumentError, 'name cannot be nil'
245
+ end
246
+
247
+ @name = name
248
+ end
249
+
250
+ # Custom attribute writer method with validation
251
+ # @param [Object] component Value to be assigned
252
+ def component=(component)
253
+ if component.nil?
254
+ fail ArgumentError, 'component cannot be nil'
255
+ end
256
+
257
+ @component = component
258
+ end
259
+
260
+ # Custom attribute writer method with validation
261
+ # @param [Object] verbose_name Value to be assigned
262
+ def verbose_name=(verbose_name)
263
+ if verbose_name.nil?
264
+ fail ArgumentError, 'verbose_name cannot be nil'
265
+ end
266
+
267
+ @verbose_name = verbose_name
268
+ end
269
+
270
+ # Custom attribute writer method with validation
271
+ # @param [Object] verbose_name_plural Value to be assigned
272
+ def verbose_name_plural=(verbose_name_plural)
273
+ if verbose_name_plural.nil?
274
+ fail ArgumentError, 'verbose_name_plural cannot be nil'
275
+ end
276
+
277
+ @verbose_name_plural = verbose_name_plural
278
+ end
279
+
280
+ # Custom attribute writer method with validation
281
+ # @param [Object] meta_model_name Value to be assigned
282
+ def meta_model_name=(meta_model_name)
283
+ if meta_model_name.nil?
284
+ fail ArgumentError, 'meta_model_name cannot be nil'
285
+ end
286
+
287
+ @meta_model_name = meta_model_name
288
+ end
289
+
290
+ # Custom attribute writer method with validation
291
+ # @param [Object] flow_set Value to be assigned
292
+ def flow_set=(flow_set)
293
+ if flow_set.nil?
294
+ fail ArgumentError, 'flow_set cannot be nil'
295
+ end
296
+
297
+ @flow_set = flow_set
298
+ end
299
+
300
+ # Checks equality by comparing each attribute.
301
+ # @param [Object] Object to be compared
302
+ def ==(o)
303
+ return true if self.equal?(o)
304
+ self.class == o.class &&
305
+ pk == o.pk &&
306
+ name == o.name &&
307
+ component == o.component &&
308
+ verbose_name == o.verbose_name &&
309
+ verbose_name_plural == o.verbose_name_plural &&
310
+ meta_model_name == o.meta_model_name &&
311
+ flow_set == o.flow_set &&
312
+ deactivate_user == o.deactivate_user &&
313
+ set_unusable_password == o.set_unusable_password &&
314
+ delete_sessions == o.delete_sessions &&
315
+ revoke_tokens == o.revoke_tokens &&
316
+ self_service_completion_flow == o.self_service_completion_flow
317
+ end
318
+
319
+ # @see the `==` method
320
+ # @param [Object] Object to be compared
321
+ def eql?(o)
322
+ self == o
323
+ end
324
+
325
+ # Calculates hash code according to all attributes.
326
+ # @return [Integer] Hash code
327
+ def hash
328
+ [pk, name, component, verbose_name, verbose_name_plural, meta_model_name, flow_set, deactivate_user, set_unusable_password, delete_sessions, revoke_tokens, self_service_completion_flow].hash
329
+ end
330
+
331
+ # Builds the object from hash
332
+ # @param [Hash] attributes Model attributes in the form of hash
333
+ # @return [Object] Returns the model itself
334
+ def self.build_from_hash(attributes)
335
+ return nil unless attributes.is_a?(Hash)
336
+ attributes = attributes.transform_keys(&:to_sym)
337
+ transformed_hash = {}
338
+ openapi_types.each_pair do |key, type|
339
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
340
+ transformed_hash["#{key}"] = nil
341
+ elsif type =~ /\AArray<(.*)>/i
342
+ # check to ensure the input is an array given that the attribute
343
+ # is documented as an array but the input is not
344
+ if attributes[attribute_map[key]].is_a?(Array)
345
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
346
+ end
347
+ elsif !attributes[attribute_map[key]].nil?
348
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
349
+ end
350
+ end
351
+ new(transformed_hash)
352
+ end
353
+
354
+ # Returns the object in the form of hash
355
+ # @return [Hash] Returns the object in the form of hash
356
+ def to_hash
357
+ hash = {}
358
+ self.class.attribute_map.each_pair do |attr, param|
359
+ value = self.send(attr)
360
+ if value.nil?
361
+ is_nullable = self.class.openapi_nullable.include?(attr)
362
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
363
+ end
364
+
365
+ hash[param] = _to_hash(value)
366
+ end
367
+ hash
368
+ end
369
+
370
+ end
371
+
372
+ end