AgentOps
Back to Skills

nestjs-api-patterns

REST and GraphQL API design patterns for NestJS covering DTOs, versioning, pagination, filtering, sorting, caching, rate limiting, file uploads, and OpenAPI documentation. Use when building NestJS APIs, designing endpoints, implementing query patterns, or optimizing API performance.

nestjsapirestgraphqltypescriptopenapipaginationcaching
Version1.0.0
Authoragent-skills
CategoryBackend
Tags8
Install Skill
npx skills add https://github.com/sadamkhan7679/agent-ops --skill nestjs-api-patterns

NestJS API Patterns

Production-grade REST and GraphQL API patterns for NestJS applications. Covers endpoint design through OpenAPI documentation.

When to Apply

Reference these patterns when:

  • >Designing REST API endpoints and resources
  • >Implementing pagination, filtering, and sorting
  • >Building GraphQL resolvers and schemas
  • >Adding API versioning
  • >Setting up caching strategies
  • >Implementing rate limiting and throttling
  • >Handling file uploads
  • >Generating OpenAPI/Swagger documentation

Guide Categories by Priority

PriorityCategoryImpactPrefix
1REST Endpoint DesignCRITICALrest-
2Pagination & FilteringCRITICALpagination-
3DTOs & ValidationHIGHdto-
4Error HandlingHIGHerrors-
5CachingHIGHcaching-
6API VersioningMEDIUMversioning-
7Rate LimitingMEDIUMrate-limiting-
8File UploadsMEDIUMuploads-
9GraphQL PatternsMEDIUMgraphql-
10OpenAPI DocumentationLOW-MEDIUMopenapi-

Quick Reference

1. REST Endpoint Design (CRITICAL)

  • >rest-resource-naming - RESTful resource naming, HTTP methods, status codes
  • >rest-response-envelope - Consistent response envelope with metadata
  • >rest-bulk-operations - Bulk create, update, delete patterns

2. Pagination & Filtering (CRITICAL)

  • >pagination-cursor - Cursor-based pagination for infinite scroll
  • >pagination-offset - Offset-based pagination with total count
  • >pagination-filtering - Dynamic filtering with query params and DTOs
  • >pagination-sorting - Multi-field sorting with direction

3. DTOs & Validation (HIGH)

  • >dto-request-response - Separate request/response DTOs
  • >dto-nested-validation - Nested object and array validation
  • >dto-partial-update - PartialType and PickType for PATCH operations

4. Error Handling (HIGH)

  • >errors-exception-filters - Custom exception filters with structured errors
  • >errors-business-exceptions - Domain-specific exception classes
  • >errors-validation-pipe - Global validation pipe with error formatting

5. Caching (HIGH)

  • >caching-interceptor - CacheInterceptor with TTL and key strategies
  • >caching-redis - Redis caching with cache-manager
  • >caching-invalidation - Cache invalidation patterns

6. API Versioning (MEDIUM)

  • >versioning-uri - URI versioning (/v1/, /v2/)
  • >versioning-header - Header-based versioning with custom headers

7. Rate Limiting (MEDIUM)

  • >rate-limiting-throttler - @nestjs/throttler with per-route limits
  • >rate-limiting-custom - Custom rate limiting by user/IP/API key

8. File Uploads (MEDIUM)

  • >uploads-multer - File uploads with Multer interceptors
  • >uploads-streaming - Large file streaming and S3 integration

9. GraphQL Patterns (MEDIUM)

  • >graphql-resolvers - Resolver patterns with code-first approach
  • >graphql-dataloader - DataLoader for N+1 query prevention
  • >graphql-subscriptions - Real-time subscriptions with WebSocket

10. OpenAPI Documentation (LOW-MEDIUM)

  • >openapi-decorators - @ApiTags, @ApiOperation, @ApiResponse patterns
  • >openapi-schemas - DTO-to-schema mapping and examples

Full Compiled Document

For the complete guide with all content expanded: AGENTS.md