La API de Archivos te permite cargar y gestionar archivos para usar con la API de Claude sin necesidad de volver a cargar contenido con cada solicitud. Esto es particularmente útil cuando se utiliza la herramienta de ejecución de código para proporcionar entradas (por ejemplo, conjuntos de datos y documentos) y luego descargar salidas (por ejemplo, gráficos). También puedes usar la API de Archivos para evitar tener que volver a cargar continuamente documentos e imágenes de uso frecuente en múltiples llamadas a la API. Puedes explorar la referencia de la API directamente, además de esta guía.
La API de Archivos está actualmente en beta. Por favor, comunícate a través de nuestro formulario de comentarios para compartir tu experiencia con la API de Archivos.
Se admite hacer referencia a un file_id en una solicitud de Mensajes en todos los modelos que admiten el tipo de archivo dado. Por ejemplo, las imágenes son compatibles en todos los modelos Claude 3+, los PDF en todos los modelos Claude 3.5+, y varios otros tipos de archivo para la herramienta de ejecución de código en Claude Haiku 4.5 más todos los modelos Claude 3.7+.
La API de Archivos actualmente no es compatible con Amazon Bedrock ni Google Vertex AI.
La API de Archivos proporciona un enfoque simple de cargar una vez y usar muchas veces para trabajar con archivos:
file_id únicofile_id en lugar de volver a cargar contenidoPara usar la API de Archivos, deberás incluir el encabezado de característica beta: anthropic-beta: files-api-2025-04-14.
Carga un archivo para ser referenciado en futuras llamadas a la 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"La respuesta de cargar un archivo incluirá:
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"type": "file",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 1024000,
"created_at": "2025-01-01T00:00:00Z",
"downloadable": false
}Una vez cargado, haz referencia al archivo usando su 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-sonnet-4-5",
"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"
}
}
]
}
]
}'La API de Archivos admite diferentes tipos de archivo que corresponden a diferentes tipos de bloques de contenido:
| Tipo de Archivo | Tipo MIME | Tipo de Bloque de Contenido | Caso de Uso |
|---|---|---|---|
application/pdf | document | Análisis de texto, procesamiento de documentos | |
| Texto plano | text/plain | document | Análisis de texto, procesamiento |
| Imágenes | image/jpeg, image/png, image/gif, image/webp | image | Análisis de imágenes, tareas visuales |
| Conjuntos de datos, otros | Varía | container_upload | Analizar datos, crear visualizaciones |
Para tipos de archivo que no son compatibles como bloques document (.csv, .txt, .md, .docx, .xlsx), convierte los archivos a texto plano e incluye el contenido directamente en tu mensaje:
# Ejemplo: Leer un archivo de texto y enviarlo como texto plano
# Nota: Para archivos con caracteres especiales, considera codificación 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-sonnet-4-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Here's the document content:\n\n${TEXT_CONTENT}\n\nPlease summarize this document."
}
]
}
]
}
EOFPara archivos .docx que contienen imágenes, conviértelos a formato PDF primero, luego usa compatibilidad con PDF para aprovechar el análisis de imágenes integrado. Esto permite usar citas del documento PDF.
Para PDF y archivos de texto, usa el bloque de contenido document:
{
"type": "document",
"source": {
"type": "file",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w"
},
"title": "Document Title", // Opcional
"context": "Context about the document", // Opcional
"citations": {"enabled": true} // Opcional, habilita citas
}Para imágenes, usa el bloque de contenido image:
{
"type": "image",
"source": {
"type": "file",
"file_id": "file_011CPMxVD3fHLUhvTqtsQA5w"
}
}Recupera una lista de tus archivos cargados:
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"Recupera información sobre un archivo específico:
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"Elimina un archivo de tu espacio de trabajo:
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"Descarga archivos que han sido creados por habilidades o la herramienta de ejecución de código:
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.txtSolo puedes descargar archivos que fueron creados por habilidades o la herramienta de ejecución de código. Los archivos que cargaste no pueden ser descargados.
Los errores comunes al usar la API de Archivos incluyen:
file_id especificado no existe o no tienes acceso a él/v1/messages)<, >, :, ", |, ?, *, \, /, o caracteres unicode 0-31){
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "File not found: file_011CNha8iCJcU1wXNR6q4V8w"
}
}Las operaciones de la API de Archivos son gratuitas:
El contenido de archivo usado en solicitudes de Messages se factura como tokens de entrada. Solo puedes descargar archivos creados por habilidades o la herramienta de ejecución de código.
Durante el período beta: