authentik-api 2026.2.3 → 2026.5.0.rc2

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 (206) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/README_API.md +66 -14
  4. data/lib/authentik/api/api/admin_api.rb +4 -12
  5. data/lib/authentik/api/api/core_api.rb +143 -18
  6. data/lib/authentik/api/api/crypto_api.rb +2 -6
  7. data/lib/authentik/api/api/endpoints_api.rb +1577 -656
  8. data/lib/authentik/api/api/events_api.rb +121 -38
  9. data/lib/authentik/api/api/flows_api.rb +8 -90
  10. data/lib/authentik/api/api/lifecycle_api.rb +22 -13
  11. data/lib/authentik/api/api/managed_api.rb +73 -0
  12. data/lib/authentik/api/api/policies_api.rb +5 -6
  13. data/lib/authentik/api/api/providers_api.rb +46 -108
  14. data/lib/authentik/api/api/rbac_api.rb +0 -5
  15. data/lib/authentik/api/api/schema_api.rb +4 -12
  16. data/lib/authentik/api/api/sources_api.rb +35 -96
  17. data/lib/authentik/api/api/ssf_api.rb +63 -6
  18. data/lib/authentik/api/api/stages_api.rb +581 -102
  19. data/lib/authentik/api/api/tasks_api.rb +5 -13
  20. data/lib/authentik/api/models/account_lockdown_stage.rb +372 -0
  21. data/lib/authentik/api/models/account_lockdown_stage_request.rb +219 -0
  22. data/lib/authentik/api/models/app_enum.rb +3 -2
  23. data/lib/authentik/api/models/apple_independent_secure_enclave.rb +246 -0
  24. data/lib/authentik/api/models/apple_independent_secure_enclave_request.rb +273 -0
  25. data/lib/authentik/api/models/application.rb +14 -4
  26. data/lib/authentik/api/models/application_request.rb +14 -4
  27. data/lib/authentik/api/models/authenticated_session_user_agent_device.rb +2 -30
  28. data/lib/authentik/api/models/authenticated_session_user_agent_os.rb +4 -60
  29. data/lib/authentik/api/models/authentication_enum.rb +2 -1
  30. data/lib/authentik/api/models/authenticator_validate_stage.rb +51 -4
  31. data/lib/authentik/api/models/authenticator_validate_stage_request.rb +51 -4
  32. data/lib/authentik/api/models/authenticator_web_authn_stage.rb +23 -2
  33. data/lib/authentik/api/models/authenticator_web_authn_stage_request.rb +23 -2
  34. data/lib/authentik/api/models/{flow_import_result.rb → blueprint_import_result.rb} +4 -4
  35. data/lib/authentik/api/models/brand.rb +11 -1
  36. data/lib/authentik/api/models/brand_request.rb +11 -1
  37. data/lib/authentik/api/models/certificate_key_pair.rb +1 -1
  38. data/lib/authentik/api/models/certificate_key_pair_key_type_enum.rb +37 -0
  39. data/lib/authentik/api/models/compatibility_mode_enum.rb +3 -1
  40. data/lib/authentik/api/models/{consent_stage_mode_enum.rb → consent_mode_enum.rb} +3 -3
  41. data/lib/authentik/api/models/consent_stage.rb +1 -1
  42. data/lib/authentik/api/models/consent_stage_request.rb +1 -1
  43. data/lib/authentik/api/models/country_code_enum.rb +3 -3
  44. data/lib/authentik/api/models/current_brand.rb +10 -1
  45. data/lib/authentik/api/models/current_brand_flags.rb +31 -27
  46. data/lib/authentik/api/models/delivery_method_enum.rb +3 -1
  47. data/lib/authentik/api/models/event_matcher_policy.rb +15 -5
  48. data/lib/authentik/api/models/event_matcher_policy_request.rb +30 -5
  49. data/lib/authentik/api/models/event_stats.rb +187 -0
  50. data/lib/authentik/api/models/event_volume.rb +1 -1
  51. data/lib/authentik/api/models/events_requested_enum.rb +7 -1
  52. data/lib/authentik/api/models/force_binding_enum.rb +34 -0
  53. data/lib/authentik/api/models/{resident_key_requirement_enum.rb → format_enum.rb} +6 -7
  54. data/lib/authentik/api/models/geo_ip_policy.rb +1 -1
  55. data/lib/authentik/api/models/{detailed_country_field.rb → geo_ip_policy_countries_obj_inner.rb} +22 -26
  56. data/lib/authentik/api/models/google_chrome_connector.rb +326 -0
  57. data/lib/authentik/api/models/google_chrome_connector_request.rb +214 -0
  58. data/lib/authentik/api/models/grant_types_enum.rb +39 -0
  59. data/lib/authentik/api/models/group_ldap_source_connection.rb +30 -4
  60. data/lib/authentik/api/models/iframe_logout_challenge.rb +1 -1
  61. data/lib/authentik/api/models/invitation_send_email_request.rb +213 -0
  62. data/lib/authentik/api/models/key_type_enum.rb +3 -3
  63. data/lib/authentik/api/models/lang_enum.rb +131 -0
  64. data/lib/authentik/api/models/lifecycle_iteration.rb +30 -86
  65. data/lib/authentik/api/models/logout_url.rb +209 -0
  66. data/lib/authentik/api/models/model_enum.rb +3 -1
  67. data/lib/authentik/api/models/native_logout_challenge.rb +68 -37
  68. data/lib/authentik/api/models/notification_transport.rb +13 -2
  69. data/lib/authentik/api/models/notification_transport_request.rb +13 -2
  70. data/lib/authentik/api/models/o_auth2_provider.rb +12 -1
  71. data/lib/authentik/api/models/o_auth2_provider_request.rb +12 -1
  72. data/lib/authentik/api/models/operating_system.rb +0 -17
  73. data/lib/authentik/api/models/operating_system_request.rb +2 -9
  74. data/lib/authentik/api/models/paginated_account_lockdown_stage_list.rb +214 -0
  75. data/lib/authentik/api/models/paginated_apple_independent_secure_enclave_list.rb +214 -0
  76. data/lib/authentik/api/models/paginated_extra_role_object_permission_list.rb +32 -4
  77. data/lib/authentik/api/models/paginated_google_chrome_connector_list.rb +214 -0
  78. data/lib/authentik/api/models/patched_account_lockdown_stage_request.rb +212 -0
  79. data/lib/authentik/api/models/patched_apple_independent_secure_enclave_request.rb +235 -0
  80. data/lib/authentik/api/models/patched_application_request.rb +14 -4
  81. data/lib/authentik/api/models/patched_authenticator_validate_stage_request.rb +51 -4
  82. data/lib/authentik/api/models/patched_authenticator_web_authn_stage_request.rb +23 -2
  83. data/lib/authentik/api/models/patched_brand_request.rb +11 -1
  84. data/lib/authentik/api/models/patched_consent_stage_request.rb +1 -1
  85. data/lib/authentik/api/models/patched_event_matcher_policy_request.rb +30 -5
  86. data/lib/authentik/api/models/patched_google_chrome_connector_request.rb +190 -0
  87. data/lib/authentik/api/models/patched_notification_transport_request.rb +13 -2
  88. data/lib/authentik/api/models/patched_o_auth2_provider_request.rb +12 -1
  89. data/lib/authentik/api/models/patched_saml_provider_request.rb +17 -27
  90. data/lib/authentik/api/models/patched_saml_source_request.rb +11 -1
  91. data/lib/authentik/api/models/patched_settings_request_flags.rb +31 -27
  92. data/lib/authentik/api/models/patched_ssf_provider_request.rb +13 -4
  93. data/lib/authentik/api/models/prompt_type_enum.rb +4 -1
  94. data/lib/authentik/api/models/redirect_uri.rb +13 -4
  95. data/lib/authentik/api/models/redirect_uri_request.rb +13 -4
  96. data/lib/authentik/api/models/redirect_uri_type_enum.rb +34 -0
  97. data/lib/authentik/api/models/related_rule.rb +250 -0
  98. data/lib/authentik/api/models/saml_provider.rb +98 -8
  99. data/lib/authentik/api/models/saml_provider_request.rb +17 -27
  100. data/lib/authentik/api/models/saml_source.rb +11 -1
  101. data/lib/authentik/api/models/saml_source_request.rb +11 -1
  102. data/lib/authentik/api/models/ssf_provider.rb +41 -4
  103. data/lib/authentik/api/models/ssf_provider_request.rb +13 -4
  104. data/lib/authentik/api/models/ssf_stream.rb +10 -1
  105. data/lib/authentik/api/models/ssf_stream_status_enum.rb +36 -0
  106. data/lib/authentik/api/models/task.rb +1 -1
  107. data/lib/authentik/api/models/{task_state_enum.rb → task_status_enum.rb} +3 -3
  108. data/lib/authentik/api/models/{notification_transport_mode_enum.rb → transport_mode_enum.rb} +3 -3
  109. data/lib/authentik/api/models/usage_enum.rb +33 -0
  110. data/lib/authentik/api/models/user_account_lockdown_request.rb +144 -0
  111. data/lib/authentik/api/models/user_ldap_source_connection.rb +30 -4
  112. data/lib/authentik/api/models/user_password_hash_set_request.rb +168 -0
  113. data/lib/authentik/api/models/vendor_enum.rb +2 -1
  114. data/lib/authentik/api/models/web_authn_hint_enum.rb +35 -0
  115. data/lib/authentik/api/version.rb +1 -1
  116. data/spec/api/admin_api_spec.rb +2 -2
  117. data/spec/api/core_api_spec.rb +27 -3
  118. data/spec/api/crypto_api_spec.rb +1 -1
  119. data/spec/api/endpoints_api_spec.rb +167 -0
  120. data/spec/api/events_api_spec.rb +33 -7
  121. data/spec/api/flows_api_spec.rb +4 -16
  122. data/spec/api/lifecycle_api_spec.rb +6 -3
  123. data/spec/api/managed_api_spec.rb +13 -0
  124. data/spec/api/policies_api_spec.rb +2 -1
  125. data/spec/api/providers_api_spec.rb +21 -19
  126. data/spec/api/schema_api_spec.rb +2 -2
  127. data/spec/api/sources_api_spec.rb +17 -16
  128. data/spec/api/ssf_api_spec.rb +12 -1
  129. data/spec/api/stages_api_spec.rb +117 -18
  130. data/spec/api/tasks_api_spec.rb +2 -2
  131. data/spec/models/account_lockdown_stage_request_spec.rb +60 -0
  132. data/spec/models/account_lockdown_stage_spec.rb +96 -0
  133. data/spec/models/apple_independent_secure_enclave_request_spec.rb +54 -0
  134. data/spec/models/apple_independent_secure_enclave_spec.rb +54 -0
  135. data/spec/models/application_request_spec.rb +6 -0
  136. data/spec/models/application_spec.rb +6 -0
  137. data/spec/models/authenticator_validate_stage_request_spec.rb +30 -0
  138. data/spec/models/authenticator_validate_stage_spec.rb +30 -0
  139. data/spec/models/authenticator_web_authn_stage_request_spec.rb +12 -0
  140. data/spec/models/authenticator_web_authn_stage_spec.rb +12 -0
  141. data/spec/models/{flow_import_result_spec.rb → blueprint_import_result_spec.rb} +6 -6
  142. data/spec/models/brand_request_spec.rb +6 -0
  143. data/spec/models/brand_spec.rb +6 -0
  144. data/spec/models/{notification_transport_mode_enum_spec.rb → certificate_key_pair_key_type_enum_spec.rb} +6 -6
  145. data/spec/models/{consent_stage_mode_enum_spec.rb → consent_mode_enum_spec.rb} +6 -6
  146. data/spec/models/current_brand_flags_spec.rb +2 -2
  147. data/spec/models/current_brand_spec.rb +6 -0
  148. data/spec/models/event_matcher_policy_request_spec.rb +6 -0
  149. data/spec/models/event_matcher_policy_spec.rb +6 -0
  150. data/spec/models/event_stats_spec.rb +36 -0
  151. data/spec/models/force_binding_enum_spec.rb +24 -0
  152. data/spec/models/format_enum_spec.rb +24 -0
  153. data/spec/models/{detailed_country_field_spec.rb → geo_ip_policy_countries_obj_inner_spec.rb} +6 -6
  154. data/spec/models/google_chrome_connector_request_spec.rb +48 -0
  155. data/spec/models/google_chrome_connector_spec.rb +78 -0
  156. data/spec/models/grant_types_enum_spec.rb +24 -0
  157. data/spec/models/group_ldap_source_connection_spec.rb +6 -0
  158. data/spec/models/invitation_send_email_request_spec.rb +48 -0
  159. data/spec/models/lang_enum_spec.rb +24 -0
  160. data/spec/models/lifecycle_iteration_spec.rb +2 -14
  161. data/spec/models/logout_url_spec.rb +60 -0
  162. data/spec/models/native_logout_challenge_spec.rb +13 -7
  163. data/spec/models/notification_transport_request_spec.rb +6 -0
  164. data/spec/models/notification_transport_spec.rb +6 -0
  165. data/spec/models/o_auth2_provider_request_spec.rb +6 -0
  166. data/spec/models/o_auth2_provider_spec.rb +6 -0
  167. data/spec/models/paginated_account_lockdown_stage_list_spec.rb +42 -0
  168. data/spec/models/paginated_apple_independent_secure_enclave_list_spec.rb +42 -0
  169. data/spec/models/paginated_extra_role_object_permission_list_spec.rb +6 -0
  170. data/spec/models/paginated_google_chrome_connector_list_spec.rb +42 -0
  171. data/spec/models/patched_account_lockdown_stage_request_spec.rb +60 -0
  172. data/spec/models/patched_apple_independent_secure_enclave_request_spec.rb +54 -0
  173. data/spec/models/patched_application_request_spec.rb +6 -0
  174. data/spec/models/patched_authenticator_validate_stage_request_spec.rb +30 -0
  175. data/spec/models/patched_authenticator_web_authn_stage_request_spec.rb +12 -0
  176. data/spec/models/patched_brand_request_spec.rb +6 -0
  177. data/spec/models/patched_event_matcher_policy_request_spec.rb +6 -0
  178. data/spec/models/patched_google_chrome_connector_request_spec.rb +48 -0
  179. data/spec/models/patched_notification_transport_request_spec.rb +6 -0
  180. data/spec/models/patched_o_auth2_provider_request_spec.rb +6 -0
  181. data/spec/models/patched_saml_provider_request_spec.rb +7 -1
  182. data/spec/models/patched_saml_source_request_spec.rb +6 -0
  183. data/spec/models/patched_settings_request_flags_spec.rb +2 -2
  184. data/spec/models/patched_ssf_provider_request_spec.rb +6 -0
  185. data/spec/models/redirect_uri_request_spec.rb +6 -0
  186. data/spec/models/redirect_uri_spec.rb +6 -0
  187. data/spec/models/redirect_uri_type_enum_spec.rb +24 -0
  188. data/spec/models/related_rule_spec.rb +54 -0
  189. data/spec/models/saml_provider_request_spec.rb +7 -1
  190. data/spec/models/saml_provider_spec.rb +25 -1
  191. data/spec/models/saml_source_request_spec.rb +6 -0
  192. data/spec/models/saml_source_spec.rb +6 -0
  193. data/spec/models/ssf_provider_request_spec.rb +6 -0
  194. data/spec/models/ssf_provider_spec.rb +12 -0
  195. data/spec/models/ssf_stream_spec.rb +6 -0
  196. data/spec/models/ssf_stream_status_enum_spec.rb +24 -0
  197. data/spec/models/{task_state_enum_spec.rb → task_status_enum_spec.rb} +6 -6
  198. data/spec/models/transport_mode_enum_spec.rb +24 -0
  199. data/spec/models/usage_enum_spec.rb +24 -0
  200. data/spec/models/user_account_lockdown_request_spec.rb +30 -0
  201. data/spec/models/user_ldap_source_connection_spec.rb +6 -0
  202. data/spec/models/user_password_hash_set_request_spec.rb +30 -0
  203. data/spec/models/web_authn_hint_enum_spec.rb +24 -0
  204. data/spec/zeitwerk_spec.rb +34 -0
  205. metadata +113 -32
  206. data/spec/models/resident_key_requirement_enum_spec.rb +0 -24
