Koalesce.OpenAPI
1.0.0-alpha.3
See the version list below for details.
dotnet add package Koalesce.OpenAPI --version 1.0.0-alpha.3
NuGet\Install-Package Koalesce.OpenAPI -Version 1.0.0-alpha.3
<PackageReference Include="Koalesce.OpenAPI" Version="1.0.0-alpha.3" />
<PackageVersion Include="Koalesce.OpenAPI" Version="1.0.0-alpha.3" />
<PackageReference Include="Koalesce.OpenAPI" />
paket add Koalesce.OpenAPI --version 1.0.0-alpha.3
#r "nuget: Koalesce.OpenAPI, 1.0.0-alpha.3"
#:package Koalesce.OpenAPI@1.0.0-alpha.3
#addin nuget:?package=Koalesce.OpenAPI&version=1.0.0-alpha.3&prerelease
#tool nuget:?package=Koalesce.OpenAPI&version=1.0.0-alpha.3&prerelease
🐨 Koalesce
Koalesce is a .NET library designed to merge multiple API definitions into a unified document to enable seamless API Gateway integration and simplify frontend client generation for microservices-based architectures.
⚡ Features
- ✅ Coalesce multiple API definitions into one unified schema.
- ✅ Agnostic Core: Designed to support future formats beyond OpenAPI.
- ✅ Fail-Fast Validation: Validates URLs and paths at startup to prevent runtime errors.
- ✅ Gateway Security Integration: Define a single authentication source of truth for your API Gateway.
- ✅ Fully configurable via
appsettings.jsonor Fluent API. - ✅ Aligns perfectly with API Gateways (Ocelot, YARP).
- ✅ Allows output a
jsonoryamlmerged document regardless the document type of the source APIs. - ✅ Streamlines API client generation (e.g., NSwag, Kiota) since it results in one unified schema.
- ✅ Multi-targeting: Native support for .NET 8.0 (LTS) and .NET 10.0.
📦 Installation
🛠️ For Web Apps (Middleware)
NuGet\Install-Package Koalesce.OpenAPI
💻 CLI Tool
dotnet tool install --global Koalesce.OpenAPI.CLI
🛠️ Quick Start (Middleware)
1. Register & Use (Program.cs)
// Register Services
builder.Services.AddKoalesce(builder.Configuration)
.ForOpenAPI(options => {
// Optional: Configure Global Gateway Security
options.UseJwtBearerGatewaySecurity("Enter your JWT token", "JWT");
});
var app = builder.Build();
// Enable Middleware
app.UseKoalesce();
app.Run();
💻 Quick Start (CLI)
Use the CLI to generate a static merged file without running the application.
koalesce --config appsettings.json --output apigateway.yaml --verbose
⚠️ Note: When using the CLI, if your
appsettings.jsondefines anApiGatewayBaseUrl, you must manually include theGatewaySecuritySchemesection in the JSON file, as the CLI cannot execute C# security configurations.
⚙️ Configuration (appsettings.json)
{
"Koalesce": {
"Sources": [
{ "Url": "https://localhost:8001/swagger/v1/swagger.json", "VirtualPrefix": "customers" },
{ "Url": "https://localhost:8002/swagger/v1/swagger.json", "VirtualPrefix": "inventory" }
],
"MergedDocumentPath": "/swagger/v1/apigateway.json",
"Title": "My Koalesced API",
"OpenApiVersion": "3.0.1",
"ApiGatewayBaseUrl": "https://localhost:5000",
"GatewaySecurityScheme": {
"Type": "Http",
"Scheme": "bearer",
"BearerFormat": "JWT",
"Description": "JWT Authorization header using the Bearer scheme."
}
}
}
🔗 Links
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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
- Koalesce.Core (>= 1.0.0-alpha.3)
- Microsoft.OpenApi (>= 1.6.28)
- Microsoft.OpenApi.Readers (>= 1.6.28)
-
net8.0
- Koalesce.Core (>= 1.0.0-alpha.3)
- Microsoft.OpenApi (>= 1.6.28)
- Microsoft.OpenApi.Readers (>= 1.6.28)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Koalesce.OpenAPI:
| Repository | Stars |
|---|---|
|
falberthen/EcommerceDDD
Experimental full-stack application showcasing Domain-Driven Design, Microservices, Event Sourcing, CQRS and Angular.
|
| Version | Downloads | Last Updated | |
|---|---|---|---|
| 1.0.0-alpha.12 | 91 | 1/28/2026 | |
| 1.0.0-alpha.11 | 61 | 1/26/2026 | |
| 1.0.0-alpha.10 | 69 | 1/23/2026 | |
| 1.0.0-alpha.9 | 63 | 1/22/2026 | |
| 1.0.0-alpha.8 | 60 | 1/20/2026 | |
| 1.0.0-alpha.7 | 59 | 1/20/2026 | |
| 1.0.0-alpha.6 | 53 | 1/18/2026 | |
| 1.0.0-alpha.5 | 62 | 1/16/2026 | |
| 1.0.0-alpha.4 | 65 | 1/14/2026 | |
| 1.0.0-alpha.3 | 75 | 1/11/2026 | |
| 1.0.0-alpha.2 | 68 | 1/5/2026 | |
| 1.0.0-alpha.1 | 69 | 1/2/2026 | |
| 0.1.1-alpha.2 | 290 | 4/11/2025 | |
| 0.1.1-alpha.1 | 159 | 4/10/2025 | |
| 0.1.0-alpha | 227 | 3/16/2025 |