Skip to content

API Overview

Peaced API побудовано на NestJS і доступне за адресою https://api.pisd.uk.

Base URL

https://api.pisd.uk/v1

Усі ендпоінти мають префікс /v1/. Локальна розробка: http://localhost:3000/v1.

Авторизація

Захищені ендпоінти вимагають JWT-токен у заголовку:

http
Authorization: Bearer <accessToken>

accessToken отримується при верифікації OTP (термін 15 хв). Для оновлення — POST /v1/auth/refresh.

Ролі

РольДоступ
ГістьПублічні ендпоінти (без токена)
userЗахищені ендпоінти (JwtAuthGuard)
organizer+ управління своїми подіями
admin+ адмін-ендпоінти (AdminGuard)

Формат відповідей

Успішна відповідь:

json
{
  "data": { ... },
  "meta": { "total": 100, "page": 1, "limit": 20 }
}

Помилка:

json
{
  "statusCode": 400,
  "message": "Validation failed",
  "errors": ["phone must be a valid phone number"]
}

Коди статусів

КодЗначення
200OK
201Created
400Bad Request (валідація)
401Unauthorized (немає/прострочений токен)
403Forbidden (недостатньо прав або feature flag вимкнено)
404Not Found
429Too Many Requests (rate limit)
500Internal Server Error

Rate limiting

ЕндпоінтЛіміт
POST /auth/otp/start5 запитів / 10 хв на IP
POST /auth/otp/check5 запитів / 10 хв на IP
Всі інші100 запитів / хв на токен

Версіонування

Поточна версія: v1. Майбутні версії — окремий префікс /v2/ без порушення сумісності.

Розділи документації

Peaced — платформа подій