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
@@ -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 RedirectURITypeEnum
12
+ AUTHORIZATION = "authorization".freeze
13
+ LOGOUT = "logout".freeze
14
+
15
+ def self.all_vars
16
+ @all_vars ||= [AUTHORIZATION, LOGOUT].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 RedirectURITypeEnum.all_vars.include?(value)
31
+ raise "Invalid ENUM value #{value} for class #RedirectURITypeEnum"
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,250 @@
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
+ # Mixin to validate that a valid enterprise license exists before allowing to save the object
12
+ class RelatedRule < ApiModelBase
13
+ attr_accessor :id
14
+
15
+ attr_accessor :name
16
+
17
+ attr_accessor :reviewer_groups
18
+
19
+ attr_accessor :min_reviewers
20
+
21
+ attr_accessor :reviewers
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'id' => :'id',
27
+ :'name' => :'name',
28
+ :'reviewer_groups' => :'reviewer_groups',
29
+ :'min_reviewers' => :'min_reviewers',
30
+ :'reviewers' => :'reviewers'
31
+ }
32
+ end
33
+
34
+ # Returns attribute mapping this model knows about
35
+ def self.acceptable_attribute_map
36
+ attribute_map
37
+ end
38
+
39
+ # Returns all the JSON keys this model knows about
40
+ def self.acceptable_attributes
41
+ acceptable_attribute_map.values
42
+ end
43
+
44
+ # Attribute type mapping.
45
+ def self.openapi_types
46
+ {
47
+ :'id' => :'String',
48
+ :'name' => :'String',
49
+ :'reviewer_groups' => :'Array<ReviewerGroup>',
50
+ :'min_reviewers' => :'Integer',
51
+ :'reviewers' => :'Array<ReviewerUser>'
52
+ }
53
+ end
54
+
55
+ # List of attributes with nullable: true
56
+ def self.openapi_nullable
57
+ Set.new([
58
+ ])
59
+ end
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ def initialize(attributes = {})
64
+ if (!attributes.is_a?(Hash))
65
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Authentik::Api::RelatedRule` initialize method"
66
+ end
67
+
68
+ # check to see if the attribute exists and convert string to symbol for hash key
69
+ acceptable_attribute_map = self.class.acceptable_attribute_map
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!acceptable_attribute_map.key?(k.to_sym))
72
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Authentik::Api::RelatedRule`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
73
+ end
74
+ h[k.to_sym] = v
75
+ }
76
+
77
+ if attributes.key?(:'id')
78
+ self.id = attributes[:'id']
79
+ end
80
+
81
+ if attributes.key?(:'name')
82
+ self.name = attributes[:'name']
83
+ else
84
+ self.name = nil
85
+ end
86
+
87
+ if attributes.key?(:'reviewer_groups')
88
+ if (value = attributes[:'reviewer_groups']).is_a?(Array)
89
+ self.reviewer_groups = value
90
+ end
91
+ else
92
+ self.reviewer_groups = nil
93
+ end
94
+
95
+ if attributes.key?(:'min_reviewers')
96
+ self.min_reviewers = attributes[:'min_reviewers']
97
+ else
98
+ self.min_reviewers = nil
99
+ end
100
+
101
+ if attributes.key?(:'reviewers')
102
+ if (value = attributes[:'reviewers']).is_a?(Array)
103
+ self.reviewers = value
104
+ end
105
+ else
106
+ self.reviewers = nil
107
+ end
108
+ end
109
+
110
+ # Show invalid properties with the reasons. Usually used together with valid?
111
+ # @return Array for valid properties with the reasons
112
+ def list_invalid_properties
113
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
114
+ invalid_properties = Array.new
115
+ if @name.nil?
116
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
117
+ end
118
+
119
+ if @reviewer_groups.nil?
120
+ invalid_properties.push('invalid value for "reviewer_groups", reviewer_groups cannot be nil.')
121
+ end
122
+
123
+ if @min_reviewers.nil?
124
+ invalid_properties.push('invalid value for "min_reviewers", min_reviewers cannot be nil.')
125
+ end
126
+
127
+ if @reviewers.nil?
128
+ invalid_properties.push('invalid value for "reviewers", reviewers cannot be nil.')
129
+ end
130
+
131
+ invalid_properties
132
+ end
133
+
134
+ # Check to see if the all the properties in the model are valid
135
+ # @return true if the model is valid
136
+ def valid?
137
+ warn '[DEPRECATED] the `valid?` method is obsolete'
138
+ return false if @name.nil?
139
+ return false if @reviewer_groups.nil?
140
+ return false if @min_reviewers.nil?
141
+ return false if @reviewers.nil?
142
+ true
143
+ end
144
+
145
+ # Custom attribute writer method with validation
146
+ # @param [Object] name Value to be assigned
147
+ def name=(name)
148
+ if name.nil?
149
+ fail ArgumentError, 'name cannot be nil'
150
+ end
151
+
152
+ @name = name
153
+ end
154
+
155
+ # Custom attribute writer method with validation
156
+ # @param [Object] reviewer_groups Value to be assigned
157
+ def reviewer_groups=(reviewer_groups)
158
+ if reviewer_groups.nil?
159
+ fail ArgumentError, 'reviewer_groups cannot be nil'
160
+ end
161
+
162
+ @reviewer_groups = reviewer_groups
163
+ end
164
+
165
+ # Custom attribute writer method with validation
166
+ # @param [Object] min_reviewers Value to be assigned
167
+ def min_reviewers=(min_reviewers)
168
+ if min_reviewers.nil?
169
+ fail ArgumentError, 'min_reviewers cannot be nil'
170
+ end
171
+
172
+ @min_reviewers = min_reviewers
173
+ end
174
+
175
+ # Custom attribute writer method with validation
176
+ # @param [Object] reviewers Value to be assigned
177
+ def reviewers=(reviewers)
178
+ if reviewers.nil?
179
+ fail ArgumentError, 'reviewers cannot be nil'
180
+ end
181
+
182
+ @reviewers = reviewers
183
+ end
184
+
185
+ # Checks equality by comparing each attribute.
186
+ # @param [Object] Object to be compared
187
+ def ==(o)
188
+ return true if self.equal?(o)
189
+ self.class == o.class &&
190
+ id == o.id &&
191
+ name == o.name &&
192
+ reviewer_groups == o.reviewer_groups &&
193
+ min_reviewers == o.min_reviewers &&
194
+ reviewers == o.reviewers
195
+ end
196
+
197
+ # @see the `==` method
198
+ # @param [Object] Object to be compared
199
+ def eql?(o)
200
+ self == o
201
+ end
202
+
203
+ # Calculates hash code according to all attributes.
204
+ # @return [Integer] Hash code
205
+ def hash
206
+ [id, name, reviewer_groups, min_reviewers, reviewers].hash
207
+ end
208
+
209
+ # Builds the object from hash
210
+ # @param [Hash] attributes Model attributes in the form of hash
211
+ # @return [Object] Returns the model itself
212
+ def self.build_from_hash(attributes)
213
+ return nil unless attributes.is_a?(Hash)
214
+ attributes = attributes.transform_keys(&:to_sym)
215
+ transformed_hash = {}
216
+ openapi_types.each_pair do |key, type|
217
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
218
+ transformed_hash["#{key}"] = nil
219
+ elsif type =~ /\AArray<(.*)>/i
220
+ # check to ensure the input is an array given that the attribute
221
+ # is documented as an array but the input is not
222
+ if attributes[attribute_map[key]].is_a?(Array)
223
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
224
+ end
225
+ elsif !attributes[attribute_map[key]].nil?
226
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
227
+ end
228
+ end
229
+ new(transformed_hash)
230
+ end
231
+
232
+ # Returns the object in the form of hash
233
+ # @return [Hash] Returns the object in the form of hash
234
+ def to_hash
235
+ hash = {}
236
+ self.class.attribute_map.each_pair do |attr, param|
237
+ value = self.send(attr)
238
+ if value.nil?
239
+ is_nullable = self.class.openapi_nullable.include?(attr)
240
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
241
+ end
242
+
243
+ hash[param] = _to_hash(value)
244
+ end
245
+ hash
246
+ end
247
+
248
+ end
249
+
250
+ end
@@ -71,8 +71,6 @@ module Authentik::Api
71
71
 
