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

  1. Confirm you are logged in as the intended account ('atuin login' again)
  2. Verify the username/key combination used for authentication
  3. 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.