---
title: "POST /login/email-otp/verify"
method: POST
path: "/login/email-otp/verify"
tags: ["auth"]
---

# POST /login/email-otp/verify

`POST /login/email-otp/verify`

Verify OTP

## Request body

- object
  - `email` string, email, required
  - `otp` string, required
  - `otpClientId` string, required

## Response `200`

Default Response

- unknown

## Other responses

- `400` — Bad request
- `401` — No auth
- `403` — Forbidden
- `404` — Not found
- `422` — Invalid payload
- `500` — Uncaught error

## Changes

- **2026-08-07** `8dff1e93bc68` — 1 info
  - api operation id `postloginEmailOtpVerify` removed and replaced with `postLoginEmailOtpVerify`

[Change history](https://skmtc.dev/scalar/apis/core/changes/login/email-otp/verify/post.md)

---

[API](https://skmtc.dev/scalar/apis/core.md) · [All operations](https://skmtc.dev/scalar/apis/core/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/scalar/core/revisions/2c53f2191a3e/schema)
