Klantly Developers

API reference

Task boards

The boards with their columns. The column determines the status of a task.

Endpoints

List task boards

GET /api/v1/task-boards

All task boards with their columns, from left to right. If the company has no board yet, Klantly creates the default board.

Scope
tasks.read — Read tasks, boards and comments
Required feature
tasks

Example request

cURL
curl "https://app.klantly.com/api/v1/task-boards" \
  -H "Authorization: Bearer $KLANTLY_API_KEY"
PHP
$client = new \GuzzleHttp\Client([
    'base_uri' => 'https://app.klantly.com/api/v1/',
    'headers' => ['Authorization' => 'Bearer ' . getenv('KLANTLY_API_KEY')],
]);

$response = $client->request('GET', 'task-boards');

$data = json_decode((string) $response->getBody(), true)['data'];
JavaScript
const response = await fetch('https://app.klantly.com/api/v1/task-boards', {
  headers: {
    Authorization: `Bearer ${process.env.KLANTLY_API_KEY}`,
  },
});

const { data } = await response.json();
Python
import os

import requests

response = requests.get(
    "https://app.klantly.com/api/v1/task-boards",
    headers={
        "Authorization": f"Bearer {os.environ['KLANTLY_API_KEY']}",
    },
)
data = response.json()["data"]

Response 200

The response is a list with cursor pagination: data contains the objects, meta the pagination.

Example response
{
  "data": [
    {
      "object": "task_board",
      "id": "9d3f80e6-7cbe-4d3b-8a8f-9eacbdcedfe7",
      "name": "Algemeen",
      "is_default": true,
      "statuses": [
        {
          "object": "task_status",
          "id": "9d3f8207-8dcf-4e4c-9b9a-afbdcedfe0f8",
          "name": "Open",
          "category": "open",
          "color": "#3B82F6",
          "position": 1,
          "is_default": true
        }
      ]
    }
  ],
  "meta": {
    "limit": 50,
    "next_cursor": "eyJpZCI6IjlkM2Y2YzFlIn0",
    "prev_cursor": null
  }
}

Possible errors

In addition, every endpoint can return the general errors, such as an invalid key or a reached limit. See all error codes.

The object

All fields are always present; a field without a value is null.

FieldTypeDescription
object string Always "task_board".
id string (uuid) Id of the board.
name string Name of the board.
is_default boolean The default board; new tasks without a column land here.
statuses array<object> The columns, from left to right.
statuses.object string Always "task_status".
statuses.id string (uuid) Id of the column (for status_id).
statuses.name string Name of the column.
statuses.category string What the column means: open, in_progress, completed or cancelled. one of: open, in_progress, completed, cancelled
statuses.color string Colour of the column (hex). can be empty (null)
statuses.position integer Position on the board, from left to right.
statuses.is_default boolean The default column for its kind.