RustPlusApi
A C# library for the Rust+ companion API. Query and control your server, render security cameras, listen for push notifications, and acquire all the required credentials natively โ no Node.js required.
Server control
Info, time, map & markers, smart switches, alarms, storage monitors โ one typed Response<T> API.
Team & clan
Read and send team/clan chat, manage the MOTD, react to broadcasts, authenticate with Nexus.
Cameras
Subscribe to CCTV, drones and turrets, drive them, and render frames to PNG images.
Notifications
Receive pairing and alarm pushes over FCM with automatic heartbeat & dead-connection detection.
Native credentials
Acquire FCM + Rust+ credentials end to end in C#, replacing the rustplus.js Node CLI.
Broad targeting
.NET Standard 2.0 and .NET 10 โ runs on .NET Framework 4.6.2+, .NET 6โ10, Mono and Unity.
Packages
| Package | Downloads | Description |
|---|---|---|
| RustPlusApi | Core client โ typed Response<T> API, entities, team/clan/nexus, camera protocol. |
|
| RustPlusApi.Fcm | FCM listener for pairing & alarm notifications. | |
| RustPlusApi.Fcm.Registration | Native credential acquisition (no Node.js). | |
| RustPlusApi.Camera | Renders camera frames into images (ImageSharp). | |
| RustPlusApi.Extensions.DependencyInjection | DI registration (AddRustPlus, IRustPlusFactory) for the core client. |
|
| RustPlusApi.Fcm.Extensions.DependencyInjection | DI registration (AddRustPlusFcm, IRustPlusFcmFactory) for the FCM listener. |
Quickstart
using RustPlusApi;
using var rustPlus = new RustPlus(new RustPlusConnection(server, port, playerId, playerToken));
await rustPlus.ConnectAsync();
var info = await rustPlus.GetInfoAsync();
if (info.IsSuccess)
Console.WriteLine($"{info.Data!.Name} โ {info.Data.PlayerCount}/{info.Data.MaxPlayerCount}");
Don't have credentials yet? The Getting Started guide walks you through acquiring them natively in a couple of minutes.