メインコンテンツへスキップ
リアルタイム文字起こしAPIは、エンタープライズプランのお客様に個別のお問い合わせで提供する機能です。すべてのワークスペースで使えるわけではありません。TiroがワークスペースでこのAPIを有効にすると呼び出せるようになります。

リアルタイム文字起こしAPIで何ができますか?

リアルタイム文字起こしAPIは、アプリから送られた音声を受け取り、文字起こし結果をすぐに返します。セッション作成時に翻訳言語を指定すると、翻訳結果も一緒に受け取れます。 結果はWebSocketメッセージでのみ届きます。TiroはこのAPIでノートを作成せず、受け取った音声も保存しません。文字起こしと翻訳のテキストを後から取得するAPIもないため、必要な結果は受信側で保存してください。

どのような流れで動きますか?

リアルタイム文字起こしは、RESTでセッションを作成し、WebSocketで音声を送って結果を受け取ります。APIキーはお客様のサーバーにだけ置き、クライアントにはセッションごとに発行される streamToken だけを渡します。 接続が切れても、セッションが開いていれば同じトークンで再接続して続けられます。ルールは再接続にまとめています。

誰が使えますか?

次の3つの条件をすべて満たすとセッションを作成できます。 組織のAPIキーとOAuthアクセストークンではこのAPIを呼び出せません。スコープは認証で詳しく説明しています。

どのような制限がありますか?

使い終わったら session.end を送るか POST /v1/external/realtime-transcriptions/{id}/end を呼び出してください。WebSocket接続を閉じるだけでは、セッションは OPEN のまま残ります。音声なしで15分経って自動で終了するまで同時セッションの枠を1つ占有し、整理がさらに最大3分ほど遅れることがあります。

どの言語に対応していますか?

文字起こしと翻訳はどちらも、対応ロケールの17ロケールに対応しています。セッション作成時に transcriptionLocale を省略するか AUTO を送ると、Tiroが話されている言語を自動で検出します。translationLocale は1つだけ指定でき、自動検出は使えません。 翻訳は原文の文と1対1で対応しません。翻訳の断片は届いた順につなげて表示してください。ルールはtranslation メッセージにまとめています。

このAPIが提供しないものは何ですか?

現在のバージョンは次の機能を提供しません。
  • 話者の区別、単語や文単位のタイムスタンプ
  • ノートの作成とWebhook
  • 音声の保存と再送。切断中の音声はクライアントがためておき、再送する必要があります
  • ブラウザからの直接接続。ブラウザのWebSocket APIは Authorization ヘッダーを送れないため、サーバーまたはネイティブアプリから接続してください

利用量はどのように記録されますか?

Tiroはセッションごとに、受け取った音声の長さと接続時間を記録します。受け取った音声の長さは、セッション取得のレスポンスと session.ended メッセージの audioDurationMs で確認できます。この利用量は、ノートの録音利用量やワークスペースの利用上限には加算されません。料金はエンタープライズ契約で定めます。

次のステップ

クイックスタート

セッションを作成し、音声ファイルを送って結果を受け取ってみましょう。

WebSocketプロトコル

メッセージのフィールド、再接続、エラーとclose codeを確認できます。