workos 9.4.0 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/block-generated-edits.yml +13 -0
  3. data/.github/workflows/ci.yml +1 -1
  4. data/.github/workflows/docs.yml +1 -1
  5. data/.github/workflows/lint.yml +1 -1
  6. data/.github/workflows/release-please.yml +7 -1
  7. data/.github/workflows/release.yml +1 -1
  8. data/.last-synced-sha +1 -1
  9. data/.oagen-manifest.json +197 -68
  10. data/.release-please-manifest.json +1 -1
  11. data/CHANGELOG.md +103 -0
  12. data/Gemfile.lock +2 -2
  13. data/README.md +15 -14
  14. data/lib/workos/agents/agent_admin_link_claim_attempt_to_external_user_request.rb +28 -0
  15. data/lib/workos/agents/agent_admin_link_claim_attempt_to_external_user_request_user.rb +22 -0
  16. data/lib/workos/agents/agent_admin_validate_credential_request.rb +25 -0
  17. data/lib/workos/agents/agent_credential_validation.rb +25 -0
  18. data/lib/workos/agents/agent_registration.rb +40 -0
  19. data/lib/workos/agents/agent_registration_agent_identity.rb +28 -0
  20. data/lib/workos/agents/agent_registration_claim.rb +31 -0
  21. data/lib/workos/agents/agent_registration_claim_claim_completion.rb +31 -0
  22. data/lib/workos/agents/claim_view_response.rb +28 -0
  23. data/lib/workos/agents/claim_view_response_organization.rb +7 -0
  24. data/lib/workos/agents.rb +93 -0
  25. data/lib/workos/api_keys/api_key_validation_response.rb +6 -2
  26. data/lib/workos/api_keys.rb +3 -4
  27. data/lib/workos/authorization/permission_created_data.rb +1 -34
  28. data/lib/workos/authorization/permission_deleted_data.rb +1 -1
  29. data/lib/workos/authorization/permission_updated_data.rb +1 -1
  30. data/lib/workos/authorization.rb +24 -24
  31. data/lib/workos/base_client.rb +4 -4
  32. data/lib/workos/client.rb +4 -0
  33. data/lib/workos/connect.rb +23 -19
  34. data/lib/workos/directory_sync.rb +10 -2
  35. data/lib/workos/groups.rb +7 -7
  36. data/lib/workos/inflections.rb +0 -1
  37. data/lib/workos/organization_domains.rb +4 -4
  38. data/lib/workos/organizations/organization_authorized_connect_application_list_data.rb +34 -0
  39. data/lib/workos/organizations.rb +57 -10
  40. data/lib/workos/pipes/api_key_installation.rb +25 -0
  41. data/lib/workos/pipes/{connected_account_dto.rb → connected_account_input.rb} +1 -1
  42. data/lib/workos/pipes/create_data_integration.rb +7 -1
  43. data/lib/workos/pipes/data_integration.rb +6 -0
  44. data/lib/workos/pipes/{data_integration_credentials_dto.rb → data_integration_credentials_input.rb} +1 -1
  45. data/lib/workos/pipes/data_integration_installation.rb +28 -0
  46. data/lib/workos/pipes/data_integrations_upsert_api_key_request.rb +1 -19
  47. data/lib/workos/pipes/update_data_integration.rb +4 -1
  48. data/lib/workos/pipes.rb +25 -16
  49. data/lib/workos/pipes_provider.rb +2 -2
  50. data/lib/workos/shared/access_token_agent_registration_credential_issued_data_detail.rb +25 -0
  51. data/lib/workos/shared/agent_registration_claim_attempt_created.rb +34 -0
  52. data/lib/workos/shared/agent_registration_claim_attempt_created_data.rb +40 -0
  53. data/lib/workos/shared/agent_registration_claim_completed.rb +34 -0
  54. data/lib/workos/shared/agent_registration_claim_completed_data.rb +40 -0
  55. data/lib/workos/shared/agent_registration_claim_completed_data_claimed_by.rb +22 -0
  56. data/lib/workos/shared/agent_registration_created.rb +34 -0
  57. data/lib/workos/{organization_domains/organization_domain_stand_alone.rb → shared/agent_registration_created_data.rb} +13 -16
  58. data/lib/workos/shared/agent_registration_created_data_agent_identity.rb +25 -0
  59. data/lib/workos/shared/agent_registration_credential_issued.rb +34 -0
  60. data/lib/workos/shared/agent_registration_credential_issued_data.rb +34 -0
  61. data/lib/workos/shared/agent_registration_credential_issued_data_detail.rb +22 -0
  62. data/lib/workos/shared/agent_registration_deleted.rb +34 -0
  63. data/lib/workos/shared/agent_registration_deleted_data.rb +18 -0
  64. data/lib/workos/shared/agent_registration_expired.rb +34 -0
  65. data/lib/workos/shared/agent_registration_expired_data.rb +7 -0
  66. data/lib/workos/shared/agent_registration_organization_switched.rb +34 -0
  67. data/lib/workos/shared/agent_registration_organization_switched_data.rb +25 -0
  68. data/lib/workos/shared/agent_registration_revoked.rb +34 -0
  69. data/lib/workos/shared/agent_registration_revoked_data.rb +7 -0
  70. data/lib/workos/shared/pipes_connected_account_connection_failed.rb +34 -0
  71. data/lib/workos/shared/pipes_connected_account_connection_failed_data.rb +46 -0
  72. data/lib/workos/shared/radar_challenge_created.rb +34 -0
  73. data/lib/workos/shared/radar_challenge_created_data.rb +28 -0
  74. data/lib/workos/sso/connection.rb +3 -3
  75. data/lib/workos/types/agent_admin_validate_credential_request_type.rb +13 -0
  76. data/lib/workos/types/agent_registration_created_data_kind.rb +14 -0
  77. data/lib/workos/types/agent_registration_created_data_method.rb +14 -0
  78. data/lib/workos/types/agent_registration_created_data_status.rb +15 -0
  79. data/lib/workos/types/{data_integration_credentials_type.rb → agent_registration_kind.rb} +1 -1
  80. data/lib/workos/types/{organization_domain_stand_alone_state.rb → agent_registration_status.rb} +1 -1
  81. data/lib/workos/types/applications_registration_types.rb +13 -0
  82. data/lib/workos/types/{organization_domain_stand_alone_verification_strategy.rb → claim_view_response_status.rb} +1 -1
  83. data/lib/workos/types/connected_account_input_state.rb +13 -0
  84. data/lib/workos/types/connected_account_state.rb +2 -1
  85. data/lib/workos/types/create_data_integration_auth_methods.rb +9 -0
  86. data/lib/workos/types/create_user_password_hash_type.rb +2 -1
  87. data/lib/workos/types/create_webhook_endpoint_events.rb +5 -1
  88. data/lib/workos/types/data_integration_auth_methods.rb +9 -0
  89. data/lib/workos/types/data_integration_credentials_input_type.rb +9 -0
  90. data/lib/workos/types/data_integrations_list_response_data_connected_account_state.rb +1 -6
  91. data/lib/workos/types/pipe_connected_account_state.rb +1 -5
  92. data/lib/workos/types/vault_kek_deleted_data_actor_source.rb +9 -0
  93. data/lib/workos/user_management/authentication_reauthentication_succeeded.rb +34 -0
  94. data/lib/workos/user_management/authentication_reauthentication_succeeded_data.rb +34 -0
  95. data/lib/workos/user_management/magic_auth_send_magic_auth_code_and_return_response.rb +26 -1
  96. data/lib/workos/user_management/radar_challenge.rb +43 -0
  97. data/lib/workos/user_management/user_create_response.rb +55 -1
  98. data/lib/workos/user_management.rb +155 -26
  99. data/lib/workos/vault/vault_kek_deleted.rb +34 -0
  100. data/lib/workos/vault/vault_kek_deleted_data.rb +31 -0
  101. data/lib/workos/vault.rb +4 -4
  102. data/lib/workos/version.rb +1 -1
  103. data/lib/workos/widgets.rb +2 -2
  104. data/lib/workos.rb +11 -0
  105. data/rbi/workos/access_token_agent_registration_credential_issued_data_detail.rbi +36 -0
  106. data/rbi/workos/agent_admin_link_claim_attempt_to_external_user_request.rbi +42 -0
  107. data/rbi/workos/agent_admin_link_claim_attempt_to_external_user_request_user.rbi +30 -0
  108. data/rbi/workos/agent_admin_validate_credential_request.rbi +36 -0
  109. data/rbi/workos/{sso_intent_options.rbi → agent_credential_validation.rbi} +11 -5
  110. data/rbi/workos/agent_registration.rbi +66 -0
  111. data/rbi/workos/agent_registration_agent_identity.rbi +42 -0
  112. data/rbi/workos/agent_registration_claim.rbi +48 -0
  113. data/rbi/workos/agent_registration_claim_attempt_created.rbi +54 -0
  114. data/rbi/workos/agent_registration_claim_attempt_created_data.rbi +66 -0
  115. data/rbi/workos/agent_registration_claim_claim_completion.rbi +48 -0
  116. data/rbi/workos/agent_registration_claim_completed.rbi +54 -0
  117. data/rbi/workos/agent_registration_claim_completed_data.rbi +66 -0
  118. data/rbi/workos/agent_registration_claim_completed_data_claimed_by.rbi +30 -0
  119. data/rbi/workos/agent_registration_created.rbi +54 -0
  120. data/rbi/workos/agent_registration_created_data.rbi +72 -0
  121. data/rbi/workos/agent_registration_created_data_agent_identity.rbi +36 -0
  122. data/rbi/workos/agent_registration_credential_issued.rbi +54 -0
  123. data/rbi/workos/agent_registration_credential_issued_data.rbi +54 -0
  124. data/rbi/workos/agent_registration_credential_issued_data_detail.rbi +30 -0
  125. data/rbi/workos/agent_registration_deleted.rbi +54 -0
  126. data/rbi/workos/{connection_option.rbi → agent_registration_deleted_data.rbi} +5 -5
  127. data/rbi/workos/agent_registration_expired.rbi +54 -0
  128. data/rbi/workos/{domain_verification_intent_options.rbi → agent_registration_expired_data.rbi} +5 -5
  129. data/rbi/workos/agent_registration_organization_switched.rbi +54 -0
  130. data/rbi/workos/agent_registration_organization_switched_data.rbi +36 -0
  131. data/rbi/workos/agent_registration_revoked.rbi +54 -0
  132. data/rbi/workos/agent_registration_revoked_data.rbi +24 -0
  133. data/rbi/workos/agents.rbi +42 -0
  134. data/rbi/workos/api_key_installation.rbi +36 -0
  135. data/rbi/workos/api_key_validation_response.rbi +6 -0
  136. data/rbi/workos/authentication_reauthentication_succeeded.rbi +54 -0
  137. data/rbi/workos/authentication_reauthentication_succeeded_data.rbi +54 -0
  138. data/rbi/workos/claim_view_response.rbi +42 -0
  139. data/rbi/workos/claim_view_response_organization.rbi +30 -0
  140. data/rbi/workos/client.rbi +3 -0
  141. data/rbi/workos/connect.rbi +2 -1
  142. data/rbi/workos/{connected_account_dto.rbi → connected_account_input.rbi} +1 -1
  143. data/rbi/workos/connection.rbi +4 -4
  144. data/rbi/workos/create_data_integration.rbi +14 -2
  145. data/rbi/workos/data_integration.rbi +12 -0
  146. data/rbi/workos/{data_integration_credentials_dto.rbi → data_integration_credentials_input.rbi} +1 -1
  147. data/rbi/workos/data_integration_installation.rbi +42 -0
  148. data/rbi/workos/directory_sync.rbi +3 -1
  149. data/rbi/workos/magic_auth_send_magic_auth_code_and_return_response.rbi +48 -0
  150. data/rbi/workos/organization_authorized_connect_application_list_data.rbi +54 -0
  151. data/rbi/workos/organization_domains.rbi +2 -2
  152. data/rbi/workos/organizations.rbi +12 -0
  153. data/rbi/workos/permission_created_data.rbi +6 -0
  154. data/rbi/workos/permission_deleted_data.rbi +6 -0
  155. data/rbi/workos/permission_updated_data.rbi +6 -0
  156. data/rbi/workos/pipes.rbi +7 -4
  157. data/rbi/workos/pipes_connected_account_connection_failed.rbi +54 -0
  158. data/rbi/workos/{organization_domain_stand_alone.rbi → pipes_connected_account_connection_failed_data.rbi} +23 -23
  159. data/rbi/workos/radar_challenge.rbi +72 -0
  160. data/rbi/workos/radar_challenge_created.rbi +54 -0
  161. data/rbi/workos/radar_challenge_created_data.rbi +42 -0
  162. data/rbi/workos/update_data_integration.rbi +8 -2
  163. data/rbi/workos/user_create_response.rbi +84 -0
  164. data/rbi/workos/user_management.rbi +16 -0
  165. data/rbi/workos/vault_kek_deleted.rbi +54 -0
  166. data/rbi/workos/vault_kek_deleted_data.rbi +48 -0
  167. data/rbi/workos/widget_session_token.rbi +2 -2
  168. data/rbi/workos/widgets.rbi +1 -1
  169. data/test/workos/test_agents.rb +49 -0
  170. data/test/workos/test_agents_model_round_trip.rb +165 -0
  171. data/test/workos/test_api_keys_model_round_trip.rb +307 -0
  172. data/test/workos/test_authorization_model_round_trip.rb +237 -0
  173. data/test/workos/test_base_client.rb +27 -0
  174. data/test/workos/test_client_api_model_round_trip.rb +31 -0
  175. data/test/workos/test_connect_model_round_trip.rb +175 -0
  176. data/test/workos/test_directory_sync_model_round_trip.rb +579 -0
  177. data/test/workos/test_feature_flags_model_round_trip.rb +580 -0
  178. data/test/workos/test_groups_model_round_trip.rb +56 -0
  179. data/test/workos/test_multi_factor_auth_model_round_trip.rb +192 -0
  180. data/test/workos/test_organization_domains_model_round_trip.rb +260 -0
  181. data/test/workos/test_organization_membership_model_round_trip.rb +89 -0
  182. data/test/workos/test_organizations.rb +9 -1
  183. data/test/workos/test_organizations_model_round_trip.rb +602 -0
  184. data/test/workos/test_pipes_model_round_trip.rb +40 -4
  185. data/test/workos/test_pipes_provider_model_round_trip.rb +75 -0
  186. data/test/workos/test_shared_model_round_trip.rb +787 -0
  187. data/test/workos/test_sso_model_round_trip.rb +422 -0
  188. data/test/workos/test_user_management.rb +46 -0
  189. data/test/workos/test_user_management_model_round_trip.rb +1540 -0
  190. data/test/workos/test_vault_model_round_trip.rb +571 -0
  191. data/test/workos/test_widgets.rb +2 -2
  192. data/test/workos/test_widgets_model_round_trip.rb +30 -0
  193. metadata +118 -19
  194. data/lib/workos/admin_portal/domain_verification_intent_options.rb +0 -18
  195. data/lib/workos/admin_portal/intent_options.rb +0 -22
  196. data/lib/workos/admin_portal/sso_intent_options.rb +0 -22
  197. data/lib/workos/sso/connection_option.rb +0 -18
  198. data/rbi/workos/intent_options.rbi +0 -30
  199. data/test/workos/test_model_round_trip.rb +0 -6
