Agent skill
api-setup
Configure affolterNET.Web.Api service registration and middleware pipeline. Use when setting up AddApiServices, ConfigureApiApp, or configuring the API middleware order.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/api-setup
SKILL.md
API Setup
Configure the affolterNET.Web.Api service registration and middleware pipeline.
For complete reference, see Library Guide.
Quick Start
csharp
// Program.cs
var builder = WebApplication.CreateBuilder(args);
// Step 1: Register services
var options = builder.Services.AddApiServices(
builder.Environment.IsDevelopment(),
builder.Configuration,
opts => {
opts.EnableSecurityHeaders = true;
opts.ConfigureApi = api => {
api.AuthMode = AuthenticationMode.Authorize;
};
});
var app = builder.Build();
// Step 2: Configure middleware
app.ConfigureApiApp(options);
app.Run();
Configuration Options
ApiAppOptions
| Property | Type | Description |
|---|---|---|
EnableSecurityHeaders |
bool | Enable security headers middleware |
ConfigureApi |
Action<ApiOptions> | Configure API-specific options |
ConfigureAfterRoutingCustomMiddleware |
Action<IApplicationBuilder> | Add custom middleware after routing |
ConfigureBeforeEndpointsCustomMiddleware |
Action<IApplicationBuilder> | Add custom middleware before endpoints |
ApiOptions
| Property | Type | Default | Description |
|---|---|---|---|
AuthMode |
AuthenticationMode | None |
Authentication mode (None/Authenticate/Authorize) |
Middleware Pipeline
The ConfigureApiApp configures middleware in this order:
- Security Headers Middleware
- Swagger/OpenAPI
- Routing
- Custom Middleware (after routing hook)
- CORS
- Authentication & Authorization + RPT Middleware
- Custom Middleware (before endpoints hook)
- Endpoint Mapping (with Health Checks)
Common Patterns
Development vs Production
csharp
var options = builder.Services.AddApiServices(
builder.Environment.IsDevelopment(), // isDev flag
builder.Configuration,
opts => {
// Development-specific config happens automatically
// based on isDev flag
});
Adding Custom Middleware
csharp
var options = builder.Services.AddApiServices(isDev, config, opts => {
opts.ConfigureAfterRoutingCustomMiddleware = app => {
app.UseMiddleware<RequestLoggingMiddleware>();
};
opts.ConfigureBeforeEndpointsCustomMiddleware = app => {
app.UseMiddleware<TenantMiddleware>();
};
});
Didn't find tool you were looking for?