ログをエクスポートする
GET /api/open/v1/logs/export一致するすべてのログ行を、ページ送りせず 1 回のレスポンスで返します。絞り込み条件は アカウントログを照会する と同じで、レスポンスは CSV または JSONL のファイルです。
リクエストパラメーター
Section titled “リクエストパラメーター”| パラメーター | 位置 | 型 | 必須 | デフォルト | 説明 |
|---|---|---|---|---|---|
start_timestamp | query | integer | いいえ | 下記参照 | 開始時刻(含む)、unix 秒 |
end_timestamp | query | integer | いいえ | 下記参照 | 終了時刻(含む)、unix 秒 |
type | query | integer | いいえ | 2 | ログの種類。2 は消費(課金)リクエスト、7 は最終的に失敗したリクエスト(課金なし)。パラメーターを繰り返すかカンマ区切りで指定します(?type=2,7)。それ以外の値は 400 |
model_name | query | string | いいえ | — | モデル名の完全一致。複数指定する場合はパラメーターを繰り返します(?model_name=a&model_name=b)。カンマ区切りにも対応 |
key_name | query | string | いいえ | — | Key 名の完全一致。複数指定する場合はパラメーターを繰り返します。名前にカンマを含められるためカンマ区切りは未対応 |
key_id | query | integer | いいえ | — | Key ID(正の整数)。パラメーターを繰り返すかカンマ区切りで指定。他ユーザーの ID は空の結果になります |
format | query | string | いいえ | csv | 出力形式。csv または jsonl。それ以外の値は 400 |
時間範囲のルール:
- 両方とも省略: 直近 30 日間。
start_timestampのみ指定: そこから 30 日後まで。ただし現在時刻を超えません。end_timestampのみ指定: そこから 30 日前まで。- 範囲は最大 366 日です。
複数値パラメーターはそれぞれ最大 50 個までです。超えると 400 invalid_request を返します。タイムスタンプは非負の整数である必要があり、そうでない場合は 400 を返します。このエンドポイントは p / page_size を受け付けません。
リクエスト例
Section titled “リクエスト例”curl "https://www.routeapi.ai/api/open/v1/logs/export?start_timestamp=1726408000&end_timestamp=1729000000&key_name=bot&type=2,7&format=csv" \ -H "Authorization: Bearer $ROUTEAPI_MANAGEMENT_KEY" \ -o logs.csvレスポンスボディはエクスポートされたファイルで、通常の { success, message, data } JSON ではありません。レスポンスヘッダー:
| ヘッダー | 説明 |
|---|---|
X-Export-Rows | ファイルに書き込まれた行数 |
X-Export-Truncated | 一致した行数が 1 回の上限を超えた場合 true、それ以外は false |
Cache-Control | 常に no-store |
Content-Disposition | attachment; filename="logs-<UTC yyyyMMdd-HHmmss>.csv" または .jsonl |
1 回のリクエストで返すのは最大 50,000 行です。一致する行がそれを超える場合は、ログ ID の降順で最新の 50,000 行を返し、X-Export-Truncated を true にします。残りが必要な場合は時間範囲を分割して取得してください。アカウントログを照会する と異なり、行はログ ID の降順で並びます。
CSV 形式
Section titled “CSV 形式”format=csv は Content-Type: text/csv; charset=utf-8 で、UTF-8 BOM に続いてヘッダー行と 1 行 1 ログを返します。列の順序は常に次のとおりです。
id,created_at,type,key_id,key_name,model_name,prompt_tokens,completion_tokens,total_tokens,amount,request_id,key,use_time,is_stream,first_response_ms,cache_read_tokens,cache_creation_tokens,reasoning_effort,request_path,web_search_calls,audio_input_tokens,audio_output_tokens,billing_source12345,1729000000,2,12,bot,gpt-4o,1200,300,1500,0.05,20261020120000123456789,sk-abcd**********wxyz,3,true,420,800,0,medium,/v1/chat/completions,0,0,0,walletフィールドは アカウントログを照会する の item と同じで、created_at は unix 秒です。=、+、@、タブ、復帰文字で始まるセル、および数値でない - で始まるセルには ' を前置し、表計算ソフトが数式として実行するのを防ぎます。
JSONL 形式
Section titled “JSONL 形式”format=jsonl は Content-Type: application/x-ndjson で、1 行 1 つの JSON オブジェクトを返します。フィールドは アカウントログを照会する の item とまったく同じです。
{"id":12345,"created_at":1729000000,"type":2,"key_id":12,"key_name":"bot","key":"sk-abcd**********wxyz","model_name":"gpt-4o","prompt_tokens":1200,"completion_tokens":300,"total_tokens":1500,"amount":0.05,"use_time":3,"is_stream":true,"first_response_ms":420,"cache_read_tokens":800,"cache_creation_tokens":0,"reasoning_effort":"medium","request_path":"/v1/chat/completions","web_search_calls":0,"audio_input_tokens":0,"audio_output_tokens":0,"billing_source":"wallet","request_id":"20261020120000123456789"}| HTTP | code | シナリオ |
|---|---|---|
| 400 | invalid_request | タイムスタンプが数値でないか負の値、時間範囲が 366 日を超える、start_timestamp が end_timestamp より大きい、複数値パラメーターが 50 個を超える、key_id が正の整数ではない、type が 2 でも 7 でもない、または format が csv でも jsonl でもない |
| 429 | — | ユーザーごとの照会レート制限(デフォルト 30 回/分)を超過。レスポンスボディが空の場合があります |
エラーはファイルではなく通常の JSON エラーボディで返されます。その他の共通エラーコードは プラットフォーム API のエラー を参照してください。
- デフォルトでは消費(課金)ログのみをエクスポートします。最終的に失敗したリクエスト(課金なし)も含めるには
type=2,7を指定してください。 key_nameはリクエスト時点の Key 名です。Key の名前を変更しても過去の記録は書き換えられません。keyはマスクされた値です。Key がその後完全に削除された場合は空文字列になります。- トークン数は実数で、百万単位ではありません。金額はサイトの表示通貨で表されます。残高を照会する を参照してください。
- このエンドポイントは アカウントログ、使用量統計、モデル別使用量、Key 別使用量 とユーザーごとの照会レート制限(デフォルト 30 回/分)を共有します。レート制限 を参照してください。