@@ -10,11 +10,17 @@ require 'time'
10
10
  module Authentik::Api
11
11
  class EventsRequestedEnum
12
12
  HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_REVOKED = "https://schemas.openid.net/secevent/caep/event-type/session-revoked".freeze
13
+ HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_TOKEN_CLAIMS_CHANGE = "https://schemas.openid.net/secevent/caep/event-type/token-claims-change".freeze
13
14
  HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_CREDENTIAL_CHANGE = "https://schemas.openid.net/secevent/caep/event-type/credential-change".freeze
15
+ HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_ASSURANCE_LEVEL_CHANGE = "https://schemas.openid.net/secevent/caep/event-type/assurance-level-change".freeze
16
+ HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_DEVICE_COMPLIANCE_CHANGE = "https://schemas.openid.net/secevent/caep/event-type/device-compliance-change".freeze
17
+ HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_ESTABLISHED = "https://schemas.openid.net/secevent/caep/event-type/session-established".freeze
18
+ HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_PRESENTED = "https://schemas.openid.net/secevent/caep/event-type/session-presented".freeze
19
+ HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_RISK_LEVEL_CHANGE = "https://schemas.openid.net/secevent/caep/event-type/risk-level-change".freeze
14
20
  HTTPS___SCHEMAS_OPENID_NET_SECEVENT_SSF_EVENT_TYPE_VERIFICATION = "https://schemas.openid.net/secevent/ssf/event-type/verification".freeze
