Skip to content

Cheater121/exchange_rates_api

Repository files navigation

Exchange Rates API

Exchange Rates API - это веб-сервис на базе FastAPI, который предоставляет курсы обмена валют и функции конвертации валют. Он позволяет вам получать доступ к последним обменным курсам и выполнять конвертацию валют.

Фичи

  • Получение последних обменных курсов для различных валют.
  • Конвертация одной валюты в другую на основе последних курсов.

Деплой

Следуйте следующим шагам:

Предварительные требования

Шаги

  1. Клонируйте репозиторий:

    git clone https://github.com/Cheater121/exchange_rates_api.git
  2. Перейдите в директорию проекта:

    cd exchange_rates_api
  3. Соберите и запустите контейнеры приложения и базы данных:

    docker-compose up -d
  4. Ваше приложение работет. Можно его протестировать по адресу: http://localhost:8001.

  5. Чтобы остановить сервис:

    docker-compose down

Примеры использования

Обновить курсы валют

Ручка для обновления курсов валют в базе данных:

GET http://localhost:8001/api/update_rates

Конвертировать валюты по валютной паре

Для конвертации валют нужно направить POST-запрос с кодами валют и количеством для обмена:

POST http://localhost:8001/api/convert

Request Body:
{
  "from_currency_code": "RUB",
  "to_currency_code": "USD",
  "count": 10
}

Узнать дату последнего обновления курсов

Вы можете узнать дату, когда последний раз были обновлены курсы валют в базе данных:

GET http://localhost:8001/api/last_update

Больше информации о форматах ответа / возможных ошибках можете посмотреть в Swagger UI по адресу.

GET http://localhost:8001/docs

П.С. Так как старт приложения идет через Gunicorn, который управляет воркерами Uvicorn'а, и по-умолчанию привязано ко всем портам машины (0.0.0.0), то вместо localhost для доступа извне (в т.ч. из интернета) можно использовать IP-адрес машины. Будьте бдительны.

Releases

No releases published

Packages

No packages published

Languages