Voltar ao índice
Desenvolvimento web Fonte oficial

Minimal APIs ASP.NET com documentação OpenAPI

Estrutura endpoints de ASP.NET Minimal API com tipos explícitos, validação, respostas padronizadas e documentação OpenAPI detalhada.

Ver código no GitHub Instala diretamente do repositório-fonte.

O que esta skill faz

Use esta skill para criar endpoints Minimal API organizados e corretamente descritos no OpenAPI. As orientações incluem MapGroup, DTOs, TypedResults, ProblemDetails e os recursos nativos de documentação do .NET 9.

Quando usar

  • Criar grupos de endpoints relacionados com MapGroup
  • Documentar operações, parâmetros e respostas no OpenAPI
  • Modelar DTOs imutáveis com validação
  • Padronizar erros com ProblemDetailsService
  • Personalizar documentos e schemas com transformers

Como usar

  1. Revise o repositório, a versão do .NET e a organização atual da API
  2. Agrupe rotas relacionadas e separe classes de endpoint quando necessário
  3. Defina DTOs, parâmetros tipados e atributos de validação
  4. Retorne TypedResults e declare combinações com Results<T1, T2>
  5. Adicione nomes, resumos, descrições, content types e transformers necessários

O que revisar antes de instalar

  • O suporte OpenAPI nativo citado pressupõe .NET 9
  • A skill não define regras de negócio nem contratos ausentes
  • Filtros e transformers precisam ser ajustados à arquitetura do projeto

SKILL.md

---
name: aspnet-minimal-api-openapi
description: 'Create ASP.NET Minimal API endpoints with proper OpenAPI documentation'
---

# ASP.NET Minimal API with OpenAPI

Your goal is to help me create well-structured ASP.NET Minimal API endpoints with correct types and comprehensive OpenAPI/Swagger documentation.

## API Organization

- Group related endpoints using `MapGroup()` extension
- Use endpoint filters for cross-cutting concerns
- Structure larger APIs with separate endpoint classes
- Consider using a feature-based folder structure for complex APIs

## Request and Response Types

- Define explicit request and response DTOs/models
- Create clear model classes with proper validation attributes
- Use record types for immutable request/response objects
- Use meaningful property names that align with API design standards
- Apply `[Required]` and other validation attributes to enforce constraints
- Use the ProblemDetailsService and StatusCodePages to get standard error responses

## Type Handling

- Use strongly-typed route parameters with explicit type binding
- Use `Results<T1, T2>` to represent multiple response types
- Return `TypedResults` instead of `Results` for strongly-typed responses
- Leverage C# 10+ features like nullable annotations and init-only properties

## OpenAPI Documentation

- Use the built-in OpenAPI document support added in .NET 9
- Define operation summary and description
- Add operationIds using the `WithName` extension method
- Add descriptions to properties and parameters with `[Description()]`
- Set proper content types for requests and responses
- Use document transformers to add elements like servers, tags, and security schemes
- Use schema transformers to apply customizations to OpenAPI schemas