---
title: "Login"
method: POST
path: "/api/auth/login"
tags: ["Auth"]
---

# Login

`POST /api/auth/login`

Authenticate with email and password.

Returns a Bearer token valid for 30 days.
If MFA is enabled, returns mfa_required=True with a challenge_id instead.

## Request body

- LoginRequest
  - `email` string, required
  - `password` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/aabiro/apis/xcelsior.md) · [All operations](https://skmtc.net/aabiro/apis/xcelsior/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aabiro/xcelsior/versions/b4f5ef136e6a/schema)
