KansoBoard.Contracts
2.0.0
dotnet add package KansoBoard.Contracts --version 2.0.0
NuGet\Install-Package KansoBoard.Contracts -Version 2.0.0
<PackageReference Include="KansoBoard.Contracts" Version="2.0.0" />
<PackageVersion Include="KansoBoard.Contracts" Version="2.0.0" />
<PackageReference Include="KansoBoard.Contracts" />
paket add KansoBoard.Contracts --version 2.0.0
#r "nuget: KansoBoard.Contracts, 2.0.0"
#:package KansoBoard.Contracts@2.0.0
#addin nuget:?package=KansoBoard.Contracts&version=2.0.0
#tool nuget:?package=KansoBoard.Contracts&version=2.0.0
KansoBoard.ApiClient
Official .NET client for consuming the KansoBoard API from external applications (Discord bots, workers, backend services, console applications, etc.).
This package provides:
- a unified HTTP client
- domain-typed APIs (Boards, Columns, Cards, etc.)
- standard DI integration
- API key authentication compatible with the backend middleware
✨ Features
- ✅ A single shared
HttpClient - ✅ Business-oriented API (no raw HTTP)
- ✅
HttpClientFactorycompatible - ✅ ApiKey authentication
- ✅ Typed DTOs/Requests
- ✅ NuGet/versioning ready
📦 Installation
dotnet add package KansoBoard.ApiClient
⚙️ Configuration
Registering in the DI
services.AddKansoBoardApiClient(o =>
{
o.BaseUrl = "https://api.kansoboard.io/";
o.ApiKey = "kanso_xxxxxxxxxxxxxxxxx";
});
The API key is automatically injected into each request via the header:
Authorization: ApiKey <your-key>
🧩 API available
The main client exposes sub-APIs per domain:
IKansoBoardApiClient
├── Boards
├── Columns
└── Cards
📘 Example: Boards
var boards = await api.Boards.GetByProjectAsync(projectId);
var board = await api.Boards.CreateAsync(new CreateBoardRequest(
projectId,
“My new board”
));
📗 Example: Columns
var column = await api.Columns.CreateAsync(new CreateColumnRequest(
boardId,
"Todo",
position: 1
));
📙 Example: Cards
var card = await api.Cards.CreateAsync(new CreateCardRequest(
columnId,
"My first card",
"Optional description"
));
🔐 Authentication
Authentication relies on an API key generated by the user.
On the backend, the key is validated by a dedicated middleware and automatically associated with the project (ApiProjectId).
🧠 Design & Architecture
- No dependency on the backend's
Applicationlayer - HTTP contracts are explicitly exposed via DTOs
- The client contains no business logic
- Easily testable (mock of
IKansoBoardApiClient)
📄 License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on KansoBoard.Contracts:
| Package | Downloads |
|---|---|
|
KansoBoard.ApiClient
KansoBoard API Client package |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0 | 270 | 12/19/2025 |