API - Unatart/team-dev-course GitHub Wiki

API и функциональность

Функциональность приложения

  1. Регистрация (имя пользователя, e-mail (без верификации), пароль)
  2. Авторизация по имени пользователя или e-mail и паролю
  3. Ввод информации о заработке (Текстовая строка для описания заработка(уникальное), сумма). Датой заработка считается дата ввода информации о нем.
  4. Добавление категории расходов (Название).
  5. Ввод информации о расходе (Текстовая строка для описания заработка(уникальное), сумма, категория из уже присутствующих).
  6. Изменение описания и суммы заработка.
  7. Изменение описания, суммы и категории расхода.
  8. Вывод информации о сумме доходов, расходов, их разнице, вывод круговой диаграммы о расходах по категориям.Информация выводится за введенный пользователем промежуток дат.
  9. Баланс пользователя всегда положительный.

Совместимость

Веб-приложение для настольного ПК без мобильной версии. Разработка ведется под браузер Mozilla Firefox 66.0.2 (64 bit) Mozilla Firefox for Ubuntu canonical 1.0. Совместимость с другими версиями и браузерами не гарантируется. Разрешение экрана 1920х1080.

Требования к данным аутентификации/регистрации

  • Логин : 1-30 символов, содержит _.0-9a-z
  • Email : /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,6}$/
  • Пароль : 1-30 символов

Запросы

1. Регистрация : http://localhost:5000/api/users

Параметры : name,  email , password  

Метод: POST

2. Аутентификация : http://localhost:5000/api/login

Параметры : username/email, password

Метод: POST

5. Добавить затрату : http://localhost:5000/api/spendings/

Параметры : email, description, money, category, date

Метод: POST

6. Изменить затрату : http://localhost:5000/api/spendings/[id]

Параметры : email, description, money, category, date

Метод: UPDATE

7. Удалить затрату : http://localhost:5000/api/spendings/[id]

Метод: DELETE

8. Добавить зарплату : http://localhost:5000/api/arrivals/

Параметры : email, description, money, date

Метод: POST

9. Изменить зарплату : http://localhost:5000/api/arrivals/[id]

Параметры : email, description, money, date

Метод: UPDATE

10. Удалить зарплату : http://localhost:5000/api/arrivals/[id]

Метод: DELETE

11. Получить информацию о пользователе: http://localhost:5000/api/users/<string:username>

Параметры : json : name, email, spendings[{description, money, category, date}], arrivals[{description, money, date}]

Метод: GET

Коды ошибок

Success : 200, 201

Error : 400, 403, 404