Basri-akbas / bank-api

The Banking API implements a complex domain model flow to banking scenario. The flow simulates a real world application in terms of having a variety of banking options and business rules.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Banking Api Back-end

The Banking API implements a complex domain model flow to banking scenario. The flow simulates a real world application in terms of having a variety of banking options and business rules.

Technologies

  • Spring Boot (JPA, Web, Devtools, Validation, Security)
  • Spring Framework
  • PostgreSQL
  • Maven
  • Javax
  • Jsonwebtoken
  • Lombok
  • Swagger
Application starts on localhost port 8080
  • [http://localhost:8080/bank/api/user/*]
  • [http://localhost:8080/bank/api/admin/*]
  • [http://localhost:8080/bank/api/account/*]
  • [http://localhost:8080/bank/api/transfer/*]

Available Services

Http Method Path Usage
GET /bank/api/user/auth get user by ssn
GET /bank/api/admin/{id}/auth get user by id (preauthorize admin)
GET /bank/api/admin/auth/all get all users (preauthorize admin)
POST /bank/api/user/register register
POST /bank/api/user/login login
PUT /bank/api/user/auth update to user
PUT /bank/api/admin/{id}/auth update to user (preauthorize admin)
PATCH /bank/api/user/auth update to password
DELETE /bank/api/admin/{id}/auth delete to user (preauthorize admin)

... continues

NOTE: All method except signup/login methods, needs Authorization Bearer token in header

About

The Banking API implements a complex domain model flow to banking scenario. The flow simulates a real world application in terms of having a variety of banking options and business rules.

License:MIT License


Languages

Language:Java 100.0%