@@ -0,0 +1,72 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ # typed: strong
6
+
7
+ module WorkOS
8
+ class RadarChallenge
9
+ sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
+ def initialize(json); end
11
+
12
+ sig { returns(String) }
13
+ def object; end
14
+
15
+ sig { params(value: String).returns(String) }
16
+ def object=(value); end
17
+
18
+ sig { returns(String) }
19
+ def id; end
20
+
21
+ sig { params(value: String).returns(String) }
22
+ def id=(value); end
23
+
24
+ sig { returns(String) }
25
+ def type; end
26
+
27
+ sig { params(value: String).returns(String) }
28
+ def type=(value); end
29
+
30
+ sig { returns(String) }
31
+ def user_id; end
32
+
33
+ sig { params(value: String).returns(String) }
34
+ def user_id=(value); end
35
+
36
+ sig { returns(String) }
37
+ def email; end
38
+
39
+ sig { params(value: String).returns(String) }
40
+ def email=(value); end
41
+
42
+ sig { returns(String) }
43
+ def expires_at; end
44
+
45
+ sig { params(value: String).returns(String) }
46
+ def expires_at=(value); end
47
+
48
+ sig { returns(String) }
49
+ def created_at; end
50
+
51
+ sig { params(value: String).returns(String) }
52
+ def created_at=(value); end
53
+
54
+ sig { returns(String) }
55
+ def updated_at; end
56
+
57
+ sig { params(value: String).returns(String) }
58
+ def updated_at=(value); end
59
+
60
+ sig { returns(String) }
61
+ def code; end
62
+
63
+ sig { params(value: String).returns(String) }
64
+ def code=(value); end
65
+
66
+ sig { returns(T::Hash[Symbol, T.untyped]) }
67
+ def to_h; end
68
+
69
+ sig { params(args: T.untyped).returns(String) }
70
+ def to_json(*args); end
71
+ end
72
+ end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ # typed: strong
6
+
7
+ module WorkOS
8
+ class RadarChallengeCreated
9
+ sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
+ def initialize(json); end
11
+
12
+ sig { returns(String) }
13
+ def object; end
14
+
15
+ sig { params(value: String).returns(String) }
16
+ def object=(value); end
17
+
18
+ sig { returns(String) }
19
+ def id; end
20
+
21
+ sig { params(value: String).returns(String) }
22
+ def id=(value); end
23
+
24
+ sig { returns(String) }
25
+ def event; end
26
+
27
+ sig { params(value: String).returns(String) }
28
+ def event=(value); end
29
+
30
+ sig { returns(WorkOS::RadarChallengeCreatedData) }
31
+ def data; end
32
+
33
+ sig { params(value: WorkOS::RadarChallengeCreatedData).returns(WorkOS::RadarChallengeCreatedData) }
34
+ def data=(value); end
35
+
36
+ sig { returns(String) }
37
+ def created_at; end
38
+
39
+ sig { params(value: String).returns(String) }
40
+ def created_at=(value); end
41
+
42
+ sig { returns(T.nilable(WorkOS::EventContext)) }
43
+ def context; end
44
+
45
+ sig { params(value: T.nilable(WorkOS::EventContext)).returns(T.nilable(WorkOS::EventContext)) }
46
+ def context=(value); end
47
+
48
+ sig { returns(T::Hash[Symbol, T.untyped]) }
49
+ def to_h; end
50
+
51
+ sig { params(args: T.untyped).returns(String) }
52
+ def to_json(*args); end
53
+ end
54
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ # typed: strong
6
+
7
+ module WorkOS
8
+ class RadarChallengeCreatedData
9
+ sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
+ def initialize(json); end
11
+
12
+ sig { returns(String) }
13
+ def type; end
14
+
15
+ sig { params(value: String).returns(String) }
16
+ def type=(value); end
17
+
18
+ sig { returns(String) }
19
+ def radar_challenge_id; end
20
+
21
+ sig { params(value: String).returns(String) }
22
+ def radar_challenge_id=(value); end
23
+
24
+ sig { returns(String) }
25
+ def user_id; end
26
+
27
+ sig { params(value: String).returns(String) }
28
+ def user_id=(value); end
29
+
30
+ sig { returns(String) }
31
+ def email; end
32
+
33
+ sig { params(value: String).returns(String) }
34
+ def email=(value); end
35
+
36
+ sig { returns(T::Hash[Symbol, T.untyped]) }
37
+ def to_h; end
38
+
39
+ sig { params(args: T.untyped).returns(String) }
40
+ def to_json(*args); end
41
+ end
42
+ end
@@ -27,12 +27,18 @@ module WorkOS
27
27
  sig { params(value: T.nilable(T::Array[String])).returns(T.nilable(T::Array[String])) }
