目次
音声文字起こしガイド
音声文字起こしガイド
POST /v1/audio/transcriptions は OpenAI-compatible です。multipart/form-data で音声をアップロードするか JSON で base64 の input_audio を送るとテキストが返ります。モデルには elevenlabs/scribe-v2 と elevenlabs/scribe-v2-medical があります。最新一覧は GET /v1/models?output_modalities=transcription を参照してください。 GET /v1/models は既定ではテキストモデルのみを返すため、?output_modalities=transcription(または all)を付けて一覧を取得してください。
/v1/audio/transcriptionsパラメーター
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| model | string | はい | 文字起こしモデル ID。例: elevenlabs/scribe-v2。 |
| file | file | はい | 音声ファイル(multipart)。wav、mp3、mp4、m4a、ogg、flac、webm、aac に対応し、最大 25 MiB。JSON では input_audio: {data: base64, format} を送れます。 |
| response_format | string | いいえ | json(既定)は {text}、verbose_json は言語、長さ、segments/words も返します。 |
| language | string | いいえ | en や zh などの任意の言語ヒント。省略すると自動判定します。 |
| prompt | string | いいえ | 名前や用語の認識を助ける任意の文脈テキスト。モデルによっては適用されません。 |
| timestamp_granularities[] | string[] | いいえ | word または segment、あるいは両方。response_format=verbose_json の場合のみ適用されます。 単語単位のタイムスタンプは現在返されません(segments は返されます)。 |
出力形式
response_format は json または verbose_json のみです(text、srt、vtt は未対応)。stream は未対応です。音声の長さはモデル別に制限され、既定は 60 秒です。超過すると処理前に 413 audio_too_long が返り、課金されません。長い録音は分割してください。
料金
文字起こしは音声の秒数で課金されます。秒単価は /models のモデルページと GET /v1/models の pricing.second にあります。分単価はその 60 倍です。応答の usage は課金秒数、usage.cost は請求額を示します。
例
curl https://api.bazaarlink.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $BAZAARLINK_API_KEY" \
-F model="elevenlabs/scribe-v2" \
-F file=@audio.mp3 \
-F response_format=verbose_json \
-F "timestamp_granularities[]=word"よくあるエラー
| 状態 | 原因と対処 |
|---|---|
| 400 | 不正なリクエスト: model または file の欠落、空の音声、json/verbose_json 以外の response_format、stream=true(unsupported_parameter)、word/segment 以外の timestamp_granularities。 |
| 401 | API キーがないか無効です。 |
| 402 | 残高不足です。チャージして再試行してください。 |
| 413 | audio_too_large: デコード後の音声が 25 MiB を超えています。audio_too_long: モデル別の長さ制限(既定 60 秒)を超える音声は処理前に拒否され、課金されません。圧縮または分割してください。 |
| 429 | レート制限です。Retry-After に従って再試行してください。 |
| 502 | モデルサービスが一時的に利用できないか、音声転送が中断されました。再試行してください。失敗したリクエストは課金されません。 |
音声文字起こし
multipart/form-data の model と file、または JSON の model と input_audio:{data,format}(生の base64)を送信します。形式: wav, mp3, mp4, m4a, ogg, flac, webm, aac。音声は最大 25 MiB、本文は base64 のため 50 MiB。audio.transcription_max_seconds_by_model でモデル別の上限を設定し、未設定なら audio.transcription_max_seconds、次に既定の 60 秒を使います。超過した音声は処理前に 413 audio_too_long で拒否され、課金されません。response_format は json、verbose_json のみ。timestamp_granularities の word、segment は verbose_json が必要です。stream は未対応(400 unsupported_parameter)、サイズ超過は 413 audio_too_large。provider は無視されます。データベース料金で usage.seconds または入出力 token に課金し、分単価は秒単価の 60 倍。usage.cost は USD の請求額です。
/v1/audio/transcriptions