Install Swagger in Nestjs

--

  1. npm install @nestjs/swagger swagger-ui-express
    in main.ts


import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';

const options = new DocumentBuilder()
.setTitle('API ***')
.setDescription('API ***')
.setVersion('7.1.8')
.addBearerAuth()
.addTag('api')
.build();

const document = SwaggerModule.createDocument(app, options);
SwaggerModule.setup('docs', app, document, {
swaggerOptions: {
persistAuthorization: true,
},
});

Decorator In controller : ApiBearerAuth, ApiTags

Decorator In DTO: ApiProperty

2. set password for use swagger page

npm install express-basic-auth

in main.ts

   app.use(
// Paths you want to protect with basic auth
'/docs*',
basicAuth({
challenge: true,
users: {
swaggerAdmin: '*****',
},
}),
);

Enjoy

--

--