Skip to content

Kotoba Speech-to-Text

Integrate

Model id kotoba-technologies/kotoba-stt/v1/speech-to-text
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/kotoba-technologies/kotoba-stt/v1/speech-to-text?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3",
    "language": "ja"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Files like the example: $0.001 1 API credit · ≈ ₽0.11 your files are measured before the run Run it on this page

Get API key
Kotoba Technologies Speech to Text #commercial-use#speech-to-text#japanese#multilingual

Speech-to-text for clips up to 2 minutes, tuned for Japanese, with word timestamps and keyword hints

Kotoba Technologies · Text

Your first result goes here

Build a request below and run it with your API key. Outputs are copied to our storage, kept forever or 7 days for free.

Build a request

Controls are generated from the model schema. The code and the price update as you change them.

•required audio_url
Drop a file, or

Audio duration limited to 2 minutes.

language •required

Language used by the audio's speakers.

Advanced with_timestamps · diarization · kana · keywords

Terms whose spellings should be favored in the transcript, including names or product terminology. Accepts no more than 1000 terms, each limited to 64 characters.

POST /run/kotoba-technologies/kotoba-stt/v1/speech-to-text?wait=20 quote → $0.001
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/kotoba-technologies/kotoba-stt/v1/speech-to-text?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "audio": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3",
    "language": "ja"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"

Run this request

Your key stays in this browser: it is sent only to the Doitong API and saved (localStorage) only if you tick Remember. Get an API key

About Kotoba Speech-to-Text

Transcribes an audio clip of up to 2 minutes from `audio_url`. Set `language` to ja, en, ko, zh, es, zh-hk, zh-tw or auto. Optional `with_timestamps` returns per-word start and end times, `diarization` labels speakers, `keywords` accepts up to 1000 terms to bias spelling, and `kana` writes names in katakana for Japanese. Output includes text, detected language and audio duration.

Parameters

Send either the canonical name or the native name, not both. Canonical names

NameType DefaultAllowed Description
audio_urlrequired audio
Typeurl · audio
Audio duration limited to 2 minutes.
languagerequired
Typeenum
jaenkozheszh-hkzh-twauto
Language used by the audio's speakers.
with_timestampsoptional
Typeboolean
Defaultfalse
Per-word timing output in `words`, including each word's start and end.
diarizationoptional
Typeboolean
Defaultfalse
Word-level speaker attribution, available only for models that support speaker tokens. Each word receives a `speaker_id`, but its time remains null unless `with_timestamps` is enabled too.
keywordsoptional
Typestring[]
≤ 1,000 items
Terms whose spellings should be favored in the transcript, including names or product terminology. Accepts no more than 1000 terms, each limited to 64 characters.
kanaoptional
Typeboolean
Defaultfalse
Katakana rendering of people's names and place names in Japanese.
required Canonical name, also accepted

File parameters take a public https:// URL, a data: URI up to 10 MB, or the file_url of an upload. Files

Output

GET /requests/req_8k2m4q7x1z9c3v5b6n0p2r4t
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "kotoba-technologies/kotoba-stt/v1/speech-to-text",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 1,
    "usd": "0.001",
    "charged": 1,
    "refunded": 0
  },
  "input": {
    "audio_url": "https://content.doitong.com/audio/showcase/v3/tools/dub_es.mp3",
    "language": "ja"
  },
  "output": {
    "audio_duration_secs": 1.0,
    "language_code": "string",
    "language_probability": 1.0,
    "text": "string",
    "words": [
      {
        "end": 1.0,
        "speaker_id": "string",
        "start": 1.0,
        "text": "string",
        "type": "word"
      }
    ]
  },
  "outputs": [
    {
      "type": "file",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_size": 1843200,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
Your files, your choiceEvery outputs[].url is a copy on our storage: kept forever (paid per GB-month) or 7 days for free, by your account setting or ?storage=.
Same shape on every modeltype, url, content_type, width, height and duration, for images, video and audio alike. output is the model’s own result object.
Fields of output
audio_duration_secs
number | null
language_code
string
language_probability
number
text
string
words
array of object {end, speaker_id, start, text, type}

For AI agents: this page as Markdown is at https://doitong.com/en-GB/developers/models/kotoba-technologies/kotoba-stt/v1/speech-to-text.md. All models and guides: https://doitong.com/developers/llms.txt