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

List Repositories

GET
/registry/v1/workspaces/{workspace}/engines/{engine}/repositories
curl --request GET \
--url https://example.com/registry/v1/workspaces/example/engines/example/repositories

Returns a paginated list of repositories within a workspace. A specific provider filters to that provider; - lists repositories across all providers.

workspace
required
string

The workspace to list repositories for.

engine
required
string

The provider: qibdo, or - to list across all providers.

page_size
integer format: int32

The maximum number of repositories to return. The service may return fewer than this value. If unspecified, at most 20 repositories 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 ListRepositories call. Provide this to retrieve the subsequent page. When paginating, all other parameters must match the call that provided the page token.

filter
string

AIP-160 filter expression. Filterable fields: create_time, description, engine, format, id, immutable_tags, name, origin, update_time, visibility, workspace_id.

order_by
string

AIP-132 order_by expression. Sortable fields: create_time, engine, format, name, origin, update_time, visibility.

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

ListRepositoriesResponse

Response message for ListRepositories.

object
repositories

The list of repositories.

Array<object>

A repository is a workspace-scoped, named collection of artifacts (e.g. nginx, ci/web-app). It is the only first-class registry resource: it carries visibility, format metadata, and is the parent scope for artifacts, deployment locks, retention policies, and scan policies. Repositories can be provisioned across different providers; the provider a repository lives on is reported by the read-only engine field.

object
id

The unique identifier of the repository.

stringOutput only
workspace_id

The workspace this repository belongs to.

stringOutput only
name
required

The repository name — a slash-capable OCI path (e.g. nginx, ci/web-app). Each slash-separated segment is a DNS-label-style token; the whole name is unique within the workspace and must not itself be a UUID. Slashes are carried in a single URL-encoded path segment on the wire (never a multi-segment wildcard).

string
description

An optional human-readable description of the repository.

string
visibility

Repository visibility. Defaults to PRIVATE — the workspace is the isolation boundary.

string format: enum
Allowed values: VISIBILITY_UNSPECIFIED VISIBILITY_PRIVATE VISIBILITY_PUBLIC
format

The artifact format stored in this repository. Defaults to DOCKER. Set at creation time, not updatable.

string format: enum Output only
Allowed values: REPOSITORY_FORMAT_UNSPECIFIED REPOSITORY_FORMAT_DOCKER REPOSITORY_FORMAT_HELM REPOSITORY_FORMAT_OCI
origin

How the repository came to exist: CREATED via the API, or DISCOVERED when an image was pushed to an unregistered name. Informational only — the two are indistinguishable to consumers once the repository exists.

string format: enum Output only
Allowed values: REPOSITORY_ORIGIN_UNSPECIFIED REPOSITORY_ORIGIN_CREATED REPOSITORY_ORIGIN_DISCOVERED
engine

The provider this repository is provisioned on.

string format: enum Output only
Allowed values: ENGINE_UNSPECIFIED ENGINE_QIBDO
create_time

Timestamp when the repository was created.

string format: date-time Output only
update_time

Timestamp when the repository was last updated.

string format: date-time Output only
qibdo

Attributes specific to a Qibdo-managed repository.

object
immutable_tags

Whether tag immutability is enforced on this repository — the registry refuses to overwrite an existing tag on push. Kept provider-specific rather than shared at the top level.

boolean
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
total_size

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

string
Example
{
"repositories": [
{
"visibility": "VISIBILITY_UNSPECIFIED",
"format": "REPOSITORY_FORMAT_UNSPECIFIED",
"origin": "REPOSITORY_ORIGIN_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"
}
]
}