Тема
Users API
GET /v1/users/search
Пошук користувачів за іменем або нікнеймом.
Авторизація: Bearer <accessToken>
Query параметри
| Параметр | Тип | Опис |
|---|---|---|
q | string | Пошуковий запит (мін 2 символи) |
limit | number | Кількість результатів (за замовчуванням 10) |
Запит
http
GET /v1/users/search?q=mari&limit=10
Authorization: Bearer <accessToken>Відповідь 200
json
{
"data": [
{
"id": "user-uuid",
"name": "Марія Коваль",
"username": "maria_koval",
"avatar": "https://cdn.pisd.uk/avatars/uuid.jpg",
"bio": "Люблю пікніки та подорожі",
"isFollowing": false
}
]
}TIP
Пошук не повертає заблокованих користувачів або тих, хто заблокував поточного.
GET /v1/users/:id
Отримати публічний профіль користувача.
Авторизація: опціональна
Відповідь 200
json
{
"id": "user-uuid",
"name": "Марія Коваль",
"username": "maria_koval",
"avatar": "https://cdn.pisd.uk/avatars/uuid.jpg",
"bio": "Люблю пікніки та подорожі",
"followersCount": 42,
"followingCount": 18,
"eventsCount": 5,
"isFollowing": false,
"isBlocked": false
}Помилки
| Код | Причина |
|---|---|
404 | Користувача не знайдено |
403 | Профіль приватний — немає доступу |
POST /v1/users/:id/follow
Підписатися на користувача.
Авторизація: Bearer <accessToken>
Відповідь 200
json
{
"isFollowing": true,
"followersCount": 43
}DELETE /v1/users/:id/follow
Відписатися від користувача.
Авторизація: Bearer <accessToken>
Відповідь 200
json
{
"isFollowing": false,
"followersCount": 42
}POST /v1/users/:id/block
Заблокувати користувача (на рівні застосунку).
Авторизація: Bearer <accessToken>
Відповідь 200
json
{ "isBlocked": true }WARNING
Блокування приховує користувача зі стрічки і забороняє йому надсилати вам повідомлення. Це окремо від адміністративного блокування акаунту.
DELETE /v1/users/:id/block
Розблокувати користувача.
Авторизація: Bearer <accessToken>
Відповідь 200
json
{ "isBlocked": false }PATCH /v1/me
Оновити профіль поточного користувача.
Авторизація: Bearer <accessToken>
Тіло запиту
json
{
"name": "Марія Коваль",
"username": "maria_koval",
"bio": "Люблю пікніки та подорожі",
"city": "Київ"
}Відповідь 200
Повертає оновлений профіль у форматі GET /v1/auth/me.
DELETE /v1/me
Видалити власний акаунт.
Авторизація: Bearer <accessToken>
Тіло запиту
json
{
"confirmCode": "1234"
}Потрібен OTP-код, надісланий на номер телефону (підтвердження GDPR).
Відповідь 200
json
{ "success": true }DANGER
Всі дані видаляються незворотно. Токени анулюються негайно.