Files
List container files
containers.files.list(container_id, **kwargs) -> CursorPage<FileListResponse>
get /containers/{container_id}/files
List Container files
Parameters
-
container_id: String -
after: 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: IntegerA limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
-
order: :asc | :descSort order by the
created_attimestamp of the objects.ascfor ascending order anddescfor descending order.-
:asc -
:desc
-
Returns
-
class FileListResponse-
id: StringUnique identifier for the file.
-
bytes: IntegerSize of the file in bytes.
-
container_id: StringThe container this file belongs to.
-
created_at: IntegerUnix timestamp (in seconds) when the file was created.
-
object: :"container.file"The type of this object (
container.file).:"container.file"
-
path: StringPath of the file in the container.
-
source: StringSource of the file (e.g.,
user,assistant).
-
Example
require "openai"
openai = OpenAI::Client.new(api_key: "My API Key")
page = openai.containers.files.list("container_id")
puts(page)
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
containers.files.create(container_id, **kwargs) -> FileCreateResponse
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: StringThe File object (not file name) to be uploaded.
-
file_id: StringName of the file to create.
Returns
-
class FileCreateResponse-
id: StringUnique identifier for the file.
-
bytes: IntegerSize of the file in bytes.
-
container_id: StringThe container this file belongs to.
-
created_at: IntegerUnix timestamp (in seconds) when the file was created.
-
object: :"container.file"The type of this object (
container.file).:"container.file"
-
path: StringPath of the file in the container.
-
source: StringSource of the file (e.g.,
user,assistant).
-
Example
require "openai"
openai = OpenAI::Client.new(api_key: "My API Key")
file = openai.containers.files.create("container_id")
puts(file)
Response
{
"id": "id",
"bytes": 0,
"container_id": "container_id",
"created_at": 0,
"object": "container.file",
"path": "path",
"source": "source"
}
Retrieve container file
containers.files.retrieve(file_id, **kwargs) -> FileRetrieveResponse
get /containers/{container_id}/files/{file_id}
Retrieve Container File
Parameters
-
container_id: String -
file_id: String
Returns
-
class FileRetrieveResponse-
id: StringUnique identifier for the file.
-
bytes: IntegerSize of the file in bytes.
-
container_id: StringThe container this file belongs to.
-
created_at: IntegerUnix timestamp (in seconds) when the file was created.
-
object: :"container.file"The type of this object (
container.file).:"container.file"
-
path: StringPath of the file in the container.
-
source: StringSource of the file (e.g.,
user,assistant).
-
Example
require "openai"
openai = OpenAI::Client.new(api_key: "My API Key")
file = openai.containers.files.retrieve("file_id", container_id: "container_id")
puts(file)
Response
{
"id": "id",
"bytes": 0,
"container_id": "container_id",
"created_at": 0,
"object": "container.file",
"path": "path",
"source": "source"
}
Delete a container file
containers.files.delete(file_id, **kwargs) -> void
delete /containers/{container_id}/files/{file_id}
Delete Container File
Parameters
-
container_id: String -
file_id: String
Example
require "openai"
openai = OpenAI::Client.new(api_key: "My API Key")
result = openai.containers.files.delete("file_id", container_id: "container_id")
puts(result)
Domain Types
File List Response
-
class FileListResponse-
id: StringUnique identifier for the file.
-
bytes: IntegerSize of the file in bytes.
-
container_id: StringThe container this file belongs to.
-
created_at: IntegerUnix timestamp (in seconds) when the file was created.
-
object: :"container.file"The type of this object (
container.file).:"container.file"
-
path: StringPath of the file in the container.
-
source: StringSource of the file (e.g.,
user,assistant).
-
File Create Response
-
class FileCreateResponse-
id: StringUnique identifier for the file.
-
bytes: IntegerSize of the file in bytes.
-
container_id: StringThe container this file belongs to.
-
created_at: IntegerUnix timestamp (in seconds) when the file was created.
-
object: :"container.file"The type of this object (
container.file).:"container.file"
-
path: StringPath of the file in the container.
-
source: StringSource of the file (e.g.,
user,assistant).
-
File Retrieve Response
-
class FileRetrieveResponse-
id: StringUnique identifier for the file.
-
bytes: IntegerSize of the file in bytes.
-
container_id: StringThe container this file belongs to.
-
created_at: IntegerUnix timestamp (in seconds) when the file was created.
-
object: :"container.file"The type of this object (
container.file).:"container.file"
-
path: StringPath of the file in the container.
-
source: StringSource of the file (e.g.,
user,assistant).
-
Content
Retrieve container file content
containers.files.content.retrieve(file_id, **kwargs) -> StringIO
get /containers/{container_id}/files/{file_id}/content
Retrieve Container File Content
Parameters
-
container_id: String -
file_id: String
Returns
StringIO
Example
require "openai"
openai = OpenAI::Client.new(api_key: "My API Key")
content = openai.containers.files.content.retrieve("file_id", container_id: "container_id")
puts(content)