Files APIを使用すると、Claude APIで使用するファイルをアップロードおよび管理でき、リクエストごとにコンテンツを再アップロードする必要がなくなります。これは、コード実行ツールを使用して入力(データセットやドキュメントなど)を提供し、出力(チャートなど)をダウンロードする場合に特に便利です。また、Files APIを使用して、複数のAPI呼び出しにわたって頻繁に使用するドキュメントや画像を繰り返し再アップロードする必要をなくすこともできます。このガイドに加えて、APIリファレンスを直接確認することもできます。
Files APIは現在ベータ版です。Files APIの使用体験を共有するには、フィードバックフォームからご連絡ください。
Messagesリクエストでfile_idを参照することは、指定されたファイルタイプをサポートするすべてのモデルでサポートされています。例えば、画像はすべてのClaude 3+モデルで、PDFはすべてのClaude 3.5+モデルで、コード実行ツール用のその他の各種ファイルタイプはClaude Haiku 4.5およびすべてのClaude 3.7+モデルでサポートされています。
Files APIは現在、Amazon BedrockまたはGoogle Vertex AIではサポートされていません。
Files APIは、ファイルを扱うためのシンプルな「一度作成して何度でも使用する」アプローチを提供します:
file_idを受け取りますfile_idを使用してMessagesリクエストでファイルを参照しますFiles APIを使用するには、ベータ機能ヘッダーを含める必要があります:anthropic-beta: files-api-2025-04-14。
将来のAPI呼び出しで参照するためにファイルをアップロードします:
curl -X POST https://api.anthropic.com/v1/files \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14" \
-F "file=@/path/to/document.pdf"ファイルアップロードのレスポンスには以下が含まれます:
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"type": "file",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 1024000,
"created_at": "2025-01-01T00:00:00Z",
"downloadable": false
}アップロード後、file_idを使用してファイルを参照します:
curl -X POST https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14" \
-H "content-type: application/json" \
-d '{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Please summarize this document for me."
},
{
"type": "document",
"source": {
"type": "file",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w"
}
}
]
}
]
}'Files APIは、異なるコンテンツブロックタイプに対応する異なるファイルタイプをサポートしています:
| ファイルタイプ | MIMEタイプ | コンテンツブロックタイプ | ユースケース |
|---|---|---|---|
application/pdf | document | テキスト分析、ドキュメント処理 | |
| プレーンテキスト | text/plain | document | テキスト分析、処理 |
| 画像 | image/jpeg, image/png, image/gif, image/webp | image | 画像分析、ビジュアルタスク |
| データセット、その他 | 各種 | container_upload | データ分析、ビジュアライゼーション作成 |
documentブロックとしてサポートされていないファイルタイプ(.csv、.txt、.md、.docx、.xlsx)の場合、ファイルをプレーンテキストに変換し、メッセージに直接コンテンツを含めてください:
# 例:テキストファイルを読み込んでプレーンテキストとして送信
# 注:特殊文字を含むファイルの場合、base64エンコーディングを検討してください
TEXT_CONTENT=$(cat document.txt | jq -Rs .)
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d @- <<EOF
{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Here's the document content:\n\n${TEXT_CONTENT}\n\nPlease summarize this document."
}
]
}
]
}
EOF画像を含む.docxファイルの場合、まずPDF形式に変換してから、PDFサポートを使用して組み込みの画像解析を活用してください。これにより、PDFドキュメントからの引用を使用できます。
PDFおよびテキストファイルの場合、documentコンテンツブロックを使用します:
{
"type": "document",
"source": {
"type": "file",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w"
},
"title": "Document Title", // オプション
"context": "Context about the document", // オプション
"citations": {"enabled": true} // オプション、引用を有効にします
}画像の場合、imageコンテンツブロックを使用します:
{
"type": "image",
"source": {
"type": "file",
"file_id": "file_011CPMxVD3fHLUhvTqtsQA5w"
}
}アップロードしたファイルの一覧を取得します:
curl https://api.anthropic.com/v1/files \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14"特定のファイルに関する情報を取得します:
curl https://api.anthropic.com/v1/files/file_011CNha8iCJcU1wXNR6q4V8w \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14"ワークスペースからファイルを削除します:
curl -X DELETE https://api.anthropic.com/v1/files/file_011CNha8iCJcU1wXNR6q4V8w \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14"スキルやコード実行ツールによって作成されたファイルをダウンロードします:
curl -X GET "https://api.anthropic.com/v1/files/file_011CNha8iCJcU1wXNR6q4V8w/content" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14" \
--output downloaded_file.txtMessages API呼び出しおよび関連するツール使用では保持される場合がありますFiles APIを使用する際の一般的なエラーには以下が含まれます:
file_idが存在しないか、アクセス権がありません/v1/messagesリクエストで500 MBのプレーンテキストファイルを使用)<、>、:、"、|、?、*、\、/、またはUnicode文字0〜31)を含んでいます{
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "File not found: file_011CNha8iCJcU1wXNR6q4V8w"
}
}File API操作は無料です:
Messagesリクエストで使用されるファイルコンテンツは入力トークンとして課金されます。ダウンロードできるのは、スキルまたはコード実行ツールによって作成されたファイルのみです。
ベータ期間中:
Was this page helpful?