Source: https://ailoot.ai/models/en/openai-whisper-1/
Canonical: https://ailoot.ai/models/en/openai-whisper-1/
Language: en

# OpenAI: Whisper 1

[Markdown](https://ailoot.ai/models/en/openai-whisper-1/index.md) · [JSON](https://ailoot.ai/models/en/openai-whisper-1/facts.json)

## [OpenAI: Whisper 1](https://ailoot.ai/models/en/openai-whisper-1/)

Whisper 1 transcribes a completed audio file into text, with multilingual recognition and word or segment timestamps. The producer supports subtitle formats and a separate English-translation flow; the transcription result preserves the recording’s language.

- [**Ailoot Ultra · Speech recognition** `POST /v1/audio/transcriptions` `openai/whisper-1`](https://ailoot.ai/models/en/openai-whisper-1/#method-0)

About the model

This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.

Whisper 1 is OpenAI’s general-purpose speech-recognition API model, documented as powered by the open-source Whisper V2 model. It accepts an audio file and returns text. The maker describes multilingual recognition, language identification and a separate speech-translation task. Transcription preserves the spoken language; the producer’s separate translation interface returns English text.

A useful application is preparing an interview, voice note or recorded conversation for later search and editing. Supply the completed recording and, when known, its input language. OpenAI documents 98 supported languages and notes that recognition accuracy varies by language. The singular language hint uses an ISO 639-1 code; the newer multi-language and keyword fields of other transcription models are separate controls.

The producer’s file-transcription flow accepts files up to 25 MB in MP3, MP4, MPEG, MPGA, M4A, WAV or WebM format. For a larger recording, use a compressed format or divide it into chunks within the limit. Preserve sentence boundaries and the order of the chunks so that the assembled transcript remains connected to the original recording. A video container supplies its audio for this task rather than a visual-description input.

A prompt can supply names, acronyms or recording-specific vocabulary and context from an earlier segment. Whisper’s prompt limit is 224 tokens, and the prompt should match the audio’s language. The maker states that Whisper does not follow instructions like a general-purpose text model. Use the prompt as relevant transcription context, then check important spellings against the recording rather than treating a terminology list as words the speaker must have said.

The producer documents JSON, plain text, SRT, VTT and verbose JSON transcription formats. Word and segment timestamps require verbose JSON; either or both granularities can be requested. The API reference notes that segment timestamps add no extra latency, while word timestamps require additional processing. These outputs support captioning and locating passages during editing; speaker-diarization annotations belong to a different specialized model.

Whisper 1 does not support file-transcription streaming. Its reference also documents a sampling temperature between zero and one; at zero, the model can increase temperature automatically when its decoding thresholds require it. This describes the producer’s processing controls rather than a promise that every recording produces an identical or perfectly accurate transcript.

Define the final artifact: a transcript for search, a subtitle file or text with word/segment timing. Keep the original recording, chunk order and relevant source time references with the result. A later text-editing step can correct a misspelling or prepare a summary, but compare changes with the audio so the speaker’s meaning is preserved. The recognized text becomes evidence for the next task rather than a generated answer to the spoken question.

**Ailoot Ultra · Speech recognition** `POST /v1/audio/transcriptions` `openai/whisper-1`

[`openai/whisper-1`](https://ailoot.ai/models/en/#m=openai%2Fwhisper-1&route=Ultra&caller=openai%2Fwhisper-1&fmt=transcriptions)

OpenAI /`openai/whisper-1`

### Overview

Whisper 1 transcribes a completed audio file into text, with multilingual recognition and word or segment timestamps. The producer supports subtitle formats and a separate English-translation flow; the transcription result preserves the recording’s language.

Accepted inputs

Audio

Results

transcription

### Available in Ailoot · inputs & methods

**Ailoot Ultra · Speech recognition** `POST /v1/audio/transcriptions`

Input types

`audio`

Output types

`transcription`

Output format

json

| Field | Type | Requirement | Values & limits | Default |
| --- | --- | --- | --- | --- |
| Field`model` | Type`string` | RequirementRequired | Values & limits openai/whisper-1 | Default— |
| Field`file` | Type`file` | RequirementRequired | Values & limits Content type: multipart/form-data | Default— |
| Field`response_format` | Type`string` | RequirementOptional | Values & limits json | Default— |
| Field`input_audio.data` | Type`base64_string` | RequirementRequired | Values & limits Applies when: WhisperOR JSON input | Default— |
| Field`input_audio.format` | Type`string` | RequirementRequired | Values & limits wav, mp3, flac, ogg, m4a, webm Applies when: WhisperOR JSON input | Default— |

Input material combinations

· Required: model, file

Method parameters and lifecycle

| Parameter | Contract |
| --- | --- |
| Parameter`contours` | Contract{"content\_types":\["application/json","multipart/form-data"\],"required\_json":\["model","input\_audio.data","input\_audio.format"\],"required\_multipart":\["model","file"\],"file\_formats":\["wav","mp3","flac","ogg","m4a","webm"\],"response\_format\_optional":\["json"\]}, {"content\_types":\["multipart/form-data"\],"required":\["model","file"\],"file\_formats":\["mp3"\],"response\_format\_option":false} |
| Parameter`max_bytes` | Contract26214400 |
| Parameter`material_types` | Contractaudio |

Lifecycle: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · actual returned task\_id or media library record

`GET /v1/media/assets/{asset_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

Use actual recording and matching format.

Preserve full transcript, segments, speaker IDs and timing.

### Pricing

Tariff references do not add request options. Supported parameters are listed for the selected method.

Fast mode

Not specified When fast mode is selected

Flex mode

Not specified When flex mode is selected

Maximum reasoning effort

Not specified When maximum reasoning effort uses the default adjustment

#### Ailoot rates

#### Prices by configuration

Match each charge to the conditions shown. Use one rate for each set of alternative configurations.

| Configuration | Rate schedule | Billing unit | Charge |
| --- | --- | --- | --- |
| ConfigurationBase token rates | Rate scheduleBase rate | Billing unit— | Charge Input · Input tokens **—** / 1K tokens Output · Output tokens **—** / 1K tokens Input · Cache read **—** / 1K tokens Input · Cache write **—** / 1K tokens Input · Cache write, 1 hour **—** / 1K tokens |
| Configurationinput audio second | Rate schedule— | Billing unitper input audio second | Charge Input · input audio second **$0.0002** per input audio second |

#### Reference tariff details

Model-level reference schedules do not change method selection, quotes or charges. Active charges use the selected Ailoot method rates.

OpenAI: Whisper 1

#### Prices by configuration

| Configuration | Billing conditions | Charge |
| --- | --- | --- |
| ConfigurationOpenAI: Whisper 1 · Default configuration | Billing conditionsDefault configuration | Charge Input · Input audio seconds **$0.0002** per input audio second |

Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. [How reservation and settlement work →](https://ailoot.ai/docs/en/billing/reserve/)

### Example requests

#### Ailoot Ultra · Speech recognition

curl

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set the path to your actual MP3 recording}"
export AILOOT_AUDIO_FILE
python3 - <<'PY_REQUEST'
import os
from pathlib import Path
p=Path(os.environ["AILOOT_AUDIO_FILE"])
if not p.is_file() or p.suffix.lower()!=".mp3":raise SystemExit("Choose an existing MP3 recording")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  --form-string model=openai/whisper-1 -F "file=@$AILOOT_AUDIO_FILE" \
  -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("result.json").read_text())))
PY_RESULT
```

### Receive and save results

#### Ailoot Ultra · Speech recognition

json

- `GET /v1/media/tasks/{task_id}`
- `GET /v1/media/assets/{asset_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

Other content reads

Media libraryTask statusAsset details

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
```

##### Keep all completed results

Keep every complete returned response, file and content part.

Retain complete JSON, not only text; preserve every available segment/speaker/timestamp and actual task/asset identity.

##### If the original response needs checking

Retain original operation\_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route.

Response fields

| Field | Type |
| --- | --- |
| Field`text` | Typestring |
| Field`segments[]` | Typeobject |
| Field`task_id` | Typestring |
| Field`asset_url` | Typestring |
| Field`usage` | Typeobject |

Errors and next steps

| Response | Condition | Next step |
| --- | --- | --- |
| Response400 · `invalid_request_error` | ConditionInvalid required fields, material representation or parameter value | Next stepCorrect the indicated fields before a new creation request. |
| Response`server_error` | ConditionThe returned response says the operation or result requires a check | Next stepKeep the original returned operation/task ID, request headers and response; continue supported reads of that original operation. Do not resubmit the creation request. |

### Aliases

#### Model aliases

**Ailoot Ultra** [`openai/whisper-1`](https://ailoot.ai/models/en/#m=openai%2Fwhisper-1&route=Ultra&caller=openai%2Fwhisper-1&fmt=transcriptions)

#### Method path aliases

Use the method paths shown above.

#### Related caller IDs

[`openai/whisper-1`](https://ailoot.ai/models/en/#m=openai%2Fwhisper-1&route=Ultra&caller=openai%2Fwhisper-1&fmt=transcriptions)

FAQ · OpenAI: Whisper 1

What inputs and results are available?

`POST /v1/audio/transcriptions` · `openai/whisper-1`: `audio` → `transcription`

Which fields does the request use?

`POST /v1/audio/transcriptions` · `openai/whisper-1`: `model`, `file`, `response_format`

Connect Ailoot to Claude Code, OpenCode, Hermes or your own app.

## The company and its project portfolio

The company and its project portfolio: millions of customers; monthly sales in the billions.

## Buy tokens at a discount.

Subscription discounts for regular use. Promo codes offer up to 50% off token purchases.

Subscription

Choose a discounted plan for your regular requests.

Promo code: up to 50% off

Enter your code at checkout. The price updates to reflect the current promotion.

Spending in your history

The model, tokens and amount are recorded for each request.

[Choose a subscription](https://ailoot.ai/docs/en/billing/subscriptions/) · [View model prices](https://ailoot.ai/models/en/)

## Connect the API to a product you sell.

Use Ailoot in SaaS, apps and bots under its official service offer and licence agreement. Request a reseller licence for resale.

Commercial application

Add text, image, video and audio generation to paid features in your service.

Reseller licence

Send a description of your project and how you provide access. Request written terms for use and resale.

Documents on the website

The service offer, licence agreement and data processing policy are available before you connect.

[Request a reseller licence](mailto:support@ailoot.ai) · [Service offer and licence agreement](https://ailoot.ai/legal/offer?lang=en)

## Ailoot · The company and its project portfolio





Ailoot combines established operating experience, a large client base, stable service and ongoing KPI control.





The company and its project portfolio: millions of customers; monthly sales in the billions.





Ailoot brings that operating experience to API access for AI features in customer products, agents, applications and automations.
