You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
При помилці валідації повертається <Помилка від Joi або іншої бібліотеки валідації> і статусом 400 Bad Request.
Якщо пароль або імейл невірний, повертається json з ключем {"message": "Email or password is wrong"} і статусом 401 Unauthorized.
В іншому випадку, порівнюється пароль для знайденого користувача; якщо паролі збігаються, створюється пара токенів (refreshToken та accessToken), зберігається в поточного юзера і повертається об'єкт і статус 200 OK:
Якщо користувача не існує, повертається json з ключем {"message": "Not authorized"} і статусом 401 Unauthorized.
При помилці валідації повертається <Помилка від Joi або іншої бібліотеки валідації> і статусом 400 Bad Request.
При зміні email або password видаляється пара токенів (refreshToken та accessToken) у поточного юзера.
Якщо значення полів name, email збігаються з попередніми, повертається json з ключем {"message": "Such data is already in use"} і статусом 400 Bad Request.
В іншому випадку повертається об'єкт і статус 200 OK:
Якщо користувача не існує, повертається json з ключем {"message": "Not authorized"} і статусом 401 Unauthorized.
При помилці валідації повертається <Помилка від Joi або іншої бібліотеки валідації> і статусом 400 Bad Request.
Якщо з body все добре, виконується відправка листа з коментарем юзера на імейл служби підтримки (taskpro.project@gmail.com) та листа зі сповіщенням про отримання запиту про допомогу на імейл користувача.
За результатом успішної роботи повертається json з ключем {"message": "Reply email has been sent"} зі статусом 200 OK.
POST https://askpro-backend.onrender.com/api/auth/refresh - Refresh user token
Отримує body у форматі з обов'язковим полем refreshToken з валідацією:
{
"refreshToken": "examplerefreshToken"
}
При помилці валідації повертається <Помилка від Joi або іншої бібліотеки валідації> і статусом 400 Bad Request.
Якщо з body все добре, перевіряється чи існує юзер з таким refreshToken.
Якщо не існує, повертається json з ключем {"message": "Invalid token"} і статусом 403 Forbidden.
Якщо існує, створюється пара токенів (refreshToken та accessToken), зберігається в поточного юзера і повертається об'єкт і статус 200 OK:
Якщо такого id немає, повертається json з ключем "message": "Board with id not found" і статусом 404 Not Found.
Якщо такий id є, повертається об'єкт дошки (містить об'єкт користувача (owner), масив об'єктів колонок (columns) з масивом об'єктів карток (cards)) в json-форматі зі статусом 200 OK:
Якщо поле background не передане або передане значення "no-background", в об'єкті дошки в полі backgroundURL повертаєтся пустий об'єкт {}.
Якщо в поле background передане інше значення, в об'єкті дошки в полі backgroundURL повертаєтся об'єкт у форматі:
{
"backgroundURL": {
"mobile_1x": "посилання на зображення для мобільної версії 1x",
"mobile_2x": "посилання на зображення для мобільної версії 2x",
"tablet_1x": "посилання на зображення для планшетної версії 1x",
"tablet_2x": "посилання на зображення для планшетної версії 2x",
"desktop_1x": "посилання на зображення для десктопної версії 1x",
"desktop_2x": "посилання на зображення для десктопної версії 2x",
}
}
Якщо поле background передане значення "no-background", в об'єкті дошки в полі backgroundURL повертаєтся пустий об'єкт {}.
Якщо в поле background передане інше значення, в об'єкті дошки в полі backgroundURL повертаєтся об'єкт у форматі:
{
"backgroundURL": {
"mobile_1x": "посилання на зображення для мобільної версії 1x",
"mobile_2x": "посилання на зображення для мобільної версії 2x",
"tablet_1x": "посилання на зображення для планшетної версії 1x",
"tablet_2x": "посилання на зображення для планшетної версії 2x",
"desktop_1x": "посилання на зображення для десктопної версії 1x",
"desktop_2x": "посилання на зображення для десктопної версії 2x",
}
}
Columns
POST https://askpro-backend.onrender.com/api/columns - Add new column
Отримує body у форматі:
{
"title": "exampletitle",
"board": "exampleid"
}
Усі поля обов'язкові з валідацією.
В полі board отримує id дошки, в яку додається колонка. Якщо дошки з таким id немає, повертається json з ключем "message": "Such board with id does not exist" і статусом 404 Not Found.
Якщо в базі є дошка з колонкою з такою назвою, повертається json з ключем {"message": "Such column with title has already been added to this Board"} і статусом 409 Conflict.
Отримує body в json-форматі c оновленням поля title:
{
"title": "exampletitle",
"board": "exampleid"
}
Якщо body немає, повертається json з ключем {"message": "missing fields"} і статусом 400 Bad Request.
Якщо такого id немає, повертається json з ключем "message": "Column with id not found" і статусом 404 Not Found.
Якщо в базі є дошка з колонкою з такою назвою, повертається json з ключем {"message": "Such column with title has already been added to this Board"} і статусом 409 Conflict.
Якщо такий id і з body все добре, є повертається оновлений об'єкт картки зі статусом 200 OK:
В полі column отримує id колонки, в яку додається картка. Якщо колонки з таким id немає, повертається json з ключем "message": "Column with id not found" і статусом 404 Not Found.