15
21
 
16
22
  def self.all_vars
17
- @all_vars ||= [HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_REVOKED, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_CREDENTIAL_CHANGE, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_SSF_EVENT_TYPE_VERIFICATION].freeze
23
+ @all_vars ||= [HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_REVOKED, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_TOKEN_CLAIMS_CHANGE, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_CREDENTIAL_CHANGE, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_ASSURANCE_LEVEL_CHANGE, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_DEVICE_COMPLIANCE_CHANGE, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_ESTABLISHED, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_SESSION_PRESENTED, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_CAEP_EVENT_TYPE_RISK_LEVEL_CHANGE, HTTPS___SCHEMAS_OPENID_NET_SECEVENT_SSF_EVENT_TYPE_VERIFICATION].freeze
18
24
  end
19
25
 
20
26
  # Builds the enum from string
@@ -0,0 +1,34 @@
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
+ class ForceBindingEnum
12
+ URN_OASIS_NAMES_TC_SAML_2_0_BINDINGS_HTTP_POST = "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST".freeze
13
+ URN_OASIS_NAMES_TC_SAML_2_0_BINDINGS_HTTP_REDIRECT = "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect".freeze
14
+
15
+ def self.all_vars
16
+ @all_vars ||= [URN_OASIS_NAMES_TC_SAML_2_0_BINDINGS_HTTP_POST, URN_OASIS_NAMES_TC_SAML_2_0_BINDINGS_HTTP_REDIRECT].freeze
17
+ end
18
+
19
+ # Builds the enum from string
20
+ # @param [String] The enum value in the form of the string
21
+ # @return [String] The enum value
22
+ def self.build_from_hash(value)
23
+ new.build_from_hash(value)
24
+ end
25
+
26
+ # Builds the enum from string
27
+ # @param [String] The enum value in the form of the string
28
+ # @return [String] The enum value
29
+ def build_from_hash(value)
30
+ return value if ForceBindingEnum.all_vars.include?(value)
31
+ raise "Invalid ENUM value #{value} for class #ForceBindingEnum"
32
+ end
33
+ end
34
+ end
@@ -8,13 +8,12 @@ require 'date'
8
8
  require 'time'
