Scaleway logo
Edge Services API

A TLS stage is part of a pipeline. It allows you to provide an SSL/TLS certificate for your customized domain (DNS stage) - without this, Edge Services cannot serve traffic for your customized domain over HTTPS. This could be a custom certificate stored in Scaleway Secret ManagerOpen in new context, or a Let's Encrypt certificate generated and managed by Scaleway.


List TLS stages

GET
https://api.scaleway.com
/edge-services/v1beta1/pipelines/{pipeline_id}/tls-stages

List all TLS stages, for a Scaleway Organization or Scaleway Project. By default, the TLS stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field.

List TLS stages › path Parameters

pipeline_id
​string · required

Pipeline ID to filter for. Only TLS stages from this pipeline will be returned.

List TLS stages › query Parameters

Sort order of TLS stages in the response.

Enum values:
created_at_asc
created_at_desc
Default: created_at_asc
page
​integer · int32

Page number to return, from the paginated results.

page_size
​integer · uint32

Number of TLS stages to return per page.

secret_id
​string

Secret ID to filter for. Only TLS stages with this Secret ID will be returned.

secret_region
​string

Secret region to filter for. Only TLS stages with a Secret in this region will be returned.

List TLS stages › Responses

200

Paginated list of TLS stages.

total_count
​integer · uint64

Count of all TLS stages matching the requested criteria.


Create TLS stage

POST
https://api.scaleway.com
/edge-services/v1beta1/pipelines/{pipeline_id}/tls-stages

Create a new TLS stage. You must specify either the secrets or managed_certificate fields to customize the SSL/TLS certificate of your endpoint. Choose secrets if you are using a pre-existing certificate held in Scaleway Secret Manager, or managed_certificate to let Scaleway generate and manage a Let's Encrypt certificate for your customized endpoint.

Create TLS stage › path Parameters

pipeline_id
​string · required

Pipeline ID the TLS stage belongs to. (UUID format)

Create TLS stage › Request Body

Secret (from Scaleway Secret Manager) containing your custom certificate.

managed_certificate
​boolean | null

True when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.

cache_stage_id
​string | null

Cache stage ID the TLS stage will be linked to. (UUID format)

backend_stage_id
​string | null

Backend stage ID the TLS stage will be linked to. (UUID format)

route_stage_id
​string | null

(UUID format)

waf_stage_id
​string | null

(UUID format)

Create TLS stage › Responses

200
id
​string

ID of the TLS stage.

Secret (from Scaleway Secret Manager) containing your custom certificate.

managed_certificate
​boolean

True when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.

pipeline_id
​string

Pipeline ID the TLS stage belongs to.

certificate_expires_at
​string | null · date-time

Expiration date of the certificate. (RFC 3339 format)

status
​scaleway.edge_services.v1beta1.StageStatus · enum

Current status of the stage.

Enum values:
unknown_status
inactive
active
Default: unknown_status
created_at
​string | null · date-time

Date the TLS stage was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date the TLS stage was last updated. (RFC 3339 format)

cache_stage_id
​string | null

Cache stage ID the TLS stage is linked to. (UUID format)

backend_stage_id
​string | null

Backend stage ID the TLS stage is linked to. (UUID format)

waf_stage_id
​string | null

(UUID format)

route_stage_id
​string | null

(UUID format)


Get TLS stage

GET
https://api.scaleway.com
/edge-services/v1beta1/tls-stages/{tls_stage_id}

Retrieve information about an existing TLS stage, specified by its tls_stage_id. Its full details, including secrets and certificate expiration date are returned in the response object.

Get TLS stage › path Parameters

tls_stage_id
​string · required

ID of the requested TLS stage.

Get TLS stage › Responses

200
id
​string

ID of the TLS stage.

Secret (from Scaleway Secret Manager) containing your custom certificate.

managed_certificate
​boolean

True when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.

pipeline_id
​string

Pipeline ID the TLS stage belongs to.

certificate_expires_at
​string | null · date-time

Expiration date of the certificate. (RFC 3339 format)

status
​scaleway.edge_services.v1beta1.StageStatus · enum

Current status of the stage.

Enum values:
unknown_status
inactive
active
Default: unknown_status
created_at
​string | null · date-time

Date the TLS stage was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date the TLS stage was last updated. (RFC 3339 format)

cache_stage_id
​string | null

Cache stage ID the TLS stage is linked to. (UUID format)

backend_stage_id
​string | null

Backend stage ID the TLS stage is linked to. (UUID format)

waf_stage_id
​string | null

(UUID format)

route_stage_id
​string | null

(UUID format)


Update TLS stage

PATCH
https://api.scaleway.com
/edge-services/v1beta1/tls-stages/{tls_stage_id}

Update the parameters of an existing TLS stage, specified by its tls_stage_id. Both tls_secrets_config and managed_certificate parameters can be updated.

Update TLS stage › path Parameters

tls_stage_id
​string · required

ID of the TLS stage to update.

Update TLS stage › Request Body

Secret (from Scaleway Secret-Manager) containing your custom certificate.

managed_certificate
​boolean | null

True when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.

cache_stage_id
​string | null

Cache stage ID the TLS stage will be linked to. (UUID format)

backend_stage_id
​string | null

Backend stage ID the TLS stage will be linked to. (UUID format)

route_stage_id
​string | null

(UUID format)

waf_stage_id
​string | null

(UUID format)

Update TLS stage › Responses

200
id
​string

ID of the TLS stage.

Secret (from Scaleway Secret Manager) containing your custom certificate.

managed_certificate
​boolean

True when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.

pipeline_id
​string

Pipeline ID the TLS stage belongs to.

certificate_expires_at
​string | null · date-time

Expiration date of the certificate. (RFC 3339 format)

status
​scaleway.edge_services.v1beta1.StageStatus · enum

Current status of the stage.

Enum values:
unknown_status
inactive
active
Default: unknown_status
created_at
​string | null · date-time

Date the TLS stage was created. (RFC 3339 format)

updated_at
​string | null · date-time

Date the TLS stage was last updated. (RFC 3339 format)

cache_stage_id
​string | null

Cache stage ID the TLS stage is linked to. (UUID format)

backend_stage_id
​string | null

Backend stage ID the TLS stage is linked to. (UUID format)

waf_stage_id
​string | null

(UUID format)

route_stage_id
​string | null

(UUID format)


Delete TLS stage

DELETE
https://api.scaleway.com
/edge-services/v1beta1/tls-stages/{tls_stage_id}

Delete an existing TLS stage, specified by its tls_stage_id. Deleting a TLS stage is permanent, and cannot be undone.

Delete TLS stage › path Parameters

tls_stage_id
​string · required

ID of the TLS stage to delete.

Delete TLS stage › Responses

No data returned