Skip to main content

Kotoba API Reference

Version: 0.0.1

This API reference explains how to use Kotoba Technologies' REST API and Realtime API.

Use the language picker in the navbar to switch languages.

Authentication

To use the API, sign up in the dashboard and create an API key.

Keep your API key secret. Never ship it in client-side code (browser/mobile). Use it only in a secure server environment.

If you suspect your API key leaked

You can immediately revoke your API key (or schedule it to expire) from the dashboard. Use the newly issued replacement key.

Use HTTP Bearer auth:

curl https://api.kotobatech.ai/v1/realtime/transcription_sessions \
-H "Authorization: Bearer $KOTOBA_API_KEY"

We also accept HTTP Basic auth with the API key as the username (empty password):

curl -u $KOTOBA_API_KEY: https://api.kotobatech.ai/v1/realtime/transcription_sessions

Rate limits

We apply rate limits per API key to protect system stability. If you are rate-limited, you’ll receive HTTP 429 with an Error JSON.

Realtime API has additional limits

Realtime connections have separate concurrency limits. See Realtime ASR (Speech-to-Text) API.

As a rough guide, REST endpoints are limited to around 30 requests/sec per API key. The internal calculation and exact limits may change over time, and we may not be able to disclose detailed thresholds.

Request / response format

For POST, send a JSON body (Content-Type: application/json). For GET/DELETE, use query parameters. Responses are UTF-8 JSON.

Timestamps are generally returned as UNIX epoch seconds.

OpenAPI spec / mocking

We publish the OpenAPI spec at /openapi.yaml. For non-realtime REST APIs, you can run a local mock server using tools like Prism.