Containers
List containers
$ openai containers list
get /containers
List Containers
Parameters
-
--after: optional stringA cursor for use in pagination.
afteris an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list. -
--limit: optional numberA limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
-
--name: optional stringFilter results by container name.
-
--order: optional "asc" or "desc"Sort order by the
created_attimestamp of the objects.ascfor ascending order anddescfor descending order.
Returns
-
ContainerListResource: object { data, first_id, has_more, 2 more }-
data: array of object { id, created_at, name, 6 more }A list of containers.
-
id: stringUnique identifier for the container.
-
created_at: numberUnix timestamp (in seconds) when the container was created.
-
name: stringName of the container.
-
object: stringThe type of this object.
-
status: stringStatus of the container (e.g., active, deleted).
-
expires_after: optional object { anchor, minutes }The container will expire after this time period. The anchor is the reference point for the expiration. The minutes is the number of minutes after the anchor before the container expires.
-
anchor: optional "last_active_at"The reference point for the expiration.
"last_active_at"
-
minutes: optional numberThe number of minutes after the anchor before the container expires.
-
-
last_active_at: optional numberUnix timestamp (in seconds) when the container was last active.
-
memory_limit: optional "1g" or "4g" or "16g" or "64g"The memory limit configured for the container.
-
"1g" -
"4g" -
"16g" -
"64g"
-
-
network_policy: optional object { type, allowed_domains }Network access policy for the container.
-
type: "allowlist" or "disabled"The network policy mode.
-
"allowlist" -
"disabled"
-
-
allowed_domains: optional array of stringAllowed outbound domains when
typeisallowlist.
-
-
-
first_id: stringThe ID of the first container in the list.
-
has_more: booleanWhether there are more containers available.
-
last_id: stringThe ID of the last container in the list.
-
object: "list"The type of object returned, must be 'list'.
-
Example
openai containers list \
--api-key 'My API Key'
Response
{
"data": [
{
"id": "id",
"created_at": 0,
"name": "name",
"object": "object",
"status": "status",
"expires_after": {
"anchor": "last_active_at",
"minutes": 0
},
"last_active_at": 0,
"memory_limit": "1g",
"network_policy": {
"type": "allowlist",
"allowed_domains": [
"string"
]
}
}
],
"first_id": "first_id",
"has_more": true,
"last_id": "last_id",
"object": "list"
}
Create container
$ openai containers create
post /containers
Create Container
Parameters
-
--name: stringName of the container to create.
-
--expires-after: optional object { anchor, minutes }Container expiration time in seconds relative to the 'anchor' time.
-
--file-id: optional array of stringIDs of files to copy to the container.
-
--memory-limit: optional "1g" or "4g" or "16g" or "64g"Optional memory limit for the container. Defaults to "1g".
-
--network-policy: optional ContainerNetworkPolicyDisabled or ContainerNetworkPolicyAllowlistNetwork access policy for the container.
-
--skill: optional array of SkillReference or InlineSkillAn optional list of skills referenced by id or inline data.
Returns
-
ContainerNewResponse: object { id, created_at, name, 6 more }-
id: stringUnique identifier for the container.
-
created_at: numberUnix timestamp (in seconds) when the container was created.
-
name: stringName of the container.
-
object: stringThe type of this object.
-
status: stringStatus of the container (e.g., active, deleted).
-
expires_after: optional object { anchor, minutes }The container will expire after this time period. The anchor is the reference point for the expiration. The minutes is the number of minutes after the anchor before the container expires.
-
anchor: optional "last_active_at"The reference point for the expiration.
"last_active_at"
-
minutes: optional numberThe number of minutes after the anchor before the container expires.
-
-
last_active_at: optional numberUnix timestamp (in seconds) when the container was last active.
-
memory_limit: optional "1g" or "4g" or "16g" or "64g"The memory limit configured for the container.
-
"1g" -
"4g" -
"16g" -
"64g"
-
-
network_policy: optional object { type, allowed_domains }Network access policy for the container.
-
type: "allowlist" or "disabled"The network policy mode.
-
"allowlist" -
"disabled"
-
-
allowed_domains: optional array of stringAllowed outbound domains when
typeisallowlist.
-
-
Example
openai containers create \
--api-key 'My API Key' \
--name name
Response
{
"id": "id",
"created_at": 0,
"name": "name",
"object": "object",
"status": "status",
"expires_after": {
"anchor": "last_active_at",
"minutes": 0
},
"last_active_at": 0,
"memory_limit": "1g",
"network_policy": {
"type": "allowlist",
"allowed_domains": [
"string"
]
}
}
Retrieve container
$ openai containers retrieve
get /containers/{container_id}
Retrieve Container
Parameters
--container-id: string
Returns
-
ContainerGetResponse: object { id, created_at, name, 6 more }-
id: stringUnique identifier for the container.
-
created_at: numberUnix timestamp (in seconds) when the container was created.
-
name: stringName of the container.
-
object: stringThe type of this object.
-
status: stringStatus of the container (e.g., active, deleted).
-
expires_after: optional object { anchor, minutes }The container will expire after this time period. The anchor is the reference point for the expiration. The minutes is the number of minutes after the anchor before the container expires.
-
anchor: optional "last_active_at"The reference point for the expiration.
"last_active_at"
-
minutes: optional numberThe number of minutes after the anchor before the container expires.
-
-
last_active_at: optional numberUnix timestamp (in seconds) when the container was last active.
-
memory_limit: optional "1g" or "4g" or "16g" or "64g"The memory limit configured for the container.
-
"1g" -
"4g" -
"16g" -
"64g"
-
-
network_policy: optional object { type, allowed_domains }Network access policy for the container.
-
type: "allowlist" or "disabled"The network policy mode.
-
"allowlist" -
"disabled"
-
-
allowed_domains: optional array of stringAllowed outbound domains when
typeisallowlist.
-
-
Example
openai containers retrieve \
--api-key 'My API Key' \
--container-id container_id
Response
{
"id": "id",
"created_at": 0,
"name": "name",
"object": "object",
"status": "status",
"expires_after": {
"anchor": "last_active_at",
"minutes": 0
},
"last_active_at": 0,
"memory_limit": "1g",
"network_policy": {
"type": "allowlist",
"allowed_domains": [
"string"
]
}
}
Delete a container
$ openai containers delete
delete /containers/{container_id}
Delete Container
Parameters
-
--container-id: stringThe ID of the container to delete.
Example
openai containers delete \
--api-key 'My API Key' \
--container-id container_id
Files
List container files
$ openai containers:files list
get /containers/{container_id}/files
List Container files
Parameters
-
--container-id: string -
--after: optional stringA cursor for use in pagination.
afteris an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list. -
--limit: optional numberA limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
-
--order: optional "asc" or "desc"Sort order by the
created_attimestamp of the objects.ascfor ascending order anddescfor descending order.
Returns
-
ContainerFileListResource: object { data, first_id, has_more, 2 more }-
data: array of object { id, bytes, container_id, 4 more }A list of container files.
-
id: stringUnique identifier for the file.
-
bytes: numberSize of the file in bytes.
-
container_id: stringThe container this file belongs to.
-
created_at: numberUnix timestamp (in seconds) when the file was created.
-
object: "container.file"The type of this object (
container.file). -
path: stringPath of the file in the container.
-
source: stringSource of the file (e.g.,
user,assistant).
-
-
first_id: stringThe ID of the first file in the list.
-
has_more: booleanWhether there are more files available.
-
last_id: stringThe ID of the last file in the list.
-
object: "list"The type of object returned, must be 'list'.
-
Example
openai containers:files list \
--api-key 'My API Key' \
--container-id container_id
Response
{
"data": [
{
"id": "id",
"bytes": 0,
"container_id": "container_id",
"created_at": 0,
"object": "container.file",
"path": "path",
"source": "source"
}
],
"first_id": "first_id",
"has_more": true,
"last_id": "last_id",
"object": "list"
}
Create container file
$ openai containers:files create
post /containers/{container_id}/files
Create a Container File
You can send either a multipart/form-data request with the raw file content, or a JSON request with a file ID.
Parameters
-
--container-id: string -
--file: optional stringThe File object (not file name) to be uploaded.
-
--file-id: optional stringName of the file to create.
Returns
-
ContainerFileNewResponse: object { id, bytes, container_id, 4 more }-
id: stringUnique identifier for the file.
-
bytes: numberSize of the file in bytes.
-
container_id: stringThe container this file belongs to.
-
created_at: numberUnix timestamp (in seconds) when the file was created.
-
object: "container.file"The type of this object (
container.file). -
path: stringPath of the file in the container.
-
source: stringSource of the file (e.g.,
user,assistant).
-
Example
openai containers:files create \
--api-key 'My API Key' \
--container-id container_id
Response
{
"id": "id",
"bytes": 0,
"container_id": "container_id",
"created_at": 0,
"object": "container.file",
"path": "path",
"source": "source"
}
Retrieve container file
$ openai containers:files retrieve
get /containers/{container_id}/files/{file_id}
Retrieve Container File
Parameters
-
--container-id: string -
--file-id: string
Returns
-
ContainerFileGetResponse: object { id, bytes, container_id, 4 more }-
id: stringUnique identifier for the file.
-
bytes: numberSize of the file in bytes.
-
container_id: stringThe container this file belongs to.
-
created_at: numberUnix timestamp (in seconds) when the file was created.
-
object: "container.file"The type of this object (
container.file). -
path: stringPath of the file in the container.
-
source: stringSource of the file (e.g.,
user,assistant).
-
Example
openai containers:files retrieve \
--api-key 'My API Key' \
--container-id container_id \
--file-id file_id
Response
{
"id": "id",
"bytes": 0,
"container_id": "container_id",
"created_at": 0,
"object": "container.file",
"path": "path",
"source": "source"
}
Delete a container file
$ openai containers:files delete
delete /containers/{container_id}/files/{file_id}
Delete Container File
Parameters
-
--container-id: string -
--file-id: string
Example
openai containers:files delete \
--api-key 'My API Key' \
--container-id container_id \
--file-id file_id
Content
Retrieve container file content
$ openai containers:files:content retrieve
get /containers/{container_id}/files/{file_id}/content
Retrieve Container File Content
Parameters
-
--container-id: string -
--file-id: string
Returns
unnamed_schema_3: file path
Example
openai containers:files:content retrieve \
--api-key 'My API Key' \
--container-id container_id \
--file-id file_id