Skip to content
qibdo qibdo
v1
API version
  • v1
Theme
Book a demo

List Objects

GET
/storage/v1/workspaces/{workspace}/engines/{engine}/buckets/{bucket}/objects
curl --request GET \
--url https://example.com/storage/v1/workspaces/example/engines/example/buckets/example/objects

Lists objects in a bucket with optional prefix/delimiter filtering. Supports prefix-based pseudo-directory listing when the delimiter is ”/”.

workspace
required
string

The workspace the bucket belongs to

engine
required
string

The cloud provider: qibdo, aws, gcp, or azure, or ’-’ to list across all providers

bucket
required
string

The bucket to list objects from

prefix
string

Filter objects by key prefix. Retained as a dedicated field because key prefix matching is a fundamental server-side optimization that cannot be expressed in filter syntax without losing performance.

delimiter
string

Delimiter for pseudo-directory listing (typically ”/”). Retained as a dedicated field because delimiter handling is a native server-side optimization not expressible via filter strings.

page_size
integer format: int32

Maximum keys per page. The service may return fewer than this value. If unspecified, at most 20 objects will be returned. The maximum value is 100; values above 100 will be coerced to 100.

page_token
string

A page token, received from a previous ListObjects call. Provide this to retrieve the subsequent page. When paginating, all other parameters must match the call that provided the page token.

filter
string

Filter expression

order_by
string

Order_by expression, e.g. ‘name asc’

OK

Media type application/json

ListObjectsResponse

Response message for ListObjects. Note: This API intentionally omits total_size from list responses. Keyset pagination does not support efficient total count computation (a count requires a full scan). Per AIP-158, total_size is optional.

object
objects

The list of objects matching the query

Array<object>

Metadata describing a stored object. Returned by the storage data plane on head, get, and put responses.

object
bucket_id

The bucket this object belongs to

stringOutput only
object_key

The object key (path-like string, no leading slash)

stringOutput only
size

Object size

object
size
required

Size of the object

Is the numerical size of an object

number format: double
unit
required
string format: enum
Allowed values: STORAGE_DATA_UNIT_UNSPECIFIED BYTES KIB MIB GIB TIB PIB EIB KB MB GB TB PB EB
content_type

MIME type (e.g. “application/octet-stream”)

string
etag

Entity tag (checksum)

stringOutput only
last_modified

Timestamp when the object was last modified

stringOutput only
content_md5

Base64-encoded MD5 digest of the object content (nullable for multipart uploads)

stringOutput only
metadata

Arbitrary key-value user metadata

object
key
additional properties
string
storage_class

Storage class or tier (provider-specific string, e.g. STANDARD, GLACIER)

stringOutput only
version_id

Version identifier (format varies by provider)

stringOutput only
engine

The cloud provider this object is stored on.

string format: enum Output only
Allowed values: ENGINE_UNSPECIFIED ENGINE_QIBDO ENGINE_AWS ENGINE_GCP ENGINE_AZURE
common_prefixes

Directory-like prefixes when a delimiter is set

Array<string>
next_page_token

A token, which can be sent as page_token to retrieve the next page. If this field is empty, there are no subsequent pages.

string
is_truncated

Whether the result set was truncated

boolean
Example
{
"objects": [
{
"size": {
"unit": "STORAGE_DATA_UNIT_UNSPECIFIED"
},
"engine": "ENGINE_UNSPECIFIED"
}
]
}

Default error response

Media type application/json

The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.

object
code

The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].

integer format: int32
message

A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.

string
details

A list of messages that carry the error details. There is a common set of message types for APIs to use.

Array<object>

Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.

object
@type

The type of the serialized message.

string
key
additional properties
any
Example generated
{
"code": 1,
"message": "example",
"details": [
{
"@type": "example"
}
]
}