Skip to content

Events API ​

GET /v1/events ​

Список публічних подій із фільтрами.

Авторизація: опціональна (якщо є токен — повертає myRsvp, isSaved)

Query параметри ​

ПараметрТипОпис
latnumberШирота поточного місця
lngnumberДовгота поточного місця
radiusnumberРадіус пошуку (км), за замовчуванням 50
categorystringSlug категорії
dateFromISO 8601Початок діапазону дат
dateToISO 8601Кінець діапазону дат
qstringПовнотекстовий пошук
pagenumberСторінка (за замовчуванням 1)
limitnumberРозмір сторінки (за замовчуванням 20, макс 50)

Запит ​

http
GET /v1/events?lat=50.45&lng=30.52&radius=10&category=music&page=1&limit=20
Authorization: Bearer <accessToken>

Відповідь 200 ​

json
{
  "data": [
    {
      "id": "uuid",
      "title": "Jazz у парку",
      "description": "Вечір живої музики",
      "coverUrl": "https://cdn.pisd.uk/covers/uuid.jpg",
      "startAt": "2024-07-20T18:00:00Z",
      "endAt": "2024-07-20T21:00:00Z",
      "location": {
        "address": "вул. Хрещатик 1, Київ",
        "lat": 50.45,
        "lng": 30.52
      },
      "category": { "slug": "music", "name": "Музика", "emoji": "🎵" },
      "price": 0,
      "capacity": 100,
      "rsvpCount": 45,
      "myRsvp": "going",
      "isSaved": false,
      "visibility": "public"
    }
  ],
  "meta": { "total": 128, "page": 1, "limit": 20 }
}

GET /v1/events/:id ​

Повна інформація про подію.

Авторизація: опціональна

Відповідь 200 ​

json
{
  "id": "uuid",
  "title": "Jazz у парку",
  "description": "Вечір живої музики",
  "coverUrl": "https://cdn.pisd.uk/covers/uuid.jpg",
  "startAt": "2024-07-20T18:00:00Z",
  "endAt": "2024-07-20T21:00:00Z",
  "location": {
    "address": "вул. Хрещатик 1, Київ",
    "lat": 50.45,
    "lng": 30.52
  },
  "category": { "slug": "music", "name": "Музика", "emoji": "🎵" },
  "organizer": {
    "id": "uuid",
    "name": "Іван Петров",
    "avatar": "https://cdn.pisd.uk/avatars/uuid.jpg"
  },
  "price": 0,
  "capacity": 100,
  "rsvpCount": 45,
  "bookedCount": 30,
  "visibility": "public",
  "template": { "slug": "picnic", "name": "Пікнік" },
  "enabledModules": ["bringList"],
  "myRsvp": "going",
  "myBooking": null,
  "isSaved": false
}

POST /v1/events/:id/rsvp ​

Встановити або прибрати RSVP.

Авторизація: Bearer <accessToken>

Тіло запиту ​

json
{
  "status": "going"
}
Значення statusОпис
"going"Підтвердити участь
"interested"Відмітити як цікаво
nullПрибрати відмітку

Відповідь 200 ​

json
{
  "myRsvp": "going",
  "rsvpCount": 46
}

POST /v1/events/:id/save ​

Зберегти або видалити зі збережених.

Авторизація: Bearer <accessToken>

Тіло запиту ​

json
{ "saved": true }

Відповідь 200 ​

json
{ "isSaved": true }

Пошук подій за текстом.

Авторизація: опціональна

Query параметри ​

ПараметрТипОпис
qstringПошуковий запит (обов'язкове)
pagenumberСторінка
limitnumberРозмір

Запит ​

http
GET /v1/events/search?q=jazz+park&limit=10

Відповідь — той самий формат, що й GET /v1/events.

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