9
9
 
10
10
  module Authentik::Api
11
- class ResidentKeyRequirementEnum
12
- DISCOURAGED = "discouraged".freeze
13
- PREFERRED = "preferred".freeze
14
- REQUIRED = "required".freeze
11
+ class FormatEnum
12
+ JSON = "json".freeze
13
+ YAML = "yaml".freeze
15
14
 
16
15
  def self.all_vars
17
- @all_vars ||= [DISCOURAGED, PREFERRED, REQUIRED].freeze
16
+ @all_vars ||= [JSON, YAML].freeze
18
17
  end
19
18
 
20
19
  # Builds the enum from string
@@ -28,8 +27,8 @@ module Authentik::Api
28
27
  # @param [String] The enum value in the form of the string
29
28
  # @return [String] The enum value
30
29
  def build_from_hash(value)
31
- return value if ResidentKeyRequirementEnum.all_vars.include?(value)
32
- raise "Invalid ENUM value #{value} for class #ResidentKeyRequirementEnum"
30
+ return value if FormatEnum.all_vars.include?(value)
31
+ raise "Invalid ENUM value #{value} for class #FormatEnum"
33
32
  end
34
33
  end
35
34
  end
@@ -96,7 +96,7 @@ module Authentik::Api
96
96
  :'bound_to' => :'Integer',
