workos 6.2.0 → 7.1.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.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +6 -9
- data/.github/workflows/lint.yml +25 -0
- data/.github/workflows/release-please.yml +30 -2
- data/.github/workflows/release.yml +2 -6
- data/.last-synced-sha +1 -0
- data/.oagen-manifest.json +1750 -0
- data/.release-please-manifest.json +1 -1
- data/.ruby-version +1 -1
- data/.standard.yml +1 -0
- data/CHANGELOG.md +41 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +93 -47
- data/README.md +161 -14
- data/Rakefile +8 -4
- data/docs/V7_MIGRATION_GUIDE.md +780 -0
- data/lib/workos/actions.rb +93 -0
- data/lib/workos/admin_portal/domain_verification_intent_options.rb +18 -0
- data/lib/workos/admin_portal/generate_link.rb +34 -0
- data/lib/workos/admin_portal/intent_options.rb +22 -0
- data/lib/workos/admin_portal/portal_link_response.rb +18 -0
- data/lib/workos/admin_portal/sso_intent_options.rb +22 -0
- data/lib/workos/admin_portal.rb +51 -0
- data/lib/workos/api_keys/api_key.rb +43 -0
- data/lib/workos/api_keys/api_key_created.rb +34 -0
- data/lib/workos/api_keys/api_key_created_data.rb +43 -0
- data/lib/workos/api_keys/api_key_created_data_owner.rb +22 -0
- data/lib/workos/api_keys/api_key_owner.rb +7 -0
- data/lib/workos/api_keys/api_key_revoked.rb +34 -0
- data/lib/workos/api_keys/api_key_revoked_data.rb +7 -0
- data/lib/workos/api_keys/api_key_revoked_data_owner.rb +7 -0
- data/lib/workos/api_keys/api_key_validation_response.rb +18 -0
- data/lib/workos/api_keys/api_key_with_value.rb +46 -0
- data/lib/workos/api_keys/api_key_with_value_owner.rb +7 -0
- data/lib/workos/api_keys/create_organization_api_key.rb +22 -0
- data/lib/workos/api_keys/validate_api_key.rb +18 -0
- data/lib/workos/api_keys.rb +128 -0
- data/lib/workos/audit_logs/audit_log_action.rb +36 -0
- data/lib/workos/audit_logs/audit_log_action_json.rb +31 -0
- data/lib/workos/audit_logs/audit_log_event.rb +37 -0
- data/lib/workos/audit_logs/audit_log_event_actor.rb +28 -0
- data/lib/workos/audit_logs/audit_log_event_context.rb +22 -0
- data/lib/workos/audit_logs/audit_log_event_create_response.rb +18 -0
- data/lib/workos/audit_logs/audit_log_event_ingestion.rb +22 -0
- data/lib/workos/audit_logs/audit_log_event_target.rb +7 -0
- data/lib/workos/audit_logs/audit_log_export.rb +39 -0
- data/lib/workos/audit_logs/audit_log_export_creation.rb +49 -0
- data/lib/workos/audit_logs/audit_log_export_json.rb +34 -0
- data/lib/workos/audit_logs/audit_log_schema.rb +25 -0
- data/lib/workos/audit_logs/audit_log_schema_actor.rb +18 -0
- data/lib/workos/audit_logs/audit_log_schema_json.rb +34 -0
- data/lib/workos/audit_logs/audit_log_schema_json_actor.rb +7 -0
- data/lib/workos/audit_logs/audit_log_schema_json_target.rb +22 -0
- data/lib/workos/audit_logs/audit_log_schema_target.rb +7 -0
- data/lib/workos/audit_logs.rb +252 -72
- data/lib/workos/authorization/add_role_permission.rb +18 -0
- data/lib/workos/authorization/assign_role.rb +28 -0
- data/lib/workos/authorization/authorization_check.rb +18 -0
- data/lib/workos/authorization/authorization_permission.rb +43 -0
- data/lib/workos/authorization/authorization_resource.rb +46 -0
- data/lib/workos/authorization/check_authorization.rb +28 -0
- data/lib/workos/authorization/create_authorization_permission.rb +28 -0
- data/lib/workos/authorization/create_authorization_resource.rb +40 -0
- data/lib/workos/authorization/create_organization_role.rb +28 -0
- data/lib/workos/authorization/create_role.rb +7 -0
- data/lib/workos/authorization/permission.rb +7 -0
- data/lib/workos/authorization/permission_created.rb +34 -0
- data/lib/workos/authorization/permission_created_data.rb +40 -0
- data/lib/workos/authorization/permission_deleted.rb +34 -0
- data/lib/workos/authorization/permission_deleted_data.rb +7 -0
- data/lib/workos/authorization/permission_updated.rb +34 -0
- data/lib/workos/authorization/permission_updated_data.rb +7 -0
- data/lib/workos/authorization/remove_role.rb +7 -0
- data/lib/workos/authorization/role.rb +46 -0
- data/lib/workos/authorization/role_assignment.rb +34 -0
- data/lib/workos/authorization/role_assignment_resource.rb +25 -0
- data/lib/workos/authorization/role_created.rb +34 -0
- data/lib/workos/authorization/role_created_data.rb +34 -0
- data/lib/workos/authorization/role_deleted.rb +34 -0
- data/lib/workos/authorization/role_deleted_data.rb +7 -0
- data/lib/workos/authorization/role_list.rb +22 -0
- data/lib/workos/authorization/role_updated.rb +34 -0
- data/lib/workos/authorization/role_updated_data.rb +7 -0
- data/lib/workos/authorization/set_role_permissions.rb +18 -0
- data/lib/workos/authorization/slim_role.rb +7 -0
- data/lib/workos/authorization/update_authorization_permission.rb +22 -0
- data/lib/workos/authorization/update_authorization_resource.rb +31 -0
- data/lib/workos/authorization/update_organization_role.rb +7 -0
- data/lib/workos/authorization/update_role.rb +7 -0
- data/lib/workos/authorization/user_organization_membership_base_list_data.rb +46 -0
- data/lib/workos/authorization.rb +1283 -0
- data/lib/workos/base_client.rb +350 -0
- data/lib/workos/client.rb +102 -159
- data/lib/workos/configuration.rb +56 -5
- data/lib/workos/connect/application_credentials_list_item.rb +34 -0
- data/lib/workos/connect/connect_application.rb +46 -0
- data/lib/workos/connect/create_application_secret.rb +13 -0
- data/lib/workos/connect/create_m2m_application.rb +31 -0
- data/lib/workos/connect/create_oauth_application.rb +40 -0
- data/lib/workos/connect/external_auth_complete_response.rb +18 -0
- data/lib/workos/connect/new_connect_application_secret.rb +37 -0
- data/lib/workos/connect/redirect_uri_input.rb +22 -0
- data/lib/workos/connect/update_oauth_application.rb +28 -0
- data/lib/workos/connect/user_consent_option.rb +28 -0
- data/lib/workos/connect/user_consent_option_choice.rb +22 -0
- data/lib/workos/connect/user_management_login_request.rb +25 -0
- data/lib/workos/connect/user_object.rb +31 -0
- data/lib/workos/connect.rb +329 -0
- data/lib/workos/directory_sync/directory.rb +49 -0
- data/lib/workos/directory_sync/directory_group.rb +43 -0
- data/lib/workos/directory_sync/directory_metadata.rb +22 -0
- data/lib/workos/directory_sync/directory_metadata_user.rb +22 -0
- data/lib/workos/directory_sync/directory_user.rb +103 -0
- data/lib/workos/directory_sync/directory_user_email.rb +25 -0
- data/lib/workos/directory_sync/directory_user_with_groups.rb +114 -0
- data/lib/workos/directory_sync/directory_user_with_groups_email.rb +7 -0
- data/lib/workos/directory_sync/dsync_activated.rb +34 -0
- data/lib/workos/directory_sync/dsync_activated_data.rb +46 -0
- data/lib/workos/directory_sync/dsync_activated_data_domain.rb +25 -0
- data/lib/workos/directory_sync/dsync_deactivated.rb +34 -0
- data/lib/workos/directory_sync/dsync_deactivated_data.rb +46 -0
- data/lib/workos/directory_sync/dsync_deactivated_data_domain.rb +7 -0
- data/lib/workos/directory_sync/dsync_deleted.rb +34 -0
- data/lib/workos/directory_sync/dsync_deleted_data.rb +40 -0
- data/lib/workos/directory_sync/dsync_group_created.rb +34 -0
- data/lib/workos/directory_sync/dsync_group_deleted.rb +34 -0
- data/lib/workos/directory_sync/dsync_group_updated.rb +34 -0
- data/lib/workos/directory_sync/dsync_group_updated_data.rb +46 -0
- data/lib/workos/directory_sync/dsync_group_user_added.rb +34 -0
- data/lib/workos/directory_sync/dsync_group_user_added_data.rb +25 -0
- data/lib/workos/directory_sync/dsync_group_user_removed.rb +34 -0
- data/lib/workos/directory_sync/dsync_group_user_removed_data.rb +7 -0
- data/lib/workos/directory_sync/dsync_user_created.rb +34 -0
- data/lib/workos/directory_sync/dsync_user_deleted.rb +34 -0
- data/lib/workos/directory_sync/dsync_user_updated.rb +34 -0
- data/lib/workos/directory_sync/dsync_user_updated_data.rb +106 -0
- data/lib/workos/directory_sync/dsync_user_updated_data_email.rb +7 -0
- data/lib/workos/directory_sync.rb +230 -181
- data/lib/workos/encryptors/aes_gcm.rb +40 -33
- data/lib/workos/encryptors.rb +3 -3
- data/lib/workos/errors.rb +17 -75
- data/lib/workos/events/event_list_list_metadata.rb +18 -0
- data/lib/workos/events/event_schema.rb +34 -0
- data/lib/workos/events.rb +64 -38
- data/lib/workos/feature_flags/feature_flag.rb +49 -0
- data/lib/workos/feature_flags/feature_flag_owner.rb +25 -0
- data/lib/workos/feature_flags/flag.rb +7 -0
- data/lib/workos/feature_flags/flag_created.rb +34 -0
- data/lib/workos/feature_flags/flag_created_context.rb +22 -0
- data/lib/workos/feature_flags/flag_created_context_actor.rb +25 -0
- data/lib/workos/feature_flags/flag_created_data.rb +52 -0
- data/lib/workos/feature_flags/flag_created_data_owner.rb +7 -0
- data/lib/workos/feature_flags/flag_deleted.rb +34 -0
- data/lib/workos/feature_flags/flag_deleted_context.rb +22 -0
- data/lib/workos/feature_flags/flag_deleted_context_actor.rb +25 -0
- data/lib/workos/feature_flags/flag_deleted_data.rb +7 -0
- data/lib/workos/feature_flags/flag_deleted_data_owner.rb +7 -0
- data/lib/workos/feature_flags/flag_owner.rb +7 -0
- data/lib/workos/feature_flags/flag_rule_updated.rb +34 -0
- data/lib/workos/feature_flags/flag_rule_updated_context.rb +31 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_actor.rb +25 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_configured_target.rb +22 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_configured_target_organization.rb +22 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_configured_target_user.rb +22 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute.rb +22 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute_context.rb +22 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute_context_configured_target.rb +7 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute_context_configured_target_organization.rb +7 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute_context_configured_target_user.rb +7 -0
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute_data.rb +22 -0
- data/lib/workos/feature_flags/flag_rule_updated_data.rb +7 -0
- data/lib/workos/feature_flags/flag_rule_updated_data_owner.rb +7 -0
- data/lib/workos/feature_flags/flag_updated.rb +34 -0
- data/lib/workos/feature_flags/flag_updated_context.rb +25 -0
- data/lib/workos/feature_flags/flag_updated_context_actor.rb +25 -0
- data/lib/workos/feature_flags/flag_updated_context_previous_attribute.rb +18 -0
- data/lib/workos/feature_flags/flag_updated_context_previous_attribute_data.rb +31 -0
- data/lib/workos/feature_flags/flag_updated_data.rb +7 -0
- data/lib/workos/feature_flags/flag_updated_data_owner.rb +7 -0
- data/lib/workos/feature_flags.rb +246 -0
- data/lib/workos/groups/create_group.rb +22 -0
- data/lib/workos/groups/create_group_membership.rb +18 -0
- data/lib/workos/groups/group.rb +37 -0
- data/lib/workos/groups/update_group.rb +7 -0
- data/lib/workos/groups.rb +256 -0
- data/lib/workos/hash_provider.rb +34 -8
- data/lib/workos/inflections.rb +64 -0
- data/lib/workos/multi_factor_auth/authentication_challenge.rb +37 -0
- data/lib/workos/multi_factor_auth/authentication_challenge_verify_response.rb +22 -0
- data/lib/workos/multi_factor_auth/authentication_challenges_verify_request.rb +18 -0
- data/lib/workos/multi_factor_auth/authentication_factor.rb +40 -0
- data/lib/workos/multi_factor_auth/authentication_factor_enrolled.rb +40 -0
- data/lib/workos/multi_factor_auth/authentication_factor_enrolled_sms.rb +18 -0
- data/lib/workos/multi_factor_auth/authentication_factor_enrolled_totp.rb +31 -0
- data/lib/workos/multi_factor_auth/authentication_factor_sms.rb +7 -0
- data/lib/workos/multi_factor_auth/authentication_factor_totp.rb +22 -0
- data/lib/workos/multi_factor_auth/authentication_factors_create_request.rb +31 -0
- data/lib/workos/multi_factor_auth/challenge_authentication_factor.rb +18 -0
- data/lib/workos/multi_factor_auth/enroll_user_authentication_factor.rb +28 -0
- data/lib/workos/multi_factor_auth/user_authentication_factor_enroll_response.rb +22 -0
- data/lib/workos/multi_factor_auth.rb +215 -0
- data/lib/workos/organization_domains/create_organization_domain.rb +22 -0
- data/lib/workos/organization_domains/organization_domain.rb +46 -0
- data/lib/workos/organization_domains/organization_domain_created.rb +34 -0
- data/lib/workos/organization_domains/organization_domain_created_data.rb +46 -0
- data/lib/workos/organization_domains/organization_domain_deleted.rb +34 -0
- data/lib/workos/organization_domains/organization_domain_deleted_data.rb +46 -0
- data/lib/workos/organization_domains/organization_domain_stand_alone.rb +46 -0
- data/lib/workos/organization_domains/organization_domain_updated.rb +34 -0
- data/lib/workos/organization_domains/organization_domain_updated_data.rb +46 -0
- data/lib/workos/organization_domains/organization_domain_verification_failed.rb +34 -0
- data/lib/workos/organization_domains/organization_domain_verification_failed_data.rb +22 -0
- data/lib/workos/organization_domains/organization_domain_verification_failed_data_organization_domain.rb +46 -0
- data/lib/workos/organization_domains/organization_domain_verified.rb +34 -0
- data/lib/workos/organization_domains/organization_domain_verified_data.rb +46 -0
- data/lib/workos/organization_domains.rb +94 -0
- data/lib/workos/organizations/audit_log_configuration.rb +28 -0
- data/lib/workos/organizations/audit_log_configuration_log_stream.rb +31 -0
- data/lib/workos/organizations/audit_logs_retention.rb +23 -0
- data/lib/workos/organizations/audit_logs_retention_json.rb +18 -0
- data/lib/workos/organizations/organization.rb +55 -0
- data/lib/workos/organizations/organization_created.rb +34 -0
- data/lib/workos/organizations/organization_created_data.rb +43 -0
- data/lib/workos/organizations/organization_created_data_domain.rb +46 -0
- data/lib/workos/organizations/organization_deleted.rb +34 -0
- data/lib/workos/organizations/organization_deleted_data.rb +43 -0
- data/lib/workos/organizations/organization_deleted_data_domain.rb +46 -0
- data/lib/workos/organizations/organization_domain_data.rb +22 -0
- data/lib/workos/organizations/organization_input.rb +34 -0
- data/lib/workos/organizations/organization_membership_created.rb +34 -0
- data/lib/workos/organizations/organization_membership_created_data.rb +49 -0
- data/lib/workos/organizations/organization_membership_deleted.rb +34 -0
- data/lib/workos/organizations/organization_membership_deleted_data.rb +49 -0
- data/lib/workos/organizations/organization_membership_updated.rb +34 -0
- data/lib/workos/organizations/organization_membership_updated_data.rb +49 -0
- data/lib/workos/organizations/organization_role_created.rb +34 -0
- data/lib/workos/organizations/organization_role_created_data.rb +43 -0
- data/lib/workos/organizations/organization_role_deleted.rb +34 -0
- data/lib/workos/organizations/organization_role_deleted_data.rb +7 -0
- data/lib/workos/organizations/organization_role_updated.rb +34 -0
- data/lib/workos/organizations/organization_role_updated_data.rb +7 -0
- data/lib/workos/organizations/organization_updated.rb +34 -0
- data/lib/workos/organizations/organization_updated_data.rb +43 -0
- data/lib/workos/organizations/organization_updated_data_domain.rb +46 -0
- data/lib/workos/organizations/update_audit_logs_retention.rb +18 -0
- data/lib/workos/organizations/update_organization.rb +46 -0
- data/lib/workos/organizations.rb +203 -271
- data/lib/workos/passwordless.rb +63 -58
- data/lib/workos/pipes/connected_account.rb +40 -0
- data/lib/workos/pipes/data_integration_access_token_response.rb +25 -0
- data/lib/workos/pipes/data_integration_access_token_response_access_token.rb +31 -0
- data/lib/workos/pipes/data_integration_authorize_url_response.rb +18 -0
- data/lib/workos/pipes/data_integrations_get_data_integration_authorize_url_request.rb +25 -0
- data/lib/workos/pipes/data_integrations_get_user_token_request.rb +22 -0
- data/lib/workos/pipes/data_integrations_list_response.rb +22 -0
- data/lib/workos/pipes/data_integrations_list_response_data.rb +52 -0
- data/lib/workos/pipes/data_integrations_list_response_data_connected_account.rb +52 -0
- data/lib/workos/pipes.rb +149 -0
- data/lib/workos/pkce.rb +42 -0
- data/lib/workos/public_client.rb +27 -0
- data/lib/workos/radar/radar_list_entry_already_present_response.rb +18 -0
- data/lib/workos/radar/radar_standalone_assess_request.rb +37 -0
- data/lib/workos/radar/radar_standalone_delete_radar_list_entry_request.rb +18 -0
- data/lib/workos/radar/radar_standalone_response.rb +31 -0
- data/lib/workos/radar/radar_standalone_update_radar_attempt_request.rb +22 -0
- data/lib/workos/radar/radar_standalone_update_radar_list_request.rb +7 -0
- data/lib/workos/radar.rb +132 -0
- data/lib/workos/session.rb +108 -160
- data/lib/workos/session_manager.rb +196 -0
- data/lib/workos/shared/event_context.rb +34 -0
- data/lib/workos/shared/event_context_actor.rb +25 -0
- data/lib/workos/shared/event_context_google_analytics_session.rb +25 -0
- data/lib/workos/shared/group_created.rb +34 -0
- data/lib/workos/shared/group_deleted.rb +34 -0
- data/lib/workos/shared/group_member_added.rb +34 -0
- data/lib/workos/shared/group_member_added_data.rb +22 -0
- data/lib/workos/shared/group_member_removed.rb +34 -0
- data/lib/workos/shared/group_member_removed_data.rb +7 -0
- data/lib/workos/shared/group_updated.rb +34 -0
- data/lib/workos/shared/waitlist_user.rb +37 -0
- data/lib/workos/shared/waitlist_user_approved.rb +34 -0
- data/lib/workos/shared/waitlist_user_created.rb +34 -0
- data/lib/workos/shared/waitlist_user_denied.rb +34 -0
- data/lib/workos/sso/connection.rb +58 -0
- data/lib/workos/sso/connection_activated.rb +34 -0
- data/lib/workos/sso/connection_activated_data.rb +49 -0
- data/lib/workos/sso/connection_activated_data_domain.rb +25 -0
- data/lib/workos/sso/connection_deactivated.rb +34 -0
- data/lib/workos/sso/connection_deactivated_data.rb +49 -0
- data/lib/workos/sso/connection_deactivated_data_domain.rb +7 -0
- data/lib/workos/sso/connection_deleted.rb +34 -0
- data/lib/workos/sso/connection_deleted_data.rb +40 -0
- data/lib/workos/sso/connection_domain.rb +7 -0
- data/lib/workos/sso/connection_option.rb +18 -0
- data/lib/workos/sso/connection_saml_certificate_renewal_required.rb +34 -0
- data/lib/workos/sso/connection_saml_certificate_renewal_required_data.rb +25 -0
- data/lib/workos/sso/connection_saml_certificate_renewal_required_data_certificate.rb +25 -0
- data/lib/workos/sso/connection_saml_certificate_renewal_required_data_connection.rb +22 -0
- data/lib/workos/sso/connection_saml_certificate_renewed.rb +34 -0
- data/lib/workos/sso/connection_saml_certificate_renewed_data.rb +25 -0
- data/lib/workos/sso/connection_saml_certificate_renewed_data_certificate.rb +22 -0
- data/lib/workos/sso/connection_saml_certificate_renewed_data_connection.rb +7 -0
- data/lib/workos/sso/profile.rb +58 -0
- data/lib/workos/sso/sso_authorize_url_response.rb +18 -0
- data/lib/workos/sso/sso_logout_authorize_request.rb +18 -0
- data/lib/workos/sso/sso_logout_authorize_response.rb +22 -0
- data/lib/workos/sso/sso_token_response.rb +31 -0
- data/lib/workos/sso/sso_token_response_oauth_token.rb +7 -0
- data/lib/workos/sso/token_query.rb +28 -0
- data/lib/workos/sso.rb +231 -212
- data/lib/workos/types/api_response.rb +10 -0
- data/lib/workos/types/applications_order.rb +14 -0
- data/lib/workos/types/audit_log_configuration_log_stream_state.rb +15 -0
- data/lib/workos/types/audit_log_configuration_log_stream_type.rb +17 -0
- data/lib/workos/types/audit_log_configuration_state.rb +14 -0
- data/lib/workos/types/audit_log_export_json_state.rb +14 -0
- data/lib/workos/types/audit_log_export_state.rb +14 -0
- data/lib/workos/types/audit_logs_order.rb +9 -0
- data/lib/workos/types/authenticate_response_authentication_method.rb +33 -0
- data/lib/workos/types/authentication_factor_enrolled_type.rb +15 -0
- data/lib/workos/types/authentication_factor_type.rb +9 -0
- data/lib/workos/types/authentication_factors_create_request_type.rb +14 -0
- data/lib/workos/types/authentication_radar_risk_detected_data_action.rb +13 -0
- data/lib/workos/types/authorization_assignment.rb +13 -0
- data/lib/workos/types/authorization_order.rb +9 -0
- data/lib/workos/types/base_model.rb +35 -0
- data/lib/workos/types/connected_account_state.rb +14 -0
- data/lib/workos/types/connection_activated_data_connection_type.rb +61 -0
- data/lib/workos/types/connection_activated_data_state.rb +16 -0
- data/lib/workos/types/connection_activated_data_status.rb +13 -0
- data/lib/workos/types/connection_deactivated_data_connection_type.rb +9 -0
- data/lib/workos/types/connection_deactivated_data_state.rb +9 -0
- data/lib/workos/types/connection_deactivated_data_status.rb +9 -0
- data/lib/workos/types/connection_deleted_data_connection_type.rb +9 -0
- data/lib/workos/types/connection_deleted_data_state.rb +9 -0
- data/lib/workos/types/connection_saml_certificate_renewal_required_data_certificate_certificate_type.rb +14 -0
- data/lib/workos/types/connection_saml_certificate_renewed_data_certificate_certificate_type.rb +9 -0
- data/lib/workos/types/connection_state.rb +17 -0
- data/lib/workos/types/connection_status.rb +9 -0
- data/lib/workos/types/connection_type.rb +62 -0
- data/lib/workos/types/connections_connection_type.rb +59 -0
- data/lib/workos/types/connections_order.rb +9 -0
- data/lib/workos/types/create_user_invite_options_locale.rb +101 -0
- data/lib/workos/types/create_user_password_hash_type.rb +17 -0
- data/lib/workos/types/create_webhook_endpoint_events.rb +88 -0
- data/lib/workos/types/data_integration_access_token_response_error.rb +13 -0
- data/lib/workos/types/data_integrations_list_response_data_connected_account_state.rb +9 -0
- data/lib/workos/types/data_integrations_list_response_data_ownership.rb +13 -0
- data/lib/workos/types/directories_order.rb +9 -0
- data/lib/workos/types/directory_groups_order.rb +9 -0
- data/lib/workos/types/directory_state.rb +16 -0
- data/lib/workos/types/directory_type.rb +32 -0
- data/lib/workos/types/directory_user_state.rb +14 -0
- data/lib/workos/types/directory_user_with_groups_state.rb +9 -0
- data/lib/workos/types/directory_users_order.rb +9 -0
- data/lib/workos/types/dsync_activated_data_state.rb +16 -0
- data/lib/workos/types/dsync_activated_data_type.rb +34 -0
- data/lib/workos/types/dsync_deactivated_data_state.rb +9 -0
- data/lib/workos/types/dsync_deactivated_data_type.rb +9 -0
- data/lib/workos/types/dsync_deleted_data_state.rb +9 -0
- data/lib/workos/types/dsync_deleted_data_type.rb +9 -0
- data/lib/workos/types/dsync_user_updated_data_state.rb +9 -0
- data/lib/workos/types/event_context_actor_source.rb +14 -0
- data/lib/workos/types/events_order.rb +9 -0
- data/lib/workos/types/feature_flags_order.rb +9 -0
- data/lib/workos/types/flag_created_context_actor_source.rb +9 -0
- data/lib/workos/types/flag_deleted_context_actor_source.rb +9 -0
- data/lib/workos/types/flag_rule_updated_context_access_type.rb +14 -0
- data/lib/workos/types/flag_rule_updated_context_actor_source.rb +9 -0
- data/lib/workos/types/flag_rule_updated_context_previous_attribute_context_access_type.rb +9 -0
- data/lib/workos/types/flag_updated_context_actor_source.rb +9 -0
- data/lib/workos/types/generate_link_intent.rb +18 -0
- data/lib/workos/types/groups_order.rb +9 -0
- data/lib/workos/types/invitation_accepted_data_state.rb +15 -0
- data/lib/workos/types/invitation_created_data_state.rb +9 -0
- data/lib/workos/types/invitation_resent_data_state.rb +9 -0
- data/lib/workos/types/invitation_revoked_data_state.rb +9 -0
- data/lib/workos/types/invitation_state.rb +9 -0
- data/lib/workos/types/list_struct.rb +122 -6
- data/lib/workos/types/organization_created_data_domain_state.rb +16 -0
- data/lib/workos/types/organization_created_data_domain_verification_strategy.rb +13 -0
- data/lib/workos/types/organization_deleted_data_domain_state.rb +9 -0
- data/lib/workos/types/organization_deleted_data_domain_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_created_data_state.rb +9 -0
- data/lib/workos/types/organization_domain_created_data_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_data_state.rb +13 -0
- data/lib/workos/types/organization_domain_deleted_data_state.rb +9 -0
- data/lib/workos/types/organization_domain_deleted_data_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_stand_alone_state.rb +9 -0
- data/lib/workos/types/organization_domain_stand_alone_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_state.rb +9 -0
- data/lib/workos/types/organization_domain_updated_data_state.rb +9 -0
- data/lib/workos/types/organization_domain_updated_data_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_verification_failed_data_organization_domain_state.rb +9 -0
- data/lib/workos/types/organization_domain_verification_failed_data_organization_domain_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_verification_failed_data_reason.rb +13 -0
- data/lib/workos/types/organization_domain_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_domain_verified_data_state.rb +9 -0
- data/lib/workos/types/organization_domain_verified_data_verification_strategy.rb +9 -0
- data/lib/workos/types/organization_membership_created_data_status.rb +14 -0
- data/lib/workos/types/organization_membership_deleted_data_status.rb +9 -0
- data/lib/workos/types/organization_membership_status.rb +9 -0
- data/lib/workos/types/organization_membership_updated_data_status.rb +9 -0
- data/lib/workos/types/organization_updated_data_domain_state.rb +9 -0
- data/lib/workos/types/organization_updated_data_domain_verification_strategy.rb +9 -0
- data/lib/workos/types/organizations_api_keys_order.rb +9 -0
- data/lib/workos/types/organizations_feature_flags_order.rb +9 -0
- data/lib/workos/types/organizations_order.rb +9 -0
- data/lib/workos/types/permissions_order.rb +9 -0
- data/lib/workos/types/profile_connection_type.rb +9 -0
- data/lib/workos/types/radar_action.rb +13 -0
- data/lib/workos/types/radar_standalone_assess_request_action.rb +19 -0
- data/lib/workos/types/radar_standalone_assess_request_auth_method.rb +19 -0
- data/lib/workos/types/radar_standalone_response_blocklist_type.rb +18 -0
- data/lib/workos/types/radar_standalone_response_control.rb +21 -0
- data/lib/workos/types/radar_standalone_response_verdict.rb +14 -0
- data/lib/workos/types/radar_type.rb +9 -0
- data/lib/workos/types/request_options.rb +33 -0
- data/lib/workos/types/resend_user_invite_options_locale.rb +9 -0
- data/lib/workos/types/role_type.rb +13 -0
- data/lib/workos/types/session_created_data_auth_method.rb +21 -0
- data/lib/workos/types/session_created_data_status.rb +14 -0
- data/lib/workos/types/session_revoked_data_auth_method.rb +9 -0
- data/lib/workos/types/session_revoked_data_status.rb +9 -0
- data/lib/workos/types/sso_provider.rb +24 -0
- data/lib/workos/types/update_user_password_hash_type.rb +9 -0
- data/lib/workos/types/update_webhook_endpoint_events.rb +9 -0
- data/lib/workos/types/update_webhook_endpoint_status.rb +13 -0
- data/lib/workos/types/user_identities_get_item_provider.rb +25 -0
- data/lib/workos/types/user_invite_state.rb +9 -0
- data/lib/workos/types/user_management_authentication_provider.rb +25 -0
- data/lib/workos/types/user_management_authentication_screen_hint.rb +13 -0
- data/lib/workos/types/user_management_invitations_order.rb +9 -0
- data/lib/workos/types/user_management_multi_factor_authentication_order.rb +9 -0
- data/lib/workos/types/user_management_organization_membership_groups_order.rb +9 -0
- data/lib/workos/types/user_management_organization_membership_order.rb +9 -0
- data/lib/workos/types/user_management_organization_membership_statuses.rb +9 -0
- data/lib/workos/types/user_management_users_authorized_applications_order.rb +9 -0
- data/lib/workos/types/user_management_users_feature_flags_order.rb +9 -0
- data/lib/workos/types/user_management_users_order.rb +9 -0
- data/lib/workos/types/user_organization_membership_base_list_data_status.rb +9 -0
- data/lib/workos/types/user_organization_membership_status.rb +9 -0
- data/lib/workos/types/user_sessions_auth_method.rb +9 -0
- data/lib/workos/types/user_sessions_status.rb +9 -0
- data/lib/workos/types/vault_byok_key_verification_completed_data_key_provider.rb +14 -0
- data/lib/workos/types/vault_data_created_data_actor_source.rb +13 -0
- data/lib/workos/types/vault_data_deleted_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_data_read_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_data_updated_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_dek_decrypted_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_dek_read_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_kek_created_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_metadata_read_data_actor_source.rb +9 -0
- data/lib/workos/types/vault_names_listed_data_actor_source.rb +9 -0
- data/lib/workos/types/waitlist_user_state.rb +14 -0
- data/lib/workos/types/webhook_endpoint_json_status.rb +9 -0
- data/lib/workos/types/webhook_endpoint_status.rb +13 -0
- data/lib/workos/types/webhooks_order.rb +9 -0
- data/lib/workos/types/widget_session_token_scopes.rb +17 -0
- data/lib/workos/user_management/action_authentication_denied.rb +34 -0
- data/lib/workos/user_management/action_authentication_denied_data.rb +43 -0
- data/lib/workos/user_management/action_user_registration_denied.rb +34 -0
- data/lib/workos/user_management/action_user_registration_denied_data.rb +40 -0
- data/lib/workos/user_management/authenticate_response.rb +40 -0
- data/lib/workos/user_management/authenticate_response_impersonator.rb +22 -0
- data/lib/workos/user_management/authenticate_response_oauth_token.rb +31 -0
- data/lib/workos/user_management/authentication_email_verification_failed.rb +34 -0
- data/lib/workos/user_management/authentication_email_verification_failed_data.rb +37 -0
- data/lib/workos/user_management/authentication_email_verification_failed_data_error.rb +22 -0
- data/lib/workos/user_management/authentication_email_verification_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_email_verification_succeeded_data.rb +34 -0
- data/lib/workos/user_management/authentication_magic_auth_failed.rb +34 -0
- data/lib/workos/user_management/authentication_magic_auth_failed_data.rb +37 -0
- data/lib/workos/user_management/authentication_magic_auth_failed_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_magic_auth_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_magic_auth_succeeded_data.rb +34 -0
- data/lib/workos/user_management/authentication_mfa_failed.rb +34 -0
- data/lib/workos/user_management/authentication_mfa_failed_data.rb +37 -0
- data/lib/workos/user_management/authentication_mfa_failed_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_mfa_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_mfa_succeeded_data.rb +34 -0
- data/lib/workos/user_management/authentication_oauth_failed.rb +34 -0
- data/lib/workos/user_management/authentication_oauth_failed_data.rb +37 -0
- data/lib/workos/user_management/authentication_oauth_failed_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_oauth_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_oauth_succeeded_data.rb +34 -0
- data/lib/workos/user_management/authentication_passkey_failed.rb +34 -0
- data/lib/workos/user_management/authentication_passkey_failed_data.rb +37 -0
- data/lib/workos/user_management/authentication_passkey_failed_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_passkey_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_passkey_succeeded_data.rb +34 -0
- data/lib/workos/user_management/authentication_password_failed.rb +34 -0
- data/lib/workos/user_management/authentication_password_failed_data.rb +37 -0
- data/lib/workos/user_management/authentication_password_failed_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_password_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_password_succeeded_data.rb +34 -0
- data/lib/workos/user_management/authentication_radar_risk_detected.rb +34 -0
- data/lib/workos/user_management/authentication_radar_risk_detected_data.rb +40 -0
- data/lib/workos/user_management/authentication_sso_failed.rb +34 -0
- data/lib/workos/user_management/authentication_sso_failed_data.rb +40 -0
- data/lib/workos/user_management/authentication_sso_failed_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_sso_failed_data_sso.rb +25 -0
- data/lib/workos/user_management/authentication_sso_started.rb +34 -0
- data/lib/workos/user_management/authentication_sso_started_data.rb +37 -0
- data/lib/workos/user_management/authentication_sso_started_data_sso.rb +7 -0
- data/lib/workos/user_management/authentication_sso_succeeded.rb +34 -0
- data/lib/workos/user_management/authentication_sso_succeeded_data.rb +37 -0
- data/lib/workos/user_management/authentication_sso_succeeded_data_sso.rb +7 -0
- data/lib/workos/user_management/authentication_sso_timed_out.rb +34 -0
- data/lib/workos/user_management/authentication_sso_timed_out_data.rb +40 -0
- data/lib/workos/user_management/authentication_sso_timed_out_data_error.rb +7 -0
- data/lib/workos/user_management/authentication_sso_timed_out_data_sso.rb +7 -0
- data/lib/workos/user_management/authorization_code_session_authenticate_request.rb +43 -0
- data/lib/workos/user_management/authorized_connect_application_list_data.rb +31 -0
- data/lib/workos/user_management/confirm_email_change.rb +7 -0
- data/lib/workos/user_management/cors_origin_response.rb +31 -0
- data/lib/workos/user_management/create_cors_origin.rb +18 -0
- data/lib/workos/user_management/create_magic_code_and_return.rb +22 -0
- data/lib/workos/user_management/create_password_reset.rb +22 -0
- data/lib/workos/user_management/create_password_reset_token.rb +18 -0
- data/lib/workos/user_management/create_redirect_uri.rb +18 -0
- data/lib/workos/user_management/create_user.rb +43 -0
- data/lib/workos/user_management/create_user_invite_options.rb +34 -0
- data/lib/workos/user_management/create_user_organization_membership.rb +28 -0
- data/lib/workos/user_management/device_authorization_response.rb +34 -0
- data/lib/workos/user_management/device_code_session_authenticate_request.rb +34 -0
- data/lib/workos/user_management/email_change.rb +31 -0
- data/lib/workos/user_management/email_change_confirmation.rb +22 -0
- data/lib/workos/user_management/email_change_confirmation_user.rb +55 -0
- data/lib/workos/user_management/email_verification.rb +40 -0
- data/lib/workos/user_management/email_verification_code_session_authenticate_request.rb +40 -0
- data/lib/workos/user_management/email_verification_created.rb +34 -0
- data/lib/workos/user_management/email_verification_created_data.rb +37 -0
- data/lib/workos/user_management/invitation.rb +61 -0
- data/lib/workos/user_management/invitation_accepted.rb +34 -0
- data/lib/workos/user_management/invitation_accepted_data.rb +55 -0
- data/lib/workos/user_management/invitation_created.rb +34 -0
- data/lib/workos/user_management/invitation_created_data.rb +55 -0
- data/lib/workos/user_management/invitation_resent.rb +34 -0
- data/lib/workos/user_management/invitation_resent_data.rb +55 -0
- data/lib/workos/user_management/invitation_revoked.rb +34 -0
- data/lib/workos/user_management/invitation_revoked_data.rb +55 -0
- data/lib/workos/user_management/jwks_response.rb +18 -0
- data/lib/workos/user_management/jwks_response_keys.rb +40 -0
- data/lib/workos/user_management/jwt_template_response.rb +28 -0
- data/lib/workos/user_management/magic_auth.rb +40 -0
- data/lib/workos/user_management/magic_auth_code_session_authenticate_request.rb +43 -0
- data/lib/workos/user_management/magic_auth_created.rb +34 -0
- data/lib/workos/user_management/magic_auth_created_data.rb +37 -0
- data/lib/workos/user_management/mfa_totp_session_authenticate_request.rb +43 -0
- data/lib/workos/user_management/organization_membership.rb +49 -0
- data/lib/workos/user_management/organization_selection_session_authenticate_request.rb +40 -0
- data/lib/workos/user_management/password_reset.rb +40 -0
- data/lib/workos/user_management/password_reset_created.rb +34 -0
- data/lib/workos/user_management/password_reset_created_data.rb +34 -0
- data/lib/workos/user_management/password_reset_succeeded.rb +34 -0
- data/lib/workos/user_management/password_reset_succeeded_data.rb +7 -0
- data/lib/workos/user_management/password_session_authenticate_request.rb +43 -0
- data/lib/workos/user_management/redirect_uri.rb +34 -0
- data/lib/workos/user_management/refresh_token_session_authenticate_request.rb +40 -0
- data/lib/workos/user_management/resend_user_invite_options.rb +18 -0
- data/lib/workos/user_management/reset_password_response.rb +18 -0
- data/lib/workos/user_management/revoke_session.rb +22 -0
- data/lib/workos/user_management/send_email_change.rb +18 -0
- data/lib/workos/user_management/send_verification_email_response.rb +7 -0
- data/lib/workos/user_management/session_created.rb +34 -0
- data/lib/workos/user_management/session_created_data.rb +55 -0
- data/lib/workos/user_management/session_created_data_impersonator.rb +7 -0
- data/lib/workos/user_management/session_revoked.rb +34 -0
- data/lib/workos/user_management/session_revoked_data.rb +55 -0
- data/lib/workos/user_management/session_revoked_data_impersonator.rb +7 -0
- data/lib/workos/user_management/sso_device_authorization_request.rb +18 -0
- data/lib/workos/user_management/update_jwt_template.rb +18 -0
- data/lib/workos/user_management/update_user.rb +46 -0
- data/lib/workos/user_management/update_user_organization_membership.rb +22 -0
- data/lib/workos/user_management/user.rb +7 -0
- data/lib/workos/user_management/user_created.rb +34 -0
- data/lib/workos/user_management/user_deleted.rb +34 -0
- data/lib/workos/user_management/user_identities_get_item.rb +25 -0
- data/lib/workos/user_management/user_invite.rb +61 -0
- data/lib/workos/user_management/user_organization_membership.rb +49 -0
- data/lib/workos/user_management/user_sessions_impersonator.rb +7 -0
- data/lib/workos/user_management/user_sessions_list_item.rb +55 -0
- data/lib/workos/user_management/user_updated.rb +34 -0
- data/lib/workos/user_management/verify_email_address.rb +7 -0
- data/lib/workos/user_management/verify_email_response.rb +7 -0
- data/lib/workos/user_management.rb +1514 -1170
- data/lib/workos/user_management_organization_membership_groups.rb +60 -0
- data/lib/workos/util/signature.rb +55 -0
- data/lib/workos/util.rb +16 -0
- data/lib/workos/vault/vault_byok_key_verification_completed.rb +34 -0
- data/lib/workos/vault/vault_byok_key_verification_completed_data.rb +25 -0
- data/lib/workos/vault/vault_data_created.rb +34 -0
- data/lib/workos/vault/vault_data_created_data.rb +34 -0
- data/lib/workos/vault/vault_data_deleted.rb +34 -0
- data/lib/workos/vault/vault_data_deleted_data.rb +28 -0
- data/lib/workos/vault/vault_data_read.rb +34 -0
- data/lib/workos/vault/vault_data_read_data.rb +31 -0
- data/lib/workos/vault/vault_data_updated.rb +34 -0
- data/lib/workos/vault/vault_data_updated_data.rb +34 -0
- data/lib/workos/vault/vault_dek_decrypted.rb +34 -0
- data/lib/workos/vault/vault_dek_decrypted_data.rb +28 -0
- data/lib/workos/vault/vault_dek_read.rb +34 -0
- data/lib/workos/vault/vault_dek_read_data.rb +31 -0
- data/lib/workos/vault/vault_kek_created.rb +34 -0
- data/lib/workos/vault/vault_kek_created_data.rb +31 -0
- data/lib/workos/vault/vault_metadata_read.rb +34 -0
- data/lib/workos/vault/vault_metadata_read_data.rb +28 -0
- data/lib/workos/vault/vault_names_listed.rb +34 -0
- data/lib/workos/vault/vault_names_listed_data.rb +25 -0
- data/lib/workos/vault.rb +241 -0
- data/lib/workos/version.rb +2 -1
- data/lib/workos/webhook_event.rb +120 -0
- data/lib/workos/webhooks/create_webhook_endpoint.rb +22 -0
- data/lib/workos/webhooks/update_webhook_endpoint.rb +25 -0
- data/lib/workos/webhooks/webhook_endpoint.rb +45 -0
- data/lib/workos/webhooks/webhook_endpoint_json.rb +40 -0
- data/lib/workos/webhooks.rb +213 -159
- data/lib/workos/widgets/widget_session_token.rb +25 -0
- data/lib/workos/widgets/widget_session_token_response.rb +18 -0
- data/lib/workos/widgets.rb +34 -38
- data/lib/workos.rb +34 -96
- data/rbi/workos/action_authentication_denied.rbi +54 -0
- data/rbi/workos/action_authentication_denied_data.rbi +72 -0
- data/rbi/workos/action_user_registration_denied.rbi +54 -0
- data/rbi/workos/action_user_registration_denied_data.rbi +66 -0
- data/rbi/workos/actions.rbi +48 -0
- data/rbi/workos/add_role_permission.rbi +24 -0
- data/rbi/workos/admin_portal.rbi +26 -0
- data/rbi/workos/api_key.rbi +72 -0
- data/rbi/workos/api_key_created.rbi +54 -0
- data/rbi/workos/api_key_created_data.rbi +72 -0
- data/rbi/workos/api_key_created_data_owner.rbi +30 -0
- data/rbi/workos/api_key_owner.rbi +30 -0
- data/rbi/workos/api_key_revoked.rbi +54 -0
- data/rbi/workos/api_key_revoked_data.rbi +72 -0
- data/rbi/workos/api_key_revoked_data_owner.rbi +30 -0
- data/rbi/workos/api_key_validation_response.rbi +24 -0
- data/rbi/workos/api_key_with_value.rbi +78 -0
- data/rbi/workos/api_key_with_value_owner.rbi +30 -0
- data/rbi/workos/api_keys.rbi +51 -0
- data/rbi/workos/application_credentials_list_item.rbi +54 -0
- data/rbi/workos/assign_role.rbi +42 -0
- data/rbi/workos/audit_log_action.rbi +47 -0
- data/rbi/workos/audit_log_action_json.rbi +48 -0
- data/rbi/workos/audit_log_configuration.rbi +42 -0
- data/rbi/workos/audit_log_configuration_log_stream.rbi +48 -0
- data/rbi/workos/audit_log_event.rbi +60 -0
- data/rbi/workos/audit_log_event_actor.rbi +42 -0
- data/rbi/workos/audit_log_event_context.rbi +30 -0
- data/rbi/workos/audit_log_event_create_response.rbi +24 -0
- data/rbi/workos/audit_log_event_ingestion.rbi +30 -0
- data/rbi/workos/audit_log_event_target.rbi +42 -0
- data/rbi/workos/audit_log_export.rbi +53 -0
- data/rbi/workos/audit_log_export_creation.rbi +66 -0
- data/rbi/workos/audit_log_export_json.rbi +54 -0
- data/rbi/workos/audit_log_schema.rbi +36 -0
- data/rbi/workos/audit_log_schema_actor.rbi +24 -0
- data/rbi/workos/audit_log_schema_json.rbi +54 -0
- data/rbi/workos/audit_log_schema_json_actor.rbi +24 -0
- data/rbi/workos/audit_log_schema_json_target.rbi +30 -0
- data/rbi/workos/audit_log_schema_target.rbi +30 -0
- data/rbi/workos/audit_logs.rbi +96 -0
- data/rbi/workos/audit_logs_retention.rbi +23 -0
- data/rbi/workos/audit_logs_retention_json.rbi +24 -0
- data/rbi/workos/authenticate_response.rbi +66 -0
- data/rbi/workos/authenticate_response_impersonator.rbi +30 -0
- data/rbi/workos/authenticate_response_oauth_token.rbi +48 -0
- data/rbi/workos/authentication_challenge.rbi +60 -0
- data/rbi/workos/authentication_challenge_verify_response.rbi +30 -0
- data/rbi/workos/authentication_challenges_verify_request.rbi +24 -0
- data/rbi/workos/authentication_email_verification_failed.rbi +54 -0
- data/rbi/workos/authentication_email_verification_failed_data.rbi +60 -0
- data/rbi/workos/authentication_email_verification_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_email_verification_succeeded.rbi +54 -0
- data/rbi/workos/authentication_email_verification_succeeded_data.rbi +54 -0
- data/rbi/workos/authentication_factor.rbi +66 -0
- data/rbi/workos/authentication_factor_enrolled.rbi +66 -0
- data/rbi/workos/authentication_factor_enrolled_sms.rbi +24 -0
- data/rbi/workos/authentication_factor_enrolled_totp.rbi +48 -0
- data/rbi/workos/authentication_factor_sms.rbi +24 -0
- data/rbi/workos/authentication_factor_totp.rbi +30 -0
- data/rbi/workos/authentication_factors_create_request.rbi +48 -0
- data/rbi/workos/authentication_magic_auth_failed.rbi +54 -0
- data/rbi/workos/authentication_magic_auth_failed_data.rbi +60 -0
- data/rbi/workos/authentication_magic_auth_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_magic_auth_succeeded.rbi +54 -0
- data/rbi/workos/authentication_magic_auth_succeeded_data.rbi +54 -0
- data/rbi/workos/authentication_mfa_failed.rbi +54 -0
- data/rbi/workos/authentication_mfa_failed_data.rbi +60 -0
- data/rbi/workos/authentication_mfa_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_mfa_succeeded.rbi +54 -0
- data/rbi/workos/authentication_mfa_succeeded_data.rbi +54 -0
- data/rbi/workos/authentication_oauth_failed.rbi +54 -0
- data/rbi/workos/authentication_oauth_failed_data.rbi +60 -0
- data/rbi/workos/authentication_oauth_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_oauth_succeeded.rbi +54 -0
- data/rbi/workos/authentication_oauth_succeeded_data.rbi +54 -0
- data/rbi/workos/authentication_passkey_failed.rbi +54 -0
- data/rbi/workos/authentication_passkey_failed_data.rbi +60 -0
- data/rbi/workos/authentication_passkey_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_passkey_succeeded.rbi +54 -0
- data/rbi/workos/authentication_passkey_succeeded_data.rbi +54 -0
- data/rbi/workos/authentication_password_failed.rbi +54 -0
- data/rbi/workos/authentication_password_failed_data.rbi +60 -0
- data/rbi/workos/authentication_password_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_password_succeeded.rbi +54 -0
- data/rbi/workos/authentication_password_succeeded_data.rbi +54 -0
- data/rbi/workos/authentication_radar_risk_detected.rbi +54 -0
- data/rbi/workos/authentication_radar_risk_detected_data.rbi +66 -0
- data/rbi/workos/authentication_sso_failed.rbi +54 -0
- data/rbi/workos/authentication_sso_failed_data.rbi +66 -0
- data/rbi/workos/authentication_sso_failed_data_error.rbi +30 -0
- data/rbi/workos/authentication_sso_failed_data_sso.rbi +36 -0
- data/rbi/workos/authentication_sso_started.rbi +54 -0
- data/rbi/workos/authentication_sso_started_data.rbi +60 -0
- data/rbi/workos/authentication_sso_started_data_sso.rbi +36 -0
- data/rbi/workos/authentication_sso_succeeded.rbi +54 -0
- data/rbi/workos/authentication_sso_succeeded_data.rbi +60 -0
- data/rbi/workos/authentication_sso_succeeded_data_sso.rbi +36 -0
- data/rbi/workos/authentication_sso_timed_out.rbi +54 -0
- data/rbi/workos/authentication_sso_timed_out_data.rbi +66 -0
- data/rbi/workos/authentication_sso_timed_out_data_error.rbi +30 -0
- data/rbi/workos/authentication_sso_timed_out_data_sso.rbi +36 -0
- data/rbi/workos/authorization.rbi +415 -0
- data/rbi/workos/authorization_check.rbi +24 -0
- data/rbi/workos/authorization_code_session_authenticate_request.rbi +72 -0
- data/rbi/workos/authorization_permission.rbi +72 -0
- data/rbi/workos/authorization_resource.rbi +78 -0
- data/rbi/workos/authorized_connect_application_list_data.rbi +48 -0
- data/rbi/workos/base_client.rbi +132 -0
- data/rbi/workos/challenge_authentication_factor.rbi +24 -0
- data/rbi/workos/check_authorization.rbi +42 -0
- data/rbi/workos/client.rbi +67 -0
- data/rbi/workos/configuration.rbi +68 -0
- data/rbi/workos/confirm_email_change.rbi +24 -0
- data/rbi/workos/connect.rbi +102 -0
- data/rbi/workos/connect_application.rbi +78 -0
- data/rbi/workos/connected_account.rbi +66 -0
- data/rbi/workos/connection.rbi +84 -0
- data/rbi/workos/connection_activated.rbi +54 -0
- data/rbi/workos/connection_activated_data.rbi +84 -0
- data/rbi/workos/connection_activated_data_domain.rbi +36 -0
- data/rbi/workos/connection_deactivated.rbi +54 -0
- data/rbi/workos/connection_deactivated_data.rbi +84 -0
- data/rbi/workos/connection_deactivated_data_domain.rbi +36 -0
- data/rbi/workos/connection_deleted.rbi +54 -0
- data/rbi/workos/connection_deleted_data.rbi +66 -0
- data/rbi/workos/connection_domain.rbi +36 -0
- data/rbi/workos/connection_option.rbi +24 -0
- data/rbi/workos/connection_saml_certificate_renewal_required.rbi +54 -0
- data/rbi/workos/connection_saml_certificate_renewal_required_data.rbi +36 -0
- data/rbi/workos/connection_saml_certificate_renewal_required_data_certificate.rbi +36 -0
- data/rbi/workos/connection_saml_certificate_renewal_required_data_connection.rbi +30 -0
- data/rbi/workos/connection_saml_certificate_renewed.rbi +54 -0
- data/rbi/workos/connection_saml_certificate_renewed_data.rbi +36 -0
- data/rbi/workos/connection_saml_certificate_renewed_data_certificate.rbi +30 -0
- data/rbi/workos/connection_saml_certificate_renewed_data_connection.rbi +30 -0
- data/rbi/workos/cors_origin_response.rbi +48 -0
- data/rbi/workos/create_application_secret.rbi +18 -0
- data/rbi/workos/create_authorization_permission.rbi +42 -0
- data/rbi/workos/create_authorization_resource.rbi +66 -0
- data/rbi/workos/create_cors_origin.rbi +24 -0
- data/rbi/workos/create_group.rbi +30 -0
- data/rbi/workos/create_group_membership.rbi +24 -0
- data/rbi/workos/create_m2m_application.rbi +48 -0
- data/rbi/workos/create_magic_code_and_return.rbi +30 -0
- data/rbi/workos/create_oauth_application.rbi +66 -0
- data/rbi/workos/create_organization_api_key.rbi +30 -0
- data/rbi/workos/create_organization_domain.rbi +30 -0
- data/rbi/workos/create_organization_role.rbi +42 -0
- data/rbi/workos/create_password_reset.rbi +30 -0
- data/rbi/workos/create_password_reset_token.rbi +24 -0
- data/rbi/workos/create_redirect_uri.rbi +24 -0
- data/rbi/workos/create_role.rbi +42 -0
- data/rbi/workos/create_user.rbi +72 -0
- data/rbi/workos/create_user_invite_options.rbi +54 -0
- data/rbi/workos/create_user_organization_membership.rbi +42 -0
- data/rbi/workos/create_webhook_endpoint.rbi +30 -0
- data/rbi/workos/data_integration_access_token_response.rbi +36 -0
- data/rbi/workos/data_integration_access_token_response_access_token.rbi +48 -0
- data/rbi/workos/data_integration_authorize_url_response.rbi +24 -0
- data/rbi/workos/data_integrations_get_data_integration_authorize_url_request.rbi +36 -0
- data/rbi/workos/data_integrations_get_user_token_request.rbi +30 -0
- data/rbi/workos/data_integrations_list_response.rbi +30 -0
- data/rbi/workos/data_integrations_list_response_data.rbi +90 -0
- data/rbi/workos/data_integrations_list_response_data_connected_account.rbi +72 -0
- data/rbi/workos/device_authorization_response.rbi +54 -0
- data/rbi/workos/device_code_session_authenticate_request.rbi +54 -0
- data/rbi/workos/directory.rbi +84 -0
- data/rbi/workos/directory_group.rbi +72 -0
- data/rbi/workos/directory_metadata.rbi +30 -0
- data/rbi/workos/directory_metadata_user.rbi +30 -0
- data/rbi/workos/directory_sync.rbi +85 -0
- data/rbi/workos/directory_user.rbi +126 -0
- data/rbi/workos/directory_user_email.rbi +36 -0
- data/rbi/workos/directory_user_with_groups.rbi +132 -0
- data/rbi/workos/directory_user_with_groups_email.rbi +36 -0
- data/rbi/workos/domain_verification_intent_options.rbi +24 -0
- data/rbi/workos/dsync_activated.rbi +54 -0
- data/rbi/workos/dsync_activated_data.rbi +78 -0
- data/rbi/workos/dsync_activated_data_domain.rbi +36 -0
- data/rbi/workos/dsync_deactivated.rbi +54 -0
- data/rbi/workos/dsync_deactivated_data.rbi +78 -0
- data/rbi/workos/dsync_deactivated_data_domain.rbi +36 -0
- data/rbi/workos/dsync_deleted.rbi +54 -0
- data/rbi/workos/dsync_deleted_data.rbi +66 -0
- data/rbi/workos/dsync_group_created.rbi +54 -0
- data/rbi/workos/dsync_group_deleted.rbi +54 -0
- data/rbi/workos/dsync_group_updated.rbi +54 -0
- data/rbi/workos/dsync_group_updated_data.rbi +78 -0
- data/rbi/workos/dsync_group_user_added.rbi +54 -0
- data/rbi/workos/dsync_group_user_added_data.rbi +36 -0
- data/rbi/workos/dsync_group_user_removed.rbi +54 -0
- data/rbi/workos/dsync_group_user_removed_data.rbi +36 -0
- data/rbi/workos/dsync_user_created.rbi +54 -0
- data/rbi/workos/dsync_user_deleted.rbi +54 -0
- data/rbi/workos/dsync_user_updated.rbi +54 -0
- data/rbi/workos/dsync_user_updated_data.rbi +132 -0
- data/rbi/workos/dsync_user_updated_data_email.rbi +36 -0
- data/rbi/workos/email_change.rbi +48 -0
- data/rbi/workos/email_change_confirmation.rbi +30 -0
- data/rbi/workos/email_change_confirmation_user.rbi +96 -0
- data/rbi/workos/email_verification.rbi +66 -0
- data/rbi/workos/email_verification_code_session_authenticate_request.rbi +66 -0
- data/rbi/workos/email_verification_created.rbi +54 -0
- data/rbi/workos/email_verification_created_data.rbi +60 -0
- data/rbi/workos/encryptors/aes_gcm.rbi +19 -0
- data/rbi/workos/enroll_user_authentication_factor.rbi +42 -0
- data/rbi/workos/errors.rbi +43 -0
- data/rbi/workos/event_context.rbi +54 -0
- data/rbi/workos/event_context_actor.rbi +36 -0
- data/rbi/workos/event_context_google_analytics_session.rbi +36 -0
- data/rbi/workos/event_list_list_metadata.rbi +24 -0
- data/rbi/workos/event_schema.rbi +54 -0
- data/rbi/workos/events.rbi +28 -0
- data/rbi/workos/external_auth_complete_response.rbi +24 -0
- data/rbi/workos/feature_flag.rbi +84 -0
- data/rbi/workos/feature_flag_owner.rbi +36 -0
- data/rbi/workos/feature_flags.rbi +90 -0
- data/rbi/workos/flag.rbi +84 -0
- data/rbi/workos/flag_created.rbi +54 -0
- data/rbi/workos/flag_created_context.rbi +30 -0
- data/rbi/workos/flag_created_context_actor.rbi +36 -0
- data/rbi/workos/flag_created_data.rbi +90 -0
- data/rbi/workos/flag_created_data_owner.rbi +36 -0
- data/rbi/workos/flag_deleted.rbi +54 -0
- data/rbi/workos/flag_deleted_context.rbi +30 -0
- data/rbi/workos/flag_deleted_context_actor.rbi +36 -0
- data/rbi/workos/flag_deleted_data.rbi +90 -0
- data/rbi/workos/flag_deleted_data_owner.rbi +36 -0
- data/rbi/workos/flag_owner.rbi +36 -0
- data/rbi/workos/flag_rule_updated.rbi +54 -0
- data/rbi/workos/flag_rule_updated_context.rbi +48 -0
- data/rbi/workos/flag_rule_updated_context_actor.rbi +36 -0
- data/rbi/workos/flag_rule_updated_context_configured_target.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_configured_target_organization.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_configured_target_user.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_previous_attribute.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_previous_attribute_context.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_previous_attribute_context_configured_target.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_previous_attribute_context_configured_target_organization.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_previous_attribute_context_configured_target_user.rbi +30 -0
- data/rbi/workos/flag_rule_updated_context_previous_attribute_data.rbi +30 -0
- data/rbi/workos/flag_rule_updated_data.rbi +90 -0
- data/rbi/workos/flag_rule_updated_data_owner.rbi +36 -0
- data/rbi/workos/flag_updated.rbi +54 -0
- data/rbi/workos/flag_updated_context.rbi +36 -0
- data/rbi/workos/flag_updated_context_actor.rbi +36 -0
- data/rbi/workos/flag_updated_context_previous_attribute.rbi +24 -0
- data/rbi/workos/flag_updated_context_previous_attribute_data.rbi +48 -0
- data/rbi/workos/flag_updated_data.rbi +90 -0
- data/rbi/workos/flag_updated_data_owner.rbi +36 -0
- data/rbi/workos/generate_link.rbi +54 -0
- data/rbi/workos/group.rbi +60 -0
- data/rbi/workos/group_created.rbi +54 -0
- data/rbi/workos/group_deleted.rbi +54 -0
- data/rbi/workos/group_member_added.rbi +54 -0
- data/rbi/workos/group_member_added_data.rbi +30 -0
- data/rbi/workos/group_member_removed.rbi +54 -0
- data/rbi/workos/group_member_removed_data.rbi +30 -0
- data/rbi/workos/group_updated.rbi +54 -0
- data/rbi/workos/groups.rbi +97 -0
- data/rbi/workos/hash_provider.rbi +18 -0
- data/rbi/workos/intent_options.rbi +30 -0
- data/rbi/workos/invitation.rbi +108 -0
- data/rbi/workos/invitation_accepted.rbi +54 -0
- data/rbi/workos/invitation_accepted_data.rbi +96 -0
- data/rbi/workos/invitation_created.rbi +54 -0
- data/rbi/workos/invitation_created_data.rbi +96 -0
- data/rbi/workos/invitation_resent.rbi +54 -0
- data/rbi/workos/invitation_resent_data.rbi +96 -0
- data/rbi/workos/invitation_revoked.rbi +54 -0
- data/rbi/workos/invitation_revoked_data.rbi +96 -0
- data/rbi/workos/jwks_response.rbi +24 -0
- data/rbi/workos/jwks_response_keys.rbi +66 -0
- data/rbi/workos/jwt_template_response.rbi +42 -0
- data/rbi/workos/magic_auth.rbi +66 -0
- data/rbi/workos/magic_auth_code_session_authenticate_request.rbi +72 -0
- data/rbi/workos/magic_auth_created.rbi +54 -0
- data/rbi/workos/magic_auth_created_data.rbi +60 -0
- data/rbi/workos/mfa_totp_session_authenticate_request.rbi +72 -0
- data/rbi/workos/multi_factor_auth.rbi +83 -0
- data/rbi/workos/new_connect_application_secret.rbi +60 -0
- data/rbi/workos/organization.rbi +78 -0
- data/rbi/workos/organization_created.rbi +54 -0
- data/rbi/workos/organization_created_data.rbi +72 -0
- data/rbi/workos/organization_created_data_domain.rbi +78 -0
- data/rbi/workos/organization_deleted.rbi +54 -0
- data/rbi/workos/organization_deleted_data.rbi +72 -0
- data/rbi/workos/organization_deleted_data_domain.rbi +78 -0
- data/rbi/workos/organization_domain.rbi +78 -0
- data/rbi/workos/organization_domain_created.rbi +54 -0
- data/rbi/workos/organization_domain_created_data.rbi +78 -0
- data/rbi/workos/organization_domain_data.rbi +30 -0
- data/rbi/workos/organization_domain_deleted.rbi +54 -0
- data/rbi/workos/organization_domain_deleted_data.rbi +78 -0
- data/rbi/workos/organization_domain_stand_alone.rbi +78 -0
- data/rbi/workos/organization_domain_updated.rbi +54 -0
- data/rbi/workos/organization_domain_updated_data.rbi +78 -0
- data/rbi/workos/organization_domain_verification_failed.rbi +54 -0
- data/rbi/workos/organization_domain_verification_failed_data.rbi +30 -0
- data/rbi/workos/organization_domain_verification_failed_data_organization_domain.rbi +78 -0
- data/rbi/workos/organization_domain_verified.rbi +54 -0
- data/rbi/workos/organization_domain_verified_data.rbi +78 -0
- data/rbi/workos/organization_domains.rbi +46 -0
- data/rbi/workos/organization_input.rbi +54 -0
- data/rbi/workos/organization_membership.rbi +84 -0
- data/rbi/workos/organization_membership_created.rbi +54 -0
- data/rbi/workos/organization_membership_created_data.rbi +84 -0
- data/rbi/workos/organization_membership_deleted.rbi +54 -0
- data/rbi/workos/organization_membership_deleted_data.rbi +84 -0
- data/rbi/workos/organization_membership_updated.rbi +54 -0
- data/rbi/workos/organization_membership_updated_data.rbi +84 -0
- data/rbi/workos/organization_role_created.rbi +54 -0
- data/rbi/workos/organization_role_created_data.rbi +72 -0
- data/rbi/workos/organization_role_deleted.rbi +54 -0
- data/rbi/workos/organization_role_deleted_data.rbi +72 -0
- data/rbi/workos/organization_role_updated.rbi +54 -0
- data/rbi/workos/organization_role_updated_data.rbi +72 -0
- data/rbi/workos/organization_selection_session_authenticate_request.rbi +66 -0
- data/rbi/workos/organization_updated.rbi +54 -0
- data/rbi/workos/organization_updated_data.rbi +72 -0
- data/rbi/workos/organization_updated_data_domain.rbi +78 -0
- data/rbi/workos/organizations.rbi +86 -0
- data/rbi/workos/password_reset.rbi +66 -0
- data/rbi/workos/password_reset_created.rbi +54 -0
- data/rbi/workos/password_reset_created_data.rbi +54 -0
- data/rbi/workos/password_reset_succeeded.rbi +54 -0
- data/rbi/workos/password_reset_succeeded_data.rbi +54 -0
- data/rbi/workos/password_session_authenticate_request.rbi +72 -0
- data/rbi/workos/passwordless.rbi +47 -0
- data/rbi/workos/permission.rbi +72 -0
- data/rbi/workos/permission_created.rbi +54 -0
- data/rbi/workos/permission_created_data.rbi +66 -0
- data/rbi/workos/permission_deleted.rbi +54 -0
- data/rbi/workos/permission_deleted_data.rbi +66 -0
- data/rbi/workos/permission_updated.rbi +54 -0
- data/rbi/workos/permission_updated_data.rbi +66 -0
- data/rbi/workos/pipes.rbi +63 -0
- data/rbi/workos/portal_link_response.rbi +24 -0
- data/rbi/workos/profile.rbi +102 -0
- data/rbi/workos/public_client.rbi +12 -0
- data/rbi/workos/radar.rbi +57 -0
- data/rbi/workos/radar_list_entry_already_present_response.rbi +24 -0
- data/rbi/workos/radar_standalone_assess_request.rbi +60 -0
- data/rbi/workos/radar_standalone_delete_radar_list_entry_request.rbi +24 -0
- data/rbi/workos/radar_standalone_response.rbi +48 -0
- data/rbi/workos/radar_standalone_update_radar_attempt_request.rbi +30 -0
- data/rbi/workos/radar_standalone_update_radar_list_request.rbi +24 -0
- data/rbi/workos/redirect_uri.rbi +54 -0
- data/rbi/workos/redirect_uri_input.rbi +30 -0
- data/rbi/workos/refresh_token_session_authenticate_request.rbi +66 -0
- data/rbi/workos/remove_role.rbi +42 -0
- data/rbi/workos/resend_user_invite_options.rbi +24 -0
- data/rbi/workos/reset_password_response.rbi +24 -0
- data/rbi/workos/revoke_session.rbi +30 -0
- data/rbi/workos/role.rbi +78 -0
- data/rbi/workos/role_assignment.rbi +54 -0
- data/rbi/workos/role_assignment_resource.rbi +36 -0
- data/rbi/workos/role_created.rbi +54 -0
- data/rbi/workos/role_created_data.rbi +54 -0
- data/rbi/workos/role_deleted.rbi +54 -0
- data/rbi/workos/role_deleted_data.rbi +54 -0
- data/rbi/workos/role_list.rbi +30 -0
- data/rbi/workos/role_updated.rbi +54 -0
- data/rbi/workos/role_updated_data.rbi +54 -0
- data/rbi/workos/send_email_change.rbi +24 -0
- data/rbi/workos/send_verification_email_response.rbi +24 -0
- data/rbi/workos/session.rbi +43 -0
- data/rbi/workos/session_created.rbi +54 -0
- data/rbi/workos/session_created_data.rbi +96 -0
- data/rbi/workos/session_created_data_impersonator.rbi +30 -0
- data/rbi/workos/session_manager.rbi +154 -0
- data/rbi/workos/session_revoked.rbi +54 -0
- data/rbi/workos/session_revoked_data.rbi +96 -0
- data/rbi/workos/session_revoked_data_impersonator.rbi +30 -0
- data/rbi/workos/set_role_permissions.rbi +24 -0
- data/rbi/workos/slim_role.rbi +24 -0
- data/rbi/workos/sso.rbi +67 -0
- data/rbi/workos/sso_authorize_url_response.rbi +24 -0
- data/rbi/workos/sso_device_authorization_request.rbi +24 -0
- data/rbi/workos/sso_intent_options.rbi +30 -0
- data/rbi/workos/sso_logout_authorize_request.rbi +24 -0
- data/rbi/workos/sso_logout_authorize_response.rbi +30 -0
- data/rbi/workos/sso_token_response.rbi +48 -0
- data/rbi/workos/sso_token_response_oauth_token.rbi +48 -0
- data/rbi/workos/token_query.rbi +42 -0
- data/rbi/workos/types/api_response.rbi +29 -0
- data/rbi/workos/types/base_model.rbi +22 -0
- data/rbi/workos/types/list_struct.rbi +89 -0
- data/rbi/workos/types/request_options.rbi +12 -0
- data/rbi/workos/update_audit_logs_retention.rbi +24 -0
- data/rbi/workos/update_authorization_permission.rbi +30 -0
- data/rbi/workos/update_authorization_resource.rbi +48 -0
- data/rbi/workos/update_group.rbi +30 -0
- data/rbi/workos/update_jwt_template.rbi +24 -0
- data/rbi/workos/update_oauth_application.rbi +42 -0
- data/rbi/workos/update_organization.rbi +60 -0
- data/rbi/workos/update_organization_role.rbi +30 -0
- data/rbi/workos/update_role.rbi +30 -0
- data/rbi/workos/update_user.rbi +78 -0
- data/rbi/workos/update_user_organization_membership.rbi +30 -0
- data/rbi/workos/update_webhook_endpoint.rbi +36 -0
- data/rbi/workos/user.rbi +96 -0
- data/rbi/workos/user_authentication_factor_enroll_response.rbi +30 -0
- data/rbi/workos/user_consent_option.rbi +42 -0
- data/rbi/workos/user_consent_option_choice.rbi +30 -0
- data/rbi/workos/user_created.rbi +54 -0
- data/rbi/workos/user_deleted.rbi +54 -0
- data/rbi/workos/user_identities_get_item.rbi +36 -0
- data/rbi/workos/user_invite.rbi +108 -0
- data/rbi/workos/user_management.rbi +410 -0
- data/rbi/workos/user_management_login_request.rbi +36 -0
- data/rbi/workos/user_management_organization_membership_groups.rbi +25 -0
- data/rbi/workos/user_object.rbi +48 -0
- data/rbi/workos/user_organization_membership.rbi +84 -0
- data/rbi/workos/user_organization_membership_base_list_data.rbi +78 -0
- data/rbi/workos/user_sessions_impersonator.rbi +30 -0
- data/rbi/workos/user_sessions_list_item.rbi +96 -0
- data/rbi/workos/user_updated.rbi +54 -0
- data/rbi/workos/util.rbi +12 -0
- data/rbi/workos/validate_api_key.rbi +24 -0
- data/rbi/workos/vault.rbi +137 -0
- data/rbi/workos/vault_byok_key_verification_completed.rbi +54 -0
- data/rbi/workos/vault_byok_key_verification_completed_data.rbi +36 -0
- data/rbi/workos/vault_data_created.rbi +54 -0
- data/rbi/workos/vault_data_created_data.rbi +54 -0
- data/rbi/workos/vault_data_deleted.rbi +54 -0
- data/rbi/workos/vault_data_deleted_data.rbi +42 -0
- data/rbi/workos/vault_data_read.rbi +54 -0
- data/rbi/workos/vault_data_read_data.rbi +48 -0
- data/rbi/workos/vault_data_updated.rbi +54 -0
- data/rbi/workos/vault_data_updated_data.rbi +54 -0
- data/rbi/workos/vault_dek_decrypted.rbi +54 -0
- data/rbi/workos/vault_dek_decrypted_data.rbi +42 -0
- data/rbi/workos/vault_dek_read.rbi +54 -0
- data/rbi/workos/vault_dek_read_data.rbi +48 -0
- data/rbi/workos/vault_kek_created.rbi +54 -0
- data/rbi/workos/vault_kek_created_data.rbi +48 -0
- data/rbi/workos/vault_metadata_read.rbi +54 -0
- data/rbi/workos/vault_metadata_read_data.rbi +42 -0
- data/rbi/workos/vault_names_listed.rbi +54 -0
- data/rbi/workos/vault_names_listed_data.rbi +36 -0
- data/rbi/workos/verify_email_address.rbi +24 -0
- data/rbi/workos/verify_email_response.rbi +24 -0
- data/rbi/workos/waitlist_user.rbi +60 -0
- data/rbi/workos/waitlist_user_approved.rbi +54 -0
- data/rbi/workos/waitlist_user_created.rbi +54 -0
- data/rbi/workos/waitlist_user_denied.rbi +54 -0
- data/rbi/workos/webhook_endpoint.rbi +65 -0
- data/rbi/workos/webhook_endpoint_json.rbi +66 -0
- data/rbi/workos/webhooks.rbi +52 -0
- data/rbi/workos/widget_session_token.rbi +36 -0
- data/rbi/workos/widget_session_token_response.rbi +24 -0
- data/rbi/workos/widgets.rbi +23 -0
- data/renovate.json +34 -0
- data/script/ci +16 -0
- data/test/test_helper.rb +20 -0
- data/test/workos/test_actions.rb +78 -0
- data/test/workos/test_admin_portal.rb +33 -0
- data/test/workos/test_api_keys.rb +57 -0
- data/test/workos/test_audit_logs.rb +89 -0
- data/test/workos/test_authkit_helpers.rb +109 -0
- data/test/workos/test_authorization.rb +321 -0
- data/test/workos/test_base_client.rb +173 -0
- data/test/workos/test_connect.rb +127 -0
- data/test/workos/test_directory_sync.rb +81 -0
- data/test/workos/test_encryptors_aes_gcm.rb +54 -0
- data/test/workos/test_events.rb +33 -0
- data/test/workos/test_feature_flags.rb +89 -0
- data/test/workos/test_groups.rb +89 -0
- data/test/workos/test_list_struct.rb +39 -0
- data/test/workos/test_model_round_trip.rb +7142 -0
- data/test/workos/test_multi_factor_auth.rb +81 -0
- data/test/workos/test_organization_domains.rb +57 -0
- data/test/workos/test_organizations.rb +81 -0
- data/test/workos/test_passwordless.rb +59 -0
- data/test/workos/test_pipes.rb +65 -0
- data/test/workos/test_pkce.rb +40 -0
- data/test/workos/test_public_client.rb +38 -0
- data/test/workos/test_radar.rb +57 -0
- data/test/workos/test_session.rb +261 -0
- data/test/workos/test_sso.rb +73 -0
- data/test/workos/test_sso_helpers.rb +80 -0
- data/test/workos/test_sso_runtime.rb +45 -0
- data/test/workos/test_user_management.rb +473 -0
- data/test/workos/test_user_management_organization_membership_groups.rb +33 -0
- data/test/workos/test_vault.rb +151 -0
- data/test/workos/test_webhook_verify.rb +84 -0
- data/test/workos/test_webhooks.rb +57 -0
- data/test/workos/test_widgets.rb +33 -0
- data/workos.gemspec +22 -21
- metadata +1117 -508
- data/.rspec +0 -1
- data/.rubocop.yml +0 -34
- data/.rubocop_todo.yml +0 -94
- data/lib/workos/audit_log_export.rb +0 -32
- data/lib/workos/authentication_factor_and_challenge.rb +0 -28
- data/lib/workos/authentication_response.rb +0 -62
- data/lib/workos/cache.rb +0 -94
- data/lib/workos/challenge.rb +0 -36
- data/lib/workos/connection.rb +0 -42
- data/lib/workos/deprecated_hash_wrapper.rb +0 -76
- data/lib/workos/deprecation.rb +0 -16
- data/lib/workos/directory.rb +0 -38
- data/lib/workos/directory_group.rb +0 -41
- data/lib/workos/directory_user.rb +0 -93
- data/lib/workos/email_verification.rb +0 -37
- data/lib/workos/event.rb +0 -30
- data/lib/workos/factor.rb +0 -35
- data/lib/workos/feature_flag.rb +0 -34
- data/lib/workos/impersonator.rb +0 -23
- data/lib/workos/invitation.rb +0 -49
- data/lib/workos/magic_auth.rb +0 -37
- data/lib/workos/mfa.rb +0 -136
- data/lib/workos/oauth_tokens.rb +0 -29
- data/lib/workos/organization.rb +0 -47
- data/lib/workos/organization_membership.rb +0 -43
- data/lib/workos/password_reset.rb +0 -37
- data/lib/workos/portal.rb +0 -54
- data/lib/workos/profile.rb +0 -57
- data/lib/workos/profile_and_token.rb +0 -26
- data/lib/workos/refresh_authentication_response.rb +0 -51
- data/lib/workos/role.rb +0 -38
- data/lib/workos/types/intent.rb +0 -18
- data/lib/workos/types/passwordless_session_struct.rb +0 -18
- data/lib/workos/types/provider.rb +0 -16
- data/lib/workos/types/widget_scope.rb +0 -15
- data/lib/workos/types.rb +0 -12
- data/lib/workos/user.rb +0 -45
- data/lib/workos/user_and_token.rb +0 -26
- data/lib/workos/user_management/session.rb +0 -57
- data/lib/workos/user_response.rb +0 -22
- data/lib/workos/verify_challenge.rb +0 -25
- data/lib/workos/webhook.rb +0 -30
- data/spec/lib/workos/audit_logs_spec.rb +0 -150
- data/spec/lib/workos/cache_spec.rb +0 -94
- data/spec/lib/workos/client.rb +0 -67
- data/spec/lib/workos/configuration_spec.rb +0 -60
- data/spec/lib/workos/directory_sync_spec.rb +0 -483
- data/spec/lib/workos/directory_user_spec.rb +0 -61
- data/spec/lib/workos/encryptors/aes_gcm_spec.rb +0 -41
- data/spec/lib/workos/event_spec.rb +0 -109
- data/spec/lib/workos/mfa_spec.rb +0 -285
- data/spec/lib/workos/organizations_spec.rb +0 -569
- data/spec/lib/workos/passwordless_spec.rb +0 -76
- data/spec/lib/workos/portal_spec.rb +0 -116
- data/spec/lib/workos/role_spec.rb +0 -142
- data/spec/lib/workos/session_spec.rb +0 -475
- data/spec/lib/workos/sso_spec.rb +0 -756
- data/spec/lib/workos/user_management_spec.rb +0 -1999
- data/spec/lib/workos/webhooks_spec.rb +0 -235
- data/spec/lib/workos/widgets_spec.rb +0 -73
- data/spec/spec_helper.rb +0 -53
- data/spec/support/fixtures/vcr_cassettes/audit_logs/create_event.yml +0 -59
- data/spec/support/fixtures/vcr_cassettes/audit_logs/create_event_custom_idempotency_key.yml +0 -60
- data/spec/support/fixtures/vcr_cassettes/audit_logs/create_event_invalid.yml +0 -59
- data/spec/support/fixtures/vcr_cassettes/audit_logs/create_export.yml +0 -76
- data/spec/support/fixtures/vcr_cassettes/audit_logs/create_export_with_filters.yml +0 -77
- data/spec/support/fixtures/vcr_cassettes/audit_logs/get_export.yml +0 -73
- data/spec/support/fixtures/vcr_cassettes/audit_trail/create_event.yml +0 -65
- data/spec/support/fixtures/vcr_cassettes/audit_trail/create_event_custom_idempotency_key.yml +0 -67
- data/spec/support/fixtures/vcr_cassettes/audit_trail/create_event_invalid.yml +0 -68
- data/spec/support/fixtures/vcr_cassettes/audit_trail/create_events_duplicate_idempotency_key_and_payload.yml +0 -131
- data/spec/support/fixtures/vcr_cassettes/audit_trail/create_events_duplicate_idempotency_key_different_payload.yml +0 -134
- data/spec/support/fixtures/vcr_cassettes/audit_trail/get_events.yml +0 -61
- data/spec/support/fixtures/vcr_cassettes/base/execute_request_unauthenticated.yml +0 -66
- data/spec/support/fixtures/vcr_cassettes/directory_sync/delete_directory.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/directory_sync/get_directory_with_invalid_id.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/directory_sync/get_directory_with_valid_id.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/directory_sync/get_group.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/directory_sync/get_group_with_invalid_id.yml +0 -62
- data/spec/support/fixtures/vcr_cassettes/directory_sync/get_user.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/directory_sync/get_user_with_invalid_id.yml +0 -62
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_after.yml +0 -87
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_before.yml +0 -89
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_domain.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_limit.yml +0 -85
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_no_options.yml +0 -93
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_directories/with_search.yml +0 -85
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_after.yml +0 -90
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_before.yml +0 -90
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_directory.yml +0 -90
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_limit.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_no_options.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_groups/with_user.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_after.yml +0 -186
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_before.yml +0 -88
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_directory.yml +0 -194
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_group.yml +0 -186
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_limit.yml +0 -189
- data/spec/support/fixtures/vcr_cassettes/directory_sync/list_users/with_no_options.yml +0 -75
- data/spec/support/fixtures/vcr_cassettes/events/list_events_with_after.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/events/list_events_with_event.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/events/list_events_with_no_options.yml +0 -81
- data/spec/support/fixtures/vcr_cassettes/events/list_events_with_organization_id.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/events/list_events_with_range.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/mfa/challenge_factor_generic_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/challenge_factor_sms_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/challenge_factor_totp_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/delete_factor.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/mfa/enroll_factor_generic_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/enroll_factor_sms_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/enroll_factor_totp_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/get_factor_invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/get_factor_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/verify_challenge_generic_expired.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/mfa/verify_challenge_generic_invalid.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/mfa/verify_challenge_generic_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/mfa/verify_challenge_generic_valid_is_false.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/organization/create.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/organization/create_invalid.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/organization/create_with_domain_data.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/organization/create_with_domains.yml +0 -81
- data/spec/support/fixtures/vcr_cassettes/organization/create_with_duplicate_idempotency_key_and_different_payload.yml +0 -155
- data/spec/support/fixtures/vcr_cassettes/organization/create_with_duplicate_idempotency_key_and_payload.yml +0 -154
- data/spec/support/fixtures/vcr_cassettes/organization/create_with_external_id.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/organization/create_with_idempotency_key.yml +0 -79
- data/spec/support/fixtures/vcr_cassettes/organization/create_without_domains.yml +0 -86
- data/spec/support/fixtures/vcr_cassettes/organization/delete.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/organization/delete_invalid.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/organization/get.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/organization/get_invalid.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/organization/list.yml +0 -87
- data/spec/support/fixtures/vcr_cassettes/organization/list_organization_feature_flags.yml +0 -78
- data/spec/support/fixtures/vcr_cassettes/organization/list_organization_roles.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/organization/update.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/organization/update_with_external_id.yml +0 -78
- data/spec/support/fixtures/vcr_cassettes/organization/update_with_external_id_null.yml +0 -78
- data/spec/support/fixtures/vcr_cassettes/organization/update_with_stripe_customer_id.yml +0 -78
- data/spec/support/fixtures/vcr_cassettes/organization/update_without_name.yml +0 -85
- data/spec/support/fixtures/vcr_cassettes/passwordless/create_session.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/passwordless/create_session_invalid.yml +0 -73
- data/spec/support/fixtures/vcr_cassettes/passwordless/send_session.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/passwordless/send_session_invalid.yml +0 -73
- data/spec/support/fixtures/vcr_cassettes/portal/generate_link_audit_logs.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/portal/generate_link_certificate_renewal.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/portal/generate_link_domain_verification.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/portal/generate_link_dsync.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/portal/generate_link_invalid.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/portal/generate_link_sso.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/sso/delete_connection_with_invalid_id.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/sso/delete_connection_with_valid_id.yml +0 -70
- data/spec/support/fixtures/vcr_cassettes/sso/get_connection_with_invalid_id.yml +0 -72
- data/spec/support/fixtures/vcr_cassettes/sso/get_connection_with_valid_id.yml +0 -86
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_after.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_before.yml +0 -86
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_connection_type.yml +0 -90
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_domain.yml +0 -86
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_limit.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_no_options.yml +0 -89
- data/spec/support/fixtures/vcr_cassettes/sso/list_connections/with_organization_id.yml +0 -86
- data/spec/support/fixtures/vcr_cassettes/sso/profile.yml +0 -74
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_code/invalid.yml +0 -84
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_code/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_code/valid_with_impersonator.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_code/valid_with_oauth_tokens.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_email_verification/invalid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_email_verification/valid.yml +0 -81
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_magic_auth/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_magic_auth/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_organization_selection/invalid.yml +0 -81
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_organization_selection/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_password/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_password/unverified.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_password/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_refresh_code/invalid.yml +0 -81
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_refresh_token/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_totp/invalid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/authenticate_with_totp/valid.yml +0 -81
- data/spec/support/fixtures/vcr_cassettes/user_management/confirm_password_reset/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/confirm_password_reset/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/create_magic_auth/valid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/create_organization_membership/invalid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/create_organization_membership/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/create_organization_membership/valid_multiple_roles.yml +0 -76
- data/spec/support/fixtures/vcr_cassettes/user_management/create_password_reset/valid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/create_user_invalid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/create_user_valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/create_user_with_external_id.yml +0 -77
- data/spec/support/fixtures/vcr_cassettes/user_management/deactivate_organization_membership.yml +0 -64
- data/spec/support/fixtures/vcr_cassettes/user_management/delete_organization_membership/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/delete_organization_membership/valid.yml +0 -78
- data/spec/support/fixtures/vcr_cassettes/user_management/delete_user/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/delete_user/valid.yml +0 -78
- data/spec/support/fixtures/vcr_cassettes/user_management/enroll_auth_factor/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/enroll_auth_factor/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/find_invitation_by_token/invalid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/find_invitation_by_token/valid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_email_verification/invalid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_email_verification/valid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_invitation/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/get_invitation/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/get_magic_auth/invalid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_magic_auth/valid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_organization_membership.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/get_password_reset/invalid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_password_reset/valid.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/get_user.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/list_auth_factors/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/list_auth_factors/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/list_invitations/with_after.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/list_invitations/with_before.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/list_invitations/with_limit.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/list_invitations/with_no_options.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/list_invitations/with_organization_id.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/list_organization_memberships/no_options.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/list_organization_memberships/with_options.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/list_organization_memberships/with_statuses_option.yml +0 -64
- data/spec/support/fixtures/vcr_cassettes/user_management/list_sessions/valid.yml +0 -38
- data/spec/support/fixtures/vcr_cassettes/user_management/list_users/no_options.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/list_users/with_options.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/reactivate_organization_membership.yml +0 -64
- data/spec/support/fixtures/vcr_cassettes/user_management/resend_invitation/accepted.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/resend_invitation/expired.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/resend_invitation/invalid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/resend_invitation/revoked.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/resend_invitation/valid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/reset_password/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/reset_password/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/revoke_invitation/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/revoke_invitation/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/revoke_session/not_found.yml +0 -80
- data/spec/support/fixtures/vcr_cassettes/user_management/revoke_session/valid.yml +0 -76
- data/spec/support/fixtures/vcr_cassettes/user_management/send_invitation/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/send_invitation/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/send_magic_auth_code/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/send_password_reset_email/invalid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/send_password_reset_email/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/send_verification_email/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/send_verification_email/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/update_organization_membership/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/update_organization_membership/valid.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/update_organization_membership/valid_multiple_roles.yml +0 -76
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user/email.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user/locale.yml +0 -76
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user_external_id_null.yml +0 -77
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user_password/invalid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/update_user_password/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/verify_email/invalid_code.yml +0 -83
- data/spec/support/fixtures/vcr_cassettes/user_management/verify_email/invalid_magic_auth_challenge.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/user_management/verify_email/valid.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/widgets/get_token.yml +0 -82
- data/spec/support/fixtures/vcr_cassettes/widgets/get_token_invalid_organization_id.yml +0 -74
- data/spec/support/fixtures/vcr_cassettes/widgets/get_token_invalid_user_id.yml +0 -74
- data/spec/support/profile.txt +0 -1
- data/spec/support/shared_examples/client.rb +0 -29
- data/spec/support/webhook_payload.txt +0 -1
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# @oagen-ignore-file — hand-maintained runtime
|
|
4
|
+
require "json"
|
|
5
|
+
require "logger"
|
|
6
|
+
require "net/http"
|
|
7
|
+
require "securerandom"
|
|
8
|
+
require "uri"
|
|
9
|
+
require "workos/errors"
|
|
10
|
+
|
|
11
|
+
module WorkOS
|
|
12
|
+
# Instance-scoped HTTP runtime that implements request execution,
|
|
13
|
+
# retry policy with exponential backoff + jitter, error translation,
|
|
14
|
+
# and per-request option overrides.
|
|
15
|
+
#
|
|
16
|
+
# @example Create a client with custom settings
|
|
17
|
+
# client = WorkOS::Client.new(
|
|
18
|
+
# api_key: "sk_...",
|
|
19
|
+
# client_id: "client_...",
|
|
20
|
+
# timeout: 60,
|
|
21
|
+
# max_retries: 3,
|
|
22
|
+
# logger: Logger.new($stdout),
|
|
23
|
+
# log_level: :info
|
|
24
|
+
# )
|
|
25
|
+
#
|
|
26
|
+
# @example Shut down connections before forking
|
|
27
|
+
# client.shutdown
|
|
28
|
+
class BaseClient
|
|
29
|
+
DEFAULT_BASE_URL = "https://api.workos.com"
|
|
30
|
+
DEFAULT_TIMEOUT = 30
|
|
31
|
+
DEFAULT_MAX_RETRIES = 2
|
|
32
|
+
RETRYABLE_STATUSES = [408, 409, 429, 500, 502, 503, 504].freeze
|
|
33
|
+
MAX_CACHED_CONNECTIONS = 8
|
|
34
|
+
RETRY_BACKOFF_BASE = 0.5
|
|
35
|
+
LOG_SEVERITY = {debug: 0, info: 1, warn: 2, error: 3, unknown: 4}.freeze
|
|
36
|
+
|
|
37
|
+
USER_AGENT = "workos-ruby/#{WorkOS::VERSION} ruby/#{RUBY_VERSION} (#{RUBY_PLATFORM})"
|
|
38
|
+
|
|
39
|
+
attr_reader :api_key, :base_url, :client_id, :timeout, :max_retries, :logger, :log_level
|
|
40
|
+
|
|
41
|
+
def initialize(api_key: nil, base_url: DEFAULT_BASE_URL, client_id: nil,
|
|
42
|
+
timeout: DEFAULT_TIMEOUT, max_retries: DEFAULT_MAX_RETRIES,
|
|
43
|
+
logger: nil, log_level: nil, random: Random.new)
|
|
44
|
+
@api_key = api_key
|
|
45
|
+
@base_url = base_url
|
|
46
|
+
@client_id = client_id
|
|
47
|
+
@timeout = timeout
|
|
48
|
+
@max_retries = max_retries
|
|
49
|
+
@logger = logger
|
|
50
|
+
@log_level = log_level
|
|
51
|
+
@random = random
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
# -- Request builders -------------------------------------------------
|
|
55
|
+
|
|
56
|
+
def get_request(path:, auth: false, params: {}, request_options: nil)
|
|
57
|
+
build_request(Net::HTTP::Get, append_query(path, params),
|
|
58
|
+
auth: auth, request_options: request_options)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def post_request(path:, auth: false, body: {}, params: {}, request_options: nil)
|
|
62
|
+
req = build_request(Net::HTTP::Post, append_query(path, params),
|
|
63
|
+
auth: auth, request_options: request_options)
|
|
64
|
+
req.body = body.nil? ? "" : body.compact.to_json
|
|
65
|
+
req["Content-Type"] = "application/json"
|
|
66
|
+
inject_idempotency_key(req, request_options)
|
|
67
|
+
req
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def put_request(path:, auth: false, body: {}, params: {}, request_options: nil)
|
|
71
|
+
req = build_request(Net::HTTP::Put, append_query(path, params),
|
|
72
|
+
auth: auth, request_options: request_options)
|
|
73
|
+
req.body = body.nil? ? "" : body.compact.to_json
|
|
74
|
+
req["Content-Type"] = "application/json"
|
|
75
|
+
inject_idempotency_key(req, request_options)
|
|
76
|
+
req
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def patch_request(path:, auth: false, body: {}, params: {}, request_options: nil)
|
|
80
|
+
req = build_request(Net::HTTP::Patch, append_query(path, params),
|
|
81
|
+
auth: auth, request_options: request_options)
|
|
82
|
+
req.body = body.nil? ? "" : body.compact.to_json
|
|
83
|
+
req["Content-Type"] = "application/json"
|
|
84
|
+
inject_idempotency_key(req, request_options)
|
|
85
|
+
req
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
def delete_request(path:, auth: false, body: nil, params: {}, request_options: nil)
|
|
89
|
+
req = build_request(Net::HTTP::Delete, append_query(path, params),
|
|
90
|
+
auth: auth, request_options: request_options)
|
|
91
|
+
if body
|
|
92
|
+
req.body = body.compact.to_json
|
|
93
|
+
req["Content-Type"] = "application/json"
|
|
94
|
+
end
|
|
95
|
+
req
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# -- Convenience entry point ------------------------------------------
|
|
99
|
+
|
|
100
|
+
# Unified request helper: builds the verb-specific request and executes
|
|
101
|
+
# it in a single call, removing the need for callers to pass
|
|
102
|
+
# request_options twice.
|
|
103
|
+
def request(method:, path:, auth: true, params: {}, body: nil, request_options: {})
|
|
104
|
+
raise ArgumentError, "unsupported method" unless %i[get post put patch delete].include?(method)
|
|
105
|
+
request_options = (request_options || {}).transform_keys(&:to_sym)
|
|
106
|
+
|
|
107
|
+
req = case method
|
|
108
|
+
when :get
|
|
109
|
+
get_request(path: path, auth: auth, params: params, request_options: request_options)
|
|
110
|
+
when :post
|
|
111
|
+
post_request(path: path, auth: auth, body: body, params: params, request_options: request_options)
|
|
112
|
+
when :put
|
|
113
|
+
put_request(path: path, auth: auth, body: body, params: params, request_options: request_options)
|
|
114
|
+
when :patch
|
|
115
|
+
patch_request(path: path, auth: auth, body: body, params: params, request_options: request_options)
|
|
116
|
+
when :delete
|
|
117
|
+
delete_request(path: path, auth: auth, body: body, params: params, request_options: request_options)
|
|
118
|
+
end
|
|
119
|
+
execute_request(request: req, request_options: request_options)
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# -- Execution --------------------------------------------------------
|
|
123
|
+
|
|
124
|
+
def execute_request(request:, request_options: nil)
|
|
125
|
+
opts = (request_options || {}).transform_keys(&:to_sym)
|
|
126
|
+
base = opts[:base_url] || @base_url
|
|
127
|
+
timeout = opts[:timeout] || @timeout
|
|
128
|
+
retries = opts[:max_retries] || @max_retries
|
|
129
|
+
attempt = 0
|
|
130
|
+
|
|
131
|
+
loop do
|
|
132
|
+
log(:debug, "request start", method: request.method, path: request.path, attempt: attempt + 1)
|
|
133
|
+
http = connection_for(base, timeout)
|
|
134
|
+
response = http.request(request)
|
|
135
|
+
return response if response.is_a?(Net::HTTPSuccess)
|
|
136
|
+
|
|
137
|
+
if attempt < retries && retryable?(response)
|
|
138
|
+
attempt += 1
|
|
139
|
+
inject_retry_idempotency_key(request)
|
|
140
|
+
log(:info, "request retry", method: request.method, path: request.path, attempt: attempt + 1, status: response.code.to_i)
|
|
141
|
+
sleep(retry_delay(response, attempt))
|
|
142
|
+
next
|
|
143
|
+
end
|
|
144
|
+
log(:warn, "request error", method: request.method, path: request.path, status: response.code.to_i, request_id: response["x-request-id"] || response["X-Request-Id"])
|
|
145
|
+
handle_error_response(response)
|
|
146
|
+
rescue Net::OpenTimeout, Net::ReadTimeout,
|
|
147
|
+
Errno::ECONNRESET, Errno::ECONNREFUSED,
|
|
148
|
+
IOError, Errno::EPIPE => e
|
|
149
|
+
evict_connection(base)
|
|
150
|
+
if attempt < retries
|
|
151
|
+
attempt += 1
|
|
152
|
+
inject_retry_idempotency_key(request)
|
|
153
|
+
log(:info, "request retry", method: request.method, path: request.path, attempt: attempt + 1, error: e.class.name)
|
|
154
|
+
sleep(retry_delay(nil, attempt))
|
|
155
|
+
next
|
|
156
|
+
end
|
|
157
|
+
log(:warn, "connection error", method: request.method, path: request.path, error: e.class.name, message: e.message)
|
|
158
|
+
raise WorkOS::APIConnectionError.new(message: e.message)
|
|
159
|
+
end
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# Close all persistent connections cached by this client on the current
|
|
163
|
+
# fiber/thread.
|
|
164
|
+
#
|
|
165
|
+
# Call this before forking (e.g. in a Puma `on_worker_boot` block) to
|
|
166
|
+
# avoid sharing `Net::HTTP` sockets across processes.
|
|
167
|
+
#
|
|
168
|
+
# @return [void]
|
|
169
|
+
def shutdown
|
|
170
|
+
connections = thread_connections.values
|
|
171
|
+
thread_connections.clear
|
|
172
|
+
connections.each { |connection| connection.finish if connection.started? }
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
private
|
|
176
|
+
|
|
177
|
+
def append_query(path, params)
|
|
178
|
+
return path unless params.is_a?(Hash) && !params.empty?
|
|
179
|
+
|
|
180
|
+
query = URI.encode_www_form(params.compact)
|
|
181
|
+
return path if query.empty?
|
|
182
|
+
|
|
183
|
+
path.include?("?") ? "#{path}&#{query}" : "#{path}?#{query}"
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
def connection_for(base_url, timeout)
|
|
187
|
+
uri = URI(base_url)
|
|
188
|
+
key = connection_key(uri, timeout)
|
|
189
|
+
conn = thread_connections[key]
|
|
190
|
+
|
|
191
|
+
if conn&.started?
|
|
192
|
+
conn.read_timeout = timeout
|
|
193
|
+
conn.open_timeout = timeout
|
|
194
|
+
return conn
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
|
198
|
+
http.use_ssl = (uri.scheme == "https")
|
|
199
|
+
http.read_timeout = timeout
|
|
200
|
+
http.open_timeout = timeout
|
|
201
|
+
http.keep_alive_timeout = 30
|
|
202
|
+
http.start
|
|
203
|
+
cache = thread_connections
|
|
204
|
+
cache[key] = http
|
|
205
|
+
evict_lru_connections(cache) if cache.size > MAX_CACHED_CONNECTIONS
|
|
206
|
+
http
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
def evict_connection(base_url)
|
|
210
|
+
uri = URI(base_url)
|
|
211
|
+
keys = thread_connections.keys.select { |key| key.start_with?("#{uri.scheme}:#{uri.host}:#{uri.port}:") }
|
|
212
|
+
keys.each do |key|
|
|
213
|
+
connection = thread_connections.delete(key)
|
|
214
|
+
connection&.finish if connection&.started?
|
|
215
|
+
end
|
|
216
|
+
rescue IOError
|
|
217
|
+
# Already closed, ignore
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
def evict_lru_connections(cache)
|
|
221
|
+
while cache.size > MAX_CACHED_CONNECTIONS
|
|
222
|
+
oldest_key = cache.keys.first
|
|
223
|
+
conn = cache.delete(oldest_key)
|
|
224
|
+
conn&.finish if conn&.started?
|
|
225
|
+
end
|
|
226
|
+
rescue IOError
|
|
227
|
+
# Already closed, ignore
|
|
228
|
+
end
|
|
229
|
+
|
|
230
|
+
def connection_key(uri, timeout)
|
|
231
|
+
"#{uri.scheme}:#{uri.host}:#{uri.port}:#{timeout}"
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
def thread_connections
|
|
235
|
+
Fiber[:workos_connections] ||= {}
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
def build_request(klass, path, auth:, request_options:)
|
|
239
|
+
opts = request_options.is_a?(Hash) ? request_options : {}
|
|
240
|
+
request = klass.new(path)
|
|
241
|
+
if auth
|
|
242
|
+
key = opts[:api_key] || opts["api_key"] || @api_key
|
|
243
|
+
request["Authorization"] = "Bearer #{key}" if key && !key.empty?
|
|
244
|
+
end
|
|
245
|
+
request["User-Agent"] = USER_AGENT
|
|
246
|
+
# Apply user headers before idempotency injection so caller-supplied
|
|
247
|
+
# Idempotency-Key values win.
|
|
248
|
+
apply_extra_headers(request, request_options)
|
|
249
|
+
request
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
def apply_extra_headers(request, request_options)
|
|
253
|
+
return unless request_options.is_a?(Hash)
|
|
254
|
+
|
|
255
|
+
extra = request_options[:extra_headers] || request_options["extra_headers"]
|
|
256
|
+
return unless extra.is_a?(Hash)
|
|
257
|
+
|
|
258
|
+
extra.each { |k, v| request[k.to_s] = v.to_s }
|
|
259
|
+
end
|
|
260
|
+
|
|
261
|
+
def inject_idempotency_key(request, request_options)
|
|
262
|
+
opts = request_options.is_a?(Hash) ? request_options : {}
|
|
263
|
+
key = opts[:idempotency_key] || opts["idempotency_key"]
|
|
264
|
+
return if key.nil? || key.to_s.empty?
|
|
265
|
+
|
|
266
|
+
request["Idempotency-Key"] ||= key
|
|
267
|
+
end
|
|
268
|
+
|
|
269
|
+
def inject_retry_idempotency_key(request)
|
|
270
|
+
return unless %w[POST PUT PATCH].include?(request.method)
|
|
271
|
+
return if request["Idempotency-Key"]
|
|
272
|
+
|
|
273
|
+
request["Idempotency-Key"] = SecureRandom.uuid
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
def log(level, message, details = {})
|
|
277
|
+
sink = @logger
|
|
278
|
+
return unless sink
|
|
279
|
+
return unless loggable?(level)
|
|
280
|
+
|
|
281
|
+
formatter = details.compact.map { |key, value| "#{key}=#{value}" }.join(" ")
|
|
282
|
+
line = formatter.empty? ? message : "#{message} #{formatter}"
|
|
283
|
+
if sink.respond_to?(level)
|
|
284
|
+
sink.public_send(level, line)
|
|
285
|
+
elsif sink.respond_to?(:add)
|
|
286
|
+
sink.add(log_level_to_severity(level), line)
|
|
287
|
+
end
|
|
288
|
+
end
|
|
289
|
+
|
|
290
|
+
def loggable?(level)
|
|
291
|
+
LOG_SEVERITY.fetch(level, LOG_SEVERITY[:unknown]) >= LOG_SEVERITY.fetch(@log_level || :debug, LOG_SEVERITY[:debug])
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
def log_level_to_severity(level)
|
|
295
|
+
case level
|
|
296
|
+
when :debug then ::Logger::DEBUG
|
|
297
|
+
when :info then ::Logger::INFO
|
|
298
|
+
when :warn then ::Logger::WARN
|
|
299
|
+
when :error then ::Logger::ERROR
|
|
300
|
+
else ::Logger::UNKNOWN
|
|
301
|
+
end
|
|
302
|
+
end
|
|
303
|
+
|
|
304
|
+
def retryable?(response)
|
|
305
|
+
RETRYABLE_STATUSES.include?(response.code.to_i)
|
|
306
|
+
end
|
|
307
|
+
|
|
308
|
+
def retry_delay(response, attempt)
|
|
309
|
+
if response
|
|
310
|
+
retry_after = response["Retry-After"]
|
|
311
|
+
return retry_after.to_f if retry_after&.to_f&.positive?
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
base = RETRY_BACKOFF_BASE * (2**(attempt - 1))
|
|
315
|
+
jitter = @random.rand * 0.25 * base
|
|
316
|
+
base + jitter
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
def handle_error_response(response)
|
|
320
|
+
status = response.code.to_i
|
|
321
|
+
body = begin
|
|
322
|
+
JSON.parse(response.body.to_s)
|
|
323
|
+
rescue JSON::ParserError
|
|
324
|
+
{}
|
|
325
|
+
end
|
|
326
|
+
request_id = response["x-request-id"] || response["X-Request-Id"]
|
|
327
|
+
error_args = {
|
|
328
|
+
message: body["message"] || "HTTP #{status}",
|
|
329
|
+
http_status: status,
|
|
330
|
+
request_id: request_id,
|
|
331
|
+
code: body["code"],
|
|
332
|
+
body: body
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
case status
|
|
336
|
+
when 400 then raise WorkOS::InvalidRequestError.new(**error_args)
|
|
337
|
+
when 401 then raise WorkOS::AuthenticationError.new(**error_args)
|
|
338
|
+
when 403 then raise WorkOS::ForbiddenRequestError.new(**error_args)
|
|
339
|
+
when 404 then raise WorkOS::NotFoundError.new(**error_args)
|
|
340
|
+
when 409
|
|
341
|
+
raise WorkOS::IdempotencyError.new(**error_args) if body["code"] == "idempotency_error"
|
|
342
|
+
|
|
343
|
+
raise WorkOS::APIError.new(**error_args)
|
|
344
|
+
when 422 then raise WorkOS::UnprocessableEntityError.new(**error_args)
|
|
345
|
+
when 429 then raise WorkOS::RateLimitExceededError.new(**error_args)
|
|
346
|
+
else raise WorkOS::APIError.new(**error_args)
|
|
347
|
+
end
|
|
348
|
+
end
|
|
349
|
+
end
|
|
350
|
+
end
|
data/lib/workos/client.rb
CHANGED
|
@@ -1,165 +1,108 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
# This file is auto-generated by oagen. Do not edit.
|
|
4
|
+
|
|
3
5
|
module WorkOS
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
def
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
)
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
def
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
error_description: json['error_description'],
|
|
104
|
-
data: json,
|
|
105
|
-
)
|
|
106
|
-
when 401
|
|
107
|
-
raise AuthenticationError.new(
|
|
108
|
-
message: json['message'],
|
|
109
|
-
http_status: http_status,
|
|
110
|
-
request_id: response['x-request-id'],
|
|
111
|
-
)
|
|
112
|
-
when 403
|
|
113
|
-
raise ForbiddenRequestError.new(
|
|
114
|
-
message: json['message'],
|
|
115
|
-
http_status: http_status,
|
|
116
|
-
request_id: response['x-request-id'],
|
|
117
|
-
code: json['code'],
|
|
118
|
-
data: json,
|
|
119
|
-
)
|
|
120
|
-
when 404
|
|
121
|
-
raise NotFoundError.new(
|
|
122
|
-
message: json['message'],
|
|
123
|
-
http_status: http_status,
|
|
124
|
-
request_id: response['x-request-id'],
|
|
125
|
-
)
|
|
126
|
-
when 422
|
|
127
|
-
message = json['message']
|
|
128
|
-
code = json['code']
|
|
129
|
-
errors = extract_error(json['errors']) if json['errors']
|
|
130
|
-
message += " (#{errors})" if errors
|
|
131
|
-
|
|
132
|
-
raise UnprocessableEntityError.new(
|
|
133
|
-
message: message,
|
|
134
|
-
http_status: http_status,
|
|
135
|
-
request_id: response['x-request-id'],
|
|
136
|
-
error: json['error'],
|
|
137
|
-
errors: errors,
|
|
138
|
-
code: code,
|
|
139
|
-
)
|
|
140
|
-
when 429
|
|
141
|
-
raise RateLimitExceededError.new(
|
|
142
|
-
message: json['message'],
|
|
143
|
-
http_status: http_status,
|
|
144
|
-
request_id: response['x-request-id'],
|
|
145
|
-
retry_after: response['Retry-After'],
|
|
146
|
-
)
|
|
147
|
-
else
|
|
148
|
-
raise APIError.new(
|
|
149
|
-
message: json['message'],
|
|
150
|
-
http_status: http_status,
|
|
151
|
-
request_id: response['x-request-id'],
|
|
152
|
-
)
|
|
153
|
-
end
|
|
154
|
-
end
|
|
155
|
-
# rubocop:enable Metrics/MethodLength, Metrics/AbcSize, Metrics/CyclomaticComplexity:
|
|
156
|
-
|
|
157
|
-
private
|
|
158
|
-
|
|
159
|
-
def extract_error(errors)
|
|
160
|
-
errors.map do |error|
|
|
161
|
-
"#{error['field']}: #{error['code']}"
|
|
162
|
-
end.join('; ')
|
|
6
|
+
class Client < BaseClient
|
|
7
|
+
def api_keys
|
|
8
|
+
@api_keys ||= WorkOS::ApiKeys.new(self)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def multi_factor_auth
|
|
12
|
+
@multi_factor_auth ||= WorkOS::MultiFactorAuth.new(self)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def connect
|
|
16
|
+
@connect ||= WorkOS::Connect.new(self)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def authorization
|
|
20
|
+
@authorization ||= WorkOS::Authorization.new(self)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def sso
|
|
24
|
+
@sso ||= WorkOS::SSO.new(self)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def pipes
|
|
28
|
+
@pipes ||= WorkOS::Pipes.new(self)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def directory_sync
|
|
32
|
+
@directory_sync ||= WorkOS::DirectorySync.new(self)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def events
|
|
36
|
+
@events ||= WorkOS::Events.new(self)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def feature_flags
|
|
40
|
+
@feature_flags ||= WorkOS::FeatureFlags.new(self)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def organization_domains
|
|
44
|
+
@organization_domains ||= WorkOS::OrganizationDomains.new(self)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def organizations
|
|
48
|
+
@organizations ||= WorkOS::Organizations.new(self)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def groups
|
|
52
|
+
@groups ||= WorkOS::Groups.new(self)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def admin_portal
|
|
56
|
+
@admin_portal ||= WorkOS::AdminPortal.new(self)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def radar
|
|
60
|
+
@radar ||= WorkOS::Radar.new(self)
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def user_management
|
|
64
|
+
@user_management ||= WorkOS::UserManagement.new(self)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
def user_management_organization_membership_groups
|
|
68
|
+
@user_management_organization_membership_groups ||= WorkOS::UserManagementOrganizationMembershipGroups.new(self)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def webhooks
|
|
72
|
+
@webhooks ||= WorkOS::Webhooks.new(self)
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
def widgets
|
|
76
|
+
@widgets ||= WorkOS::Widgets.new(self)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def audit_logs
|
|
80
|
+
@audit_logs ||= WorkOS::AuditLogs.new(self)
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
# @oagen-ignore-start — non-spec service accessors (hand-maintained)
|
|
84
|
+
|
|
85
|
+
def passwordless
|
|
86
|
+
@passwordless ||= WorkOS::Passwordless.new(self)
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
def vault
|
|
90
|
+
@vault ||= WorkOS::Vault.new(self)
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
def actions
|
|
94
|
+
@actions ||= WorkOS::Actions
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
def session_manager(encryptor: nil)
|
|
98
|
+
return @session_manager if @session_manager && encryptor.nil?
|
|
99
|
+
|
|
100
|
+
@session_manager = WorkOS::SessionManager.new(self, encryptor: encryptor)
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
def pkce
|
|
104
|
+
@pkce ||= WorkOS::PKCE
|
|
163
105
|
end
|
|
106
|
+
# @oagen-ignore-end
|
|
164
107
|
end
|
|
165
108
|
end
|
data/lib/workos/configuration.rb
CHANGED
|
@@ -1,16 +1,67 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
# @oagen-ignore-file — hand-maintained runtime
|
|
3
4
|
module WorkOS
|
|
4
|
-
#
|
|
5
|
+
# Global configuration holder for `WorkOS.configure`.
|
|
6
|
+
#
|
|
7
|
+
# @example
|
|
8
|
+
# WorkOS.configure do |config|
|
|
9
|
+
# config.api_key = ENV.fetch("WORKOS_API_KEY")
|
|
10
|
+
# config.client_id = ENV["WORKOS_CLIENT_ID"]
|
|
11
|
+
# config.logger = Logger.new($stdout)
|
|
12
|
+
# config.log_level = :info
|
|
13
|
+
# end
|
|
5
14
|
class Configuration
|
|
6
|
-
attr_accessor :
|
|
15
|
+
attr_accessor :api_key, :base_url, :client_id, :timeout, :max_retries, :logger, :log_level
|
|
7
16
|
|
|
8
17
|
def initialize
|
|
9
|
-
@
|
|
18
|
+
@base_url = WorkOS::BaseClient::DEFAULT_BASE_URL
|
|
19
|
+
@timeout = WorkOS::BaseClient::DEFAULT_TIMEOUT
|
|
20
|
+
@max_retries = WorkOS::BaseClient::DEFAULT_MAX_RETRIES
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
class << self
|
|
25
|
+
# Yield the global configuration for modification.
|
|
26
|
+
#
|
|
27
|
+
# WorkOS.configure do |config|
|
|
28
|
+
# config.api_key = "sk_..."
|
|
29
|
+
# config.client_id = "client_..."
|
|
30
|
+
# end
|
|
31
|
+
def configure
|
|
32
|
+
yield(configuration)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# The global configuration instance.
|
|
36
|
+
def configuration
|
|
37
|
+
@configuration ||= Configuration.new
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# A convenience client built from the global configuration.
|
|
41
|
+
# Lazy-initialized; reset by calling WorkOS.reset_client.
|
|
42
|
+
def client
|
|
43
|
+
@client ||= Client.new(
|
|
44
|
+
api_key: configuration.api_key,
|
|
45
|
+
base_url: configuration.base_url,
|
|
46
|
+
client_id: configuration.client_id,
|
|
47
|
+
timeout: configuration.timeout,
|
|
48
|
+
max_retries: configuration.max_retries,
|
|
49
|
+
logger: configuration.logger,
|
|
50
|
+
log_level: configuration.log_level
|
|
51
|
+
)
|
|
10
52
|
end
|
|
11
53
|
|
|
12
|
-
|
|
13
|
-
|
|
54
|
+
# Reset the cached singleton client. Shuts down any open connections
|
|
55
|
+
# on the current fiber/thread, then clears the cached client so the
|
|
56
|
+
# next call to {.client} builds a fresh one.
|
|
57
|
+
#
|
|
58
|
+
# Call this after reconfiguring, or in a Puma/Unicorn `on_worker_boot`
|
|
59
|
+
# block to avoid sharing sockets across forked processes.
|
|
60
|
+
#
|
|
61
|
+
# @return [void]
|
|
62
|
+
def reset_client
|
|
63
|
+
@client&.shutdown
|
|
64
|
+
@client = nil
|
|
14
65
|
end
|
|
15
66
|
end
|
|
16
67
|
end
|