APF.Core.Clean.OpenApi
10.0.0.1
See the version list below for details.
dotnet add package APF.Core.Clean.OpenApi --version 10.0.0.1
NuGet\Install-Package APF.Core.Clean.OpenApi -Version 10.0.0.1
<PackageReference Include="APF.Core.Clean.OpenApi" Version="10.0.0.1" />
<PackageVersion Include="APF.Core.Clean.OpenApi" Version="10.0.0.1" />
<PackageReference Include="APF.Core.Clean.OpenApi" />
paket add APF.Core.Clean.OpenApi --version 10.0.0.1
#r "nuget: APF.Core.Clean.OpenApi, 10.0.0.1"
#:package APF.Core.Clean.OpenApi@10.0.0.1
#addin nuget:?package=APF.Core.Clean.OpenApi&version=10.0.0.1
#tool nuget:?package=APF.Core.Clean.OpenApi&version=10.0.0.1
Core.Clean.OpenApi
Core.Clean.OpenApi is an infrastructure-level package that provides OpenAPI/Swagger documentation generation, AWS API Gateway integration metadata, and access-control tagging for microservices following Clean Architecture.
It supports two approaches: Swashbuckle-based (SwaggerServiceExtensions) for existing services, and .NET 10 native OpenAPI + Scalar (ScalarServiceExtensions) for new/migrated services. Both can run side by side.
Projects
src/Core.Clean.OpenApi
- Core.Clean.OpenApi
tests/Core.Clean.OpenApi.Tests
- Core.Clean.OpenApi.Tests
Purpose
- Generates OpenAPI documentation via Swashbuckle or .NET 10 native OpenAPI.
- Injects AWS API Gateway integration and authorizer metadata for Lambda proxy deployments.
- Applies consistent access-control and security tagging across operations and schemas.
Features
- Operation filters/transformers: AWS Gateway metadata, standard error responses, access-control tagging, security requirements from
[Authorize]. - Document filters/transformers: CORS
OPTIONSinjection,secureaccessschema tagging, tag removal. - Schema filters/transformers: enum handling, required-property enforcement,
[SwaggerIgnore]support.
Usage
// Swashbuckle
builder.Services.AddSwaggerGen();
builder.Services.ConfigureSwaggerGen<YourRequestExample>(
new SwaggerConfigurationSettings
{
AwsApiGatewayIntegration = new AwsApiGatewayIntegration(DefaultConstants.ProjectName)
});
// .NET 10 native + Scalar
builder.Services.ConfigureOpenApi(swaggerSettings, groupName: "v1");
AwsApiGatewayIntegration/ApiGatewayAuthorizermust be populated explicitly per project — a barenew SwaggerConfigurationSettings()produces an empty integrationuri.
Getting Started
- Clone the repo
- Navigate to the root directory
- Run:
dotnet build
dotnet test
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- APF.Core.Clean.Common (>= 10.0.0.1)
- Asp.Versioning.Mvc (>= 10.0.0)
- Asp.Versioning.Mvc.ApiExplorer (>= 10.0.0)
- Microsoft.AspNetCore.OpenApi (>= 10.0.9)
- Microsoft.OpenApi (>= 2.9.0)
- Scalar.AspNetCore (>= 2.16.3)
- Swashbuckle.AspNetCore (>= 10.0.0)
- Swashbuckle.AspNetCore.Annotations (>= 10.0.0)
- Swashbuckle.AspNetCore.Filters (>= 10.0.0)
- Swashbuckle.AspNetCore.Swagger (>= 10.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.1.1-Beta-05 | 82 | 8/31/2026 |
| 10.0.1.1-Beta-04 | 79 | 8/27/2026 |
| 10.0.1.1-Beta-03 | 90 | 8/19/2026 |
| 10.0.1.1-Beta-02 | 335 | 8/18/2026 |
| 10.0.1.1-Beta-01 | 88 | 8/17/2026 |
| 10.0.0.2-Beta-01 | 86 | 8/27/2026 |
| 10.0.0.1 | 305 | 8/17/2026 |
| 10.0.0-Beta-11 | 762 | 8/4/2026 |
| 10.0.0-Beta-10 | 146 | 7/20/2026 |
| 10.0.0-Beta-09 | 89 | 7/20/2026 |
| 10.0.0-Beta-08 | 93 | 7/17/2026 |
| 10.0.0-Beta-07 | 94 | 7/17/2026 |
| 10.0.0-Beta-06 | 116 | 7/17/2026 |
| 10.0.0-Beta-05 | 127 | 7/13/2026 |
| 10.0.0-Beta-04 | 104 | 7/13/2026 |
| 10.0.0-Beta-03 | 106 | 7/10/2026 |
| 10.0.0-Beta-02 | 100 | 7/3/2026 |
| 10.0.0-Beta-01 | 107 | 6/18/2026 |
| 8.0.0.3 | 430 | 6/29/2026 |
| 8.0.0.3-Beta-1 | 100 | 6/29/2026 |
# Changelog
## 10.0.0.1 - 2026-08-17
- Release package for .NET 8 → .NET 10 migration of APF.Core.Clean.OpenApi
## 10.0.0.0-Beta-10 - 2026-07-20
- handled null ref in OptionsOperationDocumentFilter