OpenAI Containers API

The Containers API from OpenAI — 5 operation(s) for containers.

Operations 9

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /containers List my code containers · List containers #
Ask an LLM
“Which containers do I have running for code execution?”
“Can I find a container by its name?”
Tell an agent
List my containers.
Find containers named {name}.
POST /containers Create a container for running code · Create container #
Ask an LLM
“How do I spin up a new container for code execution?”
“Can I preload files into a container when I create it?”
Tell an agent
Create a container named {name}.
Create container {name} preloaded with files {file_ids}.
GET /containers/{container_id} Get a container's details · Retrieve container #
Ask an LLM
“What is the status of a particular container?”
“Can I look up a container's settings by its ID?”
Tell an agent
Show container {container_id}.
Check the status of container {container_id}.
DELETE /containers/{container_id} Delete a container · Delete a container #
Ask an LLM
“How do I shut down and delete a container I'm done with?”
“Can I remove a container entirely?”
Tell an agent destructive · confirm first
Delete container {container_id}.
Tear down container {container_id}.
POST /containers/{container_id}/files Add a file to a container · Create container file #
Ask an LLM
“How do I put a file into a container so code can read it?”
“Can I copy an already-uploaded file into a container by its file ID?”
Tell an agent
Copy file {file_id} into container {container_id}.
Upload {file} to container {container_id}.
GET /containers/{container_id}/files List files inside a container · List container files #
Ask an LLM
“What files are inside one of my containers?”
“Can I page through a container's files newest first?”
Tell an agent
List the files in container {container_id}.
Show {limit} files from container {container_id}.
GET /containers/{container_id}/files/{file_id} Get metadata for a file in a container · Retrieve container file #
Ask an LLM
“What are the path and size of a file inside a container?”
“Can I look up a single container file's details?”
Tell an agent
Show file {file_id} in container {container_id}.
Get the metadata of container {container_id}'s file {file_id}.
DELETE /containers/{container_id}/files/{file_id} Delete a file from a container · Delete a container file #
Ask an LLM
“How do I remove one file from a container?”
“Can I delete a container file without deleting the container?”
Tell an agent destructive · confirm first
Delete file {file_id} from container {container_id}.
Remove {file_id} from container {container_id}.
GET /containers/{container_id}/files/{file_id}/content Download the contents of a container file · Retrieve container file content #
Ask an LLM
“How do I download a file that my code produced inside a container?”
“Can I read the raw bytes of a container file?”
Tell an agent
Download the contents of file {file_id} in container {container_id}.
Get the raw content of container {container_id}'s file {file_id}.

Documentation

📖
Documentation
https://platform.openai.com/docs/assistants/overview
📖
Documentation
https://platform.openai.com/docs/api-reference/assistants
📖
Documentation
https://platform.openai.com/docs/guides/text-to-speech
📖
Documentation
https://platform.openai.com/docs/api-reference/audio
📖
Documentation
https://platform.openai.com/docs/guides/speech-to-text
📖
Documentation
https://developers.openai.com/api/docs/guides/audio/
📖
Documentation
https://developers.openai.com/api/docs/guides/voice-agents/
📖
Documentation
https://platform.openai.com/docs/api-reference/chat
📖
Documentation
https://platform.openai.com/docs/guides/embeddings
📖
Documentation
https://platform.openai.com/docs/api-reference/embeddings
📖
Documentation
https://platform.openai.com/docs/api-reference/files
📖
Documentation
https://platform.openai.com/docs/guides/fine-tuning
📖
Documentation
https://platform.openai.com/docs/api-reference/fine-tuning
📖
Documentation
https://platform.openai.com/docs/guides/images
📖
Documentation
https://platform.openai.com/docs/api-reference/images
📖
Documentation
https://platform.openai.com/docs/guides/image-generation
📖
Documentation
https://platform.openai.com/docs/guides/images-vision
📖
Documentation
https://platform.openai.com/docs/models
📖
Documentation
https://platform.openai.com/docs/api-reference/models
📖
Documentation
https://platform.openai.com/docs/assistants/how-it-works/managing-threads-and-messages
📖
Documentation
https://platform.openai.com/docs/api-reference/threads
📖
Documentation
https://platform.openai.com/docs/api-reference/completions

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/openai:openai-containers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

openai-containers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenAI Containers API
  description: The OpenAI REST API. Please see https://platform.openai.com/docs/api-reference for more details.
  version: 2.3.0
  termsOfService: https://openai.com/policies/terms-of-use
  contact:
    name: OpenAI Support
    url: https://help.openai.com/
  license:
    name: MIT
    identifier: MIT
