
API client
School21Net
Typed .NET client for the School 21 API
net8.0net10.0
Features
- Participants, projects, campuses and coalitions
- Per-project filter: finished / awaiting review
- Integrator-owned auth (ROPC + refresh)
- No third-party dependencies
- Layered protocol / transport exceptions
Installation
dotnet add package School21NetQuick start
using School21Net;
using School21Net.Authentication;
var http = new HttpClient();
// 1) Authenticate on your side — the SDK never stores your credentials.
var auth = new School21AuthClient(http);
var token = await auth.AuthenticateAsync("your-login", "your-password", ct);
var client = new School21Client(http, new School21ClientOptions(),
new StaticAccessTokenProvider(token.AccessToken));
// Who finished a project — and who is waiting for a reviewer on it?
var finishers = await client.Projects.GetParticipantsAsync(73465, ParticipantProjectStatus.Accepted);
var awaiting = await client.Projects.GetParticipantsAsync(73465, ParticipantProjectStatus.InReviews);Key methods
Projects.GetParticipantsAsyncProject participants by statusParticipants.GetAsyncA participant’s profileParticipants.GetProjectsAsyncA participant’s projectsAuthenticateAsyncObtain a token (ROPC)READMEgithub.com/ai-iskuzhin/School21Net
Loading README from the repository…