72
72
  if attributes.key?(:'download_url')
73
73
  self.download_url = attributes[:'download_url']
74
- else
75
- self.download_url = nil
76
74
  end
77
75
  end
78
76
 
@@ -57,8 +57,8 @@ module Authentik::Api
57
57
  # Value of the audience restriction field of the assertion. When left empty, no audience restriction will be added.
58
58
  attr_accessor :audience
59
59
 
60
- # Also known as EntityID
61
- attr_accessor :issuer
60
+ # Also known as EntityID. Providing a value overrides the default issuer generated by authentik.
61
+ attr_accessor :issuer_override
62
62
 
63
63
  # Assertion valid not before current time + this value (Format: hours=-1;minutes=-2;seconds=-3).
64
64
  attr_accessor :assertion_valid_not_before
@@ -94,6 +94,8 @@ module Authentik::Api
94
94
 
95
95
  attr_accessor :sign_logout_request
96
96
 
97
+ attr_accessor :sign_logout_response
98
+
97
99
  # This determines how authentik sends the response back to the Service Provider.
98
100
  attr_accessor :sp_binding
99
101
 
@@ -111,6 +113,15 @@ module Authentik::Api
111
113
  # Get metadata download URL
112
114
  attr_accessor :url_download_metadata
113
115
 
