---
title: "Check Email Canonical"
method: POST
path: "/v1/auth/check-email-canonical"
tags: ["domain-limit"]
---

# Check Email Canonical

`POST /v1/auth/check-email-canonical`

## Request

- Base URL: `https://api.pioneer.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.pioneer.ai/v1/auth/check-email-canonical`
- Auth: none required
- TypeScript: <https://skmtc.dev/pioneer/apis/brain-api/docs/v1/auth/check-email-canonical/post.ts> (a function with typed inputs; its response is checked against the schema)

Check whether a Gmail address is a dot-trick duplicate of another account.

Only meaningful for ``@gmail.com`` / ``@googlemail.com``; every other
domain answers ``duplicate: false``, as does the submitter's own address
— a returning user is not their own duplicate. The unauthenticated route
is IP-rate-limited.

Args:
    request: Incoming request, required by the rate limiter.
    body: Full address submitted at signup.

Returns:
    Whether a different address canonicalises to the submitted one.

## Request body

- EmailCanonicalRequest: Request body for checking Gmail canonical duplicate status.
  - `email` string, email, required

## Response `200`

Successful Response

- EmailCanonicalResponse: Response describing whether a canonical Gmail duplicate exists.
  - `duplicate` boolean, required

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-24** `0e5e86e2bae5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pioneer/apis/brain-api/changes/v1/auth/check-email-canonical/post.md)

---

[API](https://skmtc.dev/pioneer/apis/brain-api.md) - [All operations](https://skmtc.dev/pioneer/apis/brain-api/llms.txt) - [OpenAPI document](https://skmtc.dev/pioneer/apis/brain-api/revisions/0e5e86e2bae5?raw)
