/v1/user
Параметр |
Значение |
Method |
PUT/PATH |
Authorization |
+ |
Query parameters |
- |
- Вопрос на подумать, делать PATCH - т.е. изменять только переданные поля, либо делать PUT и заменять объект целиком?
- При получении запроса осуществляет проверка наличия accessToken в Header: Authorization, если не найден вернуть ошибку 401,
- Если токен найден проверяется срок действия токена, если просрочен вернуть ошибку 419 - Authentication Timeout,
- Если срок действия валиден найти связанного с токеном пользователя
- Обновить поля в БД в соответсвии с запросом.
- Вернуть ответ модель пользователя.
Пример запроса
Перечень полей примерный, необходимо сверяться со схемой БД, а так же разумным минимумом информации.
{
"firstName": "",
"surame": "",
"middleName": "",
"username": "",
"imagePath":"",
"location":"",
"about": "",
"role":""
}
Пример ответа
Перечень полей примерный, необходимо сверяться со схемой БД, а так же разумным максимумом информации.
{
"firstName": "",
"surame": "",
"middleName": "",
"username": "",
"imagePath":"",
"location":"",
"about": "",
"role":""
}
/v1/user
Параметр |
Значение |
Method |
GET |
Authorization |
+ |
Query parameters |
- |
- Получить авторизацию пользователя
- Проверить, что токен не просрочен, если просрочен вернуть ошибку 419 - Authentication Timeout
- Получить из БД по токену запись о пользователе,
- Получить из БД Список проектов пользователя, - Пока что не получаем.
- Получить из БД Список контактов пользователя,
- Отправить Ответ
Пример ответа
{
"role": "Founder",
"name": "Дмитрий Бондарев",
"contacts": [
{
"id": 64,
"title": "Telegram",
"link": "http://t.me/dmitrybondarev"
},
{
"id": 61,
"title": "Openland",
"link": "https://openland.com/bondarev"
},
{
"id": 63,
"title": "LinkedIn",
"link": "https://www.linkedin.com/in/bondarev/"
},
{
"id": 62,
"title": "Facebook",
"link": "https://www.facebook.com/dmitry.bondarev.75"
}
],
"about": "Serial entrepreneur for 28 of my 53 years. 8 startups, 2 exits. \nПомогаю техническим командам сделать проект бизнесом.",
"imagePath": "https://i.imgur.com/CQKb2yw.jpg",
"email": "[email protected]",
"location": "St.-Petersburg",
"id": "some uuid string"
}
/v1/users/:userId
Параметр |
Значение |
Method |
GET |
Authorization |
+ |
Query parameters |
- |
Path parameters |
userId |
- Получить авторизацию пользователя
- Проверить, что токен не просрочен, если просрочен вернуть ошибку 419 - Authentication Timeout
- Получить из БД по userId запись о пользователе,
- Получить из БД Список проектов пользователя, - Пока что не получаем.
- Получить из БД Список контактов пользователя,
- получить признак пользователь в избранном,
- Отправить Ответ
Пример ответа
{
"role": "Founder",
"name": "Дмитрий Бондарев",
"contacts": [
{
"id": 64,
"title": "Telegram",
"link": "http://t.me/dmitrybondarev"
},
{
"id": 61,
"title": "Openland",
"link": "https://openland.com/bondarev"
},
{
"id": 63,
"title": "LinkedIn",
"link": "https://www.linkedin.com/in/bondarev/"
},
{
"id": 62,
"title": "Facebook",
"link": "https://www.facebook.com/dmitry.bondarev.75"
}
],
"about": "Serial entrepreneur for 28 of my 53 years. 8 startups, 2 exits. \nПомогаю техническим командам сделать проект бизнесом.",
"imagePath": "https://i.imgur.com/CQKb2yw.jpg",
"email": "[email protected]",
"location": "St.-Petersburg",
"id": "some uuid string",
"isFavorite": true
}
/v1/users/
Параметр |
Значение |
Method |
GET |
Authorization |
+ |
Query parameters |
- |
- Получить авторизацию пользователя
- Проверить, что токен не просрочен, если просрочен вернуть ошибку 419 - Authentication Timeout
- Получить из БД Список пользователей + получить признак пользователь в избранном или нет,
- Отправить Ответ
Пример ответа
[{
"role": "Founder",
"name": "Дмитрий Бондарев",
"about": "Serial entrepreneur for 28 of my 53 years. 8 startups, 2 exits. \nПомогаю техническим командам сделать проект бизнесом.",
"imagePath": "https://i.imgur.com/CQKb2yw.jpg",
"email": "[email protected]",
"location": "St.-Petersburg",
"id": "some uuid string",
"isFavorite": true
}]