servers:
- url: https://api.openai.com/v1
security:
- ApiKeyAuth: []
tags:
- name: Containers
paths:
  /containers:
    get:
      summary: List containers
      description: List Containers
      operationId: ListContainers
      parameters:
      - name: limit
        in: query
        description: 'A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.

          '
        required: false
        schema:
          type: integer
          default: 20
      - name: order
        in: query
        description: 'Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.

          '
        schema:
          type: string
          default: desc
          enum:
          - asc
          - desc
      - name: after
        in: query
        description: 'A cursor for use in pagination. `after` is 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.

          '
        schema:
          type: string
      - name: name
        in: query
        description: Filter results by container name.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerListResource'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: get
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: "{\n  \"object\": \"list\",\n  \"data\": [\n    {\n        \"id\": \"cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863\",\n        \"object\": \"container\",\n        \"created_at\": 1747844794,\n        \"status\": \"running\",\n        \"expires_after\": {\n            \"anchor\": \"last_active_at\",\n            \"minutes\": 20\n        },\n        \"last_active_at\": 1747844794,\n        \"memory_limit\": \"4g\",\n        \"name\": \"My Container\"\n    }\n  ],\n  \"first_id\": \"container_123\",\n  \"last_id\": \"container_123\",\n  \"has_more\": false\n}\n"
      tags:
      - Containers
    post:
      summary: Create container
      description: Create Container
      operationId: CreateContainer
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateContainerBody'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerResource'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: post
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n        \"name\": \"My Container\",\n        \"memory_limit\": \"4g\",\n        \"skills\": [\n          {\n            \"type\": \"skill_reference\",\n            \"skill_id\": \"skill_4db6f1a2c9e73508b41f9da06e2c7b5f\"\n          },\n          {\n            \"type\": \"skill_reference\",\n            \"skill_id\": \"openai-spreadsheets\",\n            \"version\": \"latest\"\n          }\n        ],\n        \"network_policy\": {\n          \"type\": \"allowlist\",\n          \"allowed_domains\": [\"api.buildkite.com\"]\n        }\n      }'\n"
          response: "{\n    \"id\": \"cntr_682e30645a488191b6363a0cbefc0f0a025ec61b66250591\",\n    \"object\": \"container\",\n    \"created_at\": 1747857508,\n    \"status\": \"running\",\n    \"expires_after\": {\n        \"anchor\": \"last_active_at\",\n        \"minutes\": 20\n    },\n    \"last_active_at\": 1747857508,\n    \"network_policy\": {\n        \"type\": \"allowlist\",\n        \"allowed_domains\": [\"api.buildkite.com\"]\n    },\n    \"memory_limit\": \"4g\",\n    \"name\": \"My Container\"\n}\n"
      tags:
      - Containers
  /containers/{container_id}:
    get:
      summary: Retrieve container
      description: Retrieve Container
      operationId: RetrieveContainer
      parameters:
      - name: container_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerResource'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: get
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers/cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863 \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: "{\n    \"id\": \"cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863\",\n    \"object\": \"container\",\n    \"created_at\": 1747844794,\n    \"status\": \"running\",\n    \"expires_after\": {\n        \"anchor\": \"last_active_at\",\n        \"minutes\": 20\n    },\n    \"last_active_at\": 1747844794,\n    \"memory_limit\": \"4g\",\n    \"name\": \"My Container\"\n}\n"
      tags:
      - Containers
    delete:
      operationId: DeleteContainer
      summary: Delete a container
      description: Delete Container
      parameters:
      - name: container_id
        in: path
        description: The ID of the container to delete.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: delete
        examples:
          request:
            curl: "curl -X DELETE https://api.openai.com/v1/containers/cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863 \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: "{\n    \"id\": \"cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863\",\n    \"object\": \"container.deleted\",\n    \"deleted\": true\n}\n"
      tags:
      - Containers
  /containers/{container_id}/files:
    post:
      summary: Create container file
      description: '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.'
      operationId: CreateContainerFile
      parameters:
      - name: container_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateContainerFileBody'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CreateContainerFileBody'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerFileResource'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: post
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers/cntr_682e0e7318108198aa783fd921ff305e08e78805b9fdbb04/files \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\" \\\n  -F file=\"@example.txt\"\n"
          response: "{\n  \"id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\",\n  \"object\": \"container.file\",\n  \"created_at\": 1747848842,\n  \"bytes\": 880,\n  \"container_id\": \"cntr_682e0e7318108198aa783fd921ff305e08e78805b9fdbb04\",\n  \"path\": \"/mnt/data/88e12fa445d32636f190a0b33daed6cb-tsconfig.json\",\n  \"source\": \"user\"\n}\n"
      tags:
      - Containers
    get:
      summary: List container files
      description: List Container files
      operationId: ListContainerFiles
      parameters:
      - name: container_id
        in: path
        required: true
        schema:
          type: string
      - name: limit
        in: query
        description: 'A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.

          '
        required: false
        schema:
          type: integer
          default: 20
      - name: order
        in: query
        description: 'Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.

          '
        schema:
          type: string
          default: desc
          enum:
          - asc
          - desc
      - name: after
        in: query
        description: 'A cursor for use in pagination. `after` is 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.

          '
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerFileListResource'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: get
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers/cntr_682e0e7318108198aa783fd921ff305e08e78805b9fdbb04/files \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: "{\n    \"object\": \"list\",\n    \"data\": [\n        {\n            \"id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\",\n            \"object\": \"container.file\",\n            \"created_at\": 1747848842,\n            \"bytes\": 880,\n            \"container_id\": \"cntr_682e0e7318108198aa783fd921ff305e08e78805b9fdbb04\",\n            \"path\": \"/mnt/data/88e12fa445d32636f190a0b33daed6cb-tsconfig.json\",\n            \"source\": \"user\"\n        }\n    ],\n    \"first_id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\",\n    \"has_more\": false,\n    \"last_id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\"\n}\n"
      tags:
      - Containers
  /containers/{container_id}/files/{file_id}:
    get:
      summary: Retrieve container file
      description: Retrieve Container File
      operationId: RetrieveContainerFile
      parameters:
      - name: container_id
        in: path
        required: true
        schema:
          type: string
      - name: file_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerFileResource'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: get
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers/container_123/files/file_456 \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: "{\n    \"id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\",\n    \"object\": \"container.file\",\n    \"created_at\": 1747848842,\n    \"bytes\": 880,\n    \"container_id\": \"cntr_682e0e7318108198aa783fd921ff305e08e78805b9fdbb04\",\n    \"path\": \"/mnt/data/88e12fa445d32636f190a0b33daed6cb-tsconfig.json\",\n    \"source\": \"user\"\n}\n"
      tags:
      - Containers
    delete:
      operationId: DeleteContainerFile
      summary: Delete a container file
      description: Delete Container File
      parameters:
      - name: container_id
        in: path
        required: true
        schema:
          type: string
      - name: file_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: delete
        examples:
          request:
            curl: "curl -X DELETE https://api.openai.com/v1/containers/cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863/files/cfile_682e0e8a43c88191a7978f477a09bdf5 \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: "{\n    \"id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\",\n    \"object\": \"container.file.deleted\",\n    \"deleted\": true\n}\n"
      tags:
      - Containers
  /containers/{container_id}/files/{file_id}/content:
    get:
      summary: Retrieve container file content
      description: Retrieve Container File Content
      operationId: RetrieveContainerFileContent
      parameters:
      - name: container_id
        in: path
        required: true
        schema:
          type: string
      - name: file_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
        '429':
          $ref: '#/components/responses/TooManyRequests'
      x-oaiMeta:
        group: containers
        path: get
        examples:
          request:
            curl: "curl https://api.openai.com/v1/containers/container_123/files/cfile_456/content \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\"\n"
          response: '<binary content of the file>

            '
      tags:
      - Containers
components:
  schemas:
    CreateContainerFileBody:
      type: object
      properties:
        file_id:
          type: string
          description: Name of the file to create.
        file:
          description: 'The File object (not file name) to be uploaded.

            '
          type: string
          format: binary
      required: []
    ContainerResource:
      type: object
      title: The container object
      properties:
        id:
          type: string
          description: Unique identifier for the container.
        object:
          type: string
          description: The type of this object.
        name:
          type: string
          description: Name of the container.
        created_at:
          type: integer
          format: unixtime
          description: Unix timestamp (in seconds) when the container was created.
        status:
          type: string
          description: Status of the container (e.g., active, deleted).
        last_active_at:
          type: integer
          format: unixtime
          description: Unix timestamp (in seconds) when the container was last active.
        expires_after:
          type: object
          description: '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.

            '
          properties:
            anchor:
              type: string
              description: The reference point for the expiration.
              enum:
              - last_active_at
            minutes:
              type: integer
              description: The number of minutes after the anchor before the container expires.
        memory_limit:
          type: string
          description: The memory limit configured for the container.
          enum:
          - 1g
          - 4g
          - 16g
          - 64g
        network_policy:
          description: Network access policy for the container.
          type: object
          properties:
            type:
              type: string
              description: The network policy mode.
              enum:
              - allowlist
              - disabled
            allowed_domains:
              type: array
              description: Allowed outbound domains when `type` is `allowlist`.
              items:
                type: string
          required:
          - type
      required:
      - id
      - object
      - name
      - created_at
      - status
      - id
      - name
      - created_at
      - status
      x-oaiMeta:
        name: The container object
        example: "{\n   \"id\": \"cntr_682dfebaacac8198bbfe9c2474fb6f4a085685cbe3cb5863\",\n   \"object\": \"container\",\n   \"created_at\": 1747844794,\n   \"status\": \"running\",\n   \"expires_after\": {\n     \"anchor\": \"last_active_at\",\n     \"minutes\": 20\n   },\n   \"last_active_at\": 1747844794,\n   \"memory_limit\": \"1g\",\n   \"name\": \"My Container\"\n}\n"
    ContainerListResource:
      type: object
      properties:
        object:
          type: string
          enum:
          - list
          description: The type of object returned, must be 'list'.
        data:
          type: array
          description: A list of containers.
          items:
            $ref: '#/components/schemas/ContainerResource'
        first_id:
          type: string
          description: The ID of the first container in the list.
        last_id:
          type: string
          description: The ID of the last container in the list.
        has_more:
          type: boolean
          description: Whether there are more containers available.
      required:
      - object
      - data
      - first_id
      - last_id
      - has_more
    _MisalignmentErrorType:
      anyOf:
      - type: string
      - type: string
        enum:
        - potentially_unintended_data_transfer
        - potentially_unintended_data_access
        - potentially_unintended_destructive_activity
        - other
    InlineSkillSourceParam:
      properties:
        type:
          type: string
          enum:
          - base64
          description: The type of the inline skill source. Must be `base64`.
          default: base64
          x-stainless-const: true
        media_type:
          type: string
          enum:
          - application/zip
          description: The media type of the inline skill payload. Must be `application/zip`.
          default: application/zip
          x-stainless-const: true
        data:
          type: string
          maxLength: 70254592
          minLength: 1
          description: Base64-encoded skill zip bundle.
      type: object
      required:
      - type
      - media_type
      - data
      description: Inline skill payload
    CreateContainerBody:
      type: object
      properties:
        name:
          type: string
          description: Name of the container to create.
        file_ids:
          type: array
          description: IDs of files to copy to the container.
          items:
            type: string
        expires_after:
          type: object
          description: Container expiration time in seconds relative to the 'anchor' time.
          properties:
            anchor:
              type: string
              enum:
              - last_active_at
              description: Time anchor for the expiration time. Currently only 'last_active_at' is supported.
            minutes:
              type: integer
          required:
          - anchor
          - minutes
        skills:
          type: array
          description: An optional list of skills referenced by id or inline data.
          items:
            oneOf:
            - $ref: '#/components/schemas/SkillReferenceParam'
            - $ref: '#/components/schemas/InlineSkillParam'
            discriminator:
              propertyName: type
        memory_limit:
          type: string
          enum:
          - 1g
          - 4g
          - 16g
          - 64g
          description: Optional memory limit for the container. Defaults to "1g".
        network_policy:
          description: Network access policy for the container.
          oneOf:
          - $ref: '#/components/schemas/ContainerNetworkPolicyDisabledParam'
          - $ref: '#/components/schemas/ContainerNetworkPolicyAllowlistParam'
          discriminator:
            propertyName: type
      required:
      - name
    InlineSkillParam:
      properties:
        type:
          type: string
          enum:
          - inline
          description: Defines an inline skill for this request.
          default: inline
          x-stainless-const: true
        name:
          type: string
          description: The name of the skill.
        description:
          type: string
          description: The description of the skill.
        source:
          $ref: '#/components/schemas/InlineSkillSourceParam'
          description: Inline skill payload
      type: object
      required:
      - type
      - name
      - description
      - source
    SkillReferenceParam:
      properties:
        type:
          type: string
          enum:
          - skill_reference
          description: References a skill created with the /v1/skills endpoint.
          default: skill_reference
          x-stainless-const: true
        skill_id:
          type: string
          maxLength: 64
          minLength: 1
          description: The ID of the referenced skill.
        version:
          type: string
          description: Optional skill version. Use a positive integer or 'latest'. Omit for default.
      type: object
      required:
      - type
      - skill_id
    ContainerFileResource:
      type: object
      title: The container file object
      properties:
        id:
          type: string
          description: Unique identifier for the file.
        object:
          type: string
          description: The type of this object (`container.file`).
        container_id:
          type: string
          description: The container this file belongs to.
        created_at:
          type: integer
          format: unixtime
          description: Unix timestamp (in seconds) when the file was created.
        bytes:
          type: integer
          description: Size of the file in bytes.
        path:
          type: string
          description: Path of the file in the container.
        source:
          type: string
          description: Source of the file (e.g., `user`, `assistant`).
      required:
      - id
      - object
      - created_at
      - bytes
      - container_id
      - path
      - source
      x-oaiMeta:
        name: The container file object
        example: "{\n    \"id\": \"cfile_682e0e8a43c88191a7978f477a09bdf5\",\n    \"object\": \"container.file\",\n    \"created_at\": 1747848842,\n    \"bytes\": 880,\n    \"container_id\": \"cntr_682e0e7318108198aa783fd921ff305e08e78805b9fdbb04\",\n    \"path\": \"/mnt/data/88e12fa445d32636f190a0b33daed6cb-tsconfig.json\",\n    \"source\": \"user\"\n}\n"
    _MisalignmentSteer:
      properties:
        message:
          type: string
          description: The public continuation instruction.
      type: object
      required:
      - message
    ContainerNetworkPolicyDisabledParam:
      properties:
        type:
          type: string
          enum:
          - disabled
          description: Disable outbound network access. Always `disabled`.
          default: disabled
          x-stainless-const: true
      type: object
      required:
      - type
    Error:
      type: object
      properties:
        code:
          anyOf:
          - type: string
          - type: 'null'
        message:
          type: string
        param:
          anyOf:
          - type: string
          - type: 'null'
        type:
          type: string
        misalignment:
          $ref: '#/components/schemas/MisalignmentErrorDetailsResource'
      required:
      - type
      - message
      - param
      - code
    ErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/Error'
      required:
      - error
    ContainerFileListResource:
      type: object
      properties:
        object:
          type: string
          enum:
          - list
          description: The type of object returned, must be 'list'.
        data:
          type: array
          description: A list of container files.
          items:
            $ref: '#/components/schemas/ContainerFileResource'
        first_id:
          type: string
          description: The ID of the first file in the list.
        last_id:
          type: string
          description: The ID of the last file in the list.
        has_more:
          type: boolean
          description: Whether there are more files available.
      required:
      - object
      - data
      - first_id
      - last_id
      - has_more
    MisalignmentErrorDetailsResource:
      properties:
        error_type:
          $ref: '#/components/schemas/_MisalignmentErrorType'
          description: An optional classification; clients must accept additional values.
        detailed_explanation:
          type: string
          description: The public explanation for this block.
        steer:
          $ref: '#/components/schemas/_MisalignmentSteer'
          description: An optional public continuation instruction.
      type: object
      required: []
    ContainerNetworkPolicyDomainSecretParam:
      properties:
        domain:
          type: string
          minLength: 1
          description: The domain associated with the secret.
        name:
          type: string
          minLength: 1
          description: The name of the secret to inject for the domain.
        value:
          type: string
          maxLength: 10485760
          minLength: 1
          description: The secret value to inject for the domain.
      type: object
      required:
      - domain
      - name
      - value
    ContainerNetworkPolicyAllowlistParam:
      properties:
        type:
          type: string
          enum:
          - allowlist
          description: Allow outbound network access only to specified domains. Always `allowlist`.
          default: allowlist
          x-stainless-const: true
        allowed_domains:
          items:
            type: string
          type: array
          minItems: 1
          description: A list of allowed domains when type is `allowlist`.
        domain_secrets:
          items:
            $ref: '#/components/schemas/ContainerNetworkPolicyDomainSecretParam'
          type: array
          minItems: 1
          description: Optional domain-scoped secrets for allowlisted domains.
      type: object
      required:
      - type
      - allowed_domains
  responses:
    TooManyRequests:
      description: The request was rejected because a rate limit was exceeded.
      headers:
        Retry-After:
          description: The minimum number of seconds to wait before retrying. This header is returned when the server has computed a retry delay and may be omitted for 429 responses that require user action.
          schema:
            type: integer
            minimum: 1
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
    AdminApiKeyAuth:
      type: http
      scheme: bearer
x-oaiMeta:
  navigationGroups:
  - id: responses
    title: Responses API
  - id: webhooks
    title: Webhooks
  - id: endpoints
    title: Platform APIs
  - id: vector_stores
    title: Vector stores
  - id: chatkit
    title: ChatKit
    beta: true
  - id: containers
    title: Containers
  - id: live
    title: Live (alpha)
  - id: realtime
    title: Realtime
  - id: chat
    title: Chat Completions
  - id: assistants
    title: Assistants
    deprecated: true
  - id: administration
    title: Administration
  - id: legacy
    title: Legacy
  groups:


# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openai/refs/heads/main/openapi/openai-containers-api-openapi.yml