ValidationPipe
Validates and transforms incoming payloads against class-validator DTOs.
Syntax
new ValidationPipe(options?: ValidationPipeOptions) Parameters
| Name | Type | Required | Description |
|---|---|---|---|
options | ValidationPipeOptions | No | Settings like whitelist, forbidNonWhitelisted, transform, and groups. |
Returns
ValidationPipe — A pipe instance applied globally or per route.
Throws
BadRequestException— Thrown with detailed messages when validation fails.
Examples
import { NestFactory } from '@nestjs/core';
import { ValidationPipe } from '@nestjs/common';
import { AppModule } from './app.module';
const app = await NestFactory.create(AppModule);
app.useGlobalPipes(
new ValidationPipe({ whitelist: true, transform: true }),
);
import { IsEmail, MinLength } from 'class-validator';
export class CreateUserDto {
@IsEmail()
email: string;
@MinLength(8)
password: string;
}
Notes
Requires class-validator and class-transformer. `whitelist` strips
unknown properties, `forbidNonWhitelisted` rejects them, and `transform`
instantiates DTO classes and coerces primitive types.