atuinsh/atuin · error
invalid login details
Error message
invalid login details
What it means
Match arm in the auth-module change_password: the PATCH /account/password response was HTTP 403 FORBIDDEN, meaning the supplied credentials are not authorized for this operation on this account — typically a wrong login identity/key pair rather than a wrong current password (that maps to 401).
Source
Thrown at crates/atuin-client/src/auth.rs:208
let client = self.authenticated_client()?;
let url = self.address.append_path("account/password")?;
let resp = client
.patch(url)
.json(&ChangePasswordRequest {
current_password: current_password.to_string(),
new_password: new_password.to_string(),
})
.send()
.await?;
match resp.status().as_u16() {
200 => Ok(MutateResponse::Success),
401 => {
bail!("current password is incorrect");
}
403 => {
bail!("invalid login details");
}
_ => {
bail!("unknown error");
}
}
}
async fn delete_account(
&self,
password: &str,
_totp_code: Option<&str>,
) -> Result<MutateResponse> {
let client = self.authenticated_client()?;
let url = self.address.append(["account"])?;
let resp =
client.delete(url).json(&serde_json::json!({ "password": password })).send().await?;
View on GitHub (pinned to c0c717ab04)
Solutions
- Confirm you are logged in as the intended account ('atuin login' again)
- Verify the username/key combination used for authentication
- Check server-side account restrictions with the host
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/atuin-client/src/auth.rs:208 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of atuinsh/atuin@c0c717ab04 (2026-09-12).
Data as JSON: /api/errors/36f24d84bd4b94f2.
Report an issue: GitHub.