From 3e390f5126df13ae3484202753a9fe927d6dd665 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Francisco=20L=C3=B3pez?= Date: Thu, 13 Nov 2025 10:48:52 +0100 Subject: [PATCH] standardize ApiTags and add ApiBearerAuth where necessary --- server/src/app.controller.ts | 2 ++ server/src/modules/admin/admin.controller.ts | 2 +- server/src/modules/auth/auth.controller.ts | 3 +-- server/src/modules/coingecko/coingecko.controller.ts | 2 +- server/src/modules/growdata/growdata.controller.ts | 2 +- server/src/modules/health/health.controller.ts | 11 +++++++++-- .../src/modules/marketdata/marketdata.controller.ts | 2 +- .../mixin/exchange/exchange-client.controller.ts | 2 +- .../src/modules/mixin/exchange/exchange.controller.ts | 10 ++++++++-- .../src/modules/mixin/message/message.controller.ts | 4 +++- .../modules/mixin/rebalance/rebalance.controller.ts | 10 ++++++++-- server/src/modules/mixin/user/user.controller.ts | 5 ++++- .../src/modules/performance/performance.controller.ts | 2 ++ server/src/modules/spotdata/spotdata.controller.ts | 2 +- server/src/modules/strategy/strategy.controller.ts | 2 +- server/src/modules/trade/trade.controller.ts | 2 +- 16 files changed, 45 insertions(+), 18 deletions(-) diff --git a/server/src/app.controller.ts b/server/src/app.controller.ts index 3d5af0b4..f5e376d5 100644 --- a/server/src/app.controller.ts +++ b/server/src/app.controller.ts @@ -1,6 +1,8 @@ import { Controller, Get, Redirect } from '@nestjs/common'; +import { ApiExcludeController } from '@nestjs/swagger'; @Controller() +@ApiExcludeController() export class AppController { constructor() {} diff --git a/server/src/modules/admin/admin.controller.ts b/server/src/modules/admin/admin.controller.ts index cca4307c..55f9ee09 100644 --- a/server/src/modules/admin/admin.controller.ts +++ b/server/src/modules/admin/admin.controller.ts @@ -39,7 +39,7 @@ import { SpotdataTradingPairDto } from './spotData/adminSpot.dto'; @Controller('admin') @UseGuards(JwtAuthGuard) @ApiBearerAuth() -@ApiTags('Admin') +@ApiTags('Mixin') export class AdminController { constructor( private readonly adminStrategyService: AdminStrategyService, diff --git a/server/src/modules/auth/auth.controller.ts b/server/src/modules/auth/auth.controller.ts index 5296cd88..37fb2720 100644 --- a/server/src/modules/auth/auth.controller.ts +++ b/server/src/modules/auth/auth.controller.ts @@ -3,8 +3,7 @@ import { ApiBody, ApiQuery, ApiResponse, ApiTags } from '@nestjs/swagger'; // Im import { AuthService } from 'src/modules/auth/auth.service'; import { CustomLogger } from '../logger/logger.service'; -// Add @ApiTags to categorize the endpoint in Swagger -@ApiTags('Auth') +@ApiTags('Mixin') @Controller('auth') export class AuthController { private readonly logger = new CustomLogger(AuthController.name); diff --git a/server/src/modules/coingecko/coingecko.controller.ts b/server/src/modules/coingecko/coingecko.controller.ts index 04abd0f8..853490f3 100644 --- a/server/src/modules/coingecko/coingecko.controller.ts +++ b/server/src/modules/coingecko/coingecko.controller.ts @@ -8,7 +8,7 @@ import { CoinMarketChartResponse, } from 'coingecko-api-v3'; -@ApiTags('marketdata') +@ApiTags('Marketdata') @Controller('coingecko') export class CoingeckoController { constructor(private readonly coingeckoProxy: CoingeckoProxyService) {} diff --git a/server/src/modules/growdata/growdata.controller.ts b/server/src/modules/growdata/growdata.controller.ts index 49629342..f3b5056c 100644 --- a/server/src/modules/growdata/growdata.controller.ts +++ b/server/src/modules/growdata/growdata.controller.ts @@ -2,7 +2,7 @@ import { ApiTags } from '@nestjs/swagger'; import { Controller, Get } from '@nestjs/common'; import { GrowdataService } from 'src/modules/growdata/growdata.service'; -@ApiTags('grow') +@ApiTags('Grow') @Controller('grow') export class GrowdataController { constructor(private readonly growdataService: GrowdataService) {} diff --git a/server/src/modules/health/health.controller.ts b/server/src/modules/health/health.controller.ts index 9cb4060d..bcf721ee 100644 --- a/server/src/modules/health/health.controller.ts +++ b/server/src/modules/health/health.controller.ts @@ -1,10 +1,16 @@ // health.controller.ts import { Controller, Get, Param, UseGuards } from '@nestjs/common'; import { HealthService } from './health.service'; -import { ApiOperation, ApiParam, ApiResponse, ApiTags } from '@nestjs/swagger'; +import { + ApiBearerAuth, + ApiOperation, + ApiParam, + ApiResponse, + ApiTags, +} from '@nestjs/swagger'; import { JwtAuthGuard } from '../auth/jwt-auth.guard'; -@ApiTags('health') +@ApiTags('Health') @Controller('health') export class HealthController { constructor(private healthService: HealthService) {} @@ -38,6 +44,7 @@ export class HealthController { @ApiOperation({ summary: 'Get DB health status' }) @ApiResponse({ status: 200, description: 'Health of Database , OK | ERROR' }) @ApiResponse({ status: 400, description: 'Bad Request' }) + @ApiBearerAuth() @UseGuards(JwtAuthGuard) async getDbHealth() { return await this.healthService.checkDbHealth(); diff --git a/server/src/modules/marketdata/marketdata.controller.ts b/server/src/modules/marketdata/marketdata.controller.ts index 9517854e..e8a5d8b1 100644 --- a/server/src/modules/marketdata/marketdata.controller.ts +++ b/server/src/modules/marketdata/marketdata.controller.ts @@ -3,7 +3,7 @@ import { Controller, Get, Query } from '@nestjs/common'; import { MarketdataService } from './marketdata.service'; import { ApiOperation, ApiQuery, ApiResponse, ApiTags } from '@nestjs/swagger'; -@ApiTags('marketdata') +@ApiTags('Marketdata') @Controller('marketdata') export class MarketDataController { constructor(private marketDataService: MarketdataService) {} diff --git a/server/src/modules/mixin/exchange/exchange-client.controller.ts b/server/src/modules/mixin/exchange/exchange-client.controller.ts index 89ddb102..9220d9a0 100644 --- a/server/src/modules/mixin/exchange/exchange-client.controller.ts +++ b/server/src/modules/mixin/exchange/exchange-client.controller.ts @@ -6,7 +6,7 @@ import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import { CustomLogger } from 'src/modules/logger/logger.service'; import { ExchangeService } from './exchange.service'; -@ApiTags('exchange') +@ApiTags('Exchange') @Controller('exchange') export class ExchangeUserController { private readonly logger = new CustomLogger(ExchangeUserController.name); diff --git a/server/src/modules/mixin/exchange/exchange.controller.ts b/server/src/modules/mixin/exchange/exchange.controller.ts index 96f6f88e..c12f6be7 100644 --- a/server/src/modules/mixin/exchange/exchange.controller.ts +++ b/server/src/modules/mixin/exchange/exchange.controller.ts @@ -1,13 +1,19 @@ import { Controller, Get, Post, UseGuards } from '@nestjs/common'; -import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; +import { + ApiBearerAuth, + ApiOperation, + ApiResponse, + ApiTags, +} from '@nestjs/swagger'; import { JwtAuthGuard } from 'src/modules/auth/jwt-auth.guard'; import { CustomLogger } from 'src/modules/logger/logger.service'; import { ExchangeService } from './exchange.service'; import { ExchangeDepositDto, ExchangeWithdrawalDto } from './exchange.dto'; // This API is used for admin page to do rebalance -@ApiTags('exchange') +@ApiTags('Mixin') @Controller('exchange') +@ApiBearerAuth() @UseGuards(JwtAuthGuard) export class ExchangeController { private readonly logger = new CustomLogger(ExchangeController.name); diff --git a/server/src/modules/mixin/message/message.controller.ts b/server/src/modules/mixin/message/message.controller.ts index 5b5a7a63..849d35ab 100644 --- a/server/src/modules/mixin/message/message.controller.ts +++ b/server/src/modules/mixin/message/message.controller.ts @@ -7,6 +7,7 @@ import { } from '@nestjs/common'; import { ApiBadRequestResponse, + ApiBearerAuth, ApiOperation, ApiResponse, ApiTags, @@ -20,8 +21,9 @@ import { } from './message.dto'; import { MessageService } from './message.service'; -@ApiTags('message') +@ApiTags('Mixin') @Controller('message') +@ApiBearerAuth() @UseGuards(JwtAuthGuard) export class MessageController { private readonly logger = new CustomLogger(MessageController.name); diff --git a/server/src/modules/mixin/rebalance/rebalance.controller.ts b/server/src/modules/mixin/rebalance/rebalance.controller.ts index 7325bf26..aa4d5f47 100644 --- a/server/src/modules/mixin/rebalance/rebalance.controller.ts +++ b/server/src/modules/mixin/rebalance/rebalance.controller.ts @@ -9,13 +9,19 @@ import { Post, UseGuards, } from '@nestjs/common'; -import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; +import { + ApiBearerAuth, + ApiOperation, + ApiResponse, + ApiTags, +} from '@nestjs/swagger'; import { RebalanceService } from './rebalance.service'; import { CustomLogger } from 'src/modules/logger/logger.service'; import { JwtAuthGuard } from 'src/modules/auth/jwt-auth.guard'; -@ApiTags('rebalance') +@ApiTags('Mixin') @Controller('rebalance') +@ApiBearerAuth() @UseGuards(JwtAuthGuard) export class RebalanceController { private readonly logger = new CustomLogger(RebalanceController.name); diff --git a/server/src/modules/mixin/user/user.controller.ts b/server/src/modules/mixin/user/user.controller.ts index adab5680..be328683 100644 --- a/server/src/modules/mixin/user/user.controller.ts +++ b/server/src/modules/mixin/user/user.controller.ts @@ -1,10 +1,13 @@ import { Controller, Get, UseGuards } from '@nestjs/common'; +import { ApiBearerAuth, ApiTags } from '@nestjs/swagger'; import { UserService } from './user.service'; import { MixinUser } from 'src/common/entities/mixin-user.entity'; import { JwtAuthGuard } from 'src/modules/auth/jwt-auth.guard'; -@UseGuards(JwtAuthGuard) +@ApiTags('Mixin') @Controller('users') +@ApiBearerAuth() +@UseGuards(JwtAuthGuard) export class UserController { constructor(private userService: UserService) {} diff --git a/server/src/modules/performance/performance.controller.ts b/server/src/modules/performance/performance.controller.ts index b90afb47..dc00e29c 100644 --- a/server/src/modules/performance/performance.controller.ts +++ b/server/src/modules/performance/performance.controller.ts @@ -1,6 +1,8 @@ import { Controller, Get, Param, Query } from '@nestjs/common'; import { PerformanceService } from './performance.service'; +import { ApiTags } from '@nestjs/swagger'; +@ApiTags('Performance') @Controller('performance') export class PerformanceController { constructor(private readonly performanceService: PerformanceService) {} diff --git a/server/src/modules/spotdata/spotdata.controller.ts b/server/src/modules/spotdata/spotdata.controller.ts index d2b8b386..f8423fa7 100644 --- a/server/src/modules/spotdata/spotdata.controller.ts +++ b/server/src/modules/spotdata/spotdata.controller.ts @@ -2,7 +2,7 @@ import { ApiTags } from '@nestjs/swagger'; import { Controller, Get } from '@nestjs/common'; import { SpotdataService } from 'src/modules/spotdata/spotdata.service'; -@ApiTags('spotdata') +@ApiTags('Spotdata') @Controller('spot') export class SpotdataController { constructor(private readonly spotdataService: SpotdataService) {} diff --git a/server/src/modules/strategy/strategy.controller.ts b/server/src/modules/strategy/strategy.controller.ts index 10dd8cbc..cc503d15 100644 --- a/server/src/modules/strategy/strategy.controller.ts +++ b/server/src/modules/strategy/strategy.controller.ts @@ -32,7 +32,7 @@ import { AdminStrategyService } from '../admin/strategy/adminStrategy.service'; import { TimeIndicatorStrategyService } from './time-indicator.service'; import { TimeIndicatorStrategyDto } from './timeIndicator.dto'; -@ApiTags('strategy') +@ApiTags('Strategy') @Controller('strategy') export class StrategyController { private loops = new Map(); diff --git a/server/src/modules/trade/trade.controller.ts b/server/src/modules/trade/trade.controller.ts index 68ad5d1b..e484cfe6 100644 --- a/server/src/modules/trade/trade.controller.ts +++ b/server/src/modules/trade/trade.controller.ts @@ -17,7 +17,7 @@ import { TradeService } from './trade.service'; import { MarketTradeDto, LimitTradeDto } from './trade.dto'; import { CustomLogger } from '../logger/logger.service'; -@ApiTags('trade') +@ApiTags('Trade') @Controller('trade') export class TradeController { private readonly logger = new CustomLogger(TradeController.name);