Registries API
The registries API endpoint lets you create and manage registries in your organization.
Create a registry
curl -H "Authorization: Bearer $TOKEN" \
-X POST "https://api.buildkite.com/v2/packages/organizations/{org.slug}/registries" \
-H "Content-Type: application/json" \
-d '{
"name": "my registry",
"ecosystem": "ruby",
"description": "registry containing ruby gems",
"oidc_policy": [
{
"iss": "https://agent.buildkite.com",
"claims": {
"organization_slug": "my-org",
"pipeline_slug": {
"in": ["my-pipeline", "my-other-pipeline"]
}
}
}
]
}'
{
"id": "0191df84-85e4-77aa-83ba-6579084728eb",
"graphql_id": "UmVnaXN0cnktLS0wMTkxZGY4NC04NWU0LTc3YWEtODNiYS02NTc5MDg0NzI4ZWI=",
"slug": "my-registry",
"url": "https://api.buildkite.com/v2/packages/organizations/my-org/registries/my-registry",
"web_url": "https://buildkite.com/organizations/my-org/registries/my-registry",
"name": "my registry",
"ecosystem": "ruby",
"description": "registry containing ruby gems",
"emoji": null,
"color": null,
"public": false,
"oidc_policy": null
}
Required request body properties:
name |
Name of the new registry. Example: "my registry" . |
---|---|
ecosystem |
Registry ecosystem based on the package ecosystem for the new registry. Example: "ruby" . |
Optional request body properties:
description |
Description of the registry. Default value: null . |
---|---|
emoji |
Emoji for the registry using the emoji syntax. Example: ":sunflower:" . |
color |
Color hex code for the registry. Example: "#f0ccff" . |
oidc_policy |
A policy matching a basic or more complex OIDC policy format. Can be either stringified YAML, or a JSON array of policy statements. Default value: null . |
Required scope: write_registries
Success response: 200 OK
List all registries
Returns a list of an organization's registries.
curl -H "Authorization: Bearer $TOKEN" \
-X GET "https://api.buildkite.com/v2/packages/organizations/{org.slug}/registries"
[
{
"id": "0191df84-85e4-77aa-83ba-6579084728eb",
"graphql_id": "UmVnaXN0cnktLS0wMTkxZGY4NC04NWU0LTc3YWEtODNiYS02NTc5MDg0NzI4ZWI=",
"slug": "my-registry",
"url": "https://api.buildkite.com/v2/packages/organizations/my-org/registries/my-registry",
"web_url": "https://buildkite.com/organizations/my-org/packages/registries/my-registry",
"name": "my registry",
"ecosystem": "ruby",
"description": "registry containing ruby gems",
"emoji": null,
"color": null,
"public": false,
"oidc_policy": null
}
]
Required scope: read_registries
Success response: 200 OK
Get a registry
Returns the details for a single registry, looked up by its slug.
curl -H "Authorization: Bearer $TOKEN" \
-X GET "https://api.buildkite.com/v2/packages/organizations/{org.slug}/registries/{registry.slug}"
{
"id": "0191df84-85e4-77aa-83ba-6579084728eb",
"graphql_id": "UmVnaXN0cnktLS0wMTkxZGY4NC04NWU0LTc3YWEtODNiYS02NTc5MDg0NzI4ZWI=",
"slug": "my-registry",
"url": "https://api.buildkite.com/v2/packages/organizations/my-org/registries/my-registry",
"web_url": "https://buildkite.com/organizations/my-org/registries/my-registry",
"name": "my registry",
"ecosystem": "ruby",
"description": "registry containing ruby gems",
"emoji": null,
"color": null,
"public": false,
"oidc_policy": null
}
Required scope: read_registries
Success response: 200 OK
Update a registry
curl -H "Authorization: Bearer $TOKEN" \
-X POST "https://api.buildkite.com/v2/packages/organizations/{org.slug}/registries/{registry.slug}" \
-H "Content-Type: application/json" \
-d '{
"name": "my registry",
"description": "registry containing ruby gems",
"oidc_policy": [
{
"iss": "https://agent.buildkite.com",
"claims": {
"organization_slug": "my-org",
"pipeline_slug": {
"in": ["my-pipeline"]
}
}
}
]
}'
{
"id": "0191df84-85e4-77aa-83ba-6579084728eb",
"graphql_id": "UmVnaXN0cnktLS0wMTkxZGY4NC04NWU0LTc3YWEtODNiYS02NTc5MDg0NzI4ZWI=",
"slug": "my-registry",
"url": "https://api.buildkite.com/v2/packages/organizations/my-org/registries/my-registry",
"web_url": "https://buildkite.com/organizations/my-org/registries/my-registry",
"name": "my registry",
"ecosystem": "ruby",
"description": "registry containing ruby gems",
"emoji": null,
"color": null,
"public": false,
"oidc_policy": null
}
Optional request body properties:
name |
Name of the registry. Example: my registry . |
---|---|
description |
Description of the registry. Example: registry containing ruby gems . |
oidc_policy |
A policy matching a basic or more complex OIDC policy format. Can be either stringified YAML, or a JSON array of policy statements. Be aware that if you are modifying an existing OIDC policy, the entire revised OIDC policy needs to be re-posted in this update request. Default value: null . |
Required scope: write_registries
Success response: 200 OK
Delete a registry
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE "https://api.buildkite.com/v2/packages/organizations/{org.slug}/registries/{registry.slug}"
Required scope: delete_registries
Success response: 200 OK