Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.burki.dev/llms.txt

Use this file to discover all available pages before exploring further.

Burki REST API — Introduction

The Burki Voice AI API allows you to programmatically manage assistants, calls, and other resources in your organization. You can use it to build powerful integrations and automate your voice AI workflows. This API is built on REST principles and uses standard HTTP response codes and authentication. All API responses are returned in JSON format.

Base URL

All API requests should be made to:
https://api.burki.dev

Authentication

Most API endpoints accept a bearer token in the Authorization header:
  • API key (recommended for server-to-server integrations)
  • JWT access token (for user-authenticated app sessions)
Many dashboard-backed endpoints also support session auth when used from the web app, but external integrations should use API keys. You can generate and manage API keys in your dashboard at burki.dev/dashboard.

Bearer Authentication Example

curl "https://api.burki.dev/api/v1/assistants" \
  -H "Authorization: Bearer YOUR_API_KEY"
Treat your API keys like passwords! Do not share them publicly or commit them to version control.

Response Format

Responses are JSON, but shape varies by endpoint. Two common patterns:

Resource/List Responses

[
  {
    "id": 123,
    "name": "Customer Service Bot"
  }
]
{
  "items": [],
  "total": 0,
  "skip": 0,
  "limit": 100
}

Error Response (FastAPI style)

{
  "detail": "Error description"
}

Error Codes

CodeDescription
400Bad Request - Invalid parameters
401Unauthorized - Invalid or missing API key
403Forbidden - Insufficient permissions
404Not Found - Resource doesn’t exist
429Too Many Requests - Endpoint or account rate limit exceeded
500Internal Server Error

Rate Limits

Rate limiting is endpoint-specific and can vary by auth type and environment configuration.
  • Expect 429 Too Many Requests when limits are exceeded.
  • Some endpoints include Retry-After in the response headers.
  • Build clients with retry/backoff for transient limit errors.
For critical workloads, contact Burki support for current limits and throughput planning.

Pagination

Most list endpoints use skip + limit pagination:
ParameterDescriptionDefault
skipNumber of records to skip0
limitMaximum number of records to returnendpoint-specific
Common paginated response shape:
{
  "items": [...],
  "total": 100,
  "skip": 0,
  "limit": 100
}

Webhooks

Burki can send webhook notifications for various events. Configure webhooks in your dashboard under SettingsWebhooks. Current webhook payloads are sent as typed JSON messages:
  • Voice call lifecycle webhooks use message.type values such as:
    • status-update
    • end-of-call-report
  • SMS webhooks use top-level type such as:
    • sms_received
Always parse webhook payloads by their explicit type field instead of assuming dotted event names.

SDKs & Libraries

Official SDKs are available for Python, JavaScript/TypeScript, and Go:
LanguagePackageInstallation
Pythonburkipip install burki
JavaScript/TypeScript@burki.dev/sdknpm install @burki.dev/sdk
Gogithub.com/burki-ai/burki-gogo get github.com/burki-ai/burki-go

SDK Overview

Compare SDKs and get started quickly

Python SDK

Full Python SDK documentation

JavaScript SDK

TypeScript-first SDK with full types

Go SDK

Idiomatic Go SDK with channels

Next Steps

Quickstart

Get started with Burki in 5 minutes

Assistants API

Create and manage AI assistants