---
title: "Email Login"
method: POST
path: "/api/auth/email/login"
---

# Email Login

`POST /api/auth/email/login`

Verify the OTP and return {token, user}.

Existing-account only — unknown emails get the generic
"no pending code" error so the endpoint can't be enumerated.
Inactivated accounts are also rejected here (the activation flow
is still the only way to flip is_active=1).

## Request body

- EmailLoginIn
  - `email` string, required
  - `code` string, required

## Response `200`

Successful Response

- object

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/omicos/apis/omicos-server.md) · [All operations](https://skmtc.dev/omicos/apis/omicos-server/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/omicos/omicos-server/revisions/a00b94573ffe/schema)
