Replicated-SDK 0.1.1

dotnet add package Replicated-SDK --version 0.1.1
                    
NuGet\Install-Package Replicated-SDK -Version 0.1.1
                    
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="Replicated-SDK" Version="0.1.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Replicated-SDK" Version="0.1.1" />
                    
Directory.Packages.props
<PackageReference Include="Replicated-SDK" />
                    
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 Replicated-SDK --version 0.1.1
                    
#r "nuget: Replicated-SDK, 0.1.1"
                    
#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 Replicated-SDK@0.1.1
                    
#: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=Replicated-SDK&version=0.1.1
                    
Install as a Cake Addin
#tool nuget:?package=Replicated-SDK&version=0.1.1
                    
Install as a Cake Tool

Replicated .NET SDK

A community-maintained .NET SDK for the Replicated in-cluster API.

Use this SDK inside a Kubernetes application managed by Replicated to read app and license information, report custom metrics, and manage instance tags. Connects to the Replicated in-cluster service at http://replicated:3000 — no authentication required.

Disclaimer: This is not an official Replicated product and is not affiliated with, endorsed by, or supported by Replicated, Inc. It is not covered by any Replicated SLA or support agreement. Best-effort support is provided through GitHub Issues.

Targets net8.0 and net9.0.


Installation

dotnet add package Replicated-SDK

Quick Start

using Replicated;

// Connects to the Replicated in-cluster service (http://replicated:3000)
await using var client = new ReplicatedClient();

// Read app and license info
var app = await client.App.GetInfoAsync();
var license = await client.License.GetInfoAsync();
Console.WriteLine($"App: {app.AppName}, License: {license.LicenseType}");

// Report custom metrics
await client.App.SendCustomMetricsAsync(new Dictionary<string, double>
{
    ["active_users"] = 42,
    ["memory_mb"] = 512
});

// Set instance tags
await client.App.SetInstanceTagsAsync(new Dictionary<string, string>
{
    ["environment"] = "production"
});

ASP.NET Core DI

// Program.cs — registers IReplicatedClient as a singleton
builder.Services.AddReplicatedClient();

// Inject IReplicatedClient wherever you need it

Error Handling

try
{
    var app = await client.App.GetInfoAsync();
}
catch (ReplicatedAuthError ex)      { /* 401 / 403 */ }
catch (ReplicatedRateLimitError ex)  { /* 429 — retried automatically */ }
catch (ReplicatedNetworkError ex)    { /* connectivity issue — retried automatically */ }
catch (ReplicatedApiError ex)        { /* other 4xx / 5xx */ }

All exceptions expose .HttpStatus (int) and .Code (string, when the API returns one).


Configuration

Automatic retry with exponential backoff and jitter is enabled by default (3 retries).

Environment variable Description Default
REPLICATED_SDK_ENDPOINT Base URL of the in-cluster service http://replicated:3000
REPLICATED_TIMEOUT Request timeout in seconds 30
REPLICATED_MAX_RETRIES Maximum retry attempts 3
REPLICATED_RETRY_INITIAL_DELAY Initial retry delay in milliseconds 1000
REPLICATED_RETRY_MAX_DELAY Maximum retry delay in milliseconds 30000
REPLICATED_RETRY_BACKOFF_MULTIPLIER Exponential backoff multiplier 2.0

Product 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 is compatible.  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 was computed.  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
0.1.1 109 4/8/2026

Initial release of the Replicated .NET SDK. Provides a typed client for the Replicated in-cluster API: app info, license entitlements, custom metrics, and instance tags. Includes automatic retry with exponential backoff, CancellationToken support, AOT/trim-safe JSON serialization, and Microsoft.Extensions.DependencyInjection integration.