97
97
  :'asns' => :'Array<Integer>',
98
98
  :'countries' => :'Array<CountryCodeEnum>',
99
- :'countries_obj' => :'Array<DetailedCountryField>',
99
+ :'countries_obj' => :'Array<GeoIPPolicyCountriesObjInner>',
100
100
  :'check_history_distance' => :'Boolean',
101
101
  :'history_max_distance_km' => :'Integer',
102
102
  :'distance_tolerance_km' => :'Integer',
@@ -8,33 +8,11 @@ require 'date'
8
8
  require 'time'
9
9
 
10
10
  module Authentik::Api
11
- class DetailedCountryField < ApiModelBase
11
+ class GeoIPPolicyCountriesObjInner < ApiModelBase
12
12
  attr_accessor :code
13
13
 
14
14
  attr_accessor :name
15
15
 
16
- class EnumAttributeValidator
17
- attr_reader :datatype
18
- attr_reader :allowable_values
19
-
20
- def initialize(datatype, allowable_values)
21
- @allowable_values = allowable_values.map do |value|
22
- case datatype.to_s
23
- when /Integer/i
24
- value.to_i
25
- when /Float/i
26
- value.to_f
27
- else
28
- value
29
- end
30
- end
31
- end
32
-
33
- def valid?(value)
34
- !value || allowable_values.include?(value)
35
- end
36
- end
37
-
38
16
  # Attribute mapping from ruby-style variable name to JSON key.