28
28
  def scopes=(value); end
29
29
 
30
- sig { returns(T.nilable(WorkOS::DataIntegrationCredentialsDto)) }
30
+ sig { returns(T.nilable(WorkOS::DataIntegrationCredentialsInput)) }
31
31
  def credentials; end
32
32
 
33
- sig { params(value: T.nilable(WorkOS::DataIntegrationCredentialsDto)).returns(T.nilable(WorkOS::DataIntegrationCredentialsDto)) }
33
+ sig { params(value: T.nilable(WorkOS::DataIntegrationCredentialsInput)).returns(T.nilable(WorkOS::DataIntegrationCredentialsInput)) }
34
34
  def credentials=(value); end
35
35
 
36
+ sig { returns(T.nilable(WorkOS::ApiKeyInstallation)) }
37
+ def api_key; end
38
+
39
+ sig { params(value: T.nilable(WorkOS::ApiKeyInstallation)).returns(T.nilable(WorkOS::ApiKeyInstallation)) }
40
+ def api_key=(value); end
41
+
36
42
  sig { returns(T.nilable(WorkOS::UpdateCustomProviderDefinition)) }
37
43
  def custom_provider; end
38
44
 
@@ -9,6 +9,90 @@ module WorkOS
9
9
  sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
10
  def initialize(json); end
