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

# Login

`POST /v1/auth/login`

Authenticates a user and creates a new access token.

## Request body

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

## Response `200`

Login successful

- object
  - `token` string, required — The access token to be used in standard Bearer authentication.
  - `expires_at` string, date-time, required — The timestamp when this access token expires.
  - `user` User, required
    - `id` string, uuid, required — Unique user identifier.
    - `email` string, email, required — Email address of the user.
    - `is_verified` boolean, required — Whether the user's email has been verified.
    - `is_admin` boolean, required — Whether the user is an admin.
    - `created_at` string, date-time, required — Timestamp when the user was created.

## Other responses

- `400` — Invalid request body
- `401` — Invalid credentials
- `403` — User is not verified
- `500` — Internal Server Error

---

[API](https://skmtc.net/px0-ai/apis/px0-api.md) · [All operations](https://skmtc.net/px0-ai/apis/px0-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/px0-ai/px0-api/versions/3ed72443989d/schema)
