Skip to content
This repository was archived by the owner on May 13, 2026. It is now read-only.

Commit 96e1ceb

Browse files
fix(user-management): add reset password response
1 parent 4625149 commit 96e1ceb

1 file changed

Lines changed: 18 additions & 8 deletions

File tree

src/user_management/operations/reset_password.rs

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,13 @@ pub struct ResetPasswordParams<'a> {
1616
pub new_password: &'a str,
1717
}
1818

19+
/// The response for [`ResetPassword`].
20+
#[derive(Debug, Deserialize)]
21+
pub struct ResetPasswordResponse {
22+
/// The corresponding user object.
23+
pub user: User,
24+
}
25+
1926
/// An error returned from [`ResetPassword`].
2027
#[derive(Debug, Error, Deserialize)]
2128
#[serde(tag = "code", rename_all = "snake_case")]
@@ -113,7 +120,7 @@ pub trait ResetPassword {
113120
/// # async fn run() -> WorkOsResult<(), ResetPasswordError> {
114121
/// let workos = WorkOs::new(&ApiKey::from("sk_example_123456789"));
115122
///
116-
/// let user = workos
123+
/// let response = workos
117124
/// .user_management()
118125
/// .reset_password(&ResetPasswordParams {
119126
/// token: &PasswordResetToken::from("stpIJ48IFJt0HhSIqjf8eppe0"),
@@ -126,21 +133,21 @@ pub trait ResetPassword {
126133
async fn reset_password(
127134
&self,
128135
params: &ResetPasswordParams<'_>,
129-
) -> WorkOsResult<User, ResetPasswordError>;
136+
) -> WorkOsResult<ResetPasswordResponse, ResetPasswordError>;
130137
}
131138

132139
#[async_trait]
133140
impl ResetPassword for UserManagement<'_> {
134141
async fn reset_password(
135142
&self,
136143
params: &ResetPasswordParams<'_>,
137-
) -> WorkOsResult<User, ResetPasswordError> {
144+
) -> WorkOsResult<ResetPasswordResponse, ResetPasswordError> {
138145
let url = self
139146
.workos
140147
.base_url()
141148
.join("/user_management/password_reset/confirm")?;
142149

143-
let user = self
150+
let response = self
144151
.workos
145152
.client()
146153
.post(url)
@@ -151,10 +158,10 @@ impl ResetPassword for UserManagement<'_> {
151158
.handle_unauthorized_error()?
152159
.handle_reset_password_error()
153160
.await?
154-
.json::<User>()
161+
.json::<ResetPasswordResponse>()
155162
.await?;
156163

157-
Ok(user)
164+
Ok(response)
158165
}
159166
}
160167

@@ -199,7 +206,7 @@ mod test {
199206
.create_async()
200207
.await;
201208

202-
let user = workos
209+
let response = workos
203210
.user_management()
204211
.reset_password(&ResetPasswordParams {
205212
token: &PasswordResetToken::from("stpIJ48IFJt0HhSIqjf8eppe0"),
@@ -208,6 +215,9 @@ mod test {
208215
.await
209216
.unwrap();
210217

211-
assert_eq!(user.id, UserId::from("user_01E4ZCR3C56J083X43JQXF3JK5"))
218+
assert_eq!(
219+
response.user.id,
220+
UserId::from("user_01E4ZCR3C56J083X43JQXF3JK5")
221+
)
212222
}
213223
}

0 commit comments

Comments
 (0)