The Files API allows you to upload, list, retrieve, and delete files that are used by Upstage Agents.
Upload a file to be used by an agent.
Request
from openai import OpenAI
client = OpenAI(
api_key="UPSTAGE_API_KEY",
base_url="https://api.upstage.ai/v2"
)
file_path = "document.pdf" # Replace with your own file
with open(file_path, "rb") as f:
file = client.files.create(
file=f,
purpose="user_data"
)
print(file.model_dump())
{
"id": "file-abc123",
"object": "file",
"bytes": 17408,
"created_at": 1756368389,
"expires_at": null, // Not supported yet; coming soon
"filename": "document.pdf",
"purpose": "user_data"
}
Retrieve information about a specific file.
Request
from openai import OpenAI
client = OpenAI(
api_key="UPSTAGE_API_KEY",
base_url="https://api.upstage.ai/v2"
)
response = client.files.retrieve(file_id)
print(response.model_dump())
{
"id": "file-abc123",
"object": "file",
"bytes": 17408,
"created_at": 1756368389,
"expires_at": null,
"filename": "document.pdf",
"purpose": "user_data"
}
List all uploaded files.
Request
from openai import OpenAI
client = OpenAI(
api_key="UPSTAGE_API_KEY",
base_url="https://api.upstage.ai/v2"
)
response = client.files.list()
print(response.model_dump())
{
"object": "list",
"data": [
{
"id": "file-abc123",
"object": "file",
"bytes": 17408,
"created_at": 1756368389,
"expires_at": null,
"filename": "document1.pdf",
"purpose": "user_data"
},
{
"id": "file-def456",
"object": "file",
"bytes": 18054,
"created_at": 1756368493,
"expires_at": null,
"filename": "document2.pdf",
"purpose": "user_data"
}
],
"first_id": "file-abc123",
"last_id": "file-def456",
"has_more": false
}
Delete a specific file.
Request
from openai import OpenAI
client = OpenAI(
api_key="UPSTAGE_API_KEY",
base_url="https://api.upstage.ai/v2"
)
response = client.files.delete(file_id)
print(response.model_dump())
{
"id": "file-abc123",
"object": "file",
"deleted": true
}