---
title: "Authenticate user with email verification check (V2)"
method: POST
path: "/internal/api/auth/v2/login"
tags: ["USERS"]
---

# Authenticate user with email verification check (V2)

`POST /internal/api/auth/v2/login`

## Request

- Base URL: `https://api.signalshq.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.signalshq.io/internal/api/auth/v2/login`
- Auth: none declared

Authenticate a user with email verification requirement.

    The system will:
    1. Validate credentials
    2. Check if email is verified
    3. Generate JWT token if verified
    4. Return user details and token

    Returns 403 error if email is not verified.

## Request body

- UserLoginRequest
  - `email` string, email, required
  - `password` string, required
  - `recaptcha_token` string, nullable: Google reCAPTCHA token (v3 or v2)
  - `recaptcha_version` 'v2' | 'v3'

## Response `200`

User authenticated successfully with access token

- UserLoginResponse
  - `access_token` string, required
  - `token_type` string, required
  - `access_token_expire_in_minutes` integer, required
  - `user_details` UserDetails, required
    - `id` string
    - `email` string, email, nullable
    - `name` string, nullable
    - `status` string, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/signalshq/apis/signals-api.md) - [All operations](https://skmtc.dev/signalshq/apis/signals-api/llms.txt) - [OpenAPI document](https://skmtc.dev/signalshq/apis/signals-api/revisions/2c22af3b5576?raw)
