Skip to content

ASP.NET endpoints in the HTTP explorer

The HTTP explorer (sidebar → Explore; the retired per-service HTTP tab's replacement, #718) merges Wolverine HTTP chains and non-Wolverine ASP.NET Core endpoints into a single table — one row per endpoint, with a Source chip telling you what kind of endpoint each row is.

What the Source chip means

SourceWhat it is
WolverineA Wolverine HTTP chain (handler discovered by MapWolverineEndpoints())
MinimalApiA Minimal API endpoint (app.MapGet, app.MapPost, app.MapHub-like delegates)
MvcAn MVC controller action — one row per action, not per controller
RazorPagesA Razor Pages handler
SignalRA SignalR hub method
GrpcA gRPC service method (these also get their own gRPC explorer in the sidebar)
StaticFileA static-file fallthrough endpoint (no HTTP method metadata) — hidden by default; select StaticFile in the source filter to see these rows
OtherA route mapped via something CritterWatch doesn't have a discriminator for yet

Wolverine HTTP chains always come back in the table; non-Wolverine endpoints only appear when the host opted into the integration package by calling services.AddCritterWatchHttp(). Pure-Wolverine workers and console hosts that don't reference an ASP.NET Core stack pay zero cost — no extra package reference, no extra endpoint walk. Scoping the explorer to a service that never opted in shows an info alert saying endpoint discovery isn't enabled for that service.

How to read the table

  • Source filter — a multi-select ("All sources") narrows the table to the chosen source kinds, e.g. Wolverine + MinimalApi in one go. The chips in the Source column are display-only — clicking anywhere on a row (chip included) drills into its detail page.
  • Filter input — substring match across route, method set, handler name, and endpoint type.
  • Group by — regroup rows by HTTP method or by endpoint-name prefix instead of the flat list.
  • Pagination — 10/25/50/100 rows per page (default 25).
  • Click a row — drill into the appropriate detail page:
    • Wolverine rows go to the HTTP chain detail page, which surfaces full per-chain detail including generated code, the OpenAPI shape, and configuration.
    • Non-Wolverine rows go to the ASP.NET endpoint detail page (a trimmed sister page — stacked Overview + OpenAPI cards).

When the explorer is scoped to a single service, an HTTP configuration panel also appears with the service's captured HTTP-level settings.

OpenAPI coverage

Endpoints that ASP.NET Core's API Explorer knows about (Minimal API + MVC controllers) get their full OpenAPI shape — parameters, request bodies, response schemas, security — surfaced on the OpenAPI card of the detail page. Endpoints API Explorer doesn't see (notably SignalR hubs) appear in the table with a Source chip, but their detail page shows the alert "No OpenAPI metadata captured for this endpoint" with the AddEndpointsApiExplorer() remediation — the route is exposed, but the wire shape is not introspectable from outside the hub itself.

If the host opts into Microsoft.AspNetCore.OpenApi's document service, the descriptors get richer schemas with full $ref resolution. Swashbuckle is never required and never referenced.

Monitored hosts on Wolverine ≤ 6.17.1 that call AddOpenApi()

Building these descriptors is what reads ASP.NET's API Explorer, and it happens during the capability snapshot at boot. On Wolverine 6.17.1 and earlier an API Explorer read that lands before the web server starts permanently freezes the host's own OpenAPI documents as empty ("paths": {}) — so a monitored host can break its own /openapi/v1.json just by being monitored. Upgrade the monitored service to Wolverine 6.17.2+; hybrid hosts that also expose minimal-API/MVC endpoints need one more step. See Upgrade Notes.

Authorization

The detail page hero shows an Authorize chip for non-Wolverine endpoints that require authorization, and the Overview card's "Authorization" row lists the [Authorize] policies and roles (or None). When the OpenAPI document carries a security scheme, the OpenAPI card also lists scope requirements per scheme.

Free for read-only monitoring. A commercial license is required for administrative actions and the MCP server.