-
Start PostgreSQL with Docker
docker-compose up -d
-
Build the project
mvn clean install
-
Run the application
mvn spring-boot:run
-
Run tests
mvn test -
Access Swagger UI
http://localhost:8080/api/swagger-ui.html
POST /api/v1/auth/login- Login with username and password
POST /api/v1/customer/stock-order- Create a new stock orderGET /api/v1/customer/stock-order- List your stock orders (filter by status, side, dates)DELETE /api/v1/customer/stock-order/{orderId}/cancel- Cancel your pending order
POST /api/v1/admin/stock-order- Create stock order for any customerGET /api/v1/admin/stock-order- List all stock orders (filter by customer, status, side, dates)DELETE /api/v1/admin/stock-order/{orderId}/cancel- Cancel any orderPUT /api/v1/admin/stock-order/match-all- Match all pending buy/sell orders
GET /api/v1/asset/customer- View your assetsPOST /api/v1/asset/customer/topup- Deposit fiat money (TRY)POST /api/v1/asset/customer/sell-all- Sell all your stock assets for TRY
GET /api/v1/asset/admin- View any customer's assets (filter by asset name)
All endpoints except /api/v1/auth/login require a JWT token in the Authorization header:
Authorization: Bearer <your-token>