Сервис реализует REST API для банковского приложения на Go с PostgreSQL, JWT-аутентификацией, выпуском карт, переводами, кредитами, аналитикой, интеграцией с ЦБ РФ и SMTP
docker compose up --buildПосле запуска будут доступны:
- API:
http://localhost:8080 - SMTP-веб-интерфейс Mailpit:
http://localhost:8025
GET /healthPOST /registerPOST /loginGET /rates/key
POST /accountsGET /accountsPOST /accounts/{accountId}/depositPOST /accounts/{accountId}/withdrawGET /accounts/{accountId}/predict?days=30POST /transferPOST /cardsGET /cardsPOST /cards/{cardId}/payPOST /creditsGET /credits/{creditId}/scheduleGET /analytics
Для защищенных эндпоинтов нужно передавать заголовок:
Authorization: Bearer <JWT>
curl -X POST http://localhost:8080/register -H 'Content-Type: application/json' -d '{"email":"user@example.com","username":"user","password":"password"}'curl -X POST http://localhost:8080/login -H 'Content-Type: application/json' -d '{"email":"user@example.com","password":"password"}'curl -X POST http://localhost:8080/accounts -H 'Content-Type: application/json' -H 'Authorization: Bearer <JWT>' -d '{"name":"Основной счет"}'curl -X POST http://localhost:8080/cards -H 'Content-Type: application/json' -H 'Authorization: Bearer <JWT>' -d '{"account_id":"<ACCOUNT_ID>"}'curl -X POST http://localhost:8080/credits -H 'Content-Type: application/json' -H 'Authorization: Bearer <JWT>' -d '{"account_id":"<ACCOUNT_ID>","principal":50000,"term_months":12}'