116
+ # Get Issuer/EntityID URL
117
+ attr_accessor :url_issuer
118
+
119
+ # Get unified SAML endpoint URL (handles SSO and SLO)
120
+ attr_accessor :url_unified
121
+
122
+ # Get IdP-initiated SAML URL
123
+ attr_accessor :url_unified_init
124
+
114
125
  # Get SSO Post URL
115
126
  attr_accessor :url_sso_post
116
127
 
@@ -168,7 +179,7 @@ module Authentik::Api
168
179
  :'acs_url' => :'acs_url',
169
180
  :'sls_url' => :'sls_url',
170
181
  :'audience' => :'audience',
171
- :'issuer' => :'issuer',
182
+ :'issuer_override' => :'issuer_override',
172
183
  :'assertion_valid_not_before' => :'assertion_valid_not_before',
173
184
  :'assertion_valid_not_on_or_after' => :'assertion_valid_not_on_or_after',
174
185
  :'session_valid_not_on_or_after' => :'session_valid_not_on_or_after',
@@ -182,12 +193,16 @@ module Authentik::Api
182
193
  :'sign_assertion' => :'sign_assertion',
183
194
  :'sign_response' => :'sign_response',
184
195
  :'sign_logout_request' => :'sign_logout_request',
196
+ :'sign_logout_response' => :'sign_logout_response',
185
197
  :'sp_binding' => :'sp_binding',
186
198
  :'sls_binding' => :'sls_binding',
187
199
  :'logout_method' => :'logout_method',
188
200
  :'default_relay_state' => :'default_relay_state',
189
201
  :'default_name_id_policy' => :'default_name_id_policy',
190
202
  :'url_download_metadata' => :'url_download_metadata',
203
+ :'url_issuer' => :'url_issuer',
204
+ :'url_unified' => :'url_unified',
205
+ :'url_unified_init' => :'url_unified_init',
191
206
  :'url_sso_post' => :'url_sso_post',
192
207
  :'url_sso_redirect' => :'url_sso_redirect',
193
208
  :'url_sso_init' => :'url_sso_init',
@@ -226,7 +241,7 @@ module Authentik::Api
226
241
  :'acs_url' => :'String',
227
242
  :'sls_url' => :'String',
228
243
  :'audience' => :'String',
229
- :'issuer' => :'String',
244
+ :'issuer_override' => :'String',
230
245
  :'assertion_valid_not_before' => :'String',
231
246
  :'assertion_valid_not_on_or_after' => :'String',
232
247
  :'session_valid_not_on_or_after' => :'String',
@@ -240,12 +255,16 @@ module Authentik::Api
240
255
  :'sign_assertion' => :'Boolean',
241
256
  :'sign_response' => :'Boolean',
242
257
  :'sign_logout_request' => :'Boolean',
258
+ :'sign_logout_response' => :'Boolean',
243
259
  :'sp_binding' => :'SAMLBindingsEnum',
244
260
  :'sls_binding' => :'SAMLBindingsEnum',
