Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
* [#123](https://github.com/workos/workos-rust/pull/123) feat(generated): regenerate from spec (2 changes)

**Features**
* **[user_management](https://workos.com/docs/reference/authkit/user)**:
* Added model `SendRadarSmsChallenge`
* Added model `SendRadarSmsChallengeResponse`
* Added model `UrnWorkosOAuthGrantTypeRadarEmailChallengeCodeSessionAuthenticateRequest`
* Added model `UrnWorkosOAuthGrantTypeRadarSmsChallengeCodeSessionAuthenticateRequest`
* Added model `MagicAuthSendMagicAuthCodeAndReturnResponse`
* Added model `UserCreateResponse`
* Added `ip_address` to `CreateMagicCodeAndReturn`
* Added `user_agent` to `CreateMagicCodeAndReturn`
* Added `radar_auth_attempt_id` to `CreateMagicCodeAndReturn`
* Added `signals_id` to `CreateMagicCodeAndReturn`
* Added `ip_address` to `CreateUser`
* Added `user_agent` to `CreateUser`
* Added `signals_id` to `CreateUser`
* Added `signals_id` to `AuthorizationCodeSessionAuthenticateRequest`
* Added `signals_id` to `PasswordSessionAuthenticateRequest`
* Added `radar_auth_attempt_id` to `PasswordSessionAuthenticateRequest`
* Added `radar_auth_attempt_id` to `UrnWorkosOAuthGrantTypeMagicAuthCodeSessionAuthenticateRequest`
* Added endpoint `POST /user_management/radar_challenges`
* **[radar](https://workos.com/docs/reference/radar)**:
* Added `signals_id` to `RadarStandaloneAssessRequest`

**Fixes**
* **[user_management](https://workos.com/docs/reference/authkit/user)**:
* Changed request body for `UserManagementAuthentication.authenticate`
* Changed response of `UserManagementUsers.create` from `User` to `UserCreateResponse`
* Changed response of `UserManagementMagicAuth.sendMagicAuthCodeAndReturn` from `MagicAuth` to `MagicAuthSendMagicAuthCodeAndReturnResponse`
14 changes: 13 additions & 1 deletion .oagen-manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"version": 2,
"language": "rust",
"generatedAt": "2026-07-02T14:58:53.128Z",
"generatedAt": "2026-07-02T17:29:47.884Z",
"files": [
"src/enums/audit_log_configuration_log_stream_state.rs",
"src/enums/audit_log_configuration_log_stream_type.rs",
Expand Down Expand Up @@ -463,6 +463,7 @@
"src/models/magic_auth_code_session_authenticate_request.rs",
"src/models/magic_auth_created.rs",
"src/models/magic_auth_created_data.rs",
"src/models/magic_auth_send_magic_auth_code_and_return_response.rs",
"src/models/mfa_totp_session_authenticate_request.rs",
"src/models/mod.rs",
"src/models/new_connect_application_secret.rs",
Expand Down Expand Up @@ -537,7 +538,9 @@
"src/models/pipes_connected_account_reauthorization_needed.rs",
"src/models/portal_link_response.rs",
"src/models/profile.rs",
"src/models/radar_email_challenge_code_session_authenticate_request.rs",
"src/models/radar_list_entry_already_present_response.rs",
"src/models/radar_sms_challenge_code_session_authenticate_request.rs",
"src/models/radar_standalone_assess_request.rs",
"src/models/radar_standalone_delete_radar_list_entry_request.rs",
"src/models/radar_standalone_response.rs",
Expand All @@ -562,6 +565,8 @@
"src/models/role_updated.rs",
"src/models/role_updated_data.rs",
"src/models/send_email_change.rs",
"src/models/send_radar_sms_challenge.rs",
"src/models/send_radar_sms_challenge_response.rs",
"src/models/send_verification_email_response.rs",
"src/models/session_created.rs",
"src/models/session_created_data.rs",
Expand Down Expand Up @@ -609,6 +614,7 @@
"src/models/user_authentication_factor_list_list_metadata.rs",
"src/models/user_consent_option.rs",
"src/models/user_consent_option_choice.rs",
"src/models/user_create_response.rs",
"src/models/user_created.rs",
"src/models/user_deleted.rs",
"src/models/user_identities_get_item.rs",
Expand Down Expand Up @@ -1025,6 +1031,7 @@
"tests/fixtures/magic_auth_code_session_authenticate_request.json",
"tests/fixtures/magic_auth_created.json",
"tests/fixtures/magic_auth_created_data.json",
"tests/fixtures/magic_auth_send_magic_auth_code_and_return_response.json",
"tests/fixtures/mfa_totp_session_authenticate_request.json",
"tests/fixtures/new_connect_application_secret.json",
"tests/fixtures/object_list_response.json",
Expand Down Expand Up @@ -1098,7 +1105,9 @@
"tests/fixtures/pipes_connected_account_reauthorization_needed.json",
"tests/fixtures/portal_link_response.json",
"tests/fixtures/profile.json",
"tests/fixtures/radar_email_challenge_code_session_authenticate_request.json",
"tests/fixtures/radar_list_entry_already_present_response.json",
"tests/fixtures/radar_sms_challenge_code_session_authenticate_request.json",
"tests/fixtures/radar_standalone_assess_request.json",
"tests/fixtures/radar_standalone_delete_radar_list_entry_request.json",
"tests/fixtures/radar_standalone_response.json",
Expand All @@ -1123,6 +1132,8 @@
"tests/fixtures/role_updated.json",
"tests/fixtures/role_updated_data.json",
"tests/fixtures/send_email_change.json",
"tests/fixtures/send_radar_sms_challenge.json",
"tests/fixtures/send_radar_sms_challenge_response.json",
"tests/fixtures/send_verification_email_response.json",
"tests/fixtures/session_created.json",
"tests/fixtures/session_created_data.json",
Expand Down Expand Up @@ -1170,6 +1181,7 @@
"tests/fixtures/user_authentication_factor_list_list_metadata.json",
"tests/fixtures/user_consent_option.json",
"tests/fixtures/user_consent_option_choice.json",
"tests/fixtures/user_create_response.json",
"tests/fixtures/user_created.json",
"tests/fixtures/user_deleted.json",
"tests/fixtures/user_identities_get_item.json",
Expand Down
3 changes: 3 additions & 0 deletions src/models/authorization_code_session_authenticate_request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,7 @@ pub struct AuthorizationCodeSessionAuthenticateRequest {
/// The user agent string from the user's browser.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
/// An optional Radar signals ID to correlate client-side signals with this authentication attempt.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub signals_id: Option<String>,
}
12 changes: 12 additions & 0 deletions src/models/create_magic_code_and_return.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,16 @@ pub struct CreateMagicCodeAndReturn {
/// The invitation token to associate with this magic code.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub invitation_token: Option<crate::SecretString>,
/// The IP address of the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub ip_address: Option<String>,
/// The user agent string from the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
/// The ID of an existing Radar authentication attempt to associate with this request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub radar_auth_attempt_id: Option<String>,
/// An optional Radar signals ID to correlate client-side signals with this request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub signals_id: Option<String>,
}
9 changes: 9 additions & 0 deletions src/models/create_user.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,15 @@ pub struct CreateUser {
/// The external ID of the user.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub external_id: Option<String>,
/// The IP address of the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub ip_address: Option<String>,
/// The user agent string from the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
/// An optional Radar signals ID to correlate client-side signals with this request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub signals_id: Option<String>,
/// The password to set for the user. Mutually exclusive with `password_hash` and `password_hash_type`.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub password: Option<crate::SecretString>,
Expand Down
3 changes: 3 additions & 0 deletions src/models/magic_auth_code_session_authenticate_request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,7 @@ pub struct MagicAuthCodeSessionAuthenticateRequest {
/// The user agent string from the user's browser.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
/// The ID of an existing Radar authentication attempt to associate with this authentication.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub radar_auth_attempt_id: Option<String>,
}
13 changes: 13 additions & 0 deletions src/models/magic_auth_send_magic_auth_code_and_return_response.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MagicAuthSendMagicAuthCodeAndReturnResponse {
/// The ID of the Radar authentication attempt created for this request when Radar is enabled. Pass this value to the authenticate endpoint to associate the subsequent authentication with this Radar attempt.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub radar_auth_attempt_id: Option<String>,
}
12 changes: 12 additions & 0 deletions src/models/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -325,6 +325,7 @@ mod magic_auth;
mod magic_auth_code_session_authenticate_request;
mod magic_auth_created;
mod magic_auth_created_data;
mod magic_auth_send_magic_auth_code_and_return_response;
mod mfa_totp_session_authenticate_request;
mod new_connect_application_secret;
mod object_list_response;
Expand Down Expand Up @@ -398,7 +399,9 @@ mod pipes_connected_account_disconnected;
mod pipes_connected_account_reauthorization_needed;
mod portal_link_response;
mod profile;
mod radar_email_challenge_code_session_authenticate_request;
mod radar_list_entry_already_present_response;
mod radar_sms_challenge_code_session_authenticate_request;
mod radar_standalone_assess_request;
mod radar_standalone_delete_radar_list_entry_request;
mod radar_standalone_response;
Expand All @@ -423,6 +426,8 @@ mod role_list;
mod role_updated;
mod role_updated_data;
mod send_email_change;
mod send_radar_sms_challenge;
mod send_radar_sms_challenge_response;
mod send_verification_email_response;
mod session_created;
mod session_created_data;
Expand Down Expand Up @@ -470,6 +475,7 @@ mod user_authentication_factor_list;
mod user_authentication_factor_list_list_metadata;
mod user_consent_option;
mod user_consent_option_choice;
mod user_create_response;
mod user_created;
mod user_deleted;
mod user_identities_get_item;
Expand Down Expand Up @@ -856,6 +862,7 @@ pub use magic_auth::*;
pub use magic_auth_code_session_authenticate_request::*;
pub use magic_auth_created::*;
pub use magic_auth_created_data::*;
pub use magic_auth_send_magic_auth_code_and_return_response::*;
pub use mfa_totp_session_authenticate_request::*;
pub use new_connect_application_secret::*;
pub use object_list_response::*;
Expand Down Expand Up @@ -929,7 +936,9 @@ pub use pipes_connected_account_disconnected::*;
pub use pipes_connected_account_reauthorization_needed::*;
pub use portal_link_response::*;
pub use profile::*;
pub use radar_email_challenge_code_session_authenticate_request::*;
pub use radar_list_entry_already_present_response::*;
pub use radar_sms_challenge_code_session_authenticate_request::*;
pub use radar_standalone_assess_request::*;
pub use radar_standalone_delete_radar_list_entry_request::*;
pub use radar_standalone_response::*;
Expand All @@ -954,6 +963,8 @@ pub use role_list::*;
pub use role_updated::*;
pub use role_updated_data::*;
pub use send_email_change::*;
pub use send_radar_sms_challenge::*;
pub use send_radar_sms_challenge_response::*;
pub use send_verification_email_response::*;
pub use session_created::*;
pub use session_created_data::*;
Expand Down Expand Up @@ -1001,6 +1012,7 @@ pub use user_authentication_factor_list::*;
pub use user_authentication_factor_list_list_metadata::*;
pub use user_consent_option::*;
pub use user_consent_option_choice::*;
pub use user_create_response::*;
pub use user_created::*;
pub use user_deleted::*;
pub use user_identities_get_item::*;
Expand Down
6 changes: 6 additions & 0 deletions src/models/password_session_authenticate_request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,10 @@ pub struct PasswordSessionAuthenticateRequest {
/// The user agent string from the user's browser.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
/// An optional Radar signals ID to correlate client-side signals with this authentication attempt.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub signals_id: Option<String>,
/// The ID of an existing Radar authentication attempt to associate with this authentication.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub radar_auth_attempt_id: Option<String>,
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RadarEmailChallengeCodeSessionAuthenticateRequest {
/// The client ID of the application.
pub client_id: String,
/// The client secret of the application.
pub client_secret: crate::SecretString,
pub grant_type: String,
/// The one-time code from the Radar email challenge.
pub code: String,
/// The ID of the Radar email challenge being verified.
pub radar_challenge_id: String,
/// The pending authentication token from a previous authentication attempt.
pub pending_authentication_token: crate::SecretString,
/// The IP address of the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub ip_address: Option<String>,
/// A unique identifier for the device.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub device_id: Option<String>,
/// The user agent string from the user's browser.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RadarSmsChallengeCodeSessionAuthenticateRequest {
/// The client ID of the application.
pub client_id: String,
/// The client secret of the application.
pub client_secret: crate::SecretString,
pub grant_type: String,
/// The one-time code from the Radar SMS challenge.
pub code: String,
/// The ID of the Radar SMS verification being confirmed.
pub verification_id: String,
/// The phone number the Radar SMS challenge was sent to.
pub phone_number: String,
/// The pending authentication token from a previous authentication attempt.
pub pending_authentication_token: crate::SecretString,
/// The IP address of the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub ip_address: Option<String>,
/// A unique identifier for the device.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub device_id: Option<String>,
/// The user agent string from the user's browser.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
}
3 changes: 3 additions & 0 deletions src/models/radar_standalone_assess_request.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,7 @@ pub struct RadarStandaloneAssessRequest {
pub auth_method: RadarStandaloneAssessRequestAuthMethod,
/// The action being performed.
pub action: RadarStandaloneAssessRequestAction,
/// An optional Radar signals ID for the request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub signals_id: Option<String>,
}
22 changes: 22 additions & 0 deletions src/models/send_radar_sms_challenge.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SendRadarSmsChallenge {
/// The ID of the user to send the SMS challenge to.
pub user_id: String,
/// The pending authentication token from a previous authentication attempt that triggered the Radar challenge.
pub pending_authentication_token: crate::SecretString,
/// The phone number to send the SMS verification code to.
pub phone_number: String,
/// The IP address of the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub ip_address: Option<String>,
/// The user agent string from the user's request.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub user_agent: Option<String>,
}
14 changes: 14 additions & 0 deletions src/models/send_radar_sms_challenge_response.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SendRadarSmsChallengeResponse {
/// The ID of the SMS verification. Pass this to the authenticate endpoint to verify the code.
pub verification_id: String,
/// The phone number the verification code was sent to.
pub phone_number: String,
}
13 changes: 13 additions & 0 deletions src/models/user_create_response.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct UserCreateResponse {
/// The ID of the Radar authentication attempt created for this request when Radar is enabled. Pass this value to the authenticate endpoint to associate the subsequent authentication with this Radar attempt.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub radar_auth_attempt_id: Option<String>,
}
Loading
Loading