post /containers
Create Container
-
name: stringName of the container to create.
-
expires_after: optional object { anchor, minutes }Container expiration time in seconds relative to the 'anchor' time.
-
anchor: "last_active_at"Time anchor for the expiration time. Currently only 'last_active_at' is supported.
"last_active_at"
-
minutes: number
-
-
file_ids: 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".
-
"1g" -
"4g" -
"16g" -
"64g"
-
-
network_policy: optional ContainerNetworkPolicyDisabled or ContainerNetworkPolicyAllowlistNetwork access policy for the container.
-
ContainerNetworkPolicyDisabled object { type }-
type: "disabled"Disable outbound network access. Always
disabled."disabled"
-
-
ContainerNetworkPolicyAllowlist object { allowed_domains, type, domain_secrets }-
allowed_domains: array of stringA list of allowed domains when type is
allowlist. -
type: "allowlist"Allow outbound network access only to specified domains. Always
allowlist."allowlist"
-
domain_secrets: optional array of ContainerNetworkPolicyDomainSecretOptional domain-scoped secrets for allowlisted domains.
-
domain: stringThe domain associated with the secret.
-
name: stringThe name of the secret to inject for the domain.
-
value: stringThe secret value to inject for the domain.
-
-
-
-
skills: optional array of SkillReference or InlineSkillAn optional list of skills referenced by id or inline data.
-
SkillReference object { skill_id, type, version }-
skill_id: stringThe ID of the referenced skill.
-
type: "skill_reference"References a skill created with the /v1/skills endpoint.
"skill_reference"
-
version: optional stringOptional skill version. Use a positive integer or 'latest'. Omit for default.
-
-
InlineSkill object { description, name, source, type }-
description: stringThe description of the skill.
-
name: stringThe name of the skill.
-
source: InlineSkillSourceInline skill payload
-
data: stringBase64-encoded skill zip bundle.
-
media_type: "application/zip"The media type of the inline skill payload. Must be
application/zip."application/zip"
-
type: "base64"The type of the inline skill source. Must be
base64."base64"
-
-
type: "inline"Defines an inline skill for this request.
"inline"
-
-
-
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.
-
curl https://api.openai.com/v1/containers \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"name": "name"
}'{
"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"
]
}
}curl https://api.openai.com/v1/containers \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "My Container",
"memory_limit": "4g",
"skills": [
{
"type": "skill_reference",
"skill_id": "skill_4db6f1a2c9e73508b41f9da06e2c7b5f"
},
{
"type": "skill_reference",
"skill_id": "openai-spreadsheets",
"version": "latest"
}
],
"network_policy": {
"type": "allowlist",
"allowed_domains": ["api.buildkite.com"]
}
}'{
"id": "cntr_682e30645a488191b6363a0cbefc0f0a025ec61b66250591",
"object": "container",
"created_at": 1747857508,
"status": "running",
"expires_after": {
"anchor": "last_active_at",
"minutes": 20
},
"last_active_at": 1747857508,
"network_policy": {
"type": "allowlist",
"allowed_domains": ["api.buildkite.com"]
},
"memory_limit": "4g",
"name": "My Container"
}