Skip to content

Upload File

files.create(FileCreateParams**kwargs) -> FileCreateResponse
POST/api/v1/beta/files

Upload a file using multipart/form-data.

Set purpose to indicate how the file will be used: user_data, parse, extract, classify, split, sheet, or agent_app.

Returns the created file metadata including its ID for use in subsequent parse, extract, or classify operations.

ParametersExpand Collapse
file: FileTypes

The file to upload

purpose: str

The intended purpose of the file. Valid values: 'user_data', 'parse', 'extract', 'split', 'classify', 'sheet', 'agent_app'. This determines the storage and retention policy for the file.

organization_id: Optional[str]
project_id: Optional[str]
external_file_id: Optional[str]

The ID of the file in the external system

ReturnsExpand Collapse
class FileCreateResponse:

An uploaded file.

id: str

Unique file identifier

name: str

File name including extension

maxLength3000
minLength1
project_id: str

Project this file belongs to

formatuuid
expires_at: Optional[datetime]

When the file expires and may be automatically removed. Null means no expiration.

formatdate-time
external_file_id: Optional[str]

Optional ID for correlating with an external system

file_type: Optional[str]

File extension (pdf, docx, png, etc.)

maxLength3000
minLength1
last_modified_at: Optional[datetime]

When the file was last modified (ISO 8601)

formatdate-time
purpose: Optional[str]

How the file will be used: user_data, parse, extract, classify, split, sheet, or agent_app

Upload File

import os
from llama_cloud import LlamaCloud

client = LlamaCloud(
    api_key=os.environ.get("LLAMA_CLOUD_API_KEY"),  # This is the default and can be omitted
)
file = client.files.create(
    file=b"raw file contents",
    purpose="purpose",
)
print(file.id)
{
  "id": "dfl-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
  "name": "invoice.pdf",
  "project_id": "123e4567-e89b-12d3-a456-426614174000",
  "expires_at": "2019-12-27T18:11:19.117Z",
  "external_file_id": "ext-12345",
  "file_type": "pdf",
  "last_modified_at": "2019-12-27T18:11:19.117Z",
  "purpose": "parse"
}
Returns Examples
{
  "id": "dfl-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
  "name": "invoice.pdf",
  "project_id": "123e4567-e89b-12d3-a456-426614174000",
  "expires_at": "2019-12-27T18:11:19.117Z",
  "external_file_id": "ext-12345",
  "file_type": "pdf",
  "last_modified_at": "2019-12-27T18:11:19.117Z",
  "purpose": "parse"
}