39
17
  def self.attribute_map
40
18
  {
@@ -56,7 +34,7 @@ module Authentik::Api
56
34
  # Attribute type mapping.
57
35
  def self.openapi_types
58
36
  {
59
- :'code' => :'CountryCodeEnum',
37
+ :'code' => :'String',
60
38
  :'name' => :'String'
61
39
  }
62
40
  end
@@ -71,14 +49,14 @@ module Authentik::Api
71
49
  # @param [Hash] attributes Model attributes in the form of hash
72
50
  def initialize(attributes = {})
73
51
  if (!attributes.is_a?(Hash))
74
- fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::DetailedCountryField` initialize method"
52
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::GeoIPPolicyCountriesObjInner` initialize method"
75
53
  end
76
54
 
77
55
  # check to see if the attribute exists and convert string to symbol for hash key
78
56
  acceptable_attribute_map = self.class.acceptable_attribute_map
79
57
  attributes = attributes.each_with_object({}) { |(k, v), h|
80
58
  if (!acceptable_attribute_map.key?(k.to_sym))
81
- fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::DetailedCountryField`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::GeoIPPolicyCountriesObjInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
82
60
  end
83
61
  h[k.to_sym] = v
84
62
  }
@@ -105,6 +83,14 @@ module Authentik::Api
105
83
  invalid_properties.push('invalid value for "code", code cannot be nil.')
106
84
  end
107
85
 
86
+ if @code.to_s.length > 2
87
+ invalid_properties.push('invalid value for "code", the character length must be smaller than or equal to 2.')
88
+ end
89
+
90
+ if @code.to_s.length < 2
91
+ invalid_properties.push('invalid value for "code", the character length must be greater than or equal to 2.')
92
+ end
93
+
108
94
  if @name.nil?
109
95
  invalid_properties.push('invalid value for "name", name cannot be nil.')
110
96
  end
@@ -117,6 +103,8 @@ module Authentik::Api
117
103
  def valid?
118
104
  warn '[DEPRECATED] the `valid?` method is obsolete'
119
105
  return false if @code.nil?
106
+ return false if @code.to_s.length > 2
107
+ return false if @code.to_s.length < 2
120
108
  return false if @name.nil?
121
109
  true
122
110
  end
@@ -128,6 +116,14 @@ module Authentik::Api
128
116
  fail ArgumentError, 'code cannot be nil'
129
117
  end
130
118
 
119
+ if code.to_s.length > 2
120
+ fail ArgumentError, 'invalid value for "code", the character length must be smaller than or equal to 2.'
121
+ end
122
+
123
+ if code.to_s.length < 2
124
+ fail ArgumentError, 'invalid value for "code", the character length must be greater than or equal to 2.'
125
+ end
126
+
131
127
  @code = code
132
128
  end
133
129
 
@@ -0,0 +1,326 @@
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 GoogleChromeConnector < ApiModelBase
13
+ attr_accessor :connector_uuid
14
+
15
+ attr_accessor :name
16
+
17
+ attr_accessor :enabled
18
+
19
+ # Get object component so that we know how to edit the object
20
+ attr_accessor :component
21
+
22
+ # Return object's verbose_name
23
+ attr_accessor :verbose_name
24
+
25
+ # Return object's plural verbose_name
26
+ attr_accessor :verbose_name_plural
27
+
28
+ # Return internal model name
29
+ attr_accessor :meta_model_name
30
+
31
+ attr_accessor :credentials
32
+
33
+ # Full URL to be used in Google Workspace configuration
34
+ attr_accessor :chrome_url
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ def self.attribute_map
38
+ {
39
+ :'connector_uuid' => :'connector_uuid',
40
+ :'name' => :'name',
41
+ :'enabled' => :'enabled',
42
+ :'component' => :'component',
43
+ :'verbose_name' => :'verbose_name',
44
+ :'verbose_name_plural' => :'verbose_name_plural',
45
+ :'meta_model_name' => :'meta_model_name',
46
+ :'credentials' => :'credentials',
47
+ :'chrome_url' => :'chrome_url'
48
+ }
49
+ end
50
+
51
+ # Returns attribute mapping this model knows about
52
+ def self.acceptable_attribute_map
53
+ attribute_map
54
+ end
55
+
56
+ # Returns all the JSON keys this model knows about
57
+ def self.acceptable_attributes
58
+ acceptable_attribute_map.values
59
+ end
60
+
61
+ # Attribute type mapping.
62
+ def self.openapi_types
63
+ {
64
+ :'connector_uuid' => :'String',
65
+ :'name' => :'String',
66
+ :'enabled' => :'Boolean',
67
+ :'component' => :'String',
68
+ :'verbose_name' => :'String',
69
+ :'verbose_name_plural' => :'String',
70
+ :'meta_model_name' => :'String',
71
+ :'credentials' => :'Hash<String, Object>',
72
+ :'chrome_url' => :'String'
73
+ }
74
+ end
75
+
76
+ # List of attributes with nullable: true
77
+ def self.openapi_nullable
78
+ Set.new([
79
+ :'chrome_url'
80
+ ])
81
+ end
82
+
83
+ # Initializes the object
84
+ # @param [Hash] attributes Model attributes in the form of hash
85
+ def initialize(attributes = {})
86
+ if (!attributes.is_a?(Hash))
87
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::GoogleChromeConnector` initialize method"
88
+ end
89
+
90
+ # check to see if the attribute exists and convert string to symbol for hash key
91
+ acceptable_attribute_map = self.class.acceptable_attribute_map
92
+ attributes = attributes.each_with_object({}) { |(k, v), h|
93
+ if (!acceptable_attribute_map.key?(k.to_sym))
94
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::GoogleChromeConnector`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
95
+ end
96
+ h[k.to_sym] = v
97
+ }
98
+
99
+ if attributes.key?(:'connector_uuid')
100
+ self.connector_uuid = attributes[:'connector_uuid']
101
+ end
102
+
103
+ if attributes.key?(:'name')
104
+ self.name = attributes[:'name']
105
+ else
106
+ self.name = nil
107
+ end
108
+
109
+ if attributes.key?(:'enabled')
110
+ self.enabled = attributes[:'enabled']
111
+ end
112
+
113
+ if attributes.key?(:'component')
114
+ self.component = attributes[:'component']
115
+ else
116
+ self.component = nil
117
+ end
118
+
119
+ if attributes.key?(:'verbose_name')
120
+ self.verbose_name = attributes[:'verbose_name']
121
+ else
122
+ self.verbose_name = nil
123
+ end
124
+
125
+ if attributes.key?(:'verbose_name_plural')
126
+ self.verbose_name_plural = attributes[:'verbose_name_plural']
127
+ else
128
+ self.verbose_name_plural = nil
129
+ end
130
+
131
+ if attributes.key?(:'meta_model_name')
132
+ self.meta_model_name = attributes[:'meta_model_name']
133
+ else
134
+ self.meta_model_name = nil
135
+ end
136
+
137
+ if attributes.key?(:'credentials')
138
+ if (value = attributes[:'credentials']).is_a?(Hash)
139
+ self.credentials = value
140
+ end
141
+ else
142
+ self.credentials = nil
143
+ end
144
+
145
+ if attributes.key?(:'chrome_url')
146
+ self.chrome_url = attributes[:'chrome_url']
147
+ else
148
+ self.chrome_url = nil
149
+ end
150
+ end
151
+
152
+ # Show invalid properties with the reasons. Usually used together with valid?
153
+ # @return Array for valid properties with the reasons
154
+ def list_invalid_properties
155
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
156
+ invalid_properties = Array.new
157
+ if @name.nil?
158
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
159
+ end
160
+
161
+ if @component.nil?
162
+ invalid_properties.push('invalid value for "component", component cannot be nil.')
163
+ end
164
+
165
+ if @verbose_name.nil?
166
+ invalid_properties.push('invalid value for "verbose_name", verbose_name cannot be nil.')
167
+ end
168
+
169
+ if @verbose_name_plural.nil?
170
+ invalid_properties.push('invalid value for "verbose_name_plural", verbose_name_plural cannot be nil.')
171
+ end
172
+
173
+ if @meta_model_name.nil?
174
+ invalid_properties.push('invalid value for "meta_model_name", meta_model_name cannot be nil.')
175
+ end
176
+
177
+ if @credentials.nil?
178
+ invalid_properties.push('invalid value for "credentials", credentials cannot be nil.')
179
+ end
180
+
181
+ invalid_properties
182
+ end
183
+
184
+ # Check to see if the all the properties in the model are valid
185
+ # @return true if the model is valid
186
+ def valid?
187
+ warn '[DEPRECATED] the `valid?` method is obsolete'
188
+ return false if @name.nil?
189
+ return false if @component.nil?
190
+ return false if @verbose_name.nil?
191
+ return false if @verbose_name_plural.nil?
192
+ return false if @meta_model_name.nil?
193
+ return false if @credentials.nil?
194
+ true
195
+ end
196
+
197
+ # Custom attribute writer method with validation
198
+ # @param [Object] name Value to be assigned
199
+ def name=(name)
200
+ if name.nil?
201
+ fail ArgumentError, 'name cannot be nil'
202
+ end
203
+
204
+ @name = name
205
+ end
206
+
207
+ # Custom attribute writer method with validation
208
+ # @param [Object] component Value to be assigned
209
+ def component=(component)
210
+ if component.nil?
211
+ fail ArgumentError, 'component cannot be nil'
212
+ end
213
+
214
+ @component = component
215
+ end
216
+
217
+ # Custom attribute writer method with validation
218
+ # @param [Object] verbose_name Value to be assigned
219
+ def verbose_name=(verbose_name)
220
+ if verbose_name.nil?
221
+ fail ArgumentError, 'verbose_name cannot be nil'
222
+ end
223
+
224
+ @verbose_name = verbose_name
225
+ end
226
+
227
+ # Custom attribute writer method with validation
228
+ # @param [Object] verbose_name_plural Value to be assigned
229
+ def verbose_name_plural=(verbose_name_plural)
230
+ if verbose_name_plural.nil?
231
+ fail ArgumentError, 'verbose_name_plural cannot be nil'
232
+ end
233
+
234
+ @verbose_name_plural = verbose_name_plural
235
+ end
236
+
237
+ # Custom attribute writer method with validation
238
+ # @param [Object] meta_model_name Value to be assigned
239
+ def meta_model_name=(meta_model_name)
240
+ if meta_model_name.nil?
241
+ fail ArgumentError, 'meta_model_name cannot be nil'
242
+ end
243
+
244
+ @meta_model_name = meta_model_name
245
+ end
246
+
247
+ # Custom attribute writer method with validation
248
+ # @param [Object] credentials Value to be assigned
249
+ def credentials=(credentials)
250
+ if credentials.nil?
251
+ fail ArgumentError, 'credentials cannot be nil'
252
+ end
253
+
254
+ @credentials = credentials
255
+ end
256
+
257
+ # Checks equality by comparing each attribute.
258
+ # @param [Object] Object to be compared
259
+ def ==(o)
260
+ return true if self.equal?(o)
261
+ self.class == o.class &&
262
+ connector_uuid == o.connector_uuid &&
263
+ name == o.name &&
264
+ enabled == o.enabled &&
265
+ component == o.component &&
266
+ verbose_name == o.verbose_name &&
267
+ verbose_name_plural == o.verbose_name_plural &&
268
+ meta_model_name == o.meta_model_name &&
269
+ credentials == o.credentials &&
270
+ chrome_url == o.chrome_url
271
+ end
272
+
273
+ # @see the `==` method
274
+ # @param [Object] Object to be compared
275
+ def eql?(o)
276
+ self == o
277
+ end
278
+
279
+ # Calculates hash code according to all attributes.
280
+ # @return [Integer] Hash code
281
+ def hash
282
+ [connector_uuid, name, enabled, component, verbose_name, verbose_name_plural, meta_model_name, credentials, chrome_url].hash
283
+ end
284
+
285
+ # Builds the object from hash
286
+ # @param [Hash] attributes Model attributes in the form of hash
287
+ # @return [Object] Returns the model itself
288
+ def self.build_from_hash(attributes)
289
+ return nil unless attributes.is_a?(Hash)
290
+ attributes = attributes.transform_keys(&:to_sym)
291
+ transformed_hash = {}
292
+ openapi_types.each_pair do |key, type|
293
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
294
+ transformed_hash["#{key}"] = nil
295
+ elsif type =~ /\AArray<(.*)>/i
296
+ # check to ensure the input is an array given that the attribute
297
+ # is documented as an array but the input is not
298
+ if attributes[attribute_map[key]].is_a?(Array)
299
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
300
+ end
301
+ elsif !attributes[attribute_map[key]].nil?
302
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
303
+ end
304
+ end
305
+ new(transformed_hash)
306
+ end
307
+
308
+ # Returns the object in the form of hash
309
+ # @return [Hash] Returns the object in the form of hash
310
+ def to_hash
311
+ hash = {}
312
+ self.class.attribute_map.each_pair do |attr, param|
313
+ value = self.send(attr)
314
+ if value.nil?
315
+ is_nullable = self.class.openapi_nullable.include?(attr)
316
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
317
+ end
318
+
319
+ hash[param] = _to_hash(value)
320
+ end
321
+ hash
322
+ end
323
+
324
+ end
325
+
326
+ end