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

List Secret Versions

GET
/vault/v1/workspaces/{workspace}/engines/{engine}/secrets/{secret}/versions
curl --request GET \
--url https://example.com/vault/v1/workspaces/example/engines/example/secrets/example/versions

Paginated metadata listing. Honours AIP-160 filter (e.g. state="ENABLED") and AIP-132 order_by (e.g. version_number desc). Payloads are never returned by this RPC; clients must call GetSecretVersion for each version whose payload they need.

workspace
required
string

The workspace the secret belongs to.

engine
required
string
secret
required
string

The secret whose versions will be listed.

page_size
integer format: int32

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

page_token
string

Opaque page token returned by a previous list call.

filter
string

AIP-160 filter expression. Partial matches (:, a quoted wildcard, contains/startsWith/endsWith) ignore capitalisation; = and the relational operators are exact. Filterable fields: create_time, engine, id, identity.engine_resource_id, identity.ordinal, secret_id, state, update_time, workspace_id.

order_by
string

AIP-132 order_by expression. Sortable fields: create_time, engine, identity.ordinal, state, update_time.

skip
string

AIP-158 offset mode: number of resources to skip from the start of the filtered, sorted set. Use EITHER skip (offset paging) OR page_token (cursor paging) — never both in the same request. Supplying both is an invalid request. Default 0 (no skip).

OK

Media type application/json

Response payload from List Secret Versions

Carries the output produced by listing secret versions.

object
versions

The page of secret versions (metadata only, no payloads).

Array<object>

SecretVersion: an immutable version of a Secret’s payload. Payload bytes are never persisted in the relational database; only metadata round-trips.

object
id

The unique identifier of this version (UUID)

stringOutput only
secret_id

The parent secret that owns this version (UUID)

stringOutput only
workspace_id

The workspace that owns this version (UUID, denormalised from the parent secret).

stringOutput only
state

Current lifecycle state of this version.

string format: enum Output only
Allowed values: SECRET_VERSION_STATE_UNSPECIFIED SECRET_VERSION_STATE_ENABLED SECRET_VERSION_STATE_DISABLED SECRET_VERSION_STATE_DESTROYED
checksum

Vault-specific content checksum (etag) of the payload.

stringOutput only
create_time

Timestamp when this version was created (server-managed).

string format: date-time Output only
update_time

Timestamp when this version’s state last changed (server-managed).

string format: date-time Output only
engine

The provider holding this version. Always its parent secret’s — a version cannot be held by a different provider than the secret it belongs to, and the database enforces that rather than trusting the application to maintain it.

string format: enum Output only
Allowed values: VAULT_ENGINE_UNSPECIFIED VAULT_ENGINE_QIBDO VAULT_ENGINE_AWS VAULT_ENGINE_GCP VAULT_ENGINE_AZURE
identity

How the holding provider identifies this version. See VaultVersionIdentity: address a version by id, and use this to correlate it with what the provider reports.

object
engine_resource_id

The provider’s own handle for this version, verbatim and unparsed: “3” for a monotonic provider, a UUID or an opaque string for the others. Compare it for equality; do not parse it, and do not assume it sorts meaningfully.

stringOutput only
ordinal

The version’s position in the sequence, when the provider genuinely orders its versions. ABSENT means this provider does not — not that the version is first or unknown. Never compare an absent ordinal against a present one.

stringOutput only
next_page_token

Opaque token for the next page.

string
total_size

Exact count of resources matching the request’s filter and scope (both pagination modes).

string
Example
{
"versions": [
{
"state": "SECRET_VERSION_STATE_UNSPECIFIED",
"engine": "VAULT_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"
}
]
}