デプロイメント
各デプロイメントには一意の ID が生成されます。ログはコンソールで確認できます。
コールログ
通話をクリックして、推論コードが生成したログ出力を確認できます。トランスクリプト
各通話には、書き起こされた音声と生成されたテキストが独立して分かれたトランスクリプトがあります。これらのトランスクリプトを API または CLI でエクスポートすると、より詳細なターン単位のタイムスタンプも含まれます。
ロギング可能なイベント
ツール呼び出しに紐付けずにイベントを記録します。SDK
SDK では、エージェントまたはツールからLogMessage イベントを yield することでカスタムイベントを記録できます:
Websocket
SDK を使わずに素の WebSocket を使用している場合、ロギングイベントは次のようになります:Playground
プレイグラウンドでは通話のTranscript タブからこれらのイベントを確認できます。
ロギング可能なメトリクス
ワークフロー内の任意のポイントでメトリクスを記録します。SDK
SDK では、LogMetric イベントをブロードキャストすることでメトリクスを記録できます。これを示すフォーム入力テンプレートからの抜粋:
LogMetric イベントを購読しており、LogMetric がブロードキャストされたことを検出すると、デフォルトでそれを WebSocket 経由でログとして送信します。
Websocket
SDK を使わずに素の WebSocket を使用している場合、メトリクスのロギングは次のようになります:Playground
プレイグラウンドでは通話のTranscript タブからこれらのイベントを確認できます。

通話の録音
通話の録音はプレイグラウンドからダウンロードできます。
Webhook
Cartesia は通話のライフサイクル全体を通じて、お客様の HTTPS エンドポイントに Webhook イベントを送信します。POST + application/json を公開し、x-webhook-secret ヘッダーが保存済みのシークレットと一致することを検証してください。

Webhook シークレットの検証
- Python
- TypeScript
イベントタイプ
| イベント | 発生タイミング | 型付きフィールド |
|---|---|---|
call_started | 通話セッションが開始される | call |
call_completed | 通話が正常に終了する | call |
call_failed | 通話がエラーで終了する | call |
call_turn | 各会話ターン | turn |
post_call_analysis | 非同期分析の完了後 | analysis |
エンベロープフィールド
すべての Webhook イベントには、以下のトップレベルフィールドが含まれます:| フィールド | 説明 |
|---|---|
type | イベントタイプ(上記の表を参照)。 |
call_id | 通話の識別子。 |
agent_id | 通話を処理したエージェント。 |
webhook_id | Webhook 設定 ID。 |
timestamp | RFC 3339 形式のイベント時刻。 |
call
call_started、call_completed、call_failed イベントに含まれます。GET /agents/calls/{call_id} のレスポンスと一致します。一部のイベント(例:call_started)では、まだ有効な値を持たない end_time などのフィールドが省略される場合があります。
| フィールド | 説明 |
|---|---|
id | 通話の識別子。 |
agent_id / agent_name | エージェントの詳細。 |
status | started、completed、または failed。 |
start_time / end_time | RFC 3339 形式のタイムスタンプ。 |
end_reason | 通話終了の理由(例:client_hangup、agent_hangup、inactivity)。すべての値については EndReason を参照。 |
transcript | ターンの配列(下記の turn を参照)。 |
telephony_params | from、to、direction、call_sid、connection_type。 |
telephony_account_type | cartesia、twilio、または sip_trunk。 |
deployment_id / deployment_version_id | 通話を処理したデプロイメント(該当する場合)。 |
deployment_region | US、EU、または APAC。 |
error_message | エラーの詳細(失敗した通話のみ)。 |
metadata | 通話開始時に渡されたユーザー指定のメタデータ。 |
summary | 通話の要約(イベント発生時に利用可能な場合)。 |
turn
call_turn イベントに含まれます。エージェントまたはユーザーの発話ごとに 1 ターン。
| フィールド | 説明 |
|---|---|
role | assistant または user。 |
text | ターンのテキスト。 |
start_timestamp / end_timestamp | 通話開始からの秒数。 |
stt_ttfb | ユーザー音声認識(STT)のタイム・トゥ・ファースト・バイト(秒)、利用可能な場合。 |
tts_ttfb | エージェント TTS のタイム・トゥ・ファースト・バイト(秒)、利用可能な場合。 |
tool_calls | このターン中に行われたツール呼び出し、利用可能な場合。 |
analysis
post_call_analysis イベントに含まれます。非同期分析の完了後に送信されます(現時点では要約の生成。今後、評価とメトリクスがここに追加される予定です)。
| フィールド | 説明 |
|---|---|
summary | 1〜2 文の通話要約。 |
例: call_completed
例: post_call_analysis
エンドポイントのテスト
後方互換性のため:
call_completedおよびcall_failedイベントには、トップレベルのbody(トランスクリプト配列)とトップレベルのend_reasonも含まれます。代わりにcall.transcriptとcall.end_reasonを使用してください。call_turnイベントには、生のターンペイロードを含むトップレベルのbodyも含まれます。代わりにturnを使用してください。