Noxdren 0.1.2
dotnet add package Noxdren --version 0.1.2
NuGet\Install-Package Noxdren -Version 0.1.2
<PackageReference Include="Noxdren" Version="0.1.2" />
<PackageVersion Include="Noxdren" Version="0.1.2" />
<PackageReference Include="Noxdren" />
paket add Noxdren --version 0.1.2
#r "nuget: Noxdren, 0.1.2"
#:package Noxdren@0.1.2
#addin nuget:?package=Noxdren&version=0.1.2
#tool nuget:?package=Noxdren&version=0.1.2
Noxdren .NET SDK
Official .NET client for the Noxdren API — battery-aware drone range (RangeIQ) and multi-leg mission analysis (RangeIQ+). .NET 8+.
dotnet add package Noxdren
Quickstart
using Noxdren;
using var client = new NoxdrenClient("ndx_..."); // your key from app.noxdren.com
// 1. Available drones
var drones = await client.Drones.ListAsync();
foreach (var d in drones.List("drones"))
Console.WriteLine(d.Str("key"));
// 2. Range rings around a launch point
var r = await client.RangeIq.AnalyzeAsync(new RangeIqRequest
{
UserLat = 37.5,
UserLon = -122.3,
SelectedDroneKey = "dji_mavic_3",
WindSpeed = 6.0,
WindDirection = 270,
});
foreach (var ring in r.Obj("result")!.List("rings"))
Console.WriteLine($"{ring.Str("label")} @ {ring.Num("battery_threshold_pct")}%");
// 3. Multi-leg mission from waypoints
var m = await client.Missions.AnalyzeGeometryAsync(new MissionRequest
{
HomeLat = 37.5,
HomeLon = -122.3,
DroneKey = "dji_mavic_3",
Waypoints = new List<Waypoint>
{
new() { Lat = 37.50, Lon = -122.30, AltitudeM = 80 },
new() { Lat = 37.51, Lon = -122.29, AltitudeM = 80, HoverTimeS = 10 },
new() { Lat = 37.52, Lon = -122.31, AltitudeM = 100 },
},
Weather = new Weather { WindSpeedMps = 6.0, WindDirDeg = 270 },
});
Console.WriteLine(m.Obj("result")!.Str("mission_verdict")); // complete | marginal | cannot_complete
Read responses with typed navigation: r.Obj("result")!.List("rings")[0].Str("label"),
or r.Raw for the parsed dictionary.
Authentication
Your API key is sent as the X-API-Key header on every request:
using var client = new NoxdrenClient("ndx_...");
Error handling
Every failure is a typed exception:
try
{
await client.RangeIq.AnalyzeAsync(req);
}
catch (AuthenticationException) { /* 401 */ }
catch (ValidationException e) { Console.WriteLine($"{e.Code} {e.Message}"); /* 400/422 */ }
catch (RateLimitException e) { Console.WriteLine($"retry after {e.RetryAfter}s"); /* 429 */ }
catch (NoxdrenException e) { Console.WriteLine($"{e.Code} {e.RequestId}"); /* catch-all */ }
Transient errors (429, 5xx, network) are retried automatically with backoff
that respects Retry-After. Tune via the maxRetries constructor argument.
Configuration
new NoxdrenClient(
apiKey: "ndx_...",
baseUrl: "https://api.noxdren.com", // override for testing
timeoutSeconds: 30,
maxRetries: 2);
What's covered
| Method | Endpoint |
|---|---|
client.Drones.ListAsync() / .GetAsync(key) |
GET /v1/drones, /v1/drones/{key} |
client.RangeIq.AnalyzeAsync(...) |
POST /v1/rangeiq/analyze |
client.Missions.AnalyzeGeometryAsync(...) |
POST /v1/missions/analyze-geometry |
client.HealthAsync() / .VersionAsync() |
GET /v1/health, /v1/version |
Full field reference: https://docs.noxdren.com · live schema: https://api.noxdren.com/openapi.json.
| Product | Versions 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 was computed. 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. |
-
net8.0
- No dependencies.
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.2 | 120 | 5/30/2026 |