Kairos ConnectKairos Connect

One workspace for your entire team. Tasks, docs, chat, and AI — all connected.

Product

  • Features
  • Pricing
  • API
  • Changelog

Solutions

  • Enterprise
  • Startups
  • Agencies

Company

  • About Us
  • Careers
  • Blog
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  • Security
Kairos ConnectKairos Connect

One workspace. Zero app switching.

Product
  • Features
  • Pricing
  • API
  • Changelog
Solutions
  • Enterprise
  • Startups
  • Agencies
Company
  • About Us
  • Careers
  • Blog
  • Contact
Legal
  • Privacy Policy
  • Terms of Service
  • Security

© 2026 Kairos Connect B.V. All rights reserved.

Kairos ConnectKairos Connect

Core Features

  • Features Overview

    See all features at a glance

  • Tasks & Projects

    Kanban, lists, timelines & sprints

  • Goals & OKRs

    AI-powered goal analysis

  • Team Chat

    E2E encrypted messaging

  • Whiteboard

    Infinite canvas, real-time collab

Platforms

  • Forms

    Drag & drop form builder

  • CRM

    Pipeline, deals & contacts

  • Documents

    6 views, fast databases

  • AI Assistant

    Natural language tasks

  • Mobile Apps

    iOS & Android

  • Desktop Apps

    macOS, Windows, Linux

View all features→
For StartupsFor Small BusinessFor EnterpriseFor Remote Teams
Pricing
vs Asanavs ClickUpvs Notion
Blog
Getting Started
Quick StartAuthentication
API Reference
TasksGoalsCommentsTeamDocuments
SDKs
JavaScript/TypeScriptPythonGo
Getting Started

Authentication

Learn how to authenticate your API requests using API keys.

API Keys

All API requests must be authenticated using an API key. API keys are team-scoped, meaning each key is associated with a specific team and can only access that team's data.

Creating API keys
API keys can only be created by team owners and admins. Go to Team Settings - Developer to create a new key.

Bearer Token Authentication

Include your API key in the Authorization header as a Bearer token:

curl
bash
curl -X GET "https://gateway.thekairos.app/v1/tasks" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

When using an SDK, authentication is handled automatically:

app.ts
typescript
import { Kairos } from '@kairos-connect/sdk';

const kairos = new Kairos({
  apiKey: process.env.KAIROS_API_KEY, // Always use environment variables
});

// The SDK handles authentication automatically
const tasks = await kairos.tasks.list();

Scopes

API keys use scopes to control access to different resources. When creating a key, select only the scopes your integration needs.

ScopeDescription
read:tasksView tasks in your team
write:tasksCreate, update, and delete tasks
read:goalsView goals and progress
write:goalsCreate, update, and delete goals
read:commentsView comments on tasks and goals
write:commentsCreate, update, and delete comments
read:teamView team information and members
read:documentsView documents in your team
Principle of least privilege
Only request the scopes your integration actually needs. This limits the potential impact if a key is compromised.

Rate Limiting

API requests are rate limited to prevent abuse. Limits are applied per API key.

PlanPer MinutePer Hour
Free20200
Pro601,000
Enterprise3005,000

Rate limit information is included in response headers:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1704067200

Error Handling

Authentication errors return a 401 Unauthorized status:

{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or expired API key",
    "request_id": "req_abc123"
  }
}
Error CodeDescription
unauthorizedMissing or invalid API key
forbiddenAPI key lacks required scope
rate_limit_exceededToo many requests
key_expiredAPI key has expired
key_revokedAPI key has been revoked

Security Best Practices

  • *Never expose API keys in client-side code. Always make API calls from your backend.
  • *Use environment variables to store API keys rather than hardcoding them.
  • *Rotate keys regularly and immediately revoke any keys that may have been compromised.
  • *Use the minimum required scopes for each API key.
  • *Set expiration dates on API keys when possible.

Next Steps

Tasks API

Learn how to create, update, and manage tasks

JavaScript SDK

Get started with the official JavaScript/TypeScript SDK