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

Head Object

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

Returns a stored file’s record without downloading its content.

workspace
required
string

The workspace the bucket belongs to

engine
required
string

The cloud provider: qibdo, aws, gcp, or azure

bucket
required
string

The bucket containing the object

object
required
string

The full name of the object to describe

OK

Media type application/json

Blob

A stored file. Population varies BY RPC: a provider’s list call returns an index, not the full record — absent means “not carried by this RPC on this provider”, never fabricated-empty.

object
bucket_id

The bucket that actually holds this file, as its platform identifier. Resolvable via GetBucket. Empty when the read path could not name the parent row.

stringOutput only
size_bytes
stringOutput only
content_type

Absent on a listing row; populated on Head/Get.

stringOutput only
etag

Change-detection token. Guaranteed only to change when the object changes. NOT a content digest — providers compute it differently for multipart, composite and encrypted objects, and one provider returns different values for the same object across its own APIs. Use checksums for integrity.

stringOutput only
checksums

Integrity digests, each carrying its own algorithm. May be empty: some objects genuinely have none. On a listing row emptiness is NOT proof of absence — see ListObjectsResponse.unpopulated_fields.

Array<object>Output only

Checksum

One integrity digest.

object
catalogued

An algorithm the platform catalogues.

string format: enum Output only
Allowed values: CHECKSUM_ALGORITHM_UNSPECIFIED CHECKSUM_ALGORITHM_MD5 CHECKSUM_ALGORITHM_CRC32 CHECKSUM_ALGORITHM_CRC32C CHECKSUM_ALGORITHM_SHA1 CHECKSUM_ALGORITHM_SHA256 CHECKSUM_ALGORITHM_SHA384 CHECKSUM_ALGORITHM_SHA512 CHECKSUM_ALGORITHM_CRC64NVME
uncatalogued

The provider’s own algorithm token, verbatim, when the platform does not yet catalogue it. Read-side honesty only — a caller may never supply this arm.

stringOutput only
value
stringOutput only
metadata

Empty on a listing row; populated on Head/Get. Emptiness on a listing row is NOT proof of absence — see ListObjectsResponse.unpopulated_fields.

object
key
additional properties
string
version_id

Absent on a listing row; populated on Head/Get.

stringOutput only
create_time

Where a provider reports a single timestamp (the S3 family reports LastModified alone), create_time is ABSENT rather than a copy of update_time.

string format: date-time Output only
update_time
string format: date-time Output only
Example
{
"checksums": [
{
"catalogued": "CHECKSUM_ALGORITHM_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"
}
]
}