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.
- Spring Boot (JPA, Web, Devtools, Validation, Security)
- Spring Framework
- PostgreSQL
- Maven
- Javax
- Jsonwebtoken
- Lombok
- Swagger
- [http://localhost:8080/bank/api/user/*]
- [http://localhost:8080/bank/api/admin/*]
- [http://localhost:8080/bank/api/account/*]
- [http://localhost:8080/bank/api/transfer/*]
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) |