11
11
 
12
+ sig { returns(String) }
13
+ def object; end
14
+
15
+ sig { params(value: String).returns(String) }
16
+ def object=(value); end
17
+
18
+ sig { returns(String) }
19
+ def id; end
20
+
21
+ sig { params(value: String).returns(String) }
22
+ def id=(value); end
23
+
24
+ sig { returns(T.nilable(String)) }
25
+ def first_name; end
26
+
27
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
28
+ def first_name=(value); end
29
+
30
+ sig { returns(T.nilable(String)) }
31
+ def last_name; end
32
+
33
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
34
+ def last_name=(value); end
35
+
36
+ sig { returns(T.nilable(String)) }
37
+ def name; end
38
+
39
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
40
+ def name=(value); end
41
+
42
+ sig { returns(T.nilable(String)) }
43
+ def profile_picture_url; end
44
+
45
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
46
+ def profile_picture_url=(value); end
47
+
48
+ sig { returns(String) }
49
+ def email; end
50
+
51
+ sig { params(value: String).returns(String) }
52
+ def email=(value); end
53
+
54
+ sig { returns(T::Boolean) }
55
+ def email_verified; end
56
+
57
+ sig { params(value: T::Boolean).returns(T::Boolean) }
58
+ def email_verified=(value); end
59
+
60
+ sig { returns(T.nilable(String)) }
61
+ def external_id; end
62
+
63
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
64
+ def external_id=(value); end
65
+
66
+ sig { returns(T.nilable(T::Hash[String, String])) }
67
+ def metadata; end
68
+
69
+ sig { params(value: T.nilable(T::Hash[String, String])).returns(T.nilable(T::Hash[String, String])) }
70
+ def metadata=(value); end
71
+
72
+ sig { returns(T.nilable(String)) }
73
+ def last_sign_in_at; end
74
+
75
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
76
+ def last_sign_in_at=(value); end
77
+
78
+ sig { returns(T.nilable(String)) }
79
+ def locale; end
80
+
81
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
82
+ def locale=(value); end
83
+
84
+ sig { returns(String) }
85
+ def created_at; end
86
+
87
+ sig { params(value: String).returns(String) }
88
+ def created_at=(value); end
89
+
90
+ sig { returns(String) }
91
+ def updated_at; end
92
+
93
+ sig { params(value: String).returns(String) }
94
+ def updated_at=(value); end
95
+
12
96
  sig { returns(T.nilable(String)) }
