Scaleway logo
Container Registry API

A namespace is a collection of container images, each bearing the unique identifier of that namespace. A namespace can be either public or private, by default.

Each namespace must have a globally unique name within its region. This means no namespaces in the same region can bear the same name.

You can use namespace privacy policies to specify whether everyone has the right to pull an image from a namespace or not. When an image is in a public namespace, anyone is able to pull it. You can set your namespace to private if you want to restrict access.


List namespaces

GET
https://api.scaleway.com
/registry/v1/regions/{region}/namespaces

List all namespaces in a specified region. By default, the namespaces listed are ordered by creation date in ascending order. This can be modified via the order_by field. You can also define additional parameters for your query, such as the instance_id and project_id parameters.

List namespaces › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw

List namespaces › query Parameters

page
​integer · int32

A positive integer to choose the page to display.

page_size
​integer · uint32

A positive integer lower or equal to 100 to select the number of items to display.

Criteria to use when ordering namespace listings. Possible values are created_at_asc, created_at_desc, name_asc, name_desc, region, status_asc and status_desc. The default value is created_at_asc.

Enum values:
created_at_asc
created_at_desc
description_asc
description_desc
name_asc
name_desc
Default: created_at_asc
organization_id
​string

Filter by Organization ID.

project_id
​string

Filter by Project ID.

name
​string

Filter by the namespace name (exact match).

List namespaces › Responses

200

Paginated list of namespaces that match the selected filters.

total_count
​integer · uint32

Total number of namespaces that match the selected filters.


Create a namespace

POST
https://api.scaleway.com
/registry/v1/regions/{region}/namespaces

Create a new Container Registry namespace. You must specify the namespace name and region in which you want it to be created. Optionally, you can specify the project_id and is_public in the request payload.

Create a namespace › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw

Create a namespace › Request Body

name
​string · required

Name of the namespace.

description
​string

Description of the namespace.

project_id
​string | null

Project ID on which the namespace will be created.

is_public
​boolean

Defines whether or not namespace is public.

Create a namespace › Responses

200
id
​string

UUID of the namespace.

name
​string

Name of the namespace, unique in a region across all organizations.

description
​string

Description of the namespace.

organization_id
​string

Owner of the namespace.

project_id
​string

Project of the namespace.

Namespace status.

Enum values:
unknown
ready
deleting
error
locked
Default: unknown
status_message
​string

Namespace status details.

endpoint
​string

Endpoint reachable by docker.

is_public
​boolean

Defines whether or not namespace is public.

size
​integer · uint64

Total size of the namespace, calculated as the sum of the size of all images in the namespace. (in bytes)

created_at
​string | null · date-time

Date and time of creation. (RFC 3339 format)

updated_at
​string | null · date-time

Date and time of last update. (RFC 3339 format)

image_count
​integer · uint32

Number of images in the namespace.

region
​string

Region the namespace belongs to.


Get a namespace

GET
https://api.scaleway.com
/registry/v1/regions/{region}/namespaces/{namespace_id}

Retrieve information about a given namespace, specified by its namespace_id and region. Full details about the namespace, such as description, project_id, status, endpoint, is_public, size, and image_count are returned in the response.

Get a namespace › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
namespace_id
​string · required

UUID of the namespace.

Get a namespace › Responses

200
id
​string

UUID of the namespace.

name
​string

Name of the namespace, unique in a region across all organizations.

description
​string

Description of the namespace.

organization_id
​string

Owner of the namespace.

project_id
​string

Project of the namespace.

Namespace status.

Enum values:
unknown
ready
deleting
error
locked
Default: unknown
status_message
​string

Namespace status details.

endpoint
​string

Endpoint reachable by docker.

is_public
​boolean

Defines whether or not namespace is public.

size
​integer · uint64

Total size of the namespace, calculated as the sum of the size of all images in the namespace. (in bytes)

created_at
​string | null · date-time

Date and time of creation. (RFC 3339 format)

updated_at
​string | null · date-time

Date and time of last update. (RFC 3339 format)

image_count
​integer · uint32

Number of images in the namespace.

region
​string

Region the namespace belongs to.


Delete a namespace

DELETE
https://api.scaleway.com
/registry/v1/regions/{region}/namespaces/{namespace_id}

Delete a given namespace. You must specify, in the endpoint, the region and namespace_id parameters of the namespace you want to delete.

Delete a namespace › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
namespace_id
​string · required

UUID of the namespace.

Delete a namespace › Responses

200
id
​string

UUID of the namespace.

name
​string

Name of the namespace, unique in a region across all organizations.

description
​string

Description of the namespace.

organization_id
​string

Owner of the namespace.

project_id
​string

Project of the namespace.

Namespace status.

Enum values:
unknown
ready
deleting
error
locked
Default: unknown
status_message
​string

Namespace status details.

endpoint
​string

Endpoint reachable by docker.

is_public
​boolean

Defines whether or not namespace is public.

size
​integer · uint64

Total size of the namespace, calculated as the sum of the size of all images in the namespace. (in bytes)

created_at
​string | null · date-time

Date and time of creation. (RFC 3339 format)

updated_at
​string | null · date-time

Date and time of last update. (RFC 3339 format)

image_count
​integer · uint32

Number of images in the namespace.

region
​string

Region the namespace belongs to.


Update a namespace

PATCH
https://api.scaleway.com
/registry/v1/regions/{region}/namespaces/{namespace_id}

Update the parameters of a given namespace, specified by its namespace_id and region. You can update the description and is_public parameters.

Update a namespace › path Parameters

region
​string · enum · required

The region you want to target

Enum values:
fr-par
nl-ams
pl-waw
namespace_id
​string · required

ID of the namespace to update.

Update a namespace › Request Body

description
​string | null

Namespace description.

is_public
​boolean | null

Defines whether or not the namespace is public.

Update a namespace › Responses

200
id
​string

UUID of the namespace.

name
​string

Name of the namespace, unique in a region across all organizations.

description
​string

Description of the namespace.

organization_id
​string

Owner of the namespace.

project_id
​string

Project of the namespace.

Namespace status.

Enum values:
unknown
ready
deleting
error
locked
Default: unknown
status_message
​string

Namespace status details.

endpoint
​string

Endpoint reachable by docker.

is_public
​boolean

Defines whether or not namespace is public.

size
​integer · uint64

Total size of the namespace, calculated as the sum of the size of all images in the namespace. (in bytes)

created_at
​string | null · date-time

Date and time of creation. (RFC 3339 format)

updated_at
​string | null · date-time

Date and time of last update. (RFC 3339 format)

image_count
​integer · uint32

Number of images in the namespace.

region
​string

Region the namespace belongs to.