workos 8.0.1 → 9.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 +2 -2
- data/.github/workflows/docs.yml +2 -2
- data/.github/workflows/lint.yml +2 -2
- data/.github/workflows/release-please.yml +199 -4
- data/.github/workflows/release.yml +2 -2
- data/.last-synced-sha +1 -1
- data/.oagen-manifest.json +154 -43
- data/.release-please-manifest.json +1 -1
- data/.ruby-version +1 -1
- data/CHANGELOG.md +92 -0
- data/Gemfile.lock +6 -6
- data/lib/workos/api_keys/api_key.rb +3 -0
- data/lib/workos/api_keys/api_key_created.rb +5 -5
- data/lib/workos/api_keys/api_key_created_data.rb +3 -0
- data/lib/workos/api_keys/api_key_revoked.rb +5 -5
- data/lib/workos/{audit_logs/audit_log_export_json.rb → api_keys/api_key_updated.rb} +10 -10
- data/lib/workos/api_keys/api_key_updated_data.rb +49 -0
- data/lib/workos/{directory_sync/dsync_deactivated_data_domain.rb → api_keys/api_key_updated_data_owner.rb} +1 -1
- data/lib/workos/api_keys/api_key_updated_data_previous_attribute.rb +18 -0
- data/lib/workos/api_keys/create_organization_api_key.rb +5 -2
- data/lib/workos/api_keys/expire_api_key.rb +18 -0
- data/lib/workos/api_keys/organization_api_key.rb +3 -0
- data/lib/workos/api_keys/organization_api_key_with_value.rb +3 -0
- data/lib/workos/api_keys.rb +29 -1
- data/lib/workos/audit_logs/audit_log_action.rb +2 -7
- data/lib/workos/audit_logs/audit_log_export.rb +2 -7
- data/lib/workos/audit_logs/audit_log_schema.rb +11 -2
- data/lib/workos/{types/radar_type.rb → audit_logs/audit_log_schema_actor_input.rb} +1 -3
- data/lib/workos/audit_logs/audit_log_schema_input.rb +25 -0
- data/lib/workos/audit_logs/audit_log_schema_target.rb +16 -1
- data/lib/workos/audit_logs/audit_log_schema_target_input.rb +7 -0
- data/lib/workos/audit_logs.rb +16 -16
- data/lib/workos/authorization/permission_created.rb +5 -5
- data/lib/workos/authorization/permission_deleted.rb +5 -5
- data/lib/workos/authorization/permission_updated.rb +5 -5
- data/lib/workos/authorization/role_created.rb +5 -5
- data/lib/workos/authorization/role_deleted.rb +5 -5
- data/lib/workos/authorization/role_updated.rb +5 -5
- data/lib/workos/authorization.rb +38 -22
- data/lib/workos/base_client.rb +19 -2
- data/lib/workos/client.rb +6 -6
- data/lib/workos/connect/connect_application.rb +12 -0
- data/lib/workos/{audit_logs/audit_log_schema_json_target.rb → connect/connect_application_redirect_uri.rb} +7 -7
- data/lib/workos/connect/user_object.rb +3 -0
- data/lib/workos/connect.rb +1 -1
- data/lib/workos/directory_sync/dsync_activated.rb +5 -5
- data/lib/workos/directory_sync/dsync_deleted.rb +5 -5
- data/lib/workos/directory_sync/dsync_group_created.rb +5 -5
- data/lib/workos/directory_sync/dsync_group_deleted.rb +5 -5
- data/lib/workos/directory_sync/dsync_group_updated.rb +5 -5
- data/lib/workos/directory_sync/dsync_group_user_added.rb +5 -5
- data/lib/workos/directory_sync/dsync_group_user_removed.rb +5 -5
- data/lib/workos/directory_sync/dsync_token_created.rb +34 -0
- data/lib/workos/directory_sync/dsync_token_created_data.rb +34 -0
- data/lib/workos/directory_sync/dsync_token_revoked.rb +34 -0
- data/lib/workos/{audit_logs/audit_log_schema_json_actor.rb → directory_sync/dsync_token_revoked_data.rb} +1 -1
- data/lib/workos/directory_sync/dsync_user_created.rb +5 -5
- data/lib/workos/directory_sync/dsync_user_deleted.rb +5 -5
- data/lib/workos/directory_sync/dsync_user_updated.rb +5 -5
- data/lib/workos/directory_sync.rb +2 -2
- data/lib/workos/events.rb +1 -1
- data/lib/workos/feature_flags/flag_created.rb +5 -5
- data/lib/workos/feature_flags/flag_deleted.rb +5 -5
- data/lib/workos/feature_flags/flag_rule_updated.rb +5 -5
- data/lib/workos/feature_flags/flag_rule_updated_context_configured_target_organization.rb +1 -16
- data/lib/workos/feature_flags/flag_rule_updated_context_previous_attribute_context_configured_target_organization.rb +1 -1
- data/lib/workos/feature_flags/flag_updated.rb +5 -5
- data/lib/workos/groups.rb +2 -2
- data/lib/workos/inflections.rb +3 -1
- data/lib/workos/organization_domains/organization_domain_created.rb +5 -5
- data/lib/workos/organization_domains/organization_domain_deleted.rb +5 -5
- data/lib/workos/organization_domains/organization_domain_updated.rb +5 -5
- data/lib/workos/organization_domains/organization_domain_verification_failed.rb +5 -5
- data/lib/workos/organization_domains/organization_domain_verified.rb +5 -5
- data/lib/workos/organization_membership_service.rb +273 -0
- data/lib/workos/organizations/audit_logs_retention.rb +2 -7
- data/lib/workos/organizations/organization_created.rb +5 -5
- data/lib/workos/organizations/organization_deleted.rb +5 -5
- data/lib/workos/organizations/organization_membership_created.rb +5 -5
- data/lib/workos/organizations/organization_membership_deleted.rb +5 -5
- data/lib/workos/organizations/organization_membership_updated.rb +5 -5
- data/lib/workos/organizations/organization_role_created.rb +5 -5
- data/lib/workos/organizations/organization_role_deleted.rb +5 -5
- data/lib/workos/organizations/organization_role_updated.rb +5 -5
- data/lib/workos/organizations/organization_updated.rb +5 -5
- data/lib/workos/organizations.rb +1 -1
- data/lib/workos/radar/radar_standalone_assess_request.rb +2 -8
- data/lib/workos/radar.rb +6 -12
- data/lib/workos/shared/connect_application_m2m.rb +46 -0
- data/lib/workos/shared/connect_application_oauth.rb +58 -0
- data/lib/workos/shared/connect_application_oauth_redirect_uris.rb +22 -0
- data/lib/workos/shared/error_response.rb +18 -0
- data/lib/workos/shared/group_created.rb +5 -5
- data/lib/workos/shared/group_deleted.rb +5 -5
- data/lib/workos/shared/group_member_added.rb +5 -5
- data/lib/workos/shared/group_member_removed.rb +5 -5
- data/lib/workos/shared/group_updated.rb +5 -5
- data/lib/workos/{directory_sync/dsync_deactivated_data.rb → shared/pipe_connected_account.rb} +15 -15
- data/lib/workos/{directory_sync/dsync_deactivated.rb → shared/pipes_connected_account_connected.rb} +7 -7
- data/lib/workos/shared/pipes_connected_account_disconnected.rb +34 -0
- data/lib/workos/shared/pipes_connected_account_reauthorization_needed.rb +34 -0
- data/lib/workos/shared/waitlist_user_approved.rb +5 -5
- data/lib/workos/shared/waitlist_user_created.rb +5 -5
- data/lib/workos/shared/waitlist_user_denied.rb +5 -5
- data/lib/workos/sso/connection_activated.rb +5 -5
- data/lib/workos/sso/connection_deactivated.rb +5 -5
- data/lib/workos/sso/connection_deleted.rb +5 -5
- data/lib/workos/sso/connection_saml_certificate_renewal_required.rb +5 -5
- data/lib/workos/sso/connection_saml_certificate_renewed.rb +5 -5
- data/lib/workos/types/audit_log_configuration_log_stream_type.rb +2 -1
- data/lib/workos/types/create_webhook_endpoint_events.rb +5 -1
- data/lib/workos/types/pipe_connected_account_state.rb +13 -0
- data/lib/workos/types/{radar_action.rb → radar_list_action.rb} +1 -1
- data/lib/workos/types/radar_list_type.rb +18 -0
- data/lib/workos/types/radar_standalone_assess_request_action.rb +1 -7
- data/lib/workos/types/radar_standalone_response_blocklist_type.rb +1 -10
- data/lib/workos/types/radar_standalone_response_control.rb +1 -4
- data/lib/workos/types/user_management_authentication_screen_hint.rb +1 -5
- data/{rbi/workos/types/request_options.rbi → lib/workos/types/vault_order.rb} +4 -3
- data/lib/workos/types/webhook_endpoint_status.rb +1 -5
- data/lib/workos/user_management/action_authentication_denied.rb +6 -6
- data/lib/workos/user_management/action_user_registration_denied.rb +6 -6
- data/lib/workos/user_management/authentication_email_verification_failed.rb +5 -5
- data/lib/workos/user_management/authentication_email_verification_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_magic_auth_failed.rb +5 -5
- data/lib/workos/user_management/authentication_magic_auth_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_mfa_failed.rb +5 -5
- data/lib/workos/user_management/authentication_mfa_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_oauth_failed.rb +5 -5
- data/lib/workos/user_management/authentication_oauth_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_passkey_failed.rb +5 -5
- data/lib/workos/user_management/authentication_passkey_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_password_failed.rb +5 -5
- data/lib/workos/user_management/authentication_password_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_radar_risk_detected.rb +5 -5
- data/lib/workos/user_management/authentication_sso_failed.rb +5 -5
- data/lib/workos/user_management/authentication_sso_started.rb +5 -5
- data/lib/workos/user_management/authentication_sso_succeeded.rb +5 -5
- data/lib/workos/user_management/authentication_sso_timed_out.rb +5 -5
- data/lib/workos/user_management/create_user.rb +3 -0
- data/lib/workos/user_management/create_user_api_key.rb +5 -2
- data/lib/workos/user_management/email_change_confirmation_user.rb +3 -0
- data/lib/workos/user_management/email_verification_created.rb +5 -5
- data/lib/workos/user_management/invitation_accepted.rb +5 -5
- data/lib/workos/user_management/invitation_created.rb +5 -5
- data/lib/workos/user_management/invitation_resent.rb +5 -5
- data/lib/workos/user_management/invitation_revoked.rb +5 -5
- data/lib/workos/user_management/magic_auth_created.rb +5 -5
- data/lib/workos/user_management/password_reset_created.rb +5 -5
- data/lib/workos/user_management/password_reset_succeeded.rb +5 -5
- data/lib/workos/user_management/revoke_session.rb +2 -6
- data/lib/workos/user_management/session_created.rb +5 -5
- data/lib/workos/user_management/session_revoked.rb +5 -5
- data/lib/workos/user_management/update_user.rb +3 -0
- data/lib/workos/user_management/user_api_key.rb +3 -0
- data/lib/workos/user_management/user_api_key_updated_data_owner.rb +7 -0
- data/lib/workos/user_management/user_api_key_with_value.rb +3 -0
- data/lib/workos/user_management/user_created.rb +5 -5
- data/lib/workos/user_management/user_deleted.rb +5 -5
- data/lib/workos/user_management/user_updated.rb +5 -5
- data/lib/workos/user_management.rb +16 -223
- data/lib/workos/vault/actor.rb +22 -0
- data/lib/workos/vault/create_data_key_request.rb +18 -0
- data/lib/workos/vault/create_data_key_response.rb +28 -0
- data/lib/workos/vault/create_object_request.rb +25 -0
- data/lib/workos/vault/decrypt_request.rb +18 -0
- data/lib/workos/vault/decrypt_response.rb +22 -0
- data/lib/workos/vault/delete_object_response.rb +22 -0
- data/lib/workos/vault/object_metadata.rb +37 -0
- data/lib/workos/{audit_logs/audit_log_action_json.rb → vault/object_summary.rb} +4 -10
- data/lib/workos/vault/object_version.rb +31 -0
- data/lib/workos/vault/object_without_value.rb +25 -0
- data/lib/workos/vault/rekey_request.rb +22 -0
- data/lib/workos/vault/update_object_request.rb +22 -0
- data/lib/workos/vault/vault_byok_key_deleted.rb +5 -5
- data/lib/workos/vault/vault_byok_key_verification_completed.rb +5 -5
- data/lib/workos/vault/vault_data_created.rb +5 -5
- data/lib/workos/vault/vault_data_deleted.rb +5 -5
- data/lib/workos/vault/vault_data_read.rb +5 -5
- data/lib/workos/vault/vault_data_updated.rb +5 -5
- data/lib/workos/vault/vault_dek_decrypted.rb +5 -5
- data/lib/workos/vault/vault_dek_read.rb +5 -5
- data/lib/workos/vault/vault_kek_created.rb +5 -5
- data/lib/workos/vault/vault_metadata_read.rb +5 -5
- data/lib/workos/vault/vault_names_listed.rb +5 -5
- data/lib/workos/vault/vault_object.rb +28 -0
- data/lib/workos/vault/version_list_response.rb +22 -0
- data/lib/workos/vault.rb +273 -139
- data/lib/workos/version.rb +1 -1
- data/lib/workos/webhooks/webhook_endpoint.rb +2 -7
- data/lib/workos/webhooks.rb +8 -9
- data/lib/workos.rb +1 -0
- data/rbi/workos/action_authentication_denied.rbi +10 -10
- data/rbi/workos/action_user_registration_denied.rbi +10 -10
- data/rbi/workos/actor.rbi +30 -0
- data/rbi/workos/api_key.rbi +6 -0
- data/rbi/workos/api_key_created.rbi +6 -6
- data/rbi/workos/api_key_created_data.rbi +6 -0
- data/rbi/workos/api_key_revoked.rbi +6 -6
- data/rbi/workos/api_key_revoked_data.rbi +6 -0
- data/rbi/workos/{dsync_deactivated.rbi → api_key_updated.rbi} +9 -9
- data/rbi/workos/api_key_updated_data.rbi +84 -0
- data/rbi/workos/api_key_updated_data_owner.rbi +30 -0
- data/rbi/workos/{audit_logs_retention_json.rbi → api_key_updated_data_previous_attribute.rbi} +5 -5
- data/rbi/workos/api_keys.rbi +11 -1
- data/rbi/workos/audit_log_action.rbi +1 -0
- data/rbi/workos/audit_log_export.rbi +1 -0
- data/rbi/workos/audit_log_schema.rbi +18 -0
- data/rbi/workos/{audit_log_schema_json_actor.rbi → audit_log_schema_actor_input.rbi} +1 -1
- data/rbi/workos/audit_log_schema_input.rbi +36 -0
- data/rbi/workos/{audit_log_schema_json_target.rbi → audit_log_schema_target_input.rbi} +1 -1
- data/rbi/workos/audit_logs.rbi +9 -9
- data/rbi/workos/audit_logs_retention.rbi +1 -0
- data/rbi/workos/authentication_email_verification_failed.rbi +6 -6
- data/rbi/workos/authentication_email_verification_succeeded.rbi +6 -6
- data/rbi/workos/authentication_magic_auth_failed.rbi +6 -6
- data/rbi/workos/authentication_magic_auth_succeeded.rbi +6 -6
- data/rbi/workos/authentication_mfa_failed.rbi +6 -6
- data/rbi/workos/authentication_mfa_succeeded.rbi +6 -6
- data/rbi/workos/authentication_oauth_failed.rbi +6 -6
- data/rbi/workos/authentication_oauth_succeeded.rbi +6 -6
- data/rbi/workos/authentication_passkey_failed.rbi +6 -6
- data/rbi/workos/authentication_passkey_succeeded.rbi +6 -6
- data/rbi/workos/authentication_password_failed.rbi +6 -6
- data/rbi/workos/authentication_password_succeeded.rbi +6 -6
- data/rbi/workos/authentication_radar_risk_detected.rbi +6 -6
- data/rbi/workos/authentication_sso_failed.rbi +6 -6
- data/rbi/workos/authentication_sso_started.rbi +6 -6
- data/rbi/workos/authentication_sso_succeeded.rbi +6 -6
- data/rbi/workos/authentication_sso_timed_out.rbi +6 -6
- data/rbi/workos/authorization.rbi +9 -5
- data/rbi/workos/client.rbi +6 -3
- data/rbi/workos/connect_application.rbi +0 -12
- data/rbi/workos/{dsync_deactivated_data.rbi → connect_application_m2m.rbi} +19 -19
- data/rbi/workos/connect_application_oauth.rbi +102 -0
- data/rbi/workos/connect_application_oauth_redirect_uris.rbi +30 -0
- data/rbi/workos/connection_activated.rbi +6 -6
- data/rbi/workos/connection_deactivated.rbi +6 -6
- data/rbi/workos/connection_deleted.rbi +6 -6
- data/rbi/workos/connection_saml_certificate_renewal_required.rbi +6 -6
- data/rbi/workos/connection_saml_certificate_renewed.rbi +6 -6
- data/rbi/workos/create_data_key_request.rbi +24 -0
- data/rbi/workos/create_data_key_response.rbi +42 -0
- data/rbi/workos/create_object_request.rbi +36 -0
- data/rbi/workos/create_organization_api_key.rbi +6 -0
- data/rbi/workos/create_user.rbi +6 -0
- data/rbi/workos/create_user_api_key.rbi +6 -0
- data/rbi/workos/decrypt_request.rbi +24 -0
- data/rbi/workos/decrypt_response.rbi +30 -0
- data/rbi/workos/delete_object_response.rbi +30 -0
- data/rbi/workos/dsync_activated.rbi +6 -6
- data/rbi/workos/dsync_deleted.rbi +6 -6
- data/rbi/workos/dsync_group_created.rbi +6 -6
- data/rbi/workos/dsync_group_deleted.rbi +6 -6
- data/rbi/workos/dsync_group_updated.rbi +6 -6
- data/rbi/workos/dsync_group_user_added.rbi +6 -6
- data/rbi/workos/dsync_group_user_removed.rbi +6 -6
- data/rbi/workos/dsync_token_created.rbi +54 -0
- data/rbi/workos/{audit_log_export_json.rbi → dsync_token_created_data.rbi} +9 -9
- data/rbi/workos/dsync_token_revoked.rbi +54 -0
- data/rbi/workos/{audit_log_action_json.rbi → dsync_token_revoked_data.rbi} +17 -11
- data/rbi/workos/dsync_user_created.rbi +6 -6
- data/rbi/workos/dsync_user_deleted.rbi +6 -6
- data/rbi/workos/dsync_user_updated.rbi +6 -6
- data/rbi/workos/email_change_confirmation_user.rbi +6 -0
- data/rbi/workos/email_verification_created.rbi +6 -6
- data/rbi/workos/error_response.rbi +24 -0
- data/rbi/workos/expire_api_key.rbi +24 -0
- data/rbi/workos/flag_created.rbi +6 -6
- data/rbi/workos/flag_deleted.rbi +6 -6
- data/rbi/workos/flag_rule_updated.rbi +6 -6
- data/rbi/workos/flag_updated.rbi +6 -6
- data/rbi/workos/group_created.rbi +6 -6
- data/rbi/workos/group_deleted.rbi +6 -6
- data/rbi/workos/group_member_added.rbi +6 -6
- data/rbi/workos/group_member_removed.rbi +6 -6
- data/rbi/workos/group_updated.rbi +6 -6
- data/rbi/workos/invitation_accepted.rbi +6 -6
- data/rbi/workos/invitation_created.rbi +6 -6
- data/rbi/workos/invitation_resent.rbi +6 -6
- data/rbi/workos/invitation_revoked.rbi +6 -6
- data/rbi/workos/magic_auth_created.rbi +6 -6
- data/rbi/workos/object_metadata.rbi +60 -0
- data/rbi/workos/object_summary.rbi +36 -0
- data/rbi/workos/object_version.rbi +48 -0
- data/rbi/workos/object_without_value.rbi +36 -0
- data/rbi/workos/organization_api_key.rbi +6 -0
- data/rbi/workos/organization_api_key_with_value.rbi +6 -0
- data/rbi/workos/organization_created.rbi +6 -6
- data/rbi/workos/organization_deleted.rbi +6 -6
- data/rbi/workos/organization_domain_created.rbi +6 -6
- data/rbi/workos/organization_domain_deleted.rbi +6 -6
- data/rbi/workos/organization_domain_updated.rbi +6 -6
- data/rbi/workos/organization_domain_verification_failed.rbi +6 -6
- data/rbi/workos/organization_domain_verified.rbi +6 -6
- data/rbi/workos/organization_membership_created.rbi +6 -6
- data/rbi/workos/organization_membership_deleted.rbi +6 -6
- data/rbi/workos/organization_membership_service.rbi +114 -0
- data/rbi/workos/organization_membership_updated.rbi +6 -6
- data/rbi/workos/organization_role_created.rbi +6 -6
- data/rbi/workos/organization_role_deleted.rbi +6 -6
- data/rbi/workos/organization_role_updated.rbi +6 -6
- data/rbi/workos/organization_updated.rbi +6 -6
- data/rbi/workos/password_reset_created.rbi +6 -6
- data/rbi/workos/password_reset_succeeded.rbi +6 -6
- data/rbi/workos/permission_created.rbi +6 -6
- data/rbi/workos/permission_deleted.rbi +6 -6
- data/rbi/workos/permission_updated.rbi +6 -6
- data/rbi/workos/{webhook_endpoint_json.rbi → pipe_connected_account.rbi} +23 -11
- data/rbi/workos/pipes_connected_account_connected.rbi +54 -0
- data/rbi/workos/pipes_connected_account_disconnected.rbi +54 -0
- data/rbi/workos/pipes_connected_account_reauthorization_needed.rbi +54 -0
- data/rbi/workos/radar.rbi +1 -3
- data/rbi/workos/radar_standalone_assess_request.rbi +0 -12
- data/rbi/workos/rekey_request.rbi +30 -0
- data/rbi/workos/revoke_session.rbi +0 -6
- data/rbi/workos/role_created.rbi +6 -6
- data/rbi/workos/role_deleted.rbi +6 -6
- data/rbi/workos/role_updated.rbi +6 -6
- data/rbi/workos/session_created.rbi +6 -6
- data/rbi/workos/session_manager.rbi +1 -1
- data/rbi/workos/session_revoked.rbi +6 -6
- data/rbi/workos/update_object_request.rbi +30 -0
- data/rbi/workos/update_user.rbi +6 -0
- data/rbi/workos/user.rbi +6 -0
- data/rbi/workos/user_api_key.rbi +6 -0
- data/rbi/workos/{dsync_deactivated_data_domain.rbi → user_api_key_updated_data_owner.rbi} +5 -5
- data/rbi/workos/user_api_key_with_value.rbi +6 -0
- data/rbi/workos/user_created.rbi +6 -6
- data/rbi/workos/user_deleted.rbi +6 -6
- data/rbi/workos/user_management.rbi +7 -94
- data/rbi/workos/user_object.rbi +6 -0
- data/rbi/workos/user_updated.rbi +6 -6
- data/rbi/workos/vault.rbi +70 -95
- data/rbi/workos/vault_byok_key_deleted.rbi +6 -6
- data/rbi/workos/vault_byok_key_verification_completed.rbi +6 -6
- data/rbi/workos/vault_data_created.rbi +6 -6
- data/rbi/workos/vault_data_deleted.rbi +6 -6
- data/rbi/workos/vault_data_read.rbi +6 -6
- data/rbi/workos/vault_data_updated.rbi +6 -6
- data/rbi/workos/vault_dek_decrypted.rbi +6 -6
- data/rbi/workos/vault_dek_read.rbi +6 -6
- data/rbi/workos/vault_kek_created.rbi +6 -6
- data/rbi/workos/vault_metadata_read.rbi +6 -6
- data/rbi/workos/vault_names_listed.rbi +6 -6
- data/rbi/workos/vault_object.rbi +42 -0
- data/rbi/workos/waitlist_user_approved.rbi +6 -6
- data/rbi/workos/waitlist_user_created.rbi +6 -6
- data/rbi/workos/waitlist_user_denied.rbi +6 -6
- data/rbi/workos/webhook_endpoint.rbi +1 -0
- data/rbi/workos/webhooks.rbi +2 -2
- data/renovate.json +1 -61
- data/test/workos/test_api_keys.rb +9 -1
- data/test/workos/test_base_client.rb +64 -0
- data/test/workos/test_model_round_trip.rb +740 -261
- data/test/workos/test_organization_membership_service.rb +107 -0
- data/test/workos/test_user_management.rb +0 -74
- data/test/workos/test_vault.rb +91 -88
- metadata +87 -54
- data/lib/workos/audit_logs/audit_log_schema_json.rb +0 -34
- data/lib/workos/organizations/audit_logs_retention_json.rb +0 -18
- data/lib/workos/types/audit_log_export_json_state.rb +0 -14
- data/lib/workos/types/dsync_deactivated_data_state.rb +0 -9
- data/lib/workos/types/dsync_deactivated_data_type.rb +0 -9
- data/lib/workos/types/webhook_endpoint_json_status.rb +0 -9
- data/lib/workos/user_management_organization_membership_groups.rb +0 -60
- data/lib/workos/webhooks/webhook_endpoint_json.rb +0 -40
- data/rbi/workos/actions.rbi +0 -48
- data/rbi/workos/audit_log_schema_json.rbi +0 -54
- data/rbi/workos/base_client.rbi +0 -132
- data/rbi/workos/configuration.rbi +0 -68
- data/rbi/workos/encryptors/aes_gcm.rbi +0 -19
- data/rbi/workos/errors.rbi +0 -43
- data/rbi/workos/hash_provider.rbi +0 -18
- data/rbi/workos/passwordless.rbi +0 -47
- data/rbi/workos/public_client.rbi +0 -12
- data/rbi/workos/session.rbi +0 -43
- data/rbi/workos/types/api_response.rbi +0 -29
- data/rbi/workos/types/base_model.rbi +0 -22
- data/rbi/workos/types/list_struct.rbi +0 -89
- data/rbi/workos/user_management_organization_membership_groups.rbi +0 -25
- data/rbi/workos/util.rbi +0 -12
- data/test/workos/test_user_management_organization_membership_groups.rb +0 -33
- /data/lib/workos/{authorization → groups}/user_organization_membership_base_list_data.rb +0 -0
- /data/lib/workos/{user_management → organization_membership}/create_user_organization_membership.rb +0 -0
- /data/lib/workos/{user_management → organization_membership}/organization_membership.rb +0 -0
- /data/lib/workos/{user_management → organization_membership}/update_user_organization_membership.rb +0 -0
- /data/lib/workos/{user_management → organization_membership}/user_organization_membership.rb +0 -0
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,97 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [9.1.0](https://github.com/workos/workos-ruby/compare/v9.0.0...v9.1.0) (2026-06-17)
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* **renovate:** explicitly enable minor and patch updates ([#493](https://github.com/workos/workos-ruby/issues/493)) ([c6da3f3](https://github.com/workos/workos-ruby/commit/c6da3f3acdf4dd7a6a65b3ae6463102ff0c024e1))
|
|
8
|
+
* Use Thread.current[] instead of Fiber[] for connection cache ([#499](https://github.com/workos/workos-ruby/issues/499)) ([a44d650](https://github.com/workos/workos-ruby/commit/a44d6500b29d05fe7a5a0ac7449d1a4bee88fd38))
|
|
9
|
+
|
|
10
|
+
- [#495](https://github.com/workos/workos-ruby/pull/495) feat(generated): regenerate from spec (8 changes)
|
|
11
|
+
|
|
12
|
+
**Features**
|
|
13
|
+
- **[api_keys](https://workos.com/docs/reference/authkit/api-keys)**:
|
|
14
|
+
- Added model `ExpireApiKey`
|
|
15
|
+
- Added model `ApiKeyUpdated`
|
|
16
|
+
- Added model `ApiKeyUpdatedData`
|
|
17
|
+
- Added model `ApiKeyUpdatedDataOwner`
|
|
18
|
+
- Added model `UserApiKeyUpdatedDataOwner`
|
|
19
|
+
- Added model `ApiKeyUpdatedDataPreviousAttribute`
|
|
20
|
+
- Added endpoint `POST /api_keys/{id}/expire`
|
|
21
|
+
- **[audit_logs](https://workos.com/docs/reference/audit-logs)**:
|
|
22
|
+
- Added `Snowflake` to `AuditLogConfigurationLogStreamType`
|
|
23
|
+
- **[connect](https://workos.com/docs/reference/workos-connect/standalone)**:
|
|
24
|
+
- Added `name` to `UserObject`
|
|
25
|
+
- **[directory_sync](https://workos.com/docs/reference/directory-sync)**:
|
|
26
|
+
- Added model `DsyncTokenCreated`
|
|
27
|
+
- Added model `DsyncTokenCreatedData`
|
|
28
|
+
- Added model `DsyncTokenRevoked`
|
|
29
|
+
- Added model `DsyncTokenRevokedData`
|
|
30
|
+
- **[user_management](https://workos.com/docs/reference/authkit/user)**:
|
|
31
|
+
- Added `name` to user management models
|
|
32
|
+
- **[webhooks](https://workos.com/docs/reference/webhooks)**:
|
|
33
|
+
- Added `api_key.updated` to `CreateWebhookEndpointEvents`
|
|
34
|
+
- Added `api_key.updated` to `UpdateWebhookEndpointEvents`
|
|
35
|
+
|
|
36
|
+
## [9.0.0](https://github.com/workos/workos-ruby/compare/v8.0.1...v9.0.0) (2026-05-26)
|
|
37
|
+
|
|
38
|
+
### Bug Fixes
|
|
39
|
+
|
|
40
|
+
* **ci:** extract version from PR title in changelog inline step ([93768a1](https://github.com/workos/workos-ruby/commit/93768a1c00aab7f82c869f38bea5925f6e8cd933))
|
|
41
|
+
|
|
42
|
+
* [#491](https://github.com/workos/workos-ruby/pull/491) feat(generated)!: regenerate from spec (9 changes)
|
|
43
|
+
|
|
44
|
+
**⚠️ Breaking**
|
|
45
|
+
* **organization_membership:** Migrate organization membership to dedicated service
|
|
46
|
+
* Moved organization membership methods from `UserManagement` to new `OrganizationMembershipService` class
|
|
47
|
+
* Methods `create_organization_membership`, `get_organization_membership`, `update_organization_membership`, `delete_organization_membership`, `deactivate_organization_membership`, `reactivate_organization_membership`, `list_organization_memberships`, and `list_organization_membership_groups` now accessed via `client.organization_membership` instead of `client.user_management`
|
|
48
|
+
* Removed `UserManagement::RoleSingle` and `UserManagement::RoleMultiple` data classes (moved to `OrganizationMembershipService`)
|
|
49
|
+
* **api_keys:** Add expires_at field to API key models
|
|
50
|
+
* Added `expires_at` optional field to `ApiKey`, `OrganizationApiKey`, `OrganizationApiKeyWithValue`, `UserApiKey`, and `UserApiKeyWithValue` models
|
|
51
|
+
* Added `expires_at` field to `CreateOrganizationApiKey` and `CreateUserApiKey` request models
|
|
52
|
+
* Updated `create_organization_api_key` and `create_user_api_key` methods to accept `expires_at` parameter
|
|
53
|
+
* **radar:** Remove device_fingerprint and bot_score fields from Radar
|
|
54
|
+
* Removed `device_fingerprint` and `bot_score` parameters from `Radar.create_attempt` method
|
|
55
|
+
* Removed `device_fingerprint` and `bot_score` fields from `RadarStandaloneAssessRequest` model
|
|
56
|
+
* Updated enum values in `RadarStandaloneAssessRequestAction`: removed `LOGIN`, `SIGNUP`, `SIGN_UP_2`, `SIGN_IN_2`, `SIGN_IN_3`, `SIGN_UP_3`; standardized to `SIGN_UP` and `SIGN_IN`
|
|
57
|
+
* Removed `CREDENTIAL_STUFFING` and `IP_SIGN_UP_RATE_LIMIT` from `RadarStandaloneResponseControl` enum
|
|
58
|
+
* **audit_logs:** Refactor audit logs models and type names
|
|
59
|
+
* Merged `AuditLogSchemaJson` fields into `AuditLogSchema`; removed `AuditLogSchemaJson` class
|
|
60
|
+
* Added new `AuditLogSchemaInput` class (write-side schema without read-only fields)
|
|
61
|
+
* Renamed `AuditLogSchemaJsonActor` to `AuditLogSchemaActorInput`
|
|
62
|
+
* Renamed `AuditLogSchemaJsonTarget` to `AuditLogSchemaTargetInput`
|
|
63
|
+
* Removed `AuditLogActionJson`; `AuditLogAction` now extends `BaseModel`
|
|
64
|
+
* Renamed `AuditLogExportJson` to `AuditLogExport` (now extends `BaseModel`)
|
|
65
|
+
* Renamed `AuditLogsRetentionJson` to `AuditLogsRetention` (now extends `BaseModel`)
|
|
66
|
+
* Removed `AuditLogExportJsonState` type; replaced with `AuditLogExportState`
|
|
67
|
+
* Updated `list_actions` method return type from `AuditLogActionJson` to `AuditLogAction`
|
|
68
|
+
* Updated `create_export` and `get_export` method return types from `AuditLogExportJson` to `AuditLogExport`
|
|
69
|
+
* **webhooks:** Rename WebhookEndpointJson to WebhookEndpoint
|
|
70
|
+
* Renamed `WebhookEndpointJson` to `WebhookEndpoint`
|
|
71
|
+
* Updated `list_webhook_endpoints`, `create_webhook_endpoint`, and `update_webhook_endpoint` method return types
|
|
72
|
+
* `WebhookEndpointStatus` is now an alias for `UpdateWebhookEndpointStatus` (no longer a standalone class); removed `WebhookEndpointJsonStatus` alias
|
|
73
|
+
* Updated `WebhookEndpoint` to extend `BaseModel` for consistency
|
|
74
|
+
* **authorization:** Add filtering parameters to authorization list methods
|
|
75
|
+
* Added `resource_id`, `resource_external_id`, `resource_type_slug` filter parameters to `list_role_assignments` method
|
|
76
|
+
* Added `role_slug` filter parameter to `list_role_assignments_for_resource_by_external_id` and `list_role_assignments_for_resource` methods
|
|
77
|
+
* Removed `search` parameter from `list_resources` method
|
|
78
|
+
|
|
79
|
+
**Features**
|
|
80
|
+
* **vault:** Add new Vault service with key-value operations
|
|
81
|
+
* Added new `Vault` service class with methods: `create_data_key`, `create_decrypt`, `create_rekey`, `list_kv`, `create_kv`, `get_name`, `get_kv`, `update_kv`, `delete_kv`, `list_kv_metadata`, `list_kv_versions`
|
|
82
|
+
* Added vault model classes: `Actor`, `CreateDataKeyRequest`, `CreateDataKeyResponse`, `CreateObjectRequest`, `DecryptRequest`, `DecryptResponse`, `DeleteObjectResponse`, `ObjectModel`, `ObjectMetadata`, `ObjectSummary`, `ObjectVersion`, `ObjectWithoutValue`, `RekeyRequest`, `UpdateObjectRequest`
|
|
83
|
+
* Added `VaultOrder` enum for sorting operations
|
|
84
|
+
* Added `client.vault` accessor to access the new service
|
|
85
|
+
* **pipes:** Add Pipes connected account event models
|
|
86
|
+
* Added `PipeConnectedAccount` model for representing connected accounts
|
|
87
|
+
* Added three new event models: `PipesConnectedAccountConnected`, `PipesConnectedAccountDisconnected`, `PipesConnectedAccountReauthorizationNeeded`
|
|
88
|
+
* Added `PipeConnectedAccountState` enum with `CONNECTED` and `NEEDS_REAUTHORIZATION` values
|
|
89
|
+
* Added new webhook event types to `CreateWebhookEndpointEvents` and `UpdateWebhookEndpointEvents`
|
|
90
|
+
* **generated:** Add Error and Actor shared models
|
|
91
|
+
* Added `Error` model in shared module for error responses
|
|
92
|
+
* Added `Actor` model in vault module representing user/actor information
|
|
93
|
+
* Updated inflections to map 'object' to 'ObjectModel' to avoid conflicts
|
|
94
|
+
|
|
3
95
|
## [8.0.1](https://github.com/workos/workos-ruby/compare/v8.0.0...v8.0.1) (2026-05-12)
|
|
4
96
|
|
|
5
97
|
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
workos (
|
|
4
|
+
workos (9.1.0)
|
|
5
5
|
jwt (~> 3.1)
|
|
6
6
|
logger (~> 1.7)
|
|
7
7
|
zeitwerk (~> 2.6)
|
|
@@ -23,7 +23,7 @@ GEM
|
|
|
23
23
|
erb (6.0.4)
|
|
24
24
|
hashdiff (1.2.1)
|
|
25
25
|
json (2.19.4)
|
|
26
|
-
jwt (3.
|
|
26
|
+
jwt (3.2.0)
|
|
27
27
|
base64
|
|
28
28
|
language_server-protocol (3.17.0.5)
|
|
29
29
|
lint_roller (1.1.0)
|
|
@@ -90,7 +90,7 @@ GEM
|
|
|
90
90
|
crack (>= 0.3.2)
|
|
91
91
|
hashdiff (>= 0.4.0, < 2.0.0)
|
|
92
92
|
webrick (1.9.2)
|
|
93
|
-
yard (0.9.
|
|
93
|
+
yard (0.9.44)
|
|
94
94
|
yard-markdown (0.7.1)
|
|
95
95
|
csv
|
|
96
96
|
rdoc
|
|
@@ -124,7 +124,7 @@ CHECKSUMS
|
|
|
124
124
|
erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9
|
|
125
125
|
hashdiff (1.2.1) sha256=9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1
|
|
126
126
|
json (2.19.4) sha256=670a7d333fb3b18ca5b29cb255eb7bef099e40d88c02c80bd42a3f30fe5239ac
|
|
127
|
-
jwt (3.
|
|
127
|
+
jwt (3.2.0) sha256=5419b1fe37b1da0982bd07051f573a8b8789ab724c2aa7e785e4784a3ed217d7
|
|
128
128
|
language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
|
|
129
129
|
lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
|
|
130
130
|
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
|
|
@@ -153,8 +153,8 @@ CHECKSUMS
|
|
|
153
153
|
unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
|
|
154
154
|
webmock (3.26.2) sha256=774556f2ea6371846cca68c01769b2eac0d134492d21f6d0ab5dd643965a4c90
|
|
155
155
|
webrick (1.9.2) sha256=beb4a15fc474defed24a3bda4ffd88a490d517c9e4e6118c3edce59e45864131
|
|
156
|
-
workos (
|
|
157
|
-
yard (0.9.
|
|
156
|
+
workos (9.1.0)
|
|
157
|
+
yard (0.9.44) sha256=eb087e9b631ccd887b049f303d489963945452d5e2a7eb49a5a74a7cf6887f28
|
|
158
158
|
yard-markdown (0.7.1) sha256=06c378632dfe7ba053be9ba469eb4701aa0470e36bcf7e5546f353eb90c1bfd1
|
|
159
159
|
zeitwerk (2.7.5) sha256=d8da92128c09ea6ec62c949011b00ed4a20242b255293dd66bf41545398f73dd
|
|
160
160
|
|
|
@@ -11,6 +11,7 @@ module WorkOS
|
|
|
11
11
|
name: :name,
|
|
12
12
|
obfuscated_value: :obfuscated_value,
|
|
13
13
|
last_used_at: :last_used_at,
|
|
14
|
+
expires_at: :expires_at,
|
|
14
15
|
permissions: :permissions,
|
|
15
16
|
created_at: :created_at,
|
|
16
17
|
updated_at: :updated_at
|
|
@@ -23,6 +24,7 @@ module WorkOS
|
|
|
23
24
|
:name,
|
|
24
25
|
:obfuscated_value,
|
|
25
26
|
:last_used_at,
|
|
27
|
+
:expires_at,
|
|
26
28
|
:permissions,
|
|
27
29
|
:created_at,
|
|
28
30
|
:updated_at
|
|
@@ -35,6 +37,7 @@ module WorkOS
|
|
|
35
37
|
@name = hash[:name]
|
|
36
38
|
@obfuscated_value = hash[:obfuscated_value]
|
|
37
39
|
@last_used_at = hash[:last_used_at]
|
|
40
|
+
@expires_at = hash[:expires_at]
|
|
38
41
|
@permissions = hash[:permissions] || []
|
|
39
42
|
@created_at = hash[:created_at]
|
|
40
43
|
@updated_at = hash[:updated_at]
|
|
@@ -5,30 +5,30 @@
|
|
|
5
5
|
module WorkOS
|
|
6
6
|
class ApiKeyCreated < WorkOS::Types::BaseModel
|
|
7
7
|
HASH_ATTRS = {
|
|
8
|
+
object: :object,
|
|
8
9
|
id: :id,
|
|
9
10
|
event: :event,
|
|
10
11
|
data: :data,
|
|
11
12
|
created_at: :created_at,
|
|
12
|
-
context: :context
|
|
13
|
-
object: :object
|
|
13
|
+
context: :context
|
|
14
14
|
}.freeze
|
|
15
15
|
|
|
16
16
|
attr_accessor \
|
|
17
|
+
:object,
|
|
17
18
|
:id,
|
|
18
19
|
:event,
|
|
19
20
|
:data,
|
|
20
21
|
:created_at,
|
|
21
|
-
:context
|
|
22
|
-
:object
|
|
22
|
+
:context
|
|
23
23
|
|
|
24
24
|
def initialize(json)
|
|
25
25
|
hash = self.class.normalize(json)
|
|
26
|
+
@object = hash[:object]
|
|
26
27
|
@id = hash[:id]
|
|
27
28
|
@event = hash[:event]
|
|
28
29
|
@data = hash[:data] ? WorkOS::ApiKeyCreatedData.new(hash[:data]) : nil
|
|
29
30
|
@created_at = hash[:created_at]
|
|
30
31
|
@context = hash[:context] ? WorkOS::EventContext.new(hash[:context]) : nil
|
|
31
|
-
@object = hash[:object]
|
|
32
32
|
end
|
|
33
33
|
end
|
|
34
34
|
end
|
|
@@ -11,6 +11,7 @@ module WorkOS
|
|
|
11
11
|
name: :name,
|
|
12
12
|
obfuscated_value: :obfuscated_value,
|
|
13
13
|
last_used_at: :last_used_at,
|
|
14
|
+
expires_at: :expires_at,
|
|
14
15
|
permissions: :permissions,
|
|
15
16
|
created_at: :created_at,
|
|
16
17
|
updated_at: :updated_at
|
|
@@ -23,6 +24,7 @@ module WorkOS
|
|
|
23
24
|
:name,
|
|
24
25
|
:obfuscated_value,
|
|
25
26
|
:last_used_at,
|
|
27
|
+
:expires_at,
|
|
26
28
|
:permissions,
|
|
27
29
|
:created_at,
|
|
28
30
|
:updated_at
|
|
@@ -35,6 +37,7 @@ module WorkOS
|
|
|
35
37
|
@name = hash[:name]
|
|
36
38
|
@obfuscated_value = hash[:obfuscated_value]
|
|
37
39
|
@last_used_at = hash[:last_used_at]
|
|
40
|
+
@expires_at = hash[:expires_at]
|
|
38
41
|
@permissions = hash[:permissions] || []
|
|
39
42
|
@created_at = hash[:created_at]
|
|
40
43
|
@updated_at = hash[:updated_at]
|
|
@@ -5,30 +5,30 @@
|
|
|
5
5
|
module WorkOS
|
|
6
6
|
class ApiKeyRevoked < WorkOS::Types::BaseModel
|
|
7
7
|
HASH_ATTRS = {
|
|
8
|
+
object: :object,
|
|
8
9
|
id: :id,
|
|
9
10
|
event: :event,
|
|
10
11
|
data: :data,
|
|
11
12
|
created_at: :created_at,
|
|
12
|
-
context: :context
|
|
13
|
-
object: :object
|
|
13
|
+
context: :context
|
|
14
14
|
}.freeze
|
|
15
15
|
|
|
16
16
|
attr_accessor \
|
|
17
|
+
:object,
|
|
17
18
|
:id,
|
|
18
19
|
:event,
|
|
19
20
|
:data,
|
|
20
21
|
:created_at,
|
|
21
|
-
:context
|
|
22
|
-
:object
|
|
22
|
+
:context
|
|
23
23
|
|
|
24
24
|
def initialize(json)
|
|
25
25
|
hash = self.class.normalize(json)
|
|
26
|
+
@object = hash[:object]
|
|
26
27
|
@id = hash[:id]
|
|
27
28
|
@event = hash[:event]
|
|
28
29
|
@data = hash[:data] ? WorkOS::ApiKeyRevokedData.new(hash[:data]) : nil
|
|
29
30
|
@created_at = hash[:created_at]
|
|
30
31
|
@context = hash[:context] ? WorkOS::EventContext.new(hash[:context]) : nil
|
|
31
|
-
@object = hash[:object]
|
|
32
32
|
end
|
|
33
33
|
end
|
|
34
34
|
end
|
|
@@ -3,32 +3,32 @@
|
|
|
3
3
|
# This file is auto-generated by oagen. Do not edit.
|
|
4
4
|
|
|
5
5
|
module WorkOS
|
|
6
|
-
class
|
|
6
|
+
class ApiKeyUpdated < WorkOS::Types::BaseModel
|
|
7
7
|
HASH_ATTRS = {
|
|
8
8
|
object: :object,
|
|
9
9
|
id: :id,
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
event: :event,
|
|
11
|
+
data: :data,
|
|
12
12
|
created_at: :created_at,
|
|
13
|
-
|
|
13
|
+
context: :context
|
|
14
14
|
}.freeze
|
|
15
15
|
|
|
16
16
|
attr_accessor \
|
|
17
17
|
:object,
|
|
18
18
|
:id,
|
|
19
|
-
:
|
|
20
|
-
:
|
|
19
|
+
:event,
|
|
20
|
+
:data,
|
|
21
21
|
:created_at,
|
|
22
|
-
:
|
|
22
|
+
:context
|
|
23
23
|
|
|
24
24
|
def initialize(json)
|
|
25
25
|
hash = self.class.normalize(json)
|
|
26
26
|
@object = hash[:object]
|
|
27
27
|
@id = hash[:id]
|
|
28
|
-
@
|
|
29
|
-
@
|
|
28
|
+
@event = hash[:event]
|
|
29
|
+
@data = hash[:data] ? WorkOS::ApiKeyUpdatedData.new(hash[:data]) : nil
|
|
30
30
|
@created_at = hash[:created_at]
|
|
31
|
-
@
|
|
31
|
+
@context = hash[:context] ? WorkOS::EventContext.new(hash[:context]) : nil
|
|
32
32
|
end
|
|
33
33
|
end
|
|
34
34
|
end
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# This file is auto-generated by oagen. Do not edit.
|
|
4
|
+
|
|
5
|
+
module WorkOS
|
|
6
|
+
class ApiKeyUpdatedData < WorkOS::Types::BaseModel
|
|
7
|
+
HASH_ATTRS = {
|
|
8
|
+
object: :object,
|
|
9
|
+
id: :id,
|
|
10
|
+
owner: :owner,
|
|
11
|
+
name: :name,
|
|
12
|
+
obfuscated_value: :obfuscated_value,
|
|
13
|
+
last_used_at: :last_used_at,
|
|
14
|
+
expires_at: :expires_at,
|
|
15
|
+
permissions: :permissions,
|
|
16
|
+
created_at: :created_at,
|
|
17
|
+
updated_at: :updated_at,
|
|
18
|
+
previous_attributes: :previous_attributes
|
|
19
|
+
}.freeze
|
|
20
|
+
|
|
21
|
+
attr_accessor \
|
|
22
|
+
:object,
|
|
23
|
+
:id,
|
|
24
|
+
:owner,
|
|
25
|
+
:name,
|
|
26
|
+
:obfuscated_value,
|
|
27
|
+
:last_used_at,
|
|
28
|
+
:expires_at,
|
|
29
|
+
:permissions,
|
|
30
|
+
:created_at,
|
|
31
|
+
:updated_at,
|
|
32
|
+
:previous_attributes
|
|
33
|
+
|
|
34
|
+
def initialize(json)
|
|
35
|
+
hash = self.class.normalize(json)
|
|
36
|
+
@object = hash[:object]
|
|
37
|
+
@id = hash[:id]
|
|
38
|
+
@owner = hash[:owner] ? (case hash[:owner][:type] when "organization" then WorkOS::ApiKeyUpdatedDataOwner.new(hash[:owner]) when "user" then WorkOS::UserApiKeyUpdatedDataOwner.new(hash[:owner]) else hash[:owner] end) : nil
|
|
39
|
+
@name = hash[:name]
|
|
40
|
+
@obfuscated_value = hash[:obfuscated_value]
|
|
41
|
+
@last_used_at = hash[:last_used_at]
|
|
42
|
+
@expires_at = hash[:expires_at]
|
|
43
|
+
@permissions = hash[:permissions] || []
|
|
44
|
+
@created_at = hash[:created_at]
|
|
45
|
+
@updated_at = hash[:updated_at]
|
|
46
|
+
@previous_attributes = hash[:previous_attributes] ? WorkOS::ApiKeyUpdatedDataPreviousAttribute.new(hash[:previous_attributes]) : nil
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# This file is auto-generated by oagen. Do not edit.
|
|
4
|
+
|
|
5
|
+
module WorkOS
|
|
6
|
+
class ApiKeyUpdatedDataPreviousAttribute < WorkOS::Types::BaseModel
|
|
7
|
+
HASH_ATTRS = {
|
|
8
|
+
expires_at: :expires_at
|
|
9
|
+
}.freeze
|
|
10
|
+
|
|
11
|
+
attr_accessor :expires_at
|
|
12
|
+
|
|
13
|
+
def initialize(json)
|
|
14
|
+
hash = self.class.normalize(json)
|
|
15
|
+
@expires_at = hash[:expires_at]
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -6,17 +6,20 @@ module WorkOS
|
|
|
6
6
|
class CreateOrganizationApiKey < WorkOS::Types::BaseModel
|
|
7
7
|
HASH_ATTRS = {
|
|
8
8
|
name: :name,
|
|
9
|
-
permissions: :permissions
|
|
9
|
+
permissions: :permissions,
|
|
10
|
+
expires_at: :expires_at
|
|
10
11
|
}.freeze
|
|
11
12
|
|
|
12
13
|
attr_accessor \
|
|
13
14
|
:name,
|
|
14
|
-
:permissions
|
|
15
|
+
:permissions,
|
|
16
|
+
:expires_at
|
|
15
17
|
|
|
16
18
|
def initialize(json)
|
|
17
19
|
hash = self.class.normalize(json)
|
|
18
20
|
@name = hash[:name]
|
|
19
21
|
@permissions = hash[:permissions] || []
|
|
22
|
+
@expires_at = hash[:expires_at]
|
|
20
23
|
end
|
|
21
24
|
end
|
|
22
25
|
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# This file is auto-generated by oagen. Do not edit.
|
|
4
|
+
|
|
5
|
+
module WorkOS
|
|
6
|
+
class ExpireApiKey < WorkOS::Types::BaseModel
|
|
7
|
+
HASH_ATTRS = {
|
|
8
|
+
expires_at: :expires_at
|
|
9
|
+
}.freeze
|
|
10
|
+
|
|
11
|
+
attr_accessor :expires_at
|
|
12
|
+
|
|
13
|
+
def initialize(json)
|
|
14
|
+
hash = self.class.normalize(json)
|
|
15
|
+
@expires_at = hash[:expires_at]
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -11,6 +11,7 @@ module WorkOS
|
|
|
11
11
|
name: :name,
|
|
12
12
|
obfuscated_value: :obfuscated_value,
|
|
13
13
|
last_used_at: :last_used_at,
|
|
14
|
+
expires_at: :expires_at,
|
|
14
15
|
permissions: :permissions,
|
|
15
16
|
created_at: :created_at,
|
|
16
17
|
updated_at: :updated_at
|
|
@@ -23,6 +24,7 @@ module WorkOS
|
|
|
23
24
|
:name,
|
|
24
25
|
:obfuscated_value,
|
|
25
26
|
:last_used_at,
|
|
27
|
+
:expires_at,
|
|
26
28
|
:permissions,
|
|
27
29
|
:created_at,
|
|
28
30
|
:updated_at
|
|
@@ -35,6 +37,7 @@ module WorkOS
|
|
|
35
37
|
@name = hash[:name]
|
|
36
38
|
@obfuscated_value = hash[:obfuscated_value]
|
|
37
39
|
@last_used_at = hash[:last_used_at]
|
|
40
|
+
@expires_at = hash[:expires_at]
|
|
38
41
|
@permissions = hash[:permissions] || []
|
|
39
42
|
@created_at = hash[:created_at]
|
|
40
43
|
@updated_at = hash[:updated_at]
|
|
@@ -11,6 +11,7 @@ module WorkOS
|
|
|
11
11
|
name: :name,
|
|
12
12
|
obfuscated_value: :obfuscated_value,
|
|
13
13
|
last_used_at: :last_used_at,
|
|
14
|
+
expires_at: :expires_at,
|
|
14
15
|
permissions: :permissions,
|
|
15
16
|
created_at: :created_at,
|
|
16
17
|
updated_at: :updated_at,
|
|
@@ -24,6 +25,7 @@ module WorkOS
|
|
|
24
25
|
:name,
|
|
25
26
|
:obfuscated_value,
|
|
26
27
|
:last_used_at,
|
|
28
|
+
:expires_at,
|
|
27
29
|
:permissions,
|
|
28
30
|
:created_at,
|
|
29
31
|
:updated_at,
|
|
@@ -37,6 +39,7 @@ module WorkOS
|
|
|
37
39
|
@name = hash[:name]
|
|
38
40
|
@obfuscated_value = hash[:obfuscated_value]
|
|
39
41
|
@last_used_at = hash[:last_used_at]
|
|
42
|
+
@expires_at = hash[:expires_at]
|
|
40
43
|
@permissions = hash[:permissions] || []
|
|
41
44
|
@created_at = hash[:created_at]
|
|
42
45
|
@updated_at = hash[:updated_at]
|
data/lib/workos/api_keys.rb
CHANGED
|
@@ -61,17 +61,20 @@ module WorkOS
|
|
|
61
61
|
# @param organization_id [String] Unique identifier of the Organization.
|
|
62
62
|
# @param name [String] The name for the API key.
|
|
63
63
|
# @param permissions [Array<String>, nil] The permission slugs to assign to the API key.
|
|
64
|
+
# @param expires_at [String, nil] The timestamp when the API key should expire. Must be a future timestamp. If omitted, the key does not expire.
|
|
64
65
|
# @param request_options [Hash] (see WorkOS::Types::RequestOptions)
|
|
65
66
|
# @return [WorkOS::OrganizationApiKeyWithValue]
|
|
66
67
|
def create_organization_api_key(
|
|
67
68
|
organization_id:,
|
|
68
69
|
name:,
|
|
69
70
|
permissions: nil,
|
|
71
|
+
expires_at: nil,
|
|
70
72
|
request_options: {}
|
|
71
73
|
)
|
|
72
74
|
body = {
|
|
73
75
|
"name" => name,
|
|
74
|
-
"permissions" => permissions
|
|
76
|
+
"permissions" => permissions,
|
|
77
|
+
"expires_at" => expires_at
|
|
75
78
|
}.compact
|
|
76
79
|
response = @client.request(
|
|
77
80
|
method: :post,
|
|
@@ -124,5 +127,30 @@ module WorkOS
|
|
|
124
127
|
)
|
|
125
128
|
nil
|
|
126
129
|
end
|
|
130
|
+
|
|
131
|
+
# Expire an API key
|
|
132
|
+
# @param id [String] The unique ID of the API key.
|
|
133
|
+
# @param expires_at [String, nil] When the API key should expire. If omitted or in the past, the key expires immediately. Use null to clear a scheduled future expiration.
|
|
134
|
+
# @param request_options [Hash] (see WorkOS::Types::RequestOptions)
|
|
135
|
+
# @return [WorkOS::ApiKey]
|
|
136
|
+
def create_api_key_expire(
|
|
137
|
+
id:,
|
|
138
|
+
expires_at: nil,
|
|
139
|
+
request_options: {}
|
|
140
|
+
)
|
|
141
|
+
body = {
|
|
142
|
+
"expires_at" => expires_at
|
|
143
|
+
}.compact
|
|
144
|
+
response = @client.request(
|
|
145
|
+
method: :post,
|
|
146
|
+
path: "/api_keys/#{WorkOS::Util.encode_path(id)}/expire",
|
|
147
|
+
auth: true,
|
|
148
|
+
body: body,
|
|
149
|
+
request_options: request_options
|
|
150
|
+
)
|
|
151
|
+
result = WorkOS::ApiKey.new(response.body)
|
|
152
|
+
result.last_response = WorkOS::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
|
|
153
|
+
result
|
|
154
|
+
end
|
|
127
155
|
end
|
|
128
156
|
end
|
|
@@ -2,12 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
# This file is auto-generated by oagen. Do not edit.
|
|
4
4
|
|
|
5
|
-
require "json"
|
|
6
|
-
|
|
7
5
|
module WorkOS
|
|
8
|
-
class AuditLogAction
|
|
9
|
-
include HashProvider
|
|
10
|
-
|
|
6
|
+
class AuditLogAction < WorkOS::Types::BaseModel
|
|
11
7
|
HASH_ATTRS = {
|
|
12
8
|
object: :object,
|
|
13
9
|
name: :name,
|
|
@@ -24,8 +20,7 @@ module WorkOS
|
|
|
24
20
|
:updated_at
|
|
25
21
|
|
|
26
22
|
def initialize(json)
|
|
27
|
-
hash =
|
|
28
|
-
hash = hash.transform_keys(&:to_sym) if hash.keys.first.is_a?(String)
|
|
23
|
+
hash = self.class.normalize(json)
|
|
29
24
|
@object = hash[:object]
|
|
30
25
|
@name = hash[:name]
|
|
31
26
|
@schema = hash[:schema] ? WorkOS::AuditLogSchema.new(hash[:schema]) : nil
|
|
@@ -2,12 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
# This file is auto-generated by oagen. Do not edit.
|
|
4
4
|
|
|
5
|
-
require "json"
|
|
6
|
-
|
|
7
5
|
module WorkOS
|
|
8
|
-
class AuditLogExport
|
|
9
|
-
include HashProvider
|
|
10
|
-
|
|
6
|
+
class AuditLogExport < WorkOS::Types::BaseModel
|
|
11
7
|
HASH_ATTRS = {
|
|
12
8
|
object: :object,
|
|
13
9
|
id: :id,
|
|
@@ -26,8 +22,7 @@ module WorkOS
|
|
|
26
22
|
:updated_at
|
|
27
23
|
|
|
28
24
|
def initialize(json)
|
|
29
|
-
hash =
|
|
30
|
-
hash = hash.transform_keys(&:to_sym) if hash.keys.first.is_a?(String)
|
|
25
|
+
hash = self.class.normalize(json)
|
|
31
26
|
@object = hash[:object]
|
|
32
27
|
@id = hash[:id]
|
|
33
28
|
@state = hash[:state]
|
|
@@ -5,21 +5,30 @@
|
|
|
5
5
|
module WorkOS
|
|
6
6
|
class AuditLogSchema < WorkOS::Types::BaseModel
|
|
7
7
|
HASH_ATTRS = {
|
|
8
|
+
object: :object,
|
|
9
|
+
version: :version,
|
|
8
10
|
actor: :actor,
|
|
9
11
|
targets: :targets,
|
|
10
|
-
metadata: :metadata
|
|
12
|
+
metadata: :metadata,
|
|
13
|
+
created_at: :created_at
|
|
11
14
|
}.freeze
|
|
12
15
|
|
|
13
16
|
attr_accessor \
|
|
17
|
+
:object,
|
|
18
|
+
:version,
|
|
14
19
|
:actor,
|
|
15
20
|
:targets,
|
|
16
|
-
:metadata
|
|
21
|
+
:metadata,
|
|
22
|
+
:created_at
|
|
17
23
|
|
|
18
24
|
def initialize(json)
|
|
19
25
|
hash = self.class.normalize(json)
|
|
26
|
+
@object = hash[:object]
|
|
27
|
+
@version = hash[:version]
|
|
20
28
|
@actor = hash[:actor] ? WorkOS::AuditLogSchemaActor.new(hash[:actor]) : nil
|
|
21
29
|
@targets = (hash[:targets] || []).map { |item| item ? WorkOS::AuditLogSchemaTarget.new(item) : nil }
|
|
22
30
|
@metadata = hash[:metadata] || {}
|
|
31
|
+
@created_at = hash[:created_at]
|
|
23
32
|
end
|
|
24
33
|
end
|
|
25
34
|
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# This file is auto-generated by oagen. Do not edit.
|
|
4
|
+
|
|
5
|
+
module WorkOS
|
|
6
|
+
class AuditLogSchemaInput < WorkOS::Types::BaseModel
|
|
7
|
+
HASH_ATTRS = {
|
|
8
|
+
actor: :actor,
|
|
9
|
+
targets: :targets,
|
|
10
|
+
metadata: :metadata
|
|
11
|
+
}.freeze
|
|
12
|
+
|
|
13
|
+
attr_accessor \
|
|
14
|
+
:actor,
|
|
15
|
+
:targets,
|
|
16
|
+
:metadata
|
|
17
|
+
|
|
18
|
+
def initialize(json)
|
|
19
|
+
hash = self.class.normalize(json)
|
|
20
|
+
@actor = hash[:actor] ? WorkOS::AuditLogSchemaActorInput.new(hash[:actor]) : nil
|
|
21
|
+
@targets = (hash[:targets] || []).map { |item| item ? WorkOS::AuditLogSchemaTargetInput.new(item) : nil }
|
|
22
|
+
@metadata = hash[:metadata] || {}
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -3,5 +3,20 @@
|
|
|
3
3
|
# This file is auto-generated by oagen. Do not edit.
|
|
4
4
|
|
|
5
5
|
module WorkOS
|
|
6
|
-
AuditLogSchemaTarget
|
|
6
|
+
class AuditLogSchemaTarget < WorkOS::Types::BaseModel
|
|
7
|
+
HASH_ATTRS = {
|
|
8
|
+
type: :type,
|
|
9
|
+
metadata: :metadata
|
|
10
|
+
}.freeze
|
|
11
|
+
|
|
12
|
+
attr_accessor \
|
|
13
|
+
:type,
|
|
14
|
+
:metadata
|
|
15
|
+
|
|
16
|
+
def initialize(json)
|
|
17
|
+
hash = self.class.normalize(json)
|
|
18
|
+
@type = hash[:type]
|
|
19
|
+
@metadata = hash[:metadata] || {}
|
|
20
|
+
end
|
|
21
|
+
end
|
|
7
22
|
end
|