13
97
  def radar_auth_attempt_id; end
14
98
 
@@ -82,6 +82,14 @@ module WorkOS
82
82
  end
83
83
  def create_radar_challenge(user_id:, pending_authentication_token:, phone_number:, ip_address:, user_agent:, request_options:); end
84
84
 
85
+ sig do
86
+ params(
87
+ id: String,
88
+ request_options: T::Hash[Symbol, T.untyped]
89
+ ).returns(WorkOS::RadarChallenge)
90
+ end
91
+ def get_radar_challenge(id:, request_options:); end
92
+
85
93
  sig do
86
94
  params(
87
95
  session_id: String,
@@ -392,6 +400,14 @@ module WorkOS
392
400
  end
393
401
  def create_redirect_uri(uri:, request_options:); end
394
402
 
403
+ sig do
404
+ params(
405
+ id: String,
406
+ request_options: T::Hash[Symbol, T.untyped]
407
+ ).returns(NilClass)
408
+ end
409
+ def delete_redirect_uris(id:, request_options:); end
410
+
395
411
  sig do
396
412
  params(
397
413
  user_id: String,
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ # typed: strong
6
+
7
+ module WorkOS
8
+ class VaultKekDeleted
9
+ sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
+ def initialize(json); end
11
+
12
+ sig { returns(String) }
13
+ def object; end
14
+
15
+ sig { params(value: String).returns(String) }
16
+ def object=(value); end
17
+
18
+ sig { returns(String) }
19
+ def id; end
20
+
21
+ sig { params(value: String).returns(String) }
22
+ def id=(value); end
23
+
24
+ sig { returns(String) }
25
+ def event; end
26
+
27
+ sig { params(value: String).returns(String) }
28
+ def event=(value); end
29
+
30
+ sig { returns(WorkOS::VaultKekDeletedData) }
31
+ def data; end
32
+
33
+ sig { params(value: WorkOS::VaultKekDeletedData).returns(WorkOS::VaultKekDeletedData) }
34
+ def data=(value); end
35
+
36
+ sig { returns(String) }
37
+ def created_at; end
38
+
39
+ sig { params(value: String).returns(String) }
40
+ def created_at=(value); end
41
+
42
+ sig { returns(T.nilable(WorkOS::EventContext)) }
43
+ def context; end
44
+
45
+ sig { params(value: T.nilable(WorkOS::EventContext)).returns(T.nilable(WorkOS::EventContext)) }
46
+ def context=(value); end
47
+
48
+ sig { returns(T::Hash[Symbol, T.untyped]) }
49
+ def to_h; end
50
+
51
+ sig { params(args: T.untyped).returns(String) }
52
+ def to_json(*args); end
53
+ end
54
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ # typed: strong
6
+
7
+ module WorkOS
8
+ class VaultKekDeletedData
9
+ sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
+ def initialize(json); end
11
+
12
+ sig { returns(String) }
13
+ def actor_id; end
14
+
15
+ sig { params(value: String).returns(String) }
16
+ def actor_id=(value); end
17
+
18
+ sig { returns(String) }
19
+ def actor_source; end
20
+
21
+ sig { params(value: String).returns(String) }
22
+ def actor_source=(value); end
23
+
24
+ sig { returns(String) }
25
+ def actor_name; end
26
+
27
+ sig { params(value: String).returns(String) }
28
+ def actor_name=(value); end
29
+
30
+ sig { returns(String) }
31
+ def key_name; end
32
+
33
+ sig { params(value: String).returns(String) }
34
+ def key_name=(value); end
35
+
36
+ sig { returns(String) }
37
+ def key_id; end
38
+
39
+ sig { params(value: String).returns(String) }
40
+ def key_id=(value); end
41
+
42
+ sig { returns(T::Hash[Symbol, T.untyped]) }
43
+ def to_h; end
44
+
45
+ sig { params(args: T.untyped).returns(String) }
46
+ def to_json(*args); end
47
+ end
48
+ end
@@ -9,10 +9,10 @@ module WorkOS
9
9
  sig { params(json: T.any(String, T::Hash[Symbol, T.untyped])).void }
10
10
  def initialize(json); end
11
11
 
12
- sig { returns(String) }
12
+ sig { returns(T.nilable(String)) }
13
13
  def organization_id; end
14
14
 
15
- sig { params(value: String).returns(String) }
15
+ sig { params(value: T.nilable(String)).returns(T.nilable(String)) }
16
16
  def organization_id=(value); end
17
17
 
18
18
  sig { returns(T.nilable(String)) }
@@ -11,7 +11,7 @@ module WorkOS
11
11
 
12
12
  sig do
13
13
  params(
14
- organization_id: String,
14
+ organization_id: T.nilable(String),
15
15
  user_id: T.nilable(String),
16
16
  scopes: T.nilable(T::Array[String]),
17
17
  request_options: T::Hash[Symbol, T.untyped]
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ require "test_helper"
6
+
7
+ class AgentsTest < Minitest::Test
8
+ include FixtureHelper
9
+
10
+ def setup
11
+ @client = WorkOS::Client.new(api_key: "sk_test_123")
12
+ end
13
+
14
+ def test_update_attempts_returns_expected_result
15
+ stub_request(:patch, %r{\Ahttps://api\.workos\.com/agents/claims/attempts(\?|\z)})
16
+ .to_return(body: "{}", status: 200)
17
+ result = @client.agents.update_attempts(type: "link_external_user", claim_attempt_token: "stub", user: {})
18
+ refute_nil result
19
+ end
20
+
21
+ def test_create_validate_returns_expected_result
22
+ stub_request(:post, %r{\Ahttps://api\.workos\.com/agents/credentials/validate(\?|\z)})
23
+ .to_return(body: "{}", status: 200)
24
+ result = @client.agents.create_validate(type: "stub", credential: "stub")
25
+ refute_nil result
26
+ end
27
+
28
+ def test_get_registration_returns_expected_result
29
+ stub_request(:get, %r{\Ahttps://api\.workos\.com/agents/registrations/stub(\?|\z)})
30
+ .to_return(body: "{}", status: 200)
31
+ result = @client.agents.get_registration(id: "stub")
32
+ refute_nil result
33
+ end
34
+
35
+ # Parameterized authentication error tests (one per endpoint).
36
+ [
37
+ {name: :update_attempts, verb: :patch, url: %r{\Ahttps://api\.workos\.com/agents/claims/attempts(\?|\z)}, args: {type: "link_external_user", claim_attempt_token: "stub", user: {}}},
38
+ {name: :create_validate, verb: :post, url: %r{\Ahttps://api\.workos\.com/agents/credentials/validate(\?|\z)}, args: {type: "stub", credential: "stub"}},
39
+ {name: :get_registration, verb: :get, url: %r{\Ahttps://api\.workos\.com/agents/registrations/stub(\?|\z)}, args: {id: "stub"}}
40
+ ].each do |spec|
41
+ define_method("test_#{spec[:name]}_raises_authentication_error_on_401") do
42
+ stub_request(spec[:verb], spec[:url])
43
+ .to_return(body: '{"message": "Unauthorized"}', status: 401)
44
+ assert_raises(WorkOS::AuthenticationError) do
45
+ @client.agents.send(spec[:name], **(spec[:args] || {}))
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,165 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ require "test_helper"
6
+
7
+ class AgentsModelRoundTripTest < Minitest::Test
8
+ def test_agent_registration_round_trip
9
+ fixture = {
10
+ "id" => "stub",
11
+ "agent_identity" => {},
12
+ "organization_id" => "stub",
13
+ "status" => "stub",
14
+ "kind" => "stub",
15
+ "claim" => nil,
16
+ "created_at" => "stub",
17
+ "updated_at" => "stub"
18
+ }
19
+ model = WorkOS::AgentRegistration.new(fixture.to_json)
20
+ json = model.to_h
21
+ assert_kind_of Hash, json
22
+ assert_equal fixture["id"], json[:id]
23
+ assert_equal fixture["organization_id"], json[:organization_id]
24
+ assert_equal fixture["created_at"], json[:created_at]
25
+ assert_equal fixture["updated_at"], json[:updated_at]
26
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
27
+ end
28
+
29
+ def test_agent_credential_validation_round_trip
30
+ fixture = {
31
+ "valid" => true,
32
+ "registration_id" => nil,
33
+ "expires_at" => nil
34
+ }
35
+ model = WorkOS::AgentCredentialValidation.new(fixture.to_json)
36
+ json = model.to_h
37
+ assert_kind_of Hash, json
38
+ assert_equal fixture["valid"], json[:valid]
39
+ assert_nil json[:registration_id]
40
+ assert_nil json[:expires_at]
41
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
42
+ end
43
+
44
+ def test_claim_view_response_round_trip
45
+ fixture = {
46
+ "id" => "stub",
47
+ "status" => "stub",
48
+ "user_code" => "stub",
49
+ "organizations" => []
50
+ }
51
+ model = WorkOS::ClaimViewResponse.new(fixture.to_json)
52
+ json = model.to_h
53
+ assert_kind_of Hash, json
54
+ assert_equal fixture["id"], json[:id]
55
+ assert_equal fixture["user_code"], json[:user_code]
56
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
57
+ end
58
+
59
+ def test_claim_view_response_organization_round_trip
60
+ fixture = {
61
+ "id" => "stub",
62
+ "name" => "stub"
63
+ }
64
+ model = WorkOS::ClaimViewResponseOrganization.new(fixture.to_json)
65
+ json = model.to_h
66
+ assert_kind_of Hash, json
67
+ assert_equal fixture["id"], json[:id]
68
+ assert_equal fixture["name"], json[:name]
69
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
70
+ end
71
+
72
+ def test_agent_registration_agent_identity_round_trip
73
+ fixture = {
74
+ "id" => "stub",
75
+ "userland_user_id" => nil,
76
+ "created_at" => "stub",
77
+ "updated_at" => "stub"
78
+ }
79
+ model = WorkOS::AgentRegistrationAgentIdentity.new(fixture.to_json)
80
+ json = model.to_h
81
+ assert_kind_of Hash, json
82
+ assert_equal fixture["id"], json[:id]
83
+ assert_nil json[:userland_user_id]
84
+ assert_equal fixture["created_at"], json[:created_at]
85
+ assert_equal fixture["updated_at"], json[:updated_at]
86
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
87
+ end
88
+
89
+ def test_agent_registration_claim_round_trip
90
+ fixture = {
91
+ "id" => "stub",
92
+ "claim_completion" => nil,
93
+ "created_at" => "stub",
94
+ "updated_at" => "stub",
95
+ "expires_at" => "stub"
96
+ }
97
+ model = WorkOS::AgentRegistrationClaim.new(fixture.to_json)
98
+ json = model.to_h
99
+ assert_kind_of Hash, json
100
+ assert_equal fixture["id"], json[:id]
101
+ assert_equal fixture["created_at"], json[:created_at]
102
+ assert_equal fixture["updated_at"], json[:updated_at]
103
+ assert_equal fixture["expires_at"], json[:expires_at]
104
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
105
+ end
106
+
107
+ def test_agent_admin_link_claim_attempt_to_external_user_request_round_trip
108
+ fixture = {
109
+ "type" => "link_external_user",
110
+ "claim_attempt_token" => "stub",
111
+ "user" => {},
112
+ "organization_id" => "stub"
113
+ }
114
+ model = WorkOS::AgentAdminLinkClaimAttemptToExternalUserRequest.new(fixture.to_json)
115
+ json = model.to_h
116
+ assert_kind_of Hash, json
117
+ assert_equal fixture["claim_attempt_token"], json[:claim_attempt_token]
118
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
119
+ end
120
+
121
+ def test_agent_admin_link_claim_attempt_to_external_user_request_user_round_trip
122
+ fixture = {
123
+ "email" => "stub",
124
+ "external_id" => "stub"
125
+ }
126
+ model = WorkOS::AgentAdminLinkClaimAttemptToExternalUserRequestUser.new(fixture.to_json)
127
+ json = model.to_h
128
+ assert_kind_of Hash, json
129
+ assert_equal fixture["email"], json[:email]
130
+ assert_equal fixture["external_id"], json[:external_id]
131
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
132
+ end
133
+
134
+ def test_agent_admin_validate_credential_request_round_trip
135
+ fixture = {
136
+ "type" => "stub",
137
+ "credential" => "stub",
138
+ "audience" => "stub"
139
+ }
140
+ model = WorkOS::AgentAdminValidateCredentialRequest.new(fixture.to_json)
141
+ json = model.to_h
142
+ assert_kind_of Hash, json
143
+ assert_equal fixture["credential"], json[:credential]
144
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
145
+ end
146
+
147
+ def test_agent_registration_claim_claim_completion_round_trip
148
+ fixture = {
149
+ "id" => "stub",
150
+ "created_at" => "stub",
151
+ "updated_at" => "stub",
152
+ "expires_at" => "stub",
153
+ "claimed_at" => "stub"
154
+ }
155
+ model = WorkOS::AgentRegistrationClaimClaimCompletion.new(fixture.to_json)
156
+ json = model.to_h
157
+ assert_kind_of Hash, json
158
+ assert_equal fixture["id"], json[:id]
159
+ assert_equal fixture["created_at"], json[:created_at]
160
+ assert_equal fixture["updated_at"], json[:updated_at]
161
+ assert_equal fixture["expires_at"], json[:expires_at]
162
+ assert_equal fixture["claimed_at"], json[:claimed_at]
163
+ fixture.each_key { |k| assert json.key?(k.to_sym) || json.key?(k), "Expected to_h to include key #{k}" }
164
+ end
165
+ end