ZcapLd.AspNetCore 1.0.0

dotnet add package ZcapLd.AspNetCore --version 1.0.0
                    
NuGet\Install-Package ZcapLd.AspNetCore -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ZcapLd.AspNetCore" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ZcapLd.AspNetCore" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="ZcapLd.AspNetCore" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ZcapLd.AspNetCore --version 1.0.0
                    
#r "nuget: ZcapLd.AspNetCore, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ZcapLd.AspNetCore@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ZcapLd.AspNetCore&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=ZcapLd.AspNetCore&version=1.0.0
                    
Install as a Cake Tool

ZcapLd.AspNetCore

Optional ASP.NET Core adapter for ZcapLd.Core revocation and ValidWhileTrue workflows.

Features

  • Minimal API endpoint rails for revocation status and revocation requests
  • ValidWhileTrue caveat support via HttpValidWhileTrueHandler (HTTP-based remote revocation checking)
  • DI registration helpers for default and custom IRevocationStore backends
  • Works with pluggable stores (database, contract client, oracle bridge, cache)

Quick Start

using ZcapLd.AspNetCore.DependencyInjection;
using ZcapLd.AspNetCore.Endpoints;

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddZcapRevocationSupport();

var app = builder.Build();
app.MapZcapRevocationEndpoints();
app.Run();

For a custom backend, register your own IRevocationStore implementation:

builder.Services.AddZcapRevocationSupport<MyRevocationStore>();

Setup Revocation Endpoints

MapZcapRevocationEndpoints() exposes:

  • POST /zcaps/revocations/{*capabilityId}
  • GET /zcaps/revocations/{*capabilityId}

To customize route prefix:

app.MapZcapRevocationEndpoints("/wallet/revocations");

Expose Revocation in a Different Manner

If you do not want HTTP endpoints, use ZcapLd.Core directly and expose IRevocationService via your preferred transport:

  • gRPC
  • worker/message-driven services
  • admin CLI flows
  • contract relayer/oracle processes

Persistence Strategies for Revocation Registries

Register persistence strategy through AddZcapRevocationSupport(...):

  • Default in-memory:
builder.Services.AddZcapRevocationSupport();
  • Custom type:
builder.Services.AddZcapRevocationSupport<MyRevocationStore>();
  • Custom factory (for advanced composition/hybrid stores):
builder.Services.AddZcapRevocationSupport(sp =>
    new HybridRevocationStore(/* dependencies from sp */));

See docs/REVOCATION-INTEGRATION.md for full guidance.

ValidWhileTrue Caveat Support

Enable HTTP-based ValidWhileTrue caveat checking for verifiers:

builder.Services.AddZcapValidWhileTrueSupport();
builder.Services.AddZcapServices();

This registers HttpValidWhileTrueHandler, which GETs the caveat URI during invocation verification and checks the isRevoked field from the RevocationStatusHttpResponse. The existing GET /zcaps/revocations/{*capabilityId} endpoint serves as the backend.

The named HttpClient ("ZcapValidWhileTrue") can be configured for timeouts and retry policies:

builder.Services.AddHttpClient("ZcapValidWhileTrue", client =>
{
    client.Timeout = TimeSpan.FromSeconds(5);
});

Custom handler implementations can be registered via:

builder.Services.AddZcapValidWhileTrueSupport<MyCustomHandler>();
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
1.0.0 0 3/9/2026
0.3.3 155 3/4/2026
0.3.2 169 3/1/2026
0.3.1 91 3/1/2026
0.3.0 89 2/28/2026
0.2.1 156 2/26/2026
0.2.0 92 2/26/2026
0.1.1 87 2/24/2026
0.1.0 83 2/24/2026