POST /api/v1/auth/register

Регистрация публичного пользователя.

Base URL: https://<host>/ (пример: http://localhost:5000). Соглашения, обзор Public API, Swagger UI.

Аутентификация: None

Тело запроса:

ПолеТипОбяз.Описание
usernamestringда3–64 символа
emailstringдаmax 128
passwordstringдаmin 8, max 128
consent_pdbooleanнетсогласие на обработку ПД
consent_versionstringнетверсия политики, max 64

Ответы:

КодОписание
201{ "success": true, "data": {...} }
422validation_error
409email_already_exists, username_already_exists
403registration_disabled, consent_required

Заголовки запроса

ЗаголовокОбяз.Описание
Content-Typeдаapplication/json

Минимальный пример запроса

{
  "username": "demo",
  "email": "demo@example.ru",
  "password": "DemoPass1",
  "consent_pd": true
}

Пример успешного ответа

{
  "success": true,
  "data": {
    "user_id": 42,
    "username": "demo",
    "email": "demo@example.ru",
    "email_verified": false
  }
}

Пример ошибки

{
  "success": false,
  "error": {
    "code": "validation_error",
    "message": "Invalid request data"
  }
}

Пример curl

curl -X POST http://localhost:5000/api/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{"username":"demo","email":"demo@example.ru","password":"DemoPass1","consent_pd":true}'

См. также: Коды ошибок Auth.