Algebrakit.Sdk
1.0.0
dotnet add package Algebrakit.Sdk --version 1.0.0
NuGet\Install-Package Algebrakit.Sdk -Version 1.0.0
<PackageReference Include="Algebrakit.Sdk" Version="1.0.0" />
<PackageVersion Include="Algebrakit.Sdk" Version="1.0.0" />
<PackageReference Include="Algebrakit.Sdk" />
paket add Algebrakit.Sdk --version 1.0.0
#r "nuget: Algebrakit.Sdk, 1.0.0"
#:package Algebrakit.Sdk@1.0.0
#addin nuget:?package=Algebrakit.Sdk&version=1.0.0
#tool nuget:?package=Algebrakit.Sdk&version=1.0.0
Algebrakit .NET SDK
Official .NET SDK for the Algebrakit Webservice API. Create exercise sessions, retrieve scores, lock/unlock sessions, validate exercises, and fetch session info.
Targets .NET 8.0 and .NET Standard 2.0 (so it also runs on .NET Framework 4.6.1+, .NET Core 2.0+, and later).
Installation
dotnet add package Algebrakit.Sdk
Quick start
using System;
using System.Net.Http;
using AlgebrakitSDK.Services;
using AlgebrakitSDK.Models.Requests;
using var httpClient = new HttpClient { BaseAddress = new Uri("https://api.algebrakit.com") };
var sessions = new SessionService(httpClient, "your-api-key");
// Validate an exercise
var validation = await sessions.ValidateExerciseAsync(
new ExerciseValidateRequest { ExerciseId = "your-exercise-id" });
Console.WriteLine($"Valid: {validation.Valid}, Marks: {validation.Marks}");
// Create a session
var created = await sessions.CreateSessionAsync(new CreateSessionRequest
{
Exercises = { new() { ExerciseId = "your-exercise-id" } }
});
API surface
SessionService exposes:
| Method | Purpose |
|---|---|
CreateSessionAsync |
Create new exercise sessions |
GetSessionScoreAsync |
Retrieve scoring results for a session |
LockOrUnlockSessionAsync |
Lock or unlock sessions |
GetSessionInfoAsync |
Fetch detailed session information |
RetrieveSessionsAsync |
Retrieve existing sessions |
ValidateExerciseAsync |
Validate an exercise definition |
GetExerciseInfoAsync |
Read published info for an exercise |
Dependency injection
SessionService takes an HttpClient and an API key, so it works with IHttpClientFactory.
Because the constructor needs the key (new SessionService(httpClient, apiKey)), supply it via
AddTypedClient — registering only the HttpClient is not enough, as the container cannot
resolve the string apiKey parameter on its own:
builder.Services.AddHttpClient<SessionService>(client =>
{
client.BaseAddress = new Uri("https://api.algebrakit.com");
})
.AddTypedClient((httpClient, sp) =>
new SessionService(httpClient, sp.GetRequiredService<IConfiguration>()["ALGEBRAKIT_API_KEY"]!));
Then inject SessionService wherever you need it. The example reads the key from the
ALGEBRAKIT_API_KEY environment variable (or any other configuration source).
License
Licensed under the MIT License.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- System.Text.Json (>= 8.0.5)
-
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 |
|---|---|---|
| 1.0.0 | 0 | 10/30/2026 |