OpenAI's hosted whisper-1 speech recognition with the OpenAI API parameters - json or verbose_json output, segment and word timestamps (timestamp_granularities), language hint and prompt. Billed per second of audio (0.2325 credits/s, about 14 credits per minute), up to 1 hour / 25MB per request.
Test this model instantly in the Console Playground โ no code required
Copy usage instructions for Claude, ChatGPT, or other AI
curl -X POST "https://api.core.today/v1/predictions" \
-H "Content-Type: application/json" \
-H "X-API-Key: cdt_your_api_key" \
-d '{
"model": "openai/whisper-1",
"input": {
"audio": "https://replicate.delivery/mgxm/e5159b1b-508a-4be4-b892-e1eb47850bdc/OSR_uk_000_0050_8k.wav",
"response_format": "verbose_json",
"timestamp_granularities": [
"segment"
],
"language": "en"
}
}'| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
audio | string | Yes | - | Audio file URL (flac, m4a, mp3, mp4, mpeg, mpga, ogg, wav, webm). Sent to OpenAI as the `file` part. Max 25MB and 1 hour. |
response_format | string | No | json | json returns {text, usage}; verbose_json adds language, duration and timestamped segments/words. text, srt and vtt are not available through this API. jsonverbose_json |
timestamp_granularities | array | No | - | Timestamp detail for verbose_json - segment, word or both. Requires response_format verbose_json. Word timestamps add latency; segment timestamps add none. segmentword |
language | string | No | - | Language of the input audio as an ISO-639-1 code (e.g. ko, en, ja). Improves accuracy and latency. Omit for automatic detection. |
prompt | string | No | - | Optional text to guide style or continue a previous segment. Should match the audio language. |
temperature | number | No | 0 | Sampling temperature between 0 and 1. 0 lets the model raise it automatically until certain thresholds are hit. |
There are 3 ways to provide files for the audio parameter:
Pass a publicly accessible URL directly. With the Storage API (POST /v1/files/upload-url) the file uploads straight to S3 (50MB per file) and you pass the returned file_url.
{
"model": "openai/whisper-1",
"input": {
"prompt": "your prompt here",
"audio": "https://example.com/image.jpg"
}
}Attach files directly to POST /v1/predictions/upload. No separate upload step, but the bytes pass through the API server so the whole request is capped at 10MB.
curl -X POST "https://api.core.today/v1/predictions/upload" \
-H "X-API-Key: cdt_your_api_key" \
-F "model=openai/whisper-1" \
-F 'input={"prompt":"your prompt here"}' \
-F "file:audio=@your_file.png"Common parameters used when calling POST /v1/predictions.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
model | string | Yes | - | Model identifier |
input | object | Yes | - | Object containing the model-specific parameters from the table above |
output_folder | string | No | - | Folder path for output files (max 256 chars, '..' not allowed) |
webhook_url | string | No | - | Webhook URL to call on completion |
is_public | boolean | No | false | If true, output files are also available via permanent public URLs |
Returns text, language, duration and segments with start/end seconds.
curl -X POST "https://api.core.today/v1/predictions" \
-H "Content-Type: application/json" \
-H "X-API-Key: cdt_your_api_key" \
-d '{
"model": "openai/whisper-1",
"input": {
"audio": "https://replicate.delivery/mgxm/e5159b1b-508a-4be4-b892-e1eb47850bdc/OSR_uk_000_0050_8k.wav",
"response_format": "verbose_json",
"timestamp_granularities": [
"segment"
],
"language": "en"
}
}'Returns {text, usage} for a Korean recording.
curl -X POST "https://api.core.today/v1/predictions" \
-H "Content-Type: application/json" \
-H "X-API-Key: cdt_your_api_key" \
-d '{
"model": "openai/whisper-1",
"input": {
"audio": "https://example.com/meeting.m4a",
"response_format": "json",
"language": "ko"
}
}'POST /v1/predictions