---
title: "Signup"
method: POST
path: "/v1/auth/signup"
tags: ["auth"]
---

# Signup

`POST /v1/auth/signup`

## Request

- Base URL: `https://api.ctindex.io`
- URL: `https://api.ctindex.io/v1/auth/signup`
- Auth: none declared

Create a user (unverified) and send the verification email.

Returns ``{ok: true, email}`` — no session cookie yet; the user must
click the email link to verify, at which point ``/v1/auth/verify-email``
issues the session and welcomes them in.

On duplicate email we still return 201 with a generic message — that
keeps signup from being an account-enumeration oracle.

## Request body

- SignupRequest
  - `email` string, email, required
  - `password` string, required
  - `name` string, nullable
  - `signup_source` string, nullable
  - `signup_referrer` string, nullable
  - `watch_domain` string, nullable

## Response `201`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ctindex/apis/certindex-api.md) · [All operations](https://skmtc.dev/ctindex/apis/certindex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ctindex/apis/certindex-api/revisions/d5bc0ec85bc9?raw)
