Overview
Ekso.Sdk is the official C# client library for Ekso, distributed on NuGet as Ekso.Sdk. It exposes every public API operation as a typed, async method on a single EksoClient — from client.Api.Item.PostAsync(...) to client.Api.Field.List.Data.PutAsync(...).
Reach for the SDK when you’re building:
- A .NET application that integrates with Ekso (web app, background service, console tool).
- An agent or workflow runner that needs typed responses, not raw JSON.
- A tool that benefits from compile-time guarantees against the Ekso schema.
What’s in the package
Ekso.Sdk ships:
EksoClient— the typed root of the API surface. Internally backed by Kiota generated request builders.EksoClientOptions— configuration record (Tenant,Auth,BaseUrl).- Two auth strategies:
ApiKeyAuth(static keys) andRefreshableBearerAuth(OAuth tokens with auto-refresh). - A typed exception hierarchy (
EksoAuthException,EksoRateLimitException,EksoValidationException,EksoNetworkException,EksoApiException). - Generated model types for every request/response shape —
DataItem,DataFieldList,FieldCollection, etc.
Target framework
The SDK targets .NET 10. It depends on Kiota’s runtime libraries (Microsoft.Kiota.Abstractions, Microsoft.Kiota.Http.HttpClientLibrary, JSON/Form/Multipart/Text serializers).
Quick taste
Authentication paths
Two strategies, picked based on caller shape:ApiKeyAuth— non-interactive. Pass a minted API key (ek_...); every request carries it as a Bearer token. Best for server-to-server, agents, CI.RefreshableBearerAuth— interactive. Pass an access + refresh token pair (typically obtained via OAuth device flow); the SDK auto-refreshes and fires aTokensRefreshedevent so you can persist the rotated pair.
Client=Sdk for API keys, Client=Cli for device-flow tokens). The backend uses that marker to gate operations that should not be scriptable — e.g. system field updates are rejected from SDK callers but allowed from the webapp. See CLI/SDK marker.
Where to next
- Installation — add the package and verify the dependency.
- Authentication — set up
ApiKeyAuthorRefreshableBearerAuth. - Quickstart — your first authenticated call.
- Error handling — the exception hierarchy and how to react to each shape.
- CLI/SDK marker — what the
Client=Sdkclaim means at the read side. - API Reference — the HTTP surface every typed method calls.