OpenAPI is the framework of choice for documenting APIs

OpenAPI support in ASP.NET Core API apps
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/openapi/overview?view=aspnetcore-9.0

Generate OpenAPI documents at build-time
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/openapi/aspnetcore-openapi?view=aspnetcore-9.0&tabs=visual-studio%2Cvisual-studio-code#generate-openapi-documents-at-build-time

The project file property to set the directory where the OpenAPI should be saved is “OpenApiDocumentsDirectory” and it is documented here:
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/openapi/aspnetcore-openapi?view=aspnetcore-9.0&tabs=visual-studio%2Cvisual-studio-code#modifying-the-output-directory-of-the-generated-open-api-file

This section contains a summary of how C# types and attributes map to OpenAPI schemas.
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/openapi/include-metadata?view=aspnetcore-9.0&tabs=minimal-apis#include-openapi-metadata-for-data-types

We talked about the OpenAPI specification — the latest version is here:
https://spec.openapis.org/oas/v3.1.1.html

I also briefly touched on the Overlay specification — that is here:
https://spec.openapis.org/overlay/v1.0.0.html

and the Arazzo Specification — that is here:
https://spec.openapis.org/arazzo/v1.0.1.html

The Roadmap for ASP.NET Core features in .NET 10 is here:
https://github.com/dotnet/aspnetcore/issues/59443