KansoBoard.ApiClient
2.2.0
dotnet add package KansoBoard.ApiClient --version 2.2.0
NuGet\Install-Package KansoBoard.ApiClient -Version 2.2.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="KansoBoard.ApiClient" Version="2.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="KansoBoard.ApiClient" Version="2.2.0" />
<PackageReference Include="KansoBoard.ApiClient" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add KansoBoard.ApiClient --version 2.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: KansoBoard.ApiClient, 2.2.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package KansoBoard.ApiClient@2.2.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=KansoBoard.ApiClient&version=2.2.0
#tool nuget:?package=KansoBoard.ApiClient&version=2.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- KansoBoard.Contracts (>= 2.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.2)
- Microsoft.Extensions.Http (>= 10.0.2)
- Microsoft.Extensions.Options (>= 10.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.