---
title: "Register"
method: POST
path: "/auth/register"
tags: ["Auth"]
---

# Register

`POST /auth/register`

Create a new account with email and password. A verification email is sent automatically. Rate limited to 3 requests/minute per IP.

## Request body

- object
  - `email` string, email, required
  - `password` string, required — Minimum 8 characters
  - `name` string — Optional display name

## Response `200`

Registration successful

- AuthResponse
  - `success` boolean
  - `user` UserObject
    - `id` string
    - `email` string, email
    - `name` string
    - `plan` 'free' | 'starter' | 'pro'
    - `avatarUrl` string, nullable
    - `emailVerified` boolean
    - `isAdmin` boolean
    - `createdAt` string, date-time
  - `accessToken` string — JWT access token (15 min expiry). Store in memory only.
  - `message` string

## Other responses

- `400` — Email already registered or invalid input
- `429` — Rate limited (3/min per IP)

---

[API](https://skmtc.dev/snapapi/apis/snapapi-screenshot-web-data-api.md) · [All operations](https://skmtc.dev/snapapi/apis/snapapi-screenshot-web-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/snapapi/snapapi-screenshot-web-data-api/revisions/b12ff2791613/schema)
