Container Files API
You or agents can use the Containers API to upload, persist, and retrieve files within a secure, sandboxed container environment.
This localized file system keeps datasets and generated outputs (such as charts or logs) available across several steps of a task, enabling seamless multi-stage workflows and programmatic data exchange without manually passing content between steps.
The OCI Container Files API uses the same format as the OpenAI Container Files API with the OCI OpenAI-compatible endpoint. For syntax and request details, see the OpenAI Container Files API documentation.
Supported API Endpoint
| Base URL | Endpoint Path | Authentication |
|---|---|---|
https://inference.generativeai.${region}.oci.oraclecloud.com/openai/v1 |
/containers/{id}/files |
API key or IAM session |
Replace ${region} with a supported OCI region such as us-chicago-1.
Although the request format is OpenAI-compatible, authentication uses OCI credentials, requests are routed through OCI Generative AI inference endpoints, and resources and execution remain in OCI.
Authentication
You can access OCI OpenAI-compatible endpoints in two ways:
Use API keys for testing and early development. Use IAM-based authentication for production workloads and OCI-managed environments.
Creating a Container File
POST /containers/{container_id}/files
- Reference
-
Example:
# create container file container_file = client.containers.files.create( container_id="container_id", file=open("data.csv", "rb"), ) print(container_file.id)
Listing Container Files
GET /containers/{container_id}/files
- Reference
-
Example:
# list container files page = client.containers.files.list( container_id="container_id", ) page = page.data[0] print(page.id)
Retrieving Container File Information
GET /containers/{container_id}/files/{file_id}
- Reference
-
Example:
# retrieve container file content content = client.containers.files.content.retrieve( file_id="file_id", container_id="container_id", ) print(content) data = content.read() print(data)
Deleting a Container File
DELETE /containers/{container_id}/files/{file_id}
- Reference
-
Example:
# delete container file client.containers.files.delete( file_id="file_id", container_id="container_id", )