245
261
  :'logout_method' => :'SAMLLogoutMethods',
246
262
  :'default_relay_state' => :'String',
247
263
  :'default_name_id_policy' => :'SAMLNameIDPolicyEnum',
248
264
  :'url_download_metadata' => :'String',
265
+ :'url_issuer' => :'String',
266
+ :'url_unified' => :'String',
267
+ :'url_unified_init' => :'String',
249
268
  :'url_sso_post' => :'String',
250
269
  :'url_sso_redirect' => :'String',
251
270
  :'url_sso_init' => :'String',
@@ -382,8 +401,8 @@ module Authentik::Api
382
401
  self.audience = attributes[:'audience']
383
402
  end
384
403
 
385
- if attributes.key?(:'issuer')
386
- self.issuer = attributes[:'issuer']
404
+ if attributes.key?(:'issuer_override')
405
+ self.issuer_override = attributes[:'issuer_override']
387
406
  end
388
407
 
389
408
  if attributes.key?(:'assertion_valid_not_before')
@@ -438,6 +457,10 @@ module Authentik::Api
438
457
  self.sign_logout_request = attributes[:'sign_logout_request']
439
458
  end
440
459
 
460
+ if attributes.key?(:'sign_logout_response')
461
+ self.sign_logout_response = attributes[:'sign_logout_response']
462
+ end
463
+
441
464
  if attributes.key?(:'sp_binding')
442
465
  self.sp_binding = attributes[:'sp_binding']
443
466
  end
@@ -464,6 +487,24 @@ module Authentik::Api
464
487
  self.url_download_metadata = nil
465
488
  end
466
489
 
490
+ if attributes.key?(:'url_issuer')
491
+ self.url_issuer = attributes[:'url_issuer']
492
+ else
493
+ self.url_issuer = nil
494
+ end
495
+
496
+ if attributes.key?(:'url_unified')
497
+ self.url_unified = attributes[:'url_unified']
498
+ else
499
+ self.url_unified = nil
500
+ end
501
+
502
+ if attributes.key?(:'url_unified_init')
503
+ self.url_unified_init = attributes[:'url_unified_init']
504
+ else
505
+ self.url_unified_init = nil
506
+ end
507
+
467
508
  if attributes.key?(:'url_sso_post')
468
509
  self.url_sso_post = attributes[:'url_sso_post']
469
510
  else
@@ -540,6 +581,18 @@ module Authentik::Api
540
581
  invalid_properties.push('invalid value for "url_download_metadata", url_download_metadata cannot be nil.')
541
582
  end
542
583
 
584
+ if @url_issuer.nil?
585
+ invalid_properties.push('invalid value for "url_issuer", url_issuer cannot be nil.')
586
+ end
587
+
588
+ if @url_unified.nil?
589
+ invalid_properties.push('invalid value for "url_unified", url_unified cannot be nil.')
590
+ end
591
+
592
+ if @url_unified_init.nil?
593
+ invalid_properties.push('invalid value for "url_unified_init", url_unified_init cannot be nil.')
594
+ end
595
+
543
596
  if @url_sso_post.nil?
544
597
  invalid_properties.push('invalid value for "url_sso_post", url_sso_post cannot be nil.')
545
598
  end
@@ -577,6 +630,9 @@ module Authentik::Api
577
630
  return false if @meta_model_name.nil?
578
631
  return false if @acs_url.nil?
579
632
  return false if @url_download_metadata.nil?
633
+ return false if @url_issuer.nil?
634
+ return false if @url_unified.nil?
635
+ return false if @url_unified_init.nil?
580
636
  return false if @url_sso_post.nil?
581
637
  return false if @url_sso_redirect.nil?
582
638
  return false if @url_sso_init.nil?
@@ -685,6 +741,36 @@ module Authentik::Api
685
741
  @url_download_metadata = url_download_metadata
686
742
  end
687
743
 
