Winglet.Tenancy.Lifecycle.Client
0.1.0
dotnet add package Winglet.Tenancy.Lifecycle.Client --version 0.1.0
NuGet\Install-Package Winglet.Tenancy.Lifecycle.Client -Version 0.1.0
<PackageReference Include="Winglet.Tenancy.Lifecycle.Client" Version="0.1.0" />
<PackageVersion Include="Winglet.Tenancy.Lifecycle.Client" Version="0.1.0" />
<PackageReference Include="Winglet.Tenancy.Lifecycle.Client" />
paket add Winglet.Tenancy.Lifecycle.Client --version 0.1.0
#r "nuget: Winglet.Tenancy.Lifecycle.Client, 0.1.0"
#:package Winglet.Tenancy.Lifecycle.Client@0.1.0
#addin nuget:?package=Winglet.Tenancy.Lifecycle.Client&version=0.1.0
#tool nuget:?package=Winglet.Tenancy.Lifecycle.Client&version=0.1.0
Winglet.Tenancy.Lifecycle.Client
This package is a thin typed service-to-service HTTP adapter for the Winglet.NET tenant lifecycle contract.
Registration
Configure the target service address through strongly typed Options:
builder.Services.AddWingletTenantLifecycleClient(options =>
{
options.BaseAddress = new Uri("https://target-service.example/");
});
The consuming service composes its normal service-only authentication handler on the HttpClient pipeline. The package does not parse user tokens, implement on-behalf-of delegation, or hard-code CustomerAccount as the caller.
The target service must authorize the caller with the capability tenant.lifecycle.manage before it accepts a route TenantId as an administrative target scope.
Behavior
The client uses the canonical versioned routes under /api/v1/tenants/{tenantId}/lifecycle. It sends only operationId, lifecycleRevision and correlationId in state-changing request bodies.
The operation metadata is never regenerated by the client. A caller that retries a lifecycle write supplies the same request, so the operationId and lifecycleRevision remain stable. Standard .NET HTTP resilience is enabled for bounded transient retries; the lifecycle write contract is explicitly idempotent and operation_in_progress is not a transient retry condition.
Successful 200 and 202 responses are returned as typed contracts. Remote Problem Details failures are exposed through one categorical TenantLifecycleClientException with the stable remote code available.
| 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
- Microsoft.Extensions.Http.Resilience (>= 10.1.0)
- Winglet.Tenancy.Lifecycle.Contracts (>= 0.1.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 |
|---|---|---|
| 0.1.0 | 104 | 9/1/2026 |