Developers

Build with Kaiten.

REST API. GraphQL. OpenFeature (OFREP). Type-safe SDKs. Everything you need to integrate Kaiten in minutes.

From zero to first flag evaluation in 5 minutes.

1Deploy Kaiten

terminal
git clone https://github.com/kaiten-hq/kaiten.git
cd kaiten
docker compose --profile full up -d

# Console:    http://localhost:5173
# API:        http://localhost/api
# API docs:   http://localhost/api/docs

2Create your first resources

curl
# Create a customer
curl -X POST http://localhost/api/customers \
  -H "Authorization: Bearer $TOKEN" \
  -d '{ "name": "Acme Corp", "slug": "acme-corp" }'

# Create an entitlement
curl -X POST http://localhost/api/entitlements \
  -d '{ "name": "Advanced Analytics", "type": "BOOLEAN" }'

# Create a license & bind entitlement
curl -X POST http://localhost/api/licenses \
  -d '{ "name": "Enterprise", "type": "PAID" }'

3Evaluate a feature flag (OpenFeature)

Go
provider := ofrep.NewProvider("http://localhost/api",
  ofrep.WithHeaders(map[string]string{
    "Authorization": "Bearer ksh_your_api_token",
  }))
openfeature.SetProvider(provider)
client := openfeature.NewClient("my-service")

enabled, _ := client.BooleanValue(ctx,
  "advanced-analytics", false, openfeature.EvaluationContext{})

Three APIs. One control plane.

REST API

Bearer token auth · ksh_* tokens

Full CRUD on all resources. Auto-generated OpenAPI spec served via Scalar at /api/docs.

GraphQL API

Endpoint: /api/graphql

Complex queries joining multiple entities. Batch queries for Console data fetching.

OFREP

Endpoint: /api/ofrep/v1/evaluate

OpenFeature Remote Evaluation Protocol. Standard feature flag evaluation from any OpenFeature SDK.

Type-safe clients. Generated from the spec.

Always in sync with the API. Full type safety. Every endpoint covered.

LanguagePackageOFREPRESTStatus
Gogithub.com/kaiten-hq/kaiten-go✅ OpenFeature Go SDKAvailable
TypeScript@kaiten/sdk✅ OpenFeature JS SDKComing soon
Pythonkaiten-sdk✅ OpenFeature Python SDKComing soon
.NETKaiten.SDK✅ OpenFeature .NET SDKAvailable
Javacom.kaiten:sdk✅ OpenFeature Java SDKComing soon

27 events. Real-time delivery.

Every state change emits a typed webhook event. Guaranteed at-least-once delivery.

DomainEvents
Customercreated, updated, deleted
Licensecreated, updated, deleted, entitlement.assigned, unassigned, updated
Entitlementcreated, updated, deleted
Instancecreated, updated, deleted, deployed, migrated, usage_reached
Deployment Zonecreated, updated, deleted, releaseDeployed
Releasecreated, deleted
Feature Flagcreated, updated, deleted

Kaiten CLI — Close the GitOps loop.

The bridge between your CI/CD pipelines and the Kaiten Control Plane.

kaiten CLI
# Push deployment state from your CI/CD
kaiten instances push-state \
  --tenant-id="acme-corp" \
  --instance-slug="acme-production" \
  --release-version="v2.4.1" \
  --status="deployed"

# Get instance details
kaiten instances get --slug="acme-production"

# Check entitlement usage
kaiten usage get \
  --instance="acme-production" \
  --entitlement="api-calls"