744
+ # Custom attribute writer method with validation
745
+ # @param [Object] url_issuer Value to be assigned
746
+ def url_issuer=(url_issuer)
747
+ if url_issuer.nil?
748
+ fail ArgumentError, 'url_issuer cannot be nil'
749
+ end
750
+
751
+ @url_issuer = url_issuer
752
+ end
753
+
754
+ # Custom attribute writer method with validation
755
+ # @param [Object] url_unified Value to be assigned
756
+ def url_unified=(url_unified)
757
+ if url_unified.nil?
758
+ fail ArgumentError, 'url_unified cannot be nil'
759
+ end
760
+
761
+ @url_unified = url_unified
762
+ end
763
+
764
+ # Custom attribute writer method with validation
765
+ # @param [Object] url_unified_init Value to be assigned
766
+ def url_unified_init=(url_unified_init)
767
+ if url_unified_init.nil?
768
+ fail ArgumentError, 'url_unified_init cannot be nil'
769
+ end
770
+
771
+ @url_unified_init = url_unified_init
772
+ end
773
+
688
774
  # Custom attribute writer method with validation
689
775
  # @param [Object] url_sso_post Value to be assigned
690
776
  def url_sso_post=(url_sso_post)
@@ -757,7 +843,7 @@ module Authentik::Api
757
843
  acs_url == o.acs_url &&
758
844
  sls_url == o.sls_url &&
759
845
  audience == o.audience &&
760
- issuer == o.issuer &&
846
+ issuer_override == o.issuer_override &&
761
847
  assertion_valid_not_before == o.assertion_valid_not_before &&
762
848
  assertion_valid_not_on_or_after == o.assertion_valid_not_on_or_after &&
763
849
  session_valid_not_on_or_after == o.session_valid_not_on_or_after &&
@@ -771,12 +857,16 @@ module Authentik::Api
771
857
  sign_assertion == o.sign_assertion &&
772
858
  sign_response == o.sign_response &&
773
859
  sign_logout_request == o.sign_logout_request &&
860
+ sign_logout_response == o.sign_logout_response &&
774
861
  sp_binding == o.sp_binding &&
775
862
  sls_binding == o.sls_binding &&
776
863
  logout_method == o.logout_method &&
777
864
  default_relay_state == o.default_relay_state &&
778
865
  default_name_id_policy == o.default_name_id_policy &&
779
866
  url_download_metadata == o.url_download_metadata &&
867
+ url_issuer == o.url_issuer &&
868
+ url_unified == o.url_unified &&
869
+ url_unified_init == o.url_unified_init &&
780
870
  url_sso_post == o.url_sso_post &&
781
871
  url_sso_redirect == o.url_sso_redirect &&
782
872
  url_sso_init == o.url_sso_init &&
@@ -793,7 +883,7 @@ module Authentik::Api
793
883
  # Calculates hash code according to all attributes.
794
884
  # @return [Integer] Hash code
795
885
  def hash
796
- [pk, name, authentication_flow, authorization_flow, invalidation_flow, property_mappings, component, assigned_application_slug, assigned_application_name, assigned_backchannel_application_slug, assigned_backchannel_application_name, verbose_name, verbose_name_plural, meta_model_name, acs_url, sls_url, audience, issuer, assertion_valid_not_before, assertion_valid_not_on_or_after, session_valid_not_on_or_after, name_id_mapping, authn_context_class_ref_mapping, digest_algorithm, signature_algorithm, signing_kp, verification_kp, encryption_kp, sign_assertion, sign_response, sign_logout_request, sp_binding, sls_binding, logout_method, default_relay_state, default_name_id_policy, url_download_metadata, url_sso_post, url_sso_redirect, url_sso_init, url_slo_post, url_slo_redirect].hash
886
+ [pk, name, authentication_flow, authorization_flow, invalidation_flow, property_mappings, component, assigned_application_slug, assigned_application_name, assigned_backchannel_application_slug, assigned_backchannel_application_name, verbose_name, verbose_name_plural, meta_model_name, acs_url, sls_url, audience, issuer_override, assertion_valid_not_before, assertion_valid_not_on_or_after, session_valid_not_on_or_after, name_id_mapping, authn_context_class_ref_mapping, digest_algorithm, signature_algorithm, signing_kp, verification_kp, encryption_kp, sign_assertion, sign_response, sign_logout_request, sign_logout_response, sp_binding, sls_binding, logout_method, default_relay_state, default_name_id_policy, url_download_metadata, url_issuer, url_unified, url_unified_init, url_sso_post, url_sso_redirect, url_sso_init, url_slo_post, url_slo_redirect].hash
797
887
  end
798
888
 
799
889
  # Builds the object from hash
@@ -31,8 +31,8 @@ module Authentik::Api
31
31
  # Value of the audience restriction field of the assertion. When left empty, no audience restriction will be added.
32
32
  attr_accessor :audience
33
33
 
34
- # Also known as EntityID
35
- attr_accessor :issuer
34
+ # Also known as EntityID. Providing a value overrides the default issuer generated by authentik.
35
+ attr_accessor :issuer_override
36
36
 
37
37
  # Assertion valid not before current time + this value (Format: hours=-1;minutes=-2;seconds=-3).
38
38
  attr_accessor :assertion_valid_not_before
@@ -68,6 +68,8 @@ module Authentik::Api
68
68
 
69
69
  attr_accessor :sign_logout_request
70
70
 
71
+ attr_accessor :sign_logout_response
72
+
71
73
  # This determines how authentik sends the response back to the Service Provider.
72
74
  attr_accessor :sp_binding
73
75
 
@@ -115,7 +117,7 @@ module Authentik::Api
115
117
  :'acs_url' => :'acs_url',
116
118
  :'sls_url' => :'sls_url',
117
119
  :'audience' => :'audience',
118
- :'issuer' => :'issuer',
120
+ :'issuer_override' => :'issuer_override',
119
121
  :'assertion_valid_not_before' => :'assertion_valid_not_before',
120
122
  :'assertion_valid_not_on_or_after' => :'assertion_valid_not_on_or_after',
121
123
  :'session_valid_not_on_or_after' => :'session_valid_not_on_or_after',
@@ -129,6 +131,7 @@ module Authentik::Api
129
131
  :'sign_assertion' => :'sign_assertion',
130
132
  :'sign_response' => :'sign_response',
131
133
  :'sign_logout_request' => :'sign_logout_request',
134
+ :'sign_logout_response' => :'sign_logout_response',
132
135
  :'sp_binding' => :'sp_binding',
133
136
  :'sls_binding' => :'sls_binding',
134
137
  :'logout_method' => :'logout_method',
@@ -158,7 +161,7 @@ module Authentik::Api
158
161
  :'acs_url' => :'String',
159
162
  :'sls_url' => :'String',
160
163
  :'audience' => :'String',
161
- :'issuer' => :'String',
164
+ :'issuer_override' => :'String',
162
165
  :'assertion_valid_not_before' => :'String',
163
166
  :'assertion_valid_not_on_or_after' => :'String',
164
167
  :'session_valid_not_on_or_after' => :'String',
@@ -172,6 +175,7 @@ module Authentik::Api
172
175
  :'sign_assertion' => :'Boolean',
173
176
  :'sign_response' => :'Boolean',
174
177
  :'sign_logout_request' => :'Boolean',
178
+ :'sign_logout_response' => :'Boolean',
175
179
  :'sp_binding' => :'SAMLBindingsEnum',
176
180
  :'sls_binding' => :'SAMLBindingsEnum',
177
181
  :'logout_method' => :'SAMLLogoutMethods',
@@ -250,8 +254,8 @@ module Authentik::Api
250
254
  self.audience = attributes[:'audience']
251
255
  end
252
256
 
253
- if attributes.key?(:'issuer')
254
- self.issuer = attributes[:'issuer']
257
+ if attributes.key?(:'issuer_override')
258
+ self.issuer_override = attributes[:'issuer_override']
255
259
  end
256
260
 
257
261
  if attributes.key?(:'assertion_valid_not_before')
@@ -306,6 +310,10 @@ module Authentik::Api
306
310
  self.sign_logout_request = attributes[:'sign_logout_request']
307
311
  end
308
312
 
313
+ if attributes.key?(:'sign_logout_response')
314
+ self.sign_logout_response = attributes[:'sign_logout_response']
315
+ end
316
+
309
317
  if attributes.key?(:'sp_binding')
310
318
  self.sp_binding = attributes[:'sp_binding']
311
319
  end
@@ -356,10 +364,6 @@ module Authentik::Api
356
364
  invalid_properties.push('invalid value for "acs_url", the character length must be greater than or equal to 1.')
357
365
  end
358
366
 
359
- if !@issuer.nil? && @issuer.to_s.length < 1
360
- invalid_properties.push('invalid value for "issuer", the character length must be greater than or equal to 1.')
361
- end
362
-
363
367
  if !@assertion_valid_not_before.nil? && @assertion_valid_not_before.to_s.length < 1
364
368
  invalid_properties.push('invalid value for "assertion_valid_not_before", the character length must be greater than or equal to 1.')
365
369
  end
@@ -385,7 +389,6 @@ module Authentik::Api
385
389
  return false if @invalidation_flow.nil?
386
390
  return false if @acs_url.nil?
387
391
  return false if @acs_url.to_s.length < 1
388
- return false if !@issuer.nil? && @issuer.to_s.length < 1
389
392
  return false if !@assertion_valid_not_before.nil? && @assertion_valid_not_before.to_s.length < 1
390
393
  return false if !@assertion_valid_not_on_or_after.nil? && @assertion_valid_not_on_or_after.to_s.length < 1
391
394
  return false if !@session_valid_not_on_or_after.nil? && @session_valid_not_on_or_after.to_s.length < 1
@@ -440,20 +443,6 @@ module Authentik::Api
440
443
  @acs_url = acs_url
441
444
  end
442
445
 
443
- # Custom attribute writer method with validation
444
- # @param [Object] issuer Value to be assigned
445
- def issuer=(issuer)
446
- if issuer.nil?
447
- fail ArgumentError, 'issuer cannot be nil'
448
- end
449
-
450
- if issuer.to_s.length < 1
451
- fail ArgumentError, 'invalid value for "issuer", the character length must be greater than or equal to 1.'
452
- end
453
-
454
- @issuer = issuer
455
- end
456
-
457
446
  # Custom attribute writer method with validation
458
447
  # @param [Object] assertion_valid_not_before Value to be assigned
459
448
  def assertion_valid_not_before=(assertion_valid_not_before)
@@ -509,7 +498,7 @@ module Authentik::Api
509
498
  acs_url == o.acs_url &&
510
499
  sls_url == o.sls_url &&
511
500
  audience == o.audience &&
512
- issuer == o.issuer &&
501
+ issuer_override == o.issuer_override &&
513
502
  assertion_valid_not_before == o.assertion_valid_not_before &&
514
503
  assertion_valid_not_on_or_after == o.assertion_valid_not_on_or_after &&
515
504
  session_valid_not_on_or_after == o.session_valid_not_on_or_after &&
@@ -523,6 +512,7 @@ module Authentik::Api
523
512
  sign_assertion == o.sign_assertion &&
524
513
  sign_response == o.sign_response &&
525
514
  sign_logout_request == o.sign_logout_request &&
515
+ sign_logout_response == o.sign_logout_response &&
526
516
  sp_binding == o.sp_binding &&
527
517
  sls_binding == o.sls_binding &&
528
518
  logout_method == o.logout_method &&
@@ -539,7 +529,7 @@ module Authentik::Api
539
529
  # Calculates hash code according to all attributes.
540
530
  # @return [Integer] Hash code
541
531
  def hash
542
- [name, authentication_flow, authorization_flow, invalidation_flow, property_mappings, acs_url, sls_url, audience, issuer, assertion_valid_not_before, assertion_valid_not_on_or_after, session_valid_not_on_or_after, name_id_mapping, authn_context_class_ref_mapping, digest_algorithm, signature_algorithm, signing_kp, verification_kp, encryption_kp, sign_assertion, sign_response, sign_logout_request, sp_binding, sls_binding, logout_method, default_relay_state, default_name_id_policy].hash
532
+ [name, authentication_flow, authorization_flow, invalidation_flow, property_mappings, acs_url, sls_url, audience, issuer_override, assertion_valid_not_before, assertion_valid_not_on_or_after, session_valid_not_on_or_after, name_id_mapping, authn_context_class_ref_mapping, digest_algorithm, signature_algorithm, signing_kp, verification_kp, encryption_kp, sign_assertion, sign_response, sign_logout_request, sign_logout_response, sp_binding, sls_binding, logout_method, default_relay_state, default_name_id_policy].hash
543
533
  end
544
534
 
545
535
  # Builds the object from hash