scaleway.edge_services.v1alpha1 package

Submodules

scaleway.edge_services.v1alpha1.api module

class scaleway.edge_services.v1alpha1.api.EdgeServicesV1Alpha1API(client: Client, *, bypass_validation: bool = False)

Bases: API

check_domain(*, fqdn: str, cname: str, project_id: str | None = None) CheckDomainResponse
Parameters:
  • fqdn

  • cname

  • project_id

Returns:

CheckDomainResponse

Usage:

result = api.check_domain(
    fqdn="example",
    cname="example",
)
check_lb_origin(*, lb: ScalewayLb | None = None) CheckLbOriginResponse
Parameters:

lb

Returns:

CheckLbOriginResponse

Usage:

result = api.check_lb_origin()
check_pem_chain(*, fqdn: str, project_id: str | None = None, secret: CheckPEMChainRequestSecretChain | None = None, raw: str | None = None) CheckPEMChainResponse
Parameters:
  • fqdn

  • project_id

  • secret

One-Of (‘chain’): at most one of ‘secret’, ‘raw’ could be set. :param raw: One-Of (‘chain’): at most one of ‘secret’, ‘raw’ could be set. :return: CheckPEMChainResponse

Usage:

result = api.check_pem_chain(
    fqdn="example",
)
create_backend_stage(*, project_id: str | None = None, scaleway_s3: ScalewayS3BackendConfig | None = None, scaleway_lb: ScalewayLbBackendConfig | None = None) BackendStage

Create backend stage. Create a new backend stage. You must specify either a scaleway_s3 (for a Scaleway Object Storage bucket) or scaleway_lb (for a Scaleway Load Balancer) field to configure the origin. :param project_id: Project ID in which the backend stage will be created. :param scaleway_s3: Scaleway Object Storage origin bucket (S3) linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :param scaleway_lb: Scaleway Load Balancer origin linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :return: BackendStage

Usage:

result = api.create_backend_stage()
create_cache_stage(*, project_id: str | None = None, fallback_ttl: str | None = None, backend_stage_id: str | None = None) CacheStage

Create cache stage. Create a new cache stage. You must specify the fallback_ttl field to customize the TTL of the cache. :param project_id: Project ID in which the cache stage will be created. :param fallback_ttl: Time To Live (TTL) in seconds. Defines how long content is cached. :param backend_stage_id: Backend stage ID the cache stage will be linked to. One-Of (‘next’): at most one of ‘backend_stage_id’ could be set. :return: CacheStage

Usage:

result = api.create_cache_stage()
create_dns_stage(*, project_id: str | None = None, fqdns: List[str] | None = None, tls_stage_id: str | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) DNSStage

Create DNS stage. Create a new DNS stage. You must specify the fqdns field to customize the domain endpoint, using a domain you already own. :param project_id: Project ID in which the DNS stage will be created. :param fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage. :param tls_stage_id: TLS stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param cache_stage_id: Cache stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: DNSStage

Usage:

result = api.create_dns_stage()
create_pipeline(*, name: str, description: str, project_id: str | None = None, dns_stage_id: str | None = None) Pipeline

Create pipeline. Create a new pipeline. You must specify a dns_stage_id to form a stage-chain that goes all the way to the backend stage (origin), so the HTTP request will be processed according to the stages you created. :param name: Name of the pipeline. :param description: Description of the pipeline. :param project_id: Project ID in which the pipeline will be created. :param dns_stage_id: DNS stage ID the pipeline will be attached to. One-Of (‘head’): at most one of ‘dns_stage_id’ could be set. :return: Pipeline

Usage:

result = api.create_pipeline(
    name="example",
    description="example",
)
create_purge_request(*, pipeline_id: str, assets: List[str] | None = None, all: bool | None = None) PurgeRequest

Create purge request. Create a new purge request. You must specify either the all field (to purge all content) or a list of assets (to define the precise assets to purge). :param pipeline_id: Pipeline ID in which the purge request will be created. :param assets: List of asserts to purge. One-Of (‘target’): at most one of ‘assets’, ‘all’ could be set. :param all: Defines whether to purge all content. One-Of (‘target’): at most one of ‘assets’, ‘all’ could be set. :return: PurgeRequest

Usage:

result = api.create_purge_request(
    pipeline_id="example",
)
create_tls_stage(*, project_id: str | None = None, secrets: List[TLSSecret] | None = None, managed_certificate: bool | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) TLSStage

Create TLS stage. 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. :param project_id: Project ID in which the TLS stage will be created. :param secrets: Secret (from Scaleway Secret Manager) containing your custom certificate. :param managed_certificate: True when Scaleway generates and manages a Let’s Encrypt certificate for the TLS stage/custom endpoint. :param cache_stage_id: Cache stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: TLSStage

Usage:

result = api.create_tls_stage()
delete_backend_stage(*, backend_stage_id: str) None

Delete backend stage. Delete an existing backend stage, specified by its backend_stage_id. Deleting a backend stage is permanent, and cannot be undone. :param backend_stage_id: ID of the backend stage to delete.

Usage:

result = api.delete_backend_stage(
    backend_stage_id="example",
)
delete_cache_stage(*, cache_stage_id: str) None

Delete cache stage. Delete an existing cache stage, specified by its cache_stage_id. Deleting a cache stage is permanent, and cannot be undone. :param cache_stage_id: ID of the cache stage to delete.

Usage:

result = api.delete_cache_stage(
    cache_stage_id="example",
)
delete_current_plan(*, project_id: str | None = None) None
Parameters:

project_id

Usage:

result = api.delete_current_plan()
delete_dns_stage(*, dns_stage_id: str) None

Delete DNS stage. Delete an existing DNS stage, specified by its dns_stage_id. Deleting a DNS stage is permanent, and cannot be undone. :param dns_stage_id: ID of the DNS stage to delete.

Usage:

result = api.delete_dns_stage(
    dns_stage_id="example",
)
delete_pipeline(*, pipeline_id: str) None

Delete pipeline. Delete an existing pipeline, specified by its pipeline_id. Deleting a pipeline is permanent, and cannot be undone. Note that all stages linked to the pipeline are also deleted. :param pipeline_id: ID of the pipeline to delete.

Usage:

result = api.delete_pipeline(
    pipeline_id="example",
)
delete_tls_stage(*, tls_stage_id: str) None

Delete TLS stage. Delete an existing TLS stage, specified by its tls_stage_id. Deleting a TLS stage is permanent, and cannot be undone. :param tls_stage_id: ID of the TLS stage to delete.

Usage:

result = api.delete_tls_stage(
    tls_stage_id="example",
)
get_backend_stage(*, backend_stage_id: str) BackendStage

Get backend stage. Retrieve information about an existing backend stage, specified by its backend_stage_id. Its full details, including scaleway_s3 or scaleway_lb, are returned in the response object. :param backend_stage_id: ID of the requested backend stage. :return: BackendStage

Usage:

result = api.get_backend_stage(
    backend_stage_id="example",
)
get_billing(*, project_id: str | None = None) GetBillingResponse

Gives information on the currently selected Edge Services subscription plan, resource usage and associated billing information for this calendar month (including whether consumption falls within or exceeds the currently selected subscription plan.). :param project_id: :return: GetBillingResponse

Usage:

result = api.get_billing()
get_cache_stage(*, cache_stage_id: str) CacheStage

Get cache stage. Retrieve information about an existing cache stage, specified by its cache_stage_id. Its full details, including Time To Live (TTL), are returned in the response object. :param cache_stage_id: ID of the requested cache stage. :return: CacheStage

Usage:

result = api.get_cache_stage(
    cache_stage_id="example",
)
get_current_plan(*, project_id: str | None = None) Plan
Parameters:

project_id

Returns:

Plan

Usage:

result = api.get_current_plan()
get_dns_stage(*, dns_stage_id: str) DNSStage

Get DNS stage. Retrieve information about an existing DNS stage, specified by its dns_stage_id. Its full details, including FQDNs, are returned in the response object. :param dns_stage_id: ID of the requested DNS stage. :return: DNSStage

Usage:

result = api.get_dns_stage(
    dns_stage_id="example",
)
get_pipeline(*, pipeline_id: str) Pipeline

Get pipeline. Retrieve information about an existing pipeline, specified by its pipeline_id. Its full details, including errors, are returned in the response object. :param pipeline_id: ID of the requested pipeline. :return: Pipeline

Usage:

result = api.get_pipeline(
    pipeline_id="example",
)
get_purge_request(*, purge_request_id: str) PurgeRequest

Get purge request. Retrieve information about a purge request, specified by its purge_request_id. Its full details, including status and target, are returned in the response object. :param purge_request_id: ID of the requested purge request. :return: PurgeRequest

Usage:

result = api.get_purge_request(
    purge_request_id="example",
)
get_tls_stage(*, tls_stage_id: str) TLSStage

Get TLS stage. 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. :param tls_stage_id: ID of the requested TLS stage. :return: TLSStage

Usage:

result = api.get_tls_stage(
    tls_stage_id="example",
)
list_backend_stages(*, order_by: ListBackendStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, bucket_name: str | None = None, bucket_region: str | None = None, lb_id: str | None = None) ListBackendStagesResponse

List backend stages. List all backend stages, for a Scaleway Organization or Scaleway Project. By default, the backend stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of backend stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of backend stages to return per page. :param pipeline_id: Pipeline ID to filter for, only backend stages from this pipeline will be returned. :param project_id: Project ID to filter for, only backend stages from this Project will be returned. :param bucket_name: Bucket name to filter for, only backend stages from this Bucket will be returned. :param bucket_region: Bucket region to filter for, only backend stages with buckets in this region will be returned. :param lb_id: Load Balancer ID to filter for, only backend stages with this Load Balancer will be returned. :return: ListBackendStagesResponse

Usage:

result = api.list_backend_stages()
list_backend_stages_all(*, order_by: ListBackendStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, bucket_name: str | None = None, bucket_region: str | None = None, lb_id: str | None = None) List[BackendStage]

List backend stages. List all backend stages, for a Scaleway Organization or Scaleway Project. By default, the backend stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of backend stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of backend stages to return per page. :param pipeline_id: Pipeline ID to filter for, only backend stages from this pipeline will be returned. :param project_id: Project ID to filter for, only backend stages from this Project will be returned. :param bucket_name: Bucket name to filter for, only backend stages from this Bucket will be returned. :param bucket_region: Bucket region to filter for, only backend stages with buckets in this region will be returned. :param lb_id: Load Balancer ID to filter for, only backend stages with this Load Balancer will be returned. :return: List[BackendStage]

Usage:

result = api.list_backend_stages_all()
list_cache_stages(*, order_by: ListCacheStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None) ListCacheStagesResponse

List cache stages. List all cache stages, for a Scaleway Organization or Scaleway Project. By default, the cache stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of cache stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of cache stages to return per page. :param pipeline_id: Pipeline ID to filter for, only cache stages from this pipeline will be returned. :param project_id: Project ID to filter for, only cache stages from this Project will be returned. :return: ListCacheStagesResponse

Usage:

result = api.list_cache_stages()
list_cache_stages_all(*, order_by: ListCacheStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None) List[CacheStage]

List cache stages. List all cache stages, for a Scaleway Organization or Scaleway Project. By default, the cache stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of cache stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of cache stages to return per page. :param pipeline_id: Pipeline ID to filter for, only cache stages from this pipeline will be returned. :param project_id: Project ID to filter for, only cache stages from this Project will be returned. :return: List[CacheStage]

Usage:

result = api.list_cache_stages_all()
list_dns_stages(*, order_by: ListDNSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, fqdn: str | None = None) ListDNSStagesResponse

List DNS stages. List all DNS stages, for a Scaleway Organization or Scaleway Project. By default, the DNS stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of DNS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of DNS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only DNS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only DNS stages from this Project will be returned. :param fqdn: Fully Qualified Domain Name to filter for (in the format subdomain.example.com), only DNS stages with this FQDN will be returned. :return: ListDNSStagesResponse

Usage:

result = api.list_dns_stages()
list_dns_stages_all(*, order_by: ListDNSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, fqdn: str | None = None) List[DNSStage]

List DNS stages. List all DNS stages, for a Scaleway Organization or Scaleway Project. By default, the DNS stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of DNS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of DNS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only DNS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only DNS stages from this Project will be returned. :param fqdn: Fully Qualified Domain Name to filter for (in the format subdomain.example.com), only DNS stages with this FQDN will be returned. :return: List[DNSStage]

Usage:

result = api.list_dns_stages_all()
list_pipelines(*, order_by: ListPipelinesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None, has_backend_stage_lb: bool | None = None) ListPipelinesResponse

List pipelines. List all pipelines, for a Scaleway Organization or Scaleway Project. By default, the pipelines returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of pipelines in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of pipelines to return per page. :param name: Pipeline name to filter for, only pipelines with this string within their name will be returned. :param organization_id: Organization ID to filter for, only pipelines from this Organization will be returned. :param project_id: Project ID to filter for, only pipelines from this Project will be returned. :param has_backend_stage_lb: Filter on backend stage, only pipelines with a Load Balancer origin will be returned. :return: ListPipelinesResponse

Usage:

result = api.list_pipelines()
list_pipelines_all(*, order_by: ListPipelinesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None, has_backend_stage_lb: bool | None = None) List[Pipeline]

List pipelines. List all pipelines, for a Scaleway Organization or Scaleway Project. By default, the pipelines returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of pipelines in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of pipelines to return per page. :param name: Pipeline name to filter for, only pipelines with this string within their name will be returned. :param organization_id: Organization ID to filter for, only pipelines from this Organization will be returned. :param project_id: Project ID to filter for, only pipelines from this Project will be returned. :param has_backend_stage_lb: Filter on backend stage, only pipelines with a Load Balancer origin will be returned. :return: List[Pipeline]

Usage:

result = api.list_pipelines_all()
list_pipelines_with_stages(*, order_by: ListPipelinesWithStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None) ListPipelinesWithStagesResponse
Parameters:
  • order_by

  • page

  • page_size

  • name

  • organization_id

  • project_id

Returns:

ListPipelinesWithStagesResponse

Usage:

result = api.list_pipelines_with_stages()
list_pipelines_with_stages_all(*, order_by: ListPipelinesWithStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None) List[PipelineStages]
Parameters:
  • order_by

  • page

  • page_size

  • name

  • organization_id

  • project_id

Returns:

List[PipelineStages]

Usage:

result = api.list_pipelines_with_stages_all()
list_plans() ListPlansResponse
Returns:

ListPlansResponse

Usage:

result = api.list_plans()
list_purge_requests(*, order_by: ListPurgeRequestsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, pipeline_id: str | None = None) ListPurgeRequestsResponse

List purge requests. List all purge requests, for a Scaleway Organization or Scaleway Project. This enables you to retrieve a history of all previously-made purge requests. By default, the purge requests returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of purge requests in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of purge requests to return per page. :param organization_id: Organization ID to filter for, only purge requests from this Project will be returned. :param project_id: Project ID to filter for, only purge requests from this Project will be returned. :param pipeline_id: Pipeline ID to filter for, only purge requests from this pipeline will be returned. :return: ListPurgeRequestsResponse

Usage:

result = api.list_purge_requests()
list_purge_requests_all(*, order_by: ListPurgeRequestsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, pipeline_id: str | None = None) List[PurgeRequest]

List purge requests. List all purge requests, for a Scaleway Organization or Scaleway Project. This enables you to retrieve a history of all previously-made purge requests. By default, the purge requests returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of purge requests in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of purge requests to return per page. :param organization_id: Organization ID to filter for, only purge requests from this Project will be returned. :param project_id: Project ID to filter for, only purge requests from this Project will be returned. :param pipeline_id: Pipeline ID to filter for, only purge requests from this pipeline will be returned. :return: List[PurgeRequest]

Usage:

result = api.list_purge_requests_all()
list_tls_stages(*, order_by: ListTLSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, secret_id: str | None = None, secret_region: str | None = None) ListTLSStagesResponse

List 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. :param order_by: Sort order of TLS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of TLS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only TLS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only TLS stages from this Project will be returned. :param secret_id: Secret ID to filter for, only TLS stages with this Secret ID will be returned. :param secret_region: Secret region to filter for, only TLS stages with a Secret in this region will be returned. :return: ListTLSStagesResponse

Usage:

result = api.list_tls_stages()
list_tls_stages_all(*, order_by: ListTLSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, secret_id: str | None = None, secret_region: str | None = None) List[TLSStage]

List 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. :param order_by: Sort order of TLS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of TLS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only TLS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only TLS stages from this Project will be returned. :param secret_id: Secret ID to filter for, only TLS stages with this Secret ID will be returned. :param secret_region: Secret region to filter for, only TLS stages with a Secret in this region will be returned. :return: List[TLSStage]

Usage:

result = api.list_tls_stages_all()
select_plan(*, project_id: str | None = None, plan_name: PlanName | None = None) Plan
Parameters:
  • project_id

  • plan_name

Returns:

Plan

Usage:

result = api.select_plan()
update_backend_stage(*, backend_stage_id: str, scaleway_s3: ScalewayS3BackendConfig | None = None, scaleway_lb: ScalewayLbBackendConfig | None = None) BackendStage

Update backend stage. Update the parameters of an existing backend stage, specified by its backend_stage_id. :param backend_stage_id: ID of the backend stage to update. :param scaleway_s3: Scaleway Object Storage origin bucket (S3) linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :param scaleway_lb: Scaleway Load Balancer origin linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :return: BackendStage

Usage:

result = api.update_backend_stage(
    backend_stage_id="example",
)
update_cache_stage(*, cache_stage_id: str, fallback_ttl: str | None = None, backend_stage_id: str | None = None) CacheStage

Update cache stage. Update the parameters of an existing cache stage, specified by its cache_stage_id. Parameters which can be updated include the fallback_ttl and backend_stage_id. :param cache_stage_id: ID of the cache stage to update. :param fallback_ttl: Time To Live (TTL) in seconds. Defines how long content is cached. :param backend_stage_id: Backend stage ID the cache stage will be linked to. One-Of (‘next’): at most one of ‘backend_stage_id’ could be set. :return: CacheStage

Usage:

result = api.update_cache_stage(
    cache_stage_id="example",
)
update_dns_stage(*, dns_stage_id: str, fqdns: List[str] | None = None, tls_stage_id: str | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) DNSStage

Update DNS stage. Update the parameters of an existing DNS stage, specified by its dns_stage_id. :param dns_stage_id: ID of the DNS stage to update. :param fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) attached to the stage. :param tls_stage_id: TLS stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param cache_stage_id: Cache stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: DNSStage

Usage:

result = api.update_dns_stage(
    dns_stage_id="example",
)
update_pipeline(*, pipeline_id: str, name: str | None = None, description: str | None = None, dns_stage_id: str | None = None) Pipeline

Update pipeline. Update the parameters of an existing pipeline, specified by its pipeline_id. Parameters which can be updated include the name, description and dns_stage_id. :param pipeline_id: ID of the pipeline to update. :param name: Name of the pipeline. :param description: Description of the pipeline. :param dns_stage_id: DNS stage ID the pipeline will be attached to. One-Of (‘head’): at most one of ‘dns_stage_id’ could be set. :return: Pipeline

Usage:

result = api.update_pipeline(
    pipeline_id="example",
)
update_tls_stage(*, tls_stage_id: str, tls_secrets_config: TLSSecretsConfig | None = None, managed_certificate: bool | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) TLSStage

Update TLS stage. 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. :param tls_stage_id: ID of the TLS stage to update. :param tls_secrets_config: Secret (from Scaleway Secret-Manager) containing your custom certificate. :param managed_certificate: True when Scaleway generates and manages a Let’s Encrypt certificate for the TLS stage/custom endpoint. :param cache_stage_id: Cache stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: TLSStage

Usage:

result = api.update_tls_stage(
    tls_stage_id="example",
)
wait_for_pipeline(*, pipeline_id: str, options: WaitForOptions[Pipeline, bool] | None = None) Pipeline

Get pipeline. Retrieve information about an existing pipeline, specified by its pipeline_id. Its full details, including errors, are returned in the response object. :param pipeline_id: ID of the requested pipeline. :return: Pipeline

Usage:

result = api.get_pipeline(
    pipeline_id="example",
)
wait_for_purge_request(*, purge_request_id: str, options: WaitForOptions[PurgeRequest, bool] | None = None) PurgeRequest

Get purge request. Retrieve information about a purge request, specified by its purge_request_id. Its full details, including status and target, are returned in the response object. :param purge_request_id: ID of the requested purge request. :return: PurgeRequest

Usage:

result = api.get_purge_request(
    purge_request_id="example",
)

scaleway.edge_services.v1alpha1.content module

scaleway.edge_services.v1alpha1.content.PIPELINE_TRANSIENT_STATUSES: List[PipelineStatus] = [<PipelineStatus.PENDING: 'pending'>]

Lists transient statutes of the enum PipelineStatus.

scaleway.edge_services.v1alpha1.content.PURGE_REQUEST_TRANSIENT_STATUSES: List[PurgeRequestStatus] = [<PurgeRequestStatus.PENDING: 'pending'>]

Lists transient statutes of the enum PurgeRequestStatus.

scaleway.edge_services.v1alpha1.marshalling module

scaleway.edge_services.v1alpha1.marshalling.marshal_CheckDomainRequest(request: CheckDomainRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CheckLbOriginRequest(request: CheckLbOriginRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CheckPEMChainRequest(request: CheckPEMChainRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CheckPEMChainRequestSecretChain(request: CheckPEMChainRequestSecretChain, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CreateBackendStageRequest(request: CreateBackendStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CreateCacheStageRequest(request: CreateCacheStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CreateDNSStageRequest(request: CreateDNSStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CreatePipelineRequest(request: CreatePipelineRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CreatePurgeRequestRequest(request: CreatePurgeRequestRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_CreateTLSStageRequest(request: CreateTLSStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_ScalewayLb(request: ScalewayLb, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_ScalewayLbBackendConfig(request: ScalewayLbBackendConfig, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_ScalewayS3BackendConfig(request: ScalewayS3BackendConfig, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_SelectPlanRequest(request: SelectPlanRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_TLSSecret(request: TLSSecret, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_TLSSecretsConfig(request: TLSSecretsConfig, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_UpdateBackendStageRequest(request: UpdateBackendStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_UpdateCacheStageRequest(request: UpdateCacheStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_UpdateDNSStageRequest(request: UpdateDNSStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_UpdatePipelineRequest(request: UpdatePipelineRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.marshal_UpdateTLSStageRequest(request: UpdateTLSStageRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.edge_services.v1alpha1.marshalling.unmarshal_BackendStage(data: Any) BackendStage
scaleway.edge_services.v1alpha1.marshalling.unmarshal_CacheStage(data: Any) CacheStage
scaleway.edge_services.v1alpha1.marshalling.unmarshal_CheckDomainResponse(data: Any) CheckDomainResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_CheckLbOriginResponse(data: Any) CheckLbOriginResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_CheckPEMChainResponse(data: Any) CheckPEMChainResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_DNSStage(data: Any) DNSStage
scaleway.edge_services.v1alpha1.marshalling.unmarshal_GetBillingResponse(data: Any) GetBillingResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListBackendStagesResponse(data: Any) ListBackendStagesResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListCacheStagesResponse(data: Any) ListCacheStagesResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListDNSStagesResponse(data: Any) ListDNSStagesResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListPipelinesResponse(data: Any) ListPipelinesResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListPipelinesWithStagesResponse(data: Any) ListPipelinesWithStagesResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListPlansResponse(data: Any) ListPlansResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListPurgeRequestsResponse(data: Any) ListPurgeRequestsResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ListTLSStagesResponse(data: Any) ListTLSStagesResponse
scaleway.edge_services.v1alpha1.marshalling.unmarshal_Pipeline(data: Any) Pipeline
scaleway.edge_services.v1alpha1.marshalling.unmarshal_PipelineError(data: Any) PipelineError
scaleway.edge_services.v1alpha1.marshalling.unmarshal_PipelineStages(data: Any) PipelineStages
scaleway.edge_services.v1alpha1.marshalling.unmarshal_Plan(data: Any) Plan
scaleway.edge_services.v1alpha1.marshalling.unmarshal_PlanDetails(data: Any) PlanDetails
scaleway.edge_services.v1alpha1.marshalling.unmarshal_PlanUsageDetails(data: Any) PlanUsageDetails
scaleway.edge_services.v1alpha1.marshalling.unmarshal_PurgeRequest(data: Any) PurgeRequest
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ScalewayLb(data: Any) ScalewayLb
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ScalewayLbBackendConfig(data: Any) ScalewayLbBackendConfig
scaleway.edge_services.v1alpha1.marshalling.unmarshal_ScalewayS3BackendConfig(data: Any) ScalewayS3BackendConfig
scaleway.edge_services.v1alpha1.marshalling.unmarshal_TLSSecret(data: Any) TLSSecret
scaleway.edge_services.v1alpha1.marshalling.unmarshal_TLSStage(data: Any) TLSStage

scaleway.edge_services.v1alpha1.types module

class scaleway.edge_services.v1alpha1.types.BackendStage(id: 'str', project_id: 'str', pipeline_id: 'Optional[str]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', scaleway_s3: 'Optional[ScalewayS3BackendConfig]', scaleway_lb: 'Optional[ScalewayLbBackendConfig]')

Bases: object

created_at: datetime | None

Date the backend stage was created.

id: str

ID of the backend stage.

pipeline_id: str | None

Pipeline ID the backend stage belongs to.

project_id: str

Project ID of the backend stage.

scaleway_lb: ScalewayLbBackendConfig | None
scaleway_s3: ScalewayS3BackendConfig | None
updated_at: datetime | None

Date the backend stage was last updated.

class scaleway.edge_services.v1alpha1.types.CacheStage(id: 'str', project_id: 'str', pipeline_id: 'Optional[str]', fallback_ttl: 'Optional[str]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
created_at: datetime | None

Date the cache stage was created.

fallback_ttl: str | None

Time To Live (TTL) in seconds. Defines how long content is cached.

id: str

ID of the cache stage.

pipeline_id: str | None

Pipeline ID the cache stage belongs to.

project_id: str

Project ID of the cache stage.

updated_at: datetime | None

Date the cache stage was last updated.

class scaleway.edge_services.v1alpha1.types.CheckDomainRequest(fqdn: 'str', cname: 'str', project_id: 'Optional[str]')

Bases: object

cname: str
fqdn: str
project_id: str | None
class scaleway.edge_services.v1alpha1.types.CheckDomainResponse(is_valid: 'bool')

Bases: object

is_valid: bool
class scaleway.edge_services.v1alpha1.types.CheckLbOriginRequest(lb: 'Optional[ScalewayLb]')

Bases: object

lb: ScalewayLb | None
class scaleway.edge_services.v1alpha1.types.CheckLbOriginResponse(is_valid: 'bool', error_type: 'LbOriginError')

Bases: object

error_type: LbOriginError
is_valid: bool
class scaleway.edge_services.v1alpha1.types.CheckPEMChainRequest(fqdn: 'str', project_id: 'Optional[str]', secret: 'Optional[CheckPEMChainRequestSecretChain]', raw: 'Optional[str]')

Bases: object

fqdn: str
project_id: str | None
raw: str | None
secret: CheckPEMChainRequestSecretChain | None
class scaleway.edge_services.v1alpha1.types.CheckPEMChainRequestSecretChain(secret_id: 'str', secret_region: 'str')

Bases: object

secret_id: str
secret_region: str
class scaleway.edge_services.v1alpha1.types.CheckPEMChainResponse(is_valid: 'bool')

Bases: object

is_valid: bool
class scaleway.edge_services.v1alpha1.types.CreateBackendStageRequest(project_id: 'Optional[str]', scaleway_s3: 'Optional[ScalewayS3BackendConfig]', scaleway_lb: 'Optional[ScalewayLbBackendConfig]')

Bases: object

project_id: str | None

Project ID in which the backend stage will be created.

scaleway_lb: ScalewayLbBackendConfig | None
scaleway_s3: ScalewayS3BackendConfig | None
class scaleway.edge_services.v1alpha1.types.CreateCacheStageRequest(project_id: 'Optional[str]', fallback_ttl: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
fallback_ttl: str | None

Time To Live (TTL) in seconds. Defines how long content is cached.

project_id: str | None

Project ID in which the cache stage will be created.

class scaleway.edge_services.v1alpha1.types.CreateDNSStageRequest(project_id: 'Optional[str]', fqdns: 'Optional[List[str]]', tls_stage_id: 'Optional[str]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
fqdns: List[str] | None

Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.

project_id: str | None

Project ID in which the DNS stage will be created.

tls_stage_id: str | None
class scaleway.edge_services.v1alpha1.types.CreatePipelineRequest(name: 'str', description: 'str', project_id: 'Optional[str]', dns_stage_id: 'Optional[str]')

Bases: object

description: str

Description of the pipeline.

dns_stage_id: str | None
name: str

Name of the pipeline.

project_id: str | None

Project ID in which the pipeline will be created.

class scaleway.edge_services.v1alpha1.types.CreatePurgeRequestRequest(pipeline_id: 'str', assets: 'Optional[List[str]]', all: 'Optional[bool]')

Bases: object

all: bool | None
assets: List[str] | None
pipeline_id: str

Pipeline ID in which the purge request will be created.

class scaleway.edge_services.v1alpha1.types.CreateTLSStageRequest(project_id: 'Optional[str]', secrets: 'Optional[List[TLSSecret]]', managed_certificate: 'Optional[bool]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
managed_certificate: bool | None

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

project_id: str | None

Project ID in which the TLS stage will be created.

secrets: List[TLSSecret] | None

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

class scaleway.edge_services.v1alpha1.types.DNSStage(id: 'str', fqdns: 'List[str]', type_: 'DNSStageType', project_id: 'str', pipeline_id: 'Optional[str]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', tls_stage_id: 'Optional[str]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
created_at: datetime | None

Date the DNS stage was created.

fqdns: List[str]

List of Fully Qualified Domain Names attached to the stage.

id: str

ID of the DNS stage.

pipeline_id: str | None

Pipeline ID the DNS stage belongs to.

project_id: str

Project ID of the DNS stage.

tls_stage_id: str | None
type_: DNSStageType

Type of the stage.

updated_at: datetime | None

Date the DNS stage was last updated.

class scaleway.edge_services.v1alpha1.types.DNSStageType(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

AUTO = 'auto'
CUSTOM = 'custom'
MANAGED = 'managed'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.edge_services.v1alpha1.types.DeleteBackendStageRequest(backend_stage_id: 'str')

Bases: object

backend_stage_id: str

ID of the backend stage to delete.

class scaleway.edge_services.v1alpha1.types.DeleteCacheStageRequest(cache_stage_id: 'str')

Bases: object

cache_stage_id: str

ID of the cache stage to delete.

class scaleway.edge_services.v1alpha1.types.DeleteCurrentPlanRequest(project_id: 'Optional[str]')

Bases: object

project_id: str | None
class scaleway.edge_services.v1alpha1.types.DeleteDNSStageRequest(dns_stage_id: 'str')

Bases: object

dns_stage_id: str

ID of the DNS stage to delete.

class scaleway.edge_services.v1alpha1.types.DeletePipelineRequest(pipeline_id: 'str')

Bases: object

pipeline_id: str

ID of the pipeline to delete.

class scaleway.edge_services.v1alpha1.types.DeleteTLSStageRequest(tls_stage_id: 'str')

Bases: object

tls_stage_id: str

ID of the TLS stage to delete.

class scaleway.edge_services.v1alpha1.types.GetBackendStageRequest(backend_stage_id: 'str')

Bases: object

backend_stage_id: str

ID of the requested backend stage.

class scaleway.edge_services.v1alpha1.types.GetBillingRequest(project_id: 'Optional[str]')

Bases: object

project_id: str | None
class scaleway.edge_services.v1alpha1.types.GetBillingResponse(current_plan: 'Optional[PlanDetails]', pipeline_number: 'int', current_plan_cache_usage: 'int', extra_cache_usage: 'int', current_plan_waf_usage: 'int', extra_waf_usage: 'int', plan_cost: 'Optional[Money]', extra_pipelines_cost: 'Optional[Money]', plans_usage_details: 'Dict[str, PlanUsageDetails]', extra_cache_cost: 'Optional[Money]', extra_waf_cost: 'Optional[Money]', waf_add_on: 'Optional[Money]', total_cost: 'Optional[Money]')

Bases: object

current_plan: PlanDetails | None

Information on the currently-selected, active Edge Services subscription plan.

current_plan_cache_usage: int

Total amount of data egressed from the cache in gigabytes from the beginning of the month, for the active subscription plan.

current_plan_waf_usage: int

Total number of requests processed by the WAF since the beginning of the current month, for the active subscription plan.

extra_cache_cost: Money | None

Cost to date (this month) of the data egressed from the cache that is not included in the subscription plans.

extra_cache_usage: int

Total amount of extra data egressed from cache in gigabytes from the beginning of the month, not included in the subscription plans.

extra_pipelines_cost: Money | None

Cost to date (this month) of pipelines not included in the subscription plans.

extra_waf_cost: Money | None

Cost to date (this month) of the extra requests processed by the WAF that were not included in the subscription plans.

extra_waf_usage: int

Total number of extra requests processed by the WAF from the beginning of the month, not included in the subscription plans.

pipeline_number: int

Total number of pipelines currently configured.

plan_cost: Money | None

Cost to date (this month) for Edge Service subscription plans. This comprises the pro-rata cost of the current subscription plan, and any previous subscription plans that were active earlier in the month.

plans_usage_details: Dict[str, PlanUsageDetails]

Detailed costs and usage for all Edge Services subscription plans that were activated during the month.

total_cost: Money | None

Total cost to date (this month) of all Edge Services resources including active subscription plan, previously active plans, extra pipelines and extra egress cache data.

waf_add_on: Money | None

Cost of activating WAF add-on (where subscription plan does not include WAF).

class scaleway.edge_services.v1alpha1.types.GetCacheStageRequest(cache_stage_id: 'str')

Bases: object

cache_stage_id: str

ID of the requested cache stage.

class scaleway.edge_services.v1alpha1.types.GetCurrentPlanRequest(project_id: 'Optional[str]')

Bases: object

project_id: str | None
class scaleway.edge_services.v1alpha1.types.GetDNSStageRequest(dns_stage_id: 'str')

Bases: object

dns_stage_id: str

ID of the requested DNS stage.

class scaleway.edge_services.v1alpha1.types.GetPipelineRequest(pipeline_id: 'str')

Bases: object

pipeline_id: str

ID of the requested pipeline.

class scaleway.edge_services.v1alpha1.types.GetPurgeRequestRequest(purge_request_id: 'str')

Bases: object

purge_request_id: str

ID of the requested purge request.

class scaleway.edge_services.v1alpha1.types.GetTLSStageRequest(tls_stage_id: 'str')

Bases: object

tls_stage_id: str

ID of the requested TLS stage.

class scaleway.edge_services.v1alpha1.types.LbOriginError(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CONNECTION_REFUSED = 'connection_refused'
TIMEOUT = 'timeout'
TLS_ERROR = 'tls_error'
UNKNOWN = 'unknown'
class scaleway.edge_services.v1alpha1.types.ListBackendStagesRequest(order_by: 'Optional[ListBackendStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]', bucket_name: 'Optional[str]', bucket_region: 'Optional[str]', lb_id: 'Optional[str]')

Bases: object

bucket_name: str | None

Bucket name to filter for, only backend stages from this Bucket will be returned.

bucket_region: str | None

Bucket region to filter for, only backend stages with buckets in this region will be returned.

lb_id: str | None

Load Balancer ID to filter for, only backend stages with this Load Balancer will be returned.

order_by: ListBackendStagesRequestOrderBy | None

Sort order of backend stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of backend stages to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only backend stages from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only backend stages from this Project will be returned.

class scaleway.edge_services.v1alpha1.types.ListBackendStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.types.ListBackendStagesResponse(stages: 'List[BackendStage]', total_count: 'int')

Bases: object

stages: List[BackendStage]

Paginated list of backend stages.

total_count: int

Count of all backend stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.types.ListCacheStagesRequest(order_by: 'Optional[ListCacheStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]')

Bases: object

order_by: ListCacheStagesRequestOrderBy | None

Sort order of cache stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of cache stages to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only cache stages from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only cache stages from this Project will be returned.

class scaleway.edge_services.v1alpha1.types.ListCacheStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.types.ListCacheStagesResponse(stages: 'List[CacheStage]', total_count: 'int')

Bases: object

stages: List[CacheStage]

Paginated list of cache stages.

total_count: int

Count of all cache stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.types.ListDNSStagesRequest(order_by: 'Optional[ListDNSStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]', fqdn: 'Optional[str]')

Bases: object

fqdn: str | None

Fully Qualified Domain Name to filter for (in the format subdomain.example.com), only DNS stages with this FQDN will be returned.

order_by: ListDNSStagesRequestOrderBy | None

Sort order of DNS stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of DNS stages to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only DNS stages from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only DNS stages from this Project will be returned.

class scaleway.edge_services.v1alpha1.types.ListDNSStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.types.ListDNSStagesResponse(stages: 'List[DNSStage]', total_count: 'int')

Bases: object

stages: List[DNSStage]

Paginated list of DNS stages.

total_count: int

Count of all DNS stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.types.ListPipelinesRequest(order_by: 'Optional[ListPipelinesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', name: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]', has_backend_stage_lb: 'Optional[bool]')

Bases: object

has_backend_stage_lb: bool | None

Filter on backend stage, only pipelines with a Load Balancer origin will be returned.

name: str | None

Pipeline name to filter for, only pipelines with this string within their name will be returned.

order_by: ListPipelinesRequestOrderBy | None

Sort order of pipelines in the response.

organization_id: str | None

Organization ID to filter for, only pipelines from this Organization will be returned.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of pipelines to return per page.

project_id: str | None

Project ID to filter for, only pipelines from this Project will be returned.

class scaleway.edge_services.v1alpha1.types.ListPipelinesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
class scaleway.edge_services.v1alpha1.types.ListPipelinesResponse(pipelines: 'List[Pipeline]', total_count: 'int')

Bases: object

pipelines: List[Pipeline]

Paginated list of pipelines.

total_count: int

Count of all pipelines matching the requested criteria.

class scaleway.edge_services.v1alpha1.types.ListPipelinesWithStagesRequest(order_by: 'Optional[ListPipelinesWithStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', name: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]')

Bases: object

name: str | None
order_by: ListPipelinesWithStagesRequestOrderBy | None
organization_id: str | None
page: int | None
page_size: int | None
project_id: str | None
class scaleway.edge_services.v1alpha1.types.ListPipelinesWithStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
class scaleway.edge_services.v1alpha1.types.ListPipelinesWithStagesResponse(pipelines: 'List[PipelineStages]', total_count: 'int')

Bases: object

pipelines: List[PipelineStages]
total_count: int
class scaleway.edge_services.v1alpha1.types.ListPlansResponse(total_count: 'int', plans: 'List[PlanDetails]')

Bases: object

plans: List[PlanDetails]
total_count: int
class scaleway.edge_services.v1alpha1.types.ListPurgeRequestsRequest(order_by: 'Optional[ListPurgeRequestsRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', organization_id: 'Optional[str]', project_id: 'Optional[str]', pipeline_id: 'Optional[str]')

Bases: object

order_by: ListPurgeRequestsRequestOrderBy | None

Sort order of purge requests in the response.

organization_id: str | None

Organization ID to filter for, only purge requests from this Project will be returned.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of purge requests to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only purge requests from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only purge requests from this Project will be returned.

class scaleway.edge_services.v1alpha1.types.ListPurgeRequestsRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.types.ListPurgeRequestsResponse(purge_requests: 'List[PurgeRequest]', total_count: 'int')

Bases: object

purge_requests: List[PurgeRequest]

Paginated list of purge requests.

total_count: int

Count of all purge requests matching the requested criteria.

class scaleway.edge_services.v1alpha1.types.ListTLSStagesRequest(order_by: 'Optional[ListTLSStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]', secret_id: 'Optional[str]', secret_region: 'Optional[str]')

Bases: object

order_by: ListTLSStagesRequestOrderBy | None

Sort order of TLS stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of TLS stages to return per page.

pipeline_id: str | None

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

project_id: str | None

Project ID to filter for, only TLS stages from this Project will be returned.

secret_id: str | None

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

secret_region: str | None

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

class scaleway.edge_services.v1alpha1.types.ListTLSStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.types.ListTLSStagesResponse(stages: 'List[TLSStage]', total_count: 'int')

Bases: object

stages: List[TLSStage]

Paginated list of TLS stages.

total_count: int

Count of all TLS stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.types.Pipeline(id: 'str', name: 'str', description: 'str', status: 'PipelineStatus', errors: 'List[PipelineError]', project_id: 'str', organization_id: 'str', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', dns_stage_id: 'Optional[str]')

Bases: object

created_at: datetime | None

Date the pipeline was created.

description: str

Description of the pipeline.

dns_stage_id: str | None
errors: List[PipelineError]

Errors of the pipeline.

id: str

ID of the pipeline.

name: str

Name of the pipeline.

organization_id: str

Organization ID of the pipeline.

project_id: str

Project ID of the pipeline.

status: PipelineStatus

Status of the pipeline.

updated_at: datetime | None

Date the pipeline was last updated.

class scaleway.edge_services.v1alpha1.types.PipelineError(stage: 'PipelineErrorStage', code: 'PipelineErrorCode', severity: 'PipelineErrorSeverity', message: 'str', type_: 'PipelineErrorType')

Bases: object

code: PipelineErrorCode
message: str
severity: PipelineErrorSeverity
stage: PipelineErrorStage
type_: PipelineErrorType
class scaleway.edge_services.v1alpha1.types.PipelineErrorCode(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

DNS_CNAME_DONT_EXIST = 'dns_cname_dont_exist'
DNS_CNAME_RESOLVE = 'dns_cname_resolve'
DNS_DOMAIN_DONT_EXIST = 'dns_domain_dont_exist'
DNS_FORBIDDEN_ROOT_DOMAIN = 'dns_forbidden_root_domain'
DNS_FORBIDDEN_SCW_CLOUD = 'dns_forbidden_scw_cloud'
DNS_FQDN_ALREADY_EXISTS = 'dns_fqdn_already_exists'
DNS_FQDN_ALREADY_IN_USE = 'dns_fqdn_already_in_use'
DNS_INVALID_FORMAT = 'dns_invalid_format'
DNS_INVALID_TLD = 'dns_invalid_tld'
TLS_CERT_DELETED = 'tls_cert_deleted'
TLS_CERT_DISABLED = 'tls_cert_disabled'
TLS_CERT_EXPIRED = 'tls_cert_expired'
TLS_CERT_INVALID_FORMAT = 'tls_cert_invalid_format'
TLS_CERT_MISSING = 'tls_cert_missing'
TLS_CHAIN_ORDER = 'tls_chain_order'
TLS_KEY_INVALID_FORMAT = 'tls_key_invalid_format'
TLS_KEY_MISSING = 'tls_key_missing'
TLS_KEY_TOO_MANY = 'tls_key_too_many'
TLS_MANAGED_DOMAIN_RATE_LIMIT = 'tls_managed_domain_rate_limit'
TLS_MANAGED_INTERNAL = 'tls_managed_internal'
TLS_PAIR_MISMATCH = 'tls_pair_mismatch'
TLS_ROOT_INCONSISTENT = 'tls_root_inconsistent'
TLS_ROOT_INCORRECT = 'tls_root_incorrect'
TLS_ROOT_MISSING = 'tls_root_missing'
TLS_SAN_MISMATCH = 'tls_san_mismatch'
TLS_SELF_SIGNED = 'tls_self_signed'
UNKNOWN_CODE = 'unknown_code'
class scaleway.edge_services.v1alpha1.types.PipelineErrorSeverity(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CRITICAL = 'critical'
UNKNOWN_SEVERITY = 'unknown_severity'
WARNING = 'warning'
class scaleway.edge_services.v1alpha1.types.PipelineErrorStage(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

BACKEND = 'backend'
CACHE = 'cache'
DNS = 'dns'
TLS = 'tls'
UNKNOWN_STAGE = 'unknown_stage'
class scaleway.edge_services.v1alpha1.types.PipelineErrorType(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CONFIG = 'config'
RUNTIME = 'runtime'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.edge_services.v1alpha1.types.PipelineStages(dns_stages: 'List[DNSStage]', tls_stages: 'List[TLSStage]', cache_stages: 'List[CacheStage]', backend_stages: 'List[BackendStage]', pipeline: 'Optional[Pipeline]')

Bases: object

backend_stages: List[BackendStage]
cache_stages: List[CacheStage]
dns_stages: List[DNSStage]
pipeline: Pipeline | None
tls_stages: List[TLSStage]
class scaleway.edge_services.v1alpha1.types.PipelineStatus(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

ERROR = 'error'
PENDING = 'pending'
READY = 'ready'
UNKNOWN_STATUS = 'unknown_status'
WARNING = 'warning'
class scaleway.edge_services.v1alpha1.types.Plan(plan_name: 'PlanName')

Bases: object

plan_name: PlanName
class scaleway.edge_services.v1alpha1.types.PlanDetails(plan_name: 'PlanName', package_gb: 'int', pipeline_limit: 'int', waf_requests: 'int')

Bases: object

package_gb: int

Amount of egress data from cache included in subscription plan.

pipeline_limit: int

Number of pipelines included in subscription plan.

plan_name: PlanName

Subscription plan name.

waf_requests: int

Number of WAF requests included in subscription plan.

class scaleway.edge_services.v1alpha1.types.PlanName(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

ADVANCED = 'advanced'
PROFESSIONAL = 'professional'
STARTER = 'starter'
UNKNOWN_NAME = 'unknown_name'
class scaleway.edge_services.v1alpha1.types.PlanUsageDetails(plan_cost: 'Optional[Money]')

Bases: object

plan_cost: Money | None

Cost to date (this month) for the corresponding Edge Services subscription plan.

class scaleway.edge_services.v1alpha1.types.PurgeRequest(id: 'str', pipeline_id: 'str', status: 'PurgeRequestStatus', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', assets: 'Optional[List[str]]', all: 'Optional[bool]')

Bases: object

all: bool | None
assets: List[str] | None
created_at: datetime | None

Date the purge request was created.

id: str

ID of the purge request.

pipeline_id: str

Pipeline ID the purge request belongs to.

status: PurgeRequestStatus

Status of the purge request.

updated_at: datetime | None

Date the purge request was last updated.

class scaleway.edge_services.v1alpha1.types.PurgeRequestStatus(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

DONE = 'done'
ERROR = 'error'
PENDING = 'pending'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.edge_services.v1alpha1.types.ScalewayLb(id: 'str', zone: 'ScwZone', frontend_id: 'str', is_ssl: 'Optional[bool]', domain_name: 'Optional[str]')

Bases: object

domain_name: str | None

Fully Qualified Domain Name (in the format subdomain.example.com) to use in HTTP requests sent towards your Load Balancer.

frontend_id: str

ID of the frontend linked to the Load Balancer.

id: str

ID of the Load Balancer.

is_ssl: bool | None

Defines whether the Load Balancer’s frontend handles SSL connections.

zone: str

Zone of the Load Balancer.

class scaleway.edge_services.v1alpha1.types.ScalewayLbBackendConfig(lbs: 'List[ScalewayLb]')

Bases: object

lbs: List[ScalewayLb]

Load Balancer information.

class scaleway.edge_services.v1alpha1.types.ScalewayS3BackendConfig(bucket_name: 'Optional[str]', bucket_region: 'Optional[str]', is_website: 'Optional[bool]')

Bases: object

bucket_name: str | None

Name of the Bucket.

bucket_region: str | None

Region of the Bucket.

is_website: bool | None

Defines whether the bucket website feature is enabled.

class scaleway.edge_services.v1alpha1.types.SelectPlanRequest(project_id: 'Optional[str]', plan_name: 'Optional[PlanName]')

Bases: object

plan_name: PlanName | None
project_id: str | None
class scaleway.edge_services.v1alpha1.types.TLSSecret(secret_id: 'str', region: 'ScwRegion')

Bases: object

region: str

Region of the Secret.

secret_id: str

ID of the Secret.

class scaleway.edge_services.v1alpha1.types.TLSSecretsConfig(tls_secrets: 'List[TLSSecret]')

Bases: object

tls_secrets: List[TLSSecret]

Secret information (from Secret Manager).

class scaleway.edge_services.v1alpha1.types.TLSStage(id: 'str', secrets: 'List[TLSSecret]', managed_certificate: 'bool', project_id: 'str', pipeline_id: 'Optional[str]', certificate_expires_at: 'Optional[datetime]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
certificate_expires_at: datetime | None

Expiration date of the certificate.

created_at: datetime | None

Date the TLS stage was created.

id: str

ID of the TLS stage.

managed_certificate: bool

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

pipeline_id: str | None

Pipeline ID the TLS stage belongs to.

project_id: str

Project ID of the TLS stage.

secrets: List[TLSSecret]

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

updated_at: datetime | None

Date the TLS stage was last updated.

class scaleway.edge_services.v1alpha1.types.UpdateBackendStageRequest(backend_stage_id: 'str', scaleway_s3: 'Optional[ScalewayS3BackendConfig]', scaleway_lb: 'Optional[ScalewayLbBackendConfig]')

Bases: object

backend_stage_id: str

ID of the backend stage to update.

scaleway_lb: ScalewayLbBackendConfig | None
scaleway_s3: ScalewayS3BackendConfig | None
class scaleway.edge_services.v1alpha1.types.UpdateCacheStageRequest(cache_stage_id: 'str', fallback_ttl: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str

ID of the cache stage to update.

fallback_ttl: str | None

Time To Live (TTL) in seconds. Defines how long content is cached.

class scaleway.edge_services.v1alpha1.types.UpdateDNSStageRequest(dns_stage_id: 'str', fqdns: 'Optional[List[str]]', tls_stage_id: 'Optional[str]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
dns_stage_id: str

ID of the DNS stage to update.

fqdns: List[str] | None

Fully Qualified Domain Name (in the format subdomain.example.com) attached to the stage.

tls_stage_id: str | None
class scaleway.edge_services.v1alpha1.types.UpdatePipelineRequest(pipeline_id: 'str', name: 'Optional[str]', description: 'Optional[str]', dns_stage_id: 'Optional[str]')

Bases: object

description: str | None

Description of the pipeline.

dns_stage_id: str | None
name: str | None

Name of the pipeline.

pipeline_id: str

ID of the pipeline to update.

class scaleway.edge_services.v1alpha1.types.UpdateTLSStageRequest(tls_stage_id: 'str', tls_secrets_config: 'Optional[TLSSecretsConfig]', managed_certificate: 'Optional[bool]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
managed_certificate: bool | None

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

tls_secrets_config: TLSSecretsConfig | None

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

tls_stage_id: str

ID of the TLS stage to update.

Module contents

class scaleway.edge_services.v1alpha1.BackendStage(id: 'str', project_id: 'str', pipeline_id: 'Optional[str]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', scaleway_s3: 'Optional[ScalewayS3BackendConfig]', scaleway_lb: 'Optional[ScalewayLbBackendConfig]')

Bases: object

created_at: datetime | None

Date the backend stage was created.

id: str

ID of the backend stage.

pipeline_id: str | None

Pipeline ID the backend stage belongs to.

project_id: str

Project ID of the backend stage.

scaleway_lb: ScalewayLbBackendConfig | None
scaleway_s3: ScalewayS3BackendConfig | None
updated_at: datetime | None

Date the backend stage was last updated.

class scaleway.edge_services.v1alpha1.CacheStage(id: 'str', project_id: 'str', pipeline_id: 'Optional[str]', fallback_ttl: 'Optional[str]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
created_at: datetime | None

Date the cache stage was created.

fallback_ttl: str | None

Time To Live (TTL) in seconds. Defines how long content is cached.

id: str

ID of the cache stage.

pipeline_id: str | None

Pipeline ID the cache stage belongs to.

project_id: str

Project ID of the cache stage.

updated_at: datetime | None

Date the cache stage was last updated.

class scaleway.edge_services.v1alpha1.CheckDomainRequest(fqdn: 'str', cname: 'str', project_id: 'Optional[str]')

Bases: object

cname: str
fqdn: str
project_id: str | None
class scaleway.edge_services.v1alpha1.CheckDomainResponse(is_valid: 'bool')

Bases: object

is_valid: bool
class scaleway.edge_services.v1alpha1.CheckLbOriginRequest(lb: 'Optional[ScalewayLb]')

Bases: object

lb: ScalewayLb | None
class scaleway.edge_services.v1alpha1.CheckLbOriginResponse(is_valid: 'bool', error_type: 'LbOriginError')

Bases: object

error_type: LbOriginError
is_valid: bool
class scaleway.edge_services.v1alpha1.CheckPEMChainRequest(fqdn: 'str', project_id: 'Optional[str]', secret: 'Optional[CheckPEMChainRequestSecretChain]', raw: 'Optional[str]')

Bases: object

fqdn: str
project_id: str | None
raw: str | None
secret: CheckPEMChainRequestSecretChain | None
class scaleway.edge_services.v1alpha1.CheckPEMChainRequestSecretChain(secret_id: 'str', secret_region: 'str')

Bases: object

secret_id: str
secret_region: str
class scaleway.edge_services.v1alpha1.CheckPEMChainResponse(is_valid: 'bool')

Bases: object

is_valid: bool
class scaleway.edge_services.v1alpha1.CreateBackendStageRequest(project_id: 'Optional[str]', scaleway_s3: 'Optional[ScalewayS3BackendConfig]', scaleway_lb: 'Optional[ScalewayLbBackendConfig]')

Bases: object

project_id: str | None

Project ID in which the backend stage will be created.

scaleway_lb: ScalewayLbBackendConfig | None
scaleway_s3: ScalewayS3BackendConfig | None
class scaleway.edge_services.v1alpha1.CreateCacheStageRequest(project_id: 'Optional[str]', fallback_ttl: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
fallback_ttl: str | None

Time To Live (TTL) in seconds. Defines how long content is cached.

project_id: str | None

Project ID in which the cache stage will be created.

class scaleway.edge_services.v1alpha1.CreateDNSStageRequest(project_id: 'Optional[str]', fqdns: 'Optional[List[str]]', tls_stage_id: 'Optional[str]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
fqdns: List[str] | None

Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage.

project_id: str | None

Project ID in which the DNS stage will be created.

tls_stage_id: str | None
class scaleway.edge_services.v1alpha1.CreatePipelineRequest(name: 'str', description: 'str', project_id: 'Optional[str]', dns_stage_id: 'Optional[str]')

Bases: object

description: str

Description of the pipeline.

dns_stage_id: str | None
name: str

Name of the pipeline.

project_id: str | None

Project ID in which the pipeline will be created.

class scaleway.edge_services.v1alpha1.CreatePurgeRequestRequest(pipeline_id: 'str', assets: 'Optional[List[str]]', all: 'Optional[bool]')

Bases: object

all: bool | None
assets: List[str] | None
pipeline_id: str

Pipeline ID in which the purge request will be created.

class scaleway.edge_services.v1alpha1.CreateTLSStageRequest(project_id: 'Optional[str]', secrets: 'Optional[List[TLSSecret]]', managed_certificate: 'Optional[bool]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
managed_certificate: bool | None

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

project_id: str | None

Project ID in which the TLS stage will be created.

secrets: List[TLSSecret] | None

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

class scaleway.edge_services.v1alpha1.DNSStage(id: 'str', fqdns: 'List[str]', type_: 'DNSStageType', project_id: 'str', pipeline_id: 'Optional[str]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', tls_stage_id: 'Optional[str]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
created_at: datetime | None

Date the DNS stage was created.

fqdns: List[str]

List of Fully Qualified Domain Names attached to the stage.

id: str

ID of the DNS stage.

pipeline_id: str | None

Pipeline ID the DNS stage belongs to.

project_id: str

Project ID of the DNS stage.

tls_stage_id: str | None
type_: DNSStageType

Type of the stage.

updated_at: datetime | None

Date the DNS stage was last updated.

class scaleway.edge_services.v1alpha1.DNSStageType(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

AUTO = 'auto'
CUSTOM = 'custom'
MANAGED = 'managed'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.edge_services.v1alpha1.DeleteBackendStageRequest(backend_stage_id: 'str')

Bases: object

backend_stage_id: str

ID of the backend stage to delete.

class scaleway.edge_services.v1alpha1.DeleteCacheStageRequest(cache_stage_id: 'str')

Bases: object

cache_stage_id: str

ID of the cache stage to delete.

class scaleway.edge_services.v1alpha1.DeleteCurrentPlanRequest(project_id: 'Optional[str]')

Bases: object

project_id: str | None
class scaleway.edge_services.v1alpha1.DeleteDNSStageRequest(dns_stage_id: 'str')

Bases: object

dns_stage_id: str

ID of the DNS stage to delete.

class scaleway.edge_services.v1alpha1.DeletePipelineRequest(pipeline_id: 'str')

Bases: object

pipeline_id: str

ID of the pipeline to delete.

class scaleway.edge_services.v1alpha1.DeleteTLSStageRequest(tls_stage_id: 'str')

Bases: object

tls_stage_id: str

ID of the TLS stage to delete.

class scaleway.edge_services.v1alpha1.EdgeServicesV1Alpha1API(client: Client, *, bypass_validation: bool = False)

Bases: API

check_domain(*, fqdn: str, cname: str, project_id: str | None = None) CheckDomainResponse
Parameters:
  • fqdn

  • cname

  • project_id

Returns:

CheckDomainResponse

Usage:

result = api.check_domain(
    fqdn="example",
    cname="example",
)
check_lb_origin(*, lb: ScalewayLb | None = None) CheckLbOriginResponse
Parameters:

lb

Returns:

CheckLbOriginResponse

Usage:

result = api.check_lb_origin()
check_pem_chain(*, fqdn: str, project_id: str | None = None, secret: CheckPEMChainRequestSecretChain | None = None, raw: str | None = None) CheckPEMChainResponse
Parameters:
  • fqdn

  • project_id

  • secret

One-Of (‘chain’): at most one of ‘secret’, ‘raw’ could be set. :param raw: One-Of (‘chain’): at most one of ‘secret’, ‘raw’ could be set. :return: CheckPEMChainResponse

Usage:

result = api.check_pem_chain(
    fqdn="example",
)
create_backend_stage(*, project_id: str | None = None, scaleway_s3: ScalewayS3BackendConfig | None = None, scaleway_lb: ScalewayLbBackendConfig | None = None) BackendStage

Create backend stage. Create a new backend stage. You must specify either a scaleway_s3 (for a Scaleway Object Storage bucket) or scaleway_lb (for a Scaleway Load Balancer) field to configure the origin. :param project_id: Project ID in which the backend stage will be created. :param scaleway_s3: Scaleway Object Storage origin bucket (S3) linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :param scaleway_lb: Scaleway Load Balancer origin linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :return: BackendStage

Usage:

result = api.create_backend_stage()
create_cache_stage(*, project_id: str | None = None, fallback_ttl: str | None = None, backend_stage_id: str | None = None) CacheStage

Create cache stage. Create a new cache stage. You must specify the fallback_ttl field to customize the TTL of the cache. :param project_id: Project ID in which the cache stage will be created. :param fallback_ttl: Time To Live (TTL) in seconds. Defines how long content is cached. :param backend_stage_id: Backend stage ID the cache stage will be linked to. One-Of (‘next’): at most one of ‘backend_stage_id’ could be set. :return: CacheStage

Usage:

result = api.create_cache_stage()
create_dns_stage(*, project_id: str | None = None, fqdns: List[str] | None = None, tls_stage_id: str | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) DNSStage

Create DNS stage. Create a new DNS stage. You must specify the fqdns field to customize the domain endpoint, using a domain you already own. :param project_id: Project ID in which the DNS stage will be created. :param fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) to attach to the stage. :param tls_stage_id: TLS stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param cache_stage_id: Cache stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: DNSStage

Usage:

result = api.create_dns_stage()
create_pipeline(*, name: str, description: str, project_id: str | None = None, dns_stage_id: str | None = None) Pipeline

Create pipeline. Create a new pipeline. You must specify a dns_stage_id to form a stage-chain that goes all the way to the backend stage (origin), so the HTTP request will be processed according to the stages you created. :param name: Name of the pipeline. :param description: Description of the pipeline. :param project_id: Project ID in which the pipeline will be created. :param dns_stage_id: DNS stage ID the pipeline will be attached to. One-Of (‘head’): at most one of ‘dns_stage_id’ could be set. :return: Pipeline

Usage:

result = api.create_pipeline(
    name="example",
    description="example",
)
create_purge_request(*, pipeline_id: str, assets: List[str] | None = None, all: bool | None = None) PurgeRequest

Create purge request. Create a new purge request. You must specify either the all field (to purge all content) or a list of assets (to define the precise assets to purge). :param pipeline_id: Pipeline ID in which the purge request will be created. :param assets: List of asserts to purge. One-Of (‘target’): at most one of ‘assets’, ‘all’ could be set. :param all: Defines whether to purge all content. One-Of (‘target’): at most one of ‘assets’, ‘all’ could be set. :return: PurgeRequest

Usage:

result = api.create_purge_request(
    pipeline_id="example",
)
create_tls_stage(*, project_id: str | None = None, secrets: List[TLSSecret] | None = None, managed_certificate: bool | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) TLSStage

Create TLS stage. 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. :param project_id: Project ID in which the TLS stage will be created. :param secrets: Secret (from Scaleway Secret Manager) containing your custom certificate. :param managed_certificate: True when Scaleway generates and manages a Let’s Encrypt certificate for the TLS stage/custom endpoint. :param cache_stage_id: Cache stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: TLSStage

Usage:

result = api.create_tls_stage()
delete_backend_stage(*, backend_stage_id: str) None

Delete backend stage. Delete an existing backend stage, specified by its backend_stage_id. Deleting a backend stage is permanent, and cannot be undone. :param backend_stage_id: ID of the backend stage to delete.

Usage:

result = api.delete_backend_stage(
    backend_stage_id="example",
)
delete_cache_stage(*, cache_stage_id: str) None

Delete cache stage. Delete an existing cache stage, specified by its cache_stage_id. Deleting a cache stage is permanent, and cannot be undone. :param cache_stage_id: ID of the cache stage to delete.

Usage:

result = api.delete_cache_stage(
    cache_stage_id="example",
)
delete_current_plan(*, project_id: str | None = None) None
Parameters:

project_id

Usage:

result = api.delete_current_plan()
delete_dns_stage(*, dns_stage_id: str) None

Delete DNS stage. Delete an existing DNS stage, specified by its dns_stage_id. Deleting a DNS stage is permanent, and cannot be undone. :param dns_stage_id: ID of the DNS stage to delete.

Usage:

result = api.delete_dns_stage(
    dns_stage_id="example",
)
delete_pipeline(*, pipeline_id: str) None

Delete pipeline. Delete an existing pipeline, specified by its pipeline_id. Deleting a pipeline is permanent, and cannot be undone. Note that all stages linked to the pipeline are also deleted. :param pipeline_id: ID of the pipeline to delete.

Usage:

result = api.delete_pipeline(
    pipeline_id="example",
)
delete_tls_stage(*, tls_stage_id: str) None

Delete TLS stage. Delete an existing TLS stage, specified by its tls_stage_id. Deleting a TLS stage is permanent, and cannot be undone. :param tls_stage_id: ID of the TLS stage to delete.

Usage:

result = api.delete_tls_stage(
    tls_stage_id="example",
)
get_backend_stage(*, backend_stage_id: str) BackendStage

Get backend stage. Retrieve information about an existing backend stage, specified by its backend_stage_id. Its full details, including scaleway_s3 or scaleway_lb, are returned in the response object. :param backend_stage_id: ID of the requested backend stage. :return: BackendStage

Usage:

result = api.get_backend_stage(
    backend_stage_id="example",
)
get_billing(*, project_id: str | None = None) GetBillingResponse

Gives information on the currently selected Edge Services subscription plan, resource usage and associated billing information for this calendar month (including whether consumption falls within or exceeds the currently selected subscription plan.). :param project_id: :return: GetBillingResponse

Usage:

result = api.get_billing()
get_cache_stage(*, cache_stage_id: str) CacheStage

Get cache stage. Retrieve information about an existing cache stage, specified by its cache_stage_id. Its full details, including Time To Live (TTL), are returned in the response object. :param cache_stage_id: ID of the requested cache stage. :return: CacheStage

Usage:

result = api.get_cache_stage(
    cache_stage_id="example",
)
get_current_plan(*, project_id: str | None = None) Plan
Parameters:

project_id

Returns:

Plan

Usage:

result = api.get_current_plan()
get_dns_stage(*, dns_stage_id: str) DNSStage

Get DNS stage. Retrieve information about an existing DNS stage, specified by its dns_stage_id. Its full details, including FQDNs, are returned in the response object. :param dns_stage_id: ID of the requested DNS stage. :return: DNSStage

Usage:

result = api.get_dns_stage(
    dns_stage_id="example",
)
get_pipeline(*, pipeline_id: str) Pipeline

Get pipeline. Retrieve information about an existing pipeline, specified by its pipeline_id. Its full details, including errors, are returned in the response object. :param pipeline_id: ID of the requested pipeline. :return: Pipeline

Usage:

result = api.get_pipeline(
    pipeline_id="example",
)
get_purge_request(*, purge_request_id: str) PurgeRequest

Get purge request. Retrieve information about a purge request, specified by its purge_request_id. Its full details, including status and target, are returned in the response object. :param purge_request_id: ID of the requested purge request. :return: PurgeRequest

Usage:

result = api.get_purge_request(
    purge_request_id="example",
)
get_tls_stage(*, tls_stage_id: str) TLSStage

Get TLS stage. 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. :param tls_stage_id: ID of the requested TLS stage. :return: TLSStage

Usage:

result = api.get_tls_stage(
    tls_stage_id="example",
)
list_backend_stages(*, order_by: ListBackendStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, bucket_name: str | None = None, bucket_region: str | None = None, lb_id: str | None = None) ListBackendStagesResponse

List backend stages. List all backend stages, for a Scaleway Organization or Scaleway Project. By default, the backend stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of backend stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of backend stages to return per page. :param pipeline_id: Pipeline ID to filter for, only backend stages from this pipeline will be returned. :param project_id: Project ID to filter for, only backend stages from this Project will be returned. :param bucket_name: Bucket name to filter for, only backend stages from this Bucket will be returned. :param bucket_region: Bucket region to filter for, only backend stages with buckets in this region will be returned. :param lb_id: Load Balancer ID to filter for, only backend stages with this Load Balancer will be returned. :return: ListBackendStagesResponse

Usage:

result = api.list_backend_stages()
list_backend_stages_all(*, order_by: ListBackendStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, bucket_name: str | None = None, bucket_region: str | None = None, lb_id: str | None = None) List[BackendStage]

List backend stages. List all backend stages, for a Scaleway Organization or Scaleway Project. By default, the backend stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of backend stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of backend stages to return per page. :param pipeline_id: Pipeline ID to filter for, only backend stages from this pipeline will be returned. :param project_id: Project ID to filter for, only backend stages from this Project will be returned. :param bucket_name: Bucket name to filter for, only backend stages from this Bucket will be returned. :param bucket_region: Bucket region to filter for, only backend stages with buckets in this region will be returned. :param lb_id: Load Balancer ID to filter for, only backend stages with this Load Balancer will be returned. :return: List[BackendStage]

Usage:

result = api.list_backend_stages_all()
list_cache_stages(*, order_by: ListCacheStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None) ListCacheStagesResponse

List cache stages. List all cache stages, for a Scaleway Organization or Scaleway Project. By default, the cache stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of cache stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of cache stages to return per page. :param pipeline_id: Pipeline ID to filter for, only cache stages from this pipeline will be returned. :param project_id: Project ID to filter for, only cache stages from this Project will be returned. :return: ListCacheStagesResponse

Usage:

result = api.list_cache_stages()
list_cache_stages_all(*, order_by: ListCacheStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None) List[CacheStage]

List cache stages. List all cache stages, for a Scaleway Organization or Scaleway Project. By default, the cache stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of cache stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of cache stages to return per page. :param pipeline_id: Pipeline ID to filter for, only cache stages from this pipeline will be returned. :param project_id: Project ID to filter for, only cache stages from this Project will be returned. :return: List[CacheStage]

Usage:

result = api.list_cache_stages_all()
list_dns_stages(*, order_by: ListDNSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, fqdn: str | None = None) ListDNSStagesResponse

List DNS stages. List all DNS stages, for a Scaleway Organization or Scaleway Project. By default, the DNS stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of DNS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of DNS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only DNS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only DNS stages from this Project will be returned. :param fqdn: Fully Qualified Domain Name to filter for (in the format subdomain.example.com), only DNS stages with this FQDN will be returned. :return: ListDNSStagesResponse

Usage:

result = api.list_dns_stages()
list_dns_stages_all(*, order_by: ListDNSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, fqdn: str | None = None) List[DNSStage]

List DNS stages. List all DNS stages, for a Scaleway Organization or Scaleway Project. By default, the DNS stages returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of DNS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of DNS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only DNS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only DNS stages from this Project will be returned. :param fqdn: Fully Qualified Domain Name to filter for (in the format subdomain.example.com), only DNS stages with this FQDN will be returned. :return: List[DNSStage]

Usage:

result = api.list_dns_stages_all()
list_pipelines(*, order_by: ListPipelinesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None, has_backend_stage_lb: bool | None = None) ListPipelinesResponse

List pipelines. List all pipelines, for a Scaleway Organization or Scaleway Project. By default, the pipelines returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of pipelines in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of pipelines to return per page. :param name: Pipeline name to filter for, only pipelines with this string within their name will be returned. :param organization_id: Organization ID to filter for, only pipelines from this Organization will be returned. :param project_id: Project ID to filter for, only pipelines from this Project will be returned. :param has_backend_stage_lb: Filter on backend stage, only pipelines with a Load Balancer origin will be returned. :return: ListPipelinesResponse

Usage:

result = api.list_pipelines()
list_pipelines_all(*, order_by: ListPipelinesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None, has_backend_stage_lb: bool | None = None) List[Pipeline]

List pipelines. List all pipelines, for a Scaleway Organization or Scaleway Project. By default, the pipelines returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of pipelines in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of pipelines to return per page. :param name: Pipeline name to filter for, only pipelines with this string within their name will be returned. :param organization_id: Organization ID to filter for, only pipelines from this Organization will be returned. :param project_id: Project ID to filter for, only pipelines from this Project will be returned. :param has_backend_stage_lb: Filter on backend stage, only pipelines with a Load Balancer origin will be returned. :return: List[Pipeline]

Usage:

result = api.list_pipelines_all()
list_pipelines_with_stages(*, order_by: ListPipelinesWithStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None) ListPipelinesWithStagesResponse
Parameters:
  • order_by

  • page

  • page_size

  • name

  • organization_id

  • project_id

Returns:

ListPipelinesWithStagesResponse

Usage:

result = api.list_pipelines_with_stages()
list_pipelines_with_stages_all(*, order_by: ListPipelinesWithStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, name: str | None = None, organization_id: str | None = None, project_id: str | None = None) List[PipelineStages]
Parameters:
  • order_by

  • page

  • page_size

  • name

  • organization_id

  • project_id

Returns:

List[PipelineStages]

Usage:

result = api.list_pipelines_with_stages_all()
list_plans() ListPlansResponse
Returns:

ListPlansResponse

Usage:

result = api.list_plans()
list_purge_requests(*, order_by: ListPurgeRequestsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, pipeline_id: str | None = None) ListPurgeRequestsResponse

List purge requests. List all purge requests, for a Scaleway Organization or Scaleway Project. This enables you to retrieve a history of all previously-made purge requests. By default, the purge requests returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of purge requests in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of purge requests to return per page. :param organization_id: Organization ID to filter for, only purge requests from this Project will be returned. :param project_id: Project ID to filter for, only purge requests from this Project will be returned. :param pipeline_id: Pipeline ID to filter for, only purge requests from this pipeline will be returned. :return: ListPurgeRequestsResponse

Usage:

result = api.list_purge_requests()
list_purge_requests_all(*, order_by: ListPurgeRequestsRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, organization_id: str | None = None, project_id: str | None = None, pipeline_id: str | None = None) List[PurgeRequest]

List purge requests. List all purge requests, for a Scaleway Organization or Scaleway Project. This enables you to retrieve a history of all previously-made purge requests. By default, the purge requests returned in the list are ordered by creation date in ascending order, though this can be modified via the order_by field. :param order_by: Sort order of purge requests in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of purge requests to return per page. :param organization_id: Organization ID to filter for, only purge requests from this Project will be returned. :param project_id: Project ID to filter for, only purge requests from this Project will be returned. :param pipeline_id: Pipeline ID to filter for, only purge requests from this pipeline will be returned. :return: List[PurgeRequest]

Usage:

result = api.list_purge_requests_all()
list_tls_stages(*, order_by: ListTLSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, secret_id: str | None = None, secret_region: str | None = None) ListTLSStagesResponse

List 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. :param order_by: Sort order of TLS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of TLS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only TLS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only TLS stages from this Project will be returned. :param secret_id: Secret ID to filter for, only TLS stages with this Secret ID will be returned. :param secret_region: Secret region to filter for, only TLS stages with a Secret in this region will be returned. :return: ListTLSStagesResponse

Usage:

result = api.list_tls_stages()
list_tls_stages_all(*, order_by: ListTLSStagesRequestOrderBy | None = None, page: int | None = None, page_size: int | None = None, pipeline_id: str | None = None, project_id: str | None = None, secret_id: str | None = None, secret_region: str | None = None) List[TLSStage]

List 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. :param order_by: Sort order of TLS stages in the response. :param page: Page number to return, from the paginated results. :param page_size: Number of TLS stages to return per page. :param pipeline_id: Pipeline ID to filter for, only TLS stages from this pipeline will be returned. :param project_id: Project ID to filter for, only TLS stages from this Project will be returned. :param secret_id: Secret ID to filter for, only TLS stages with this Secret ID will be returned. :param secret_region: Secret region to filter for, only TLS stages with a Secret in this region will be returned. :return: List[TLSStage]

Usage:

result = api.list_tls_stages_all()
select_plan(*, project_id: str | None = None, plan_name: PlanName | None = None) Plan
Parameters:
  • project_id

  • plan_name

Returns:

Plan

Usage:

result = api.select_plan()
update_backend_stage(*, backend_stage_id: str, scaleway_s3: ScalewayS3BackendConfig | None = None, scaleway_lb: ScalewayLbBackendConfig | None = None) BackendStage

Update backend stage. Update the parameters of an existing backend stage, specified by its backend_stage_id. :param backend_stage_id: ID of the backend stage to update. :param scaleway_s3: Scaleway Object Storage origin bucket (S3) linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :param scaleway_lb: Scaleway Load Balancer origin linked to the backend stage. One-Of (‘backend_config’): at most one of ‘scaleway_s3’, ‘scaleway_lb’ could be set. :return: BackendStage

Usage:

result = api.update_backend_stage(
    backend_stage_id="example",
)
update_cache_stage(*, cache_stage_id: str, fallback_ttl: str | None = None, backend_stage_id: str | None = None) CacheStage

Update cache stage. Update the parameters of an existing cache stage, specified by its cache_stage_id. Parameters which can be updated include the fallback_ttl and backend_stage_id. :param cache_stage_id: ID of the cache stage to update. :param fallback_ttl: Time To Live (TTL) in seconds. Defines how long content is cached. :param backend_stage_id: Backend stage ID the cache stage will be linked to. One-Of (‘next’): at most one of ‘backend_stage_id’ could be set. :return: CacheStage

Usage:

result = api.update_cache_stage(
    cache_stage_id="example",
)
update_dns_stage(*, dns_stage_id: str, fqdns: List[str] | None = None, tls_stage_id: str | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) DNSStage

Update DNS stage. Update the parameters of an existing DNS stage, specified by its dns_stage_id. :param dns_stage_id: ID of the DNS stage to update. :param fqdns: Fully Qualified Domain Name (in the format subdomain.example.com) attached to the stage. :param tls_stage_id: TLS stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param cache_stage_id: Cache stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the DNS stage will be linked to. One-Of (‘next’): at most one of ‘tls_stage_id’, ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: DNSStage

Usage:

result = api.update_dns_stage(
    dns_stage_id="example",
)
update_pipeline(*, pipeline_id: str, name: str | None = None, description: str | None = None, dns_stage_id: str | None = None) Pipeline

Update pipeline. Update the parameters of an existing pipeline, specified by its pipeline_id. Parameters which can be updated include the name, description and dns_stage_id. :param pipeline_id: ID of the pipeline to update. :param name: Name of the pipeline. :param description: Description of the pipeline. :param dns_stage_id: DNS stage ID the pipeline will be attached to. One-Of (‘head’): at most one of ‘dns_stage_id’ could be set. :return: Pipeline

Usage:

result = api.update_pipeline(
    pipeline_id="example",
)
update_tls_stage(*, tls_stage_id: str, tls_secrets_config: TLSSecretsConfig | None = None, managed_certificate: bool | None = None, cache_stage_id: str | None = None, backend_stage_id: str | None = None) TLSStage

Update TLS stage. 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. :param tls_stage_id: ID of the TLS stage to update. :param tls_secrets_config: Secret (from Scaleway Secret-Manager) containing your custom certificate. :param managed_certificate: True when Scaleway generates and manages a Let’s Encrypt certificate for the TLS stage/custom endpoint. :param cache_stage_id: Cache stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :param backend_stage_id: Backend stage ID the TLS stage will be linked to. One-Of (‘next’): at most one of ‘cache_stage_id’, ‘backend_stage_id’ could be set. :return: TLSStage

Usage:

result = api.update_tls_stage(
    tls_stage_id="example",
)
wait_for_pipeline(*, pipeline_id: str, options: WaitForOptions[Pipeline, bool] | None = None) Pipeline

Get pipeline. Retrieve information about an existing pipeline, specified by its pipeline_id. Its full details, including errors, are returned in the response object. :param pipeline_id: ID of the requested pipeline. :return: Pipeline

Usage:

result = api.get_pipeline(
    pipeline_id="example",
)
wait_for_purge_request(*, purge_request_id: str, options: WaitForOptions[PurgeRequest, bool] | None = None) PurgeRequest

Get purge request. Retrieve information about a purge request, specified by its purge_request_id. Its full details, including status and target, are returned in the response object. :param purge_request_id: ID of the requested purge request. :return: PurgeRequest

Usage:

result = api.get_purge_request(
    purge_request_id="example",
)
class scaleway.edge_services.v1alpha1.GetBackendStageRequest(backend_stage_id: 'str')

Bases: object

backend_stage_id: str

ID of the requested backend stage.

class scaleway.edge_services.v1alpha1.GetBillingRequest(project_id: 'Optional[str]')

Bases: object

project_id: str | None
class scaleway.edge_services.v1alpha1.GetBillingResponse(current_plan: 'Optional[PlanDetails]', pipeline_number: 'int', current_plan_cache_usage: 'int', extra_cache_usage: 'int', current_plan_waf_usage: 'int', extra_waf_usage: 'int', plan_cost: 'Optional[Money]', extra_pipelines_cost: 'Optional[Money]', plans_usage_details: 'Dict[str, PlanUsageDetails]', extra_cache_cost: 'Optional[Money]', extra_waf_cost: 'Optional[Money]', waf_add_on: 'Optional[Money]', total_cost: 'Optional[Money]')

Bases: object

current_plan: PlanDetails | None

Information on the currently-selected, active Edge Services subscription plan.

current_plan_cache_usage: int

Total amount of data egressed from the cache in gigabytes from the beginning of the month, for the active subscription plan.

current_plan_waf_usage: int

Total number of requests processed by the WAF since the beginning of the current month, for the active subscription plan.

extra_cache_cost: Money | None

Cost to date (this month) of the data egressed from the cache that is not included in the subscription plans.

extra_cache_usage: int

Total amount of extra data egressed from cache in gigabytes from the beginning of the month, not included in the subscription plans.

extra_pipelines_cost: Money | None

Cost to date (this month) of pipelines not included in the subscription plans.

extra_waf_cost: Money | None

Cost to date (this month) of the extra requests processed by the WAF that were not included in the subscription plans.

extra_waf_usage: int

Total number of extra requests processed by the WAF from the beginning of the month, not included in the subscription plans.

pipeline_number: int

Total number of pipelines currently configured.

plan_cost: Money | None

Cost to date (this month) for Edge Service subscription plans. This comprises the pro-rata cost of the current subscription plan, and any previous subscription plans that were active earlier in the month.

plans_usage_details: Dict[str, PlanUsageDetails]

Detailed costs and usage for all Edge Services subscription plans that were activated during the month.

total_cost: Money | None

Total cost to date (this month) of all Edge Services resources including active subscription plan, previously active plans, extra pipelines and extra egress cache data.

waf_add_on: Money | None

Cost of activating WAF add-on (where subscription plan does not include WAF).

class scaleway.edge_services.v1alpha1.GetCacheStageRequest(cache_stage_id: 'str')

Bases: object

cache_stage_id: str

ID of the requested cache stage.

class scaleway.edge_services.v1alpha1.GetCurrentPlanRequest(project_id: 'Optional[str]')

Bases: object

project_id: str | None
class scaleway.edge_services.v1alpha1.GetDNSStageRequest(dns_stage_id: 'str')

Bases: object

dns_stage_id: str

ID of the requested DNS stage.

class scaleway.edge_services.v1alpha1.GetPipelineRequest(pipeline_id: 'str')

Bases: object

pipeline_id: str

ID of the requested pipeline.

class scaleway.edge_services.v1alpha1.GetPurgeRequestRequest(purge_request_id: 'str')

Bases: object

purge_request_id: str

ID of the requested purge request.

class scaleway.edge_services.v1alpha1.GetTLSStageRequest(tls_stage_id: 'str')

Bases: object

tls_stage_id: str

ID of the requested TLS stage.

class scaleway.edge_services.v1alpha1.LbOriginError(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CONNECTION_REFUSED = 'connection_refused'
TIMEOUT = 'timeout'
TLS_ERROR = 'tls_error'
UNKNOWN = 'unknown'
class scaleway.edge_services.v1alpha1.ListBackendStagesRequest(order_by: 'Optional[ListBackendStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]', bucket_name: 'Optional[str]', bucket_region: 'Optional[str]', lb_id: 'Optional[str]')

Bases: object

bucket_name: str | None

Bucket name to filter for, only backend stages from this Bucket will be returned.

bucket_region: str | None

Bucket region to filter for, only backend stages with buckets in this region will be returned.

lb_id: str | None

Load Balancer ID to filter for, only backend stages with this Load Balancer will be returned.

order_by: ListBackendStagesRequestOrderBy | None

Sort order of backend stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of backend stages to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only backend stages from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only backend stages from this Project will be returned.

class scaleway.edge_services.v1alpha1.ListBackendStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.ListBackendStagesResponse(stages: 'List[BackendStage]', total_count: 'int')

Bases: object

stages: List[BackendStage]

Paginated list of backend stages.

total_count: int

Count of all backend stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.ListCacheStagesRequest(order_by: 'Optional[ListCacheStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]')

Bases: object

order_by: ListCacheStagesRequestOrderBy | None

Sort order of cache stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of cache stages to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only cache stages from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only cache stages from this Project will be returned.

class scaleway.edge_services.v1alpha1.ListCacheStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.ListCacheStagesResponse(stages: 'List[CacheStage]', total_count: 'int')

Bases: object

stages: List[CacheStage]

Paginated list of cache stages.

total_count: int

Count of all cache stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.ListDNSStagesRequest(order_by: 'Optional[ListDNSStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]', fqdn: 'Optional[str]')

Bases: object

fqdn: str | None

Fully Qualified Domain Name to filter for (in the format subdomain.example.com), only DNS stages with this FQDN will be returned.

order_by: ListDNSStagesRequestOrderBy | None

Sort order of DNS stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of DNS stages to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only DNS stages from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only DNS stages from this Project will be returned.

class scaleway.edge_services.v1alpha1.ListDNSStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.ListDNSStagesResponse(stages: 'List[DNSStage]', total_count: 'int')

Bases: object

stages: List[DNSStage]

Paginated list of DNS stages.

total_count: int

Count of all DNS stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.ListPipelinesRequest(order_by: 'Optional[ListPipelinesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', name: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]', has_backend_stage_lb: 'Optional[bool]')

Bases: object

has_backend_stage_lb: bool | None

Filter on backend stage, only pipelines with a Load Balancer origin will be returned.

name: str | None

Pipeline name to filter for, only pipelines with this string within their name will be returned.

order_by: ListPipelinesRequestOrderBy | None

Sort order of pipelines in the response.

organization_id: str | None

Organization ID to filter for, only pipelines from this Organization will be returned.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of pipelines to return per page.

project_id: str | None

Project ID to filter for, only pipelines from this Project will be returned.

class scaleway.edge_services.v1alpha1.ListPipelinesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
class scaleway.edge_services.v1alpha1.ListPipelinesResponse(pipelines: 'List[Pipeline]', total_count: 'int')

Bases: object

pipelines: List[Pipeline]

Paginated list of pipelines.

total_count: int

Count of all pipelines matching the requested criteria.

class scaleway.edge_services.v1alpha1.ListPipelinesWithStagesRequest(order_by: 'Optional[ListPipelinesWithStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', name: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]')

Bases: object

name: str | None
order_by: ListPipelinesWithStagesRequestOrderBy | None
organization_id: str | None
page: int | None
page_size: int | None
project_id: str | None
class scaleway.edge_services.v1alpha1.ListPipelinesWithStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
class scaleway.edge_services.v1alpha1.ListPipelinesWithStagesResponse(pipelines: 'List[PipelineStages]', total_count: 'int')

Bases: object

pipelines: List[PipelineStages]
total_count: int
class scaleway.edge_services.v1alpha1.ListPlansResponse(total_count: 'int', plans: 'List[PlanDetails]')

Bases: object

plans: List[PlanDetails]
total_count: int
class scaleway.edge_services.v1alpha1.ListPurgeRequestsRequest(order_by: 'Optional[ListPurgeRequestsRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', organization_id: 'Optional[str]', project_id: 'Optional[str]', pipeline_id: 'Optional[str]')

Bases: object

order_by: ListPurgeRequestsRequestOrderBy | None

Sort order of purge requests in the response.

organization_id: str | None

Organization ID to filter for, only purge requests from this Project will be returned.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of purge requests to return per page.

pipeline_id: str | None

Pipeline ID to filter for, only purge requests from this pipeline will be returned.

project_id: str | None

Project ID to filter for, only purge requests from this Project will be returned.

class scaleway.edge_services.v1alpha1.ListPurgeRequestsRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.ListPurgeRequestsResponse(purge_requests: 'List[PurgeRequest]', total_count: 'int')

Bases: object

purge_requests: List[PurgeRequest]

Paginated list of purge requests.

total_count: int

Count of all purge requests matching the requested criteria.

class scaleway.edge_services.v1alpha1.ListTLSStagesRequest(order_by: 'Optional[ListTLSStagesRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', pipeline_id: 'Optional[str]', project_id: 'Optional[str]', secret_id: 'Optional[str]', secret_region: 'Optional[str]')

Bases: object

order_by: ListTLSStagesRequestOrderBy | None

Sort order of TLS stages in the response.

page: int | None

Page number to return, from the paginated results.

page_size: int | None

Number of TLS stages to return per page.

pipeline_id: str | None

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

project_id: str | None

Project ID to filter for, only TLS stages from this Project will be returned.

secret_id: str | None

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

secret_region: str | None

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

class scaleway.edge_services.v1alpha1.ListTLSStagesRequestOrderBy(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.edge_services.v1alpha1.ListTLSStagesResponse(stages: 'List[TLSStage]', total_count: 'int')

Bases: object

stages: List[TLSStage]

Paginated list of TLS stages.

total_count: int

Count of all TLS stages matching the requested criteria.

class scaleway.edge_services.v1alpha1.Pipeline(id: 'str', name: 'str', description: 'str', status: 'PipelineStatus', errors: 'List[PipelineError]', project_id: 'str', organization_id: 'str', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', dns_stage_id: 'Optional[str]')

Bases: object

created_at: datetime | None

Date the pipeline was created.

description: str

Description of the pipeline.

dns_stage_id: str | None
errors: List[PipelineError]

Errors of the pipeline.

id: str

ID of the pipeline.

name: str

Name of the pipeline.

organization_id: str

Organization ID of the pipeline.

project_id: str

Project ID of the pipeline.

status: PipelineStatus

Status of the pipeline.

updated_at: datetime | None

Date the pipeline was last updated.

class scaleway.edge_services.v1alpha1.PipelineError(stage: 'PipelineErrorStage', code: 'PipelineErrorCode', severity: 'PipelineErrorSeverity', message: 'str', type_: 'PipelineErrorType')

Bases: object

code: PipelineErrorCode
message: str
severity: PipelineErrorSeverity
stage: PipelineErrorStage
type_: PipelineErrorType
class scaleway.edge_services.v1alpha1.PipelineErrorCode(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

DNS_CNAME_DONT_EXIST = 'dns_cname_dont_exist'
DNS_CNAME_RESOLVE = 'dns_cname_resolve'
DNS_DOMAIN_DONT_EXIST = 'dns_domain_dont_exist'
DNS_FORBIDDEN_ROOT_DOMAIN = 'dns_forbidden_root_domain'
DNS_FORBIDDEN_SCW_CLOUD = 'dns_forbidden_scw_cloud'
DNS_FQDN_ALREADY_EXISTS = 'dns_fqdn_already_exists'
DNS_FQDN_ALREADY_IN_USE = 'dns_fqdn_already_in_use'
DNS_INVALID_FORMAT = 'dns_invalid_format'
DNS_INVALID_TLD = 'dns_invalid_tld'
TLS_CERT_DELETED = 'tls_cert_deleted'
TLS_CERT_DISABLED = 'tls_cert_disabled'
TLS_CERT_EXPIRED = 'tls_cert_expired'
TLS_CERT_INVALID_FORMAT = 'tls_cert_invalid_format'
TLS_CERT_MISSING = 'tls_cert_missing'
TLS_CHAIN_ORDER = 'tls_chain_order'
TLS_KEY_INVALID_FORMAT = 'tls_key_invalid_format'
TLS_KEY_MISSING = 'tls_key_missing'
TLS_KEY_TOO_MANY = 'tls_key_too_many'
TLS_MANAGED_DOMAIN_RATE_LIMIT = 'tls_managed_domain_rate_limit'
TLS_MANAGED_INTERNAL = 'tls_managed_internal'
TLS_PAIR_MISMATCH = 'tls_pair_mismatch'
TLS_ROOT_INCONSISTENT = 'tls_root_inconsistent'
TLS_ROOT_INCORRECT = 'tls_root_incorrect'
TLS_ROOT_MISSING = 'tls_root_missing'
TLS_SAN_MISMATCH = 'tls_san_mismatch'
TLS_SELF_SIGNED = 'tls_self_signed'
UNKNOWN_CODE = 'unknown_code'
class scaleway.edge_services.v1alpha1.PipelineErrorSeverity(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CRITICAL = 'critical'
UNKNOWN_SEVERITY = 'unknown_severity'
WARNING = 'warning'
class scaleway.edge_services.v1alpha1.PipelineErrorStage(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

BACKEND = 'backend'
CACHE = 'cache'
DNS = 'dns'
TLS = 'tls'
UNKNOWN_STAGE = 'unknown_stage'
class scaleway.edge_services.v1alpha1.PipelineErrorType(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

CONFIG = 'config'
RUNTIME = 'runtime'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.edge_services.v1alpha1.PipelineStages(dns_stages: 'List[DNSStage]', tls_stages: 'List[TLSStage]', cache_stages: 'List[CacheStage]', backend_stages: 'List[BackendStage]', pipeline: 'Optional[Pipeline]')

Bases: object

backend_stages: List[BackendStage]
cache_stages: List[CacheStage]
dns_stages: List[DNSStage]
pipeline: Pipeline | None
tls_stages: List[TLSStage]
class scaleway.edge_services.v1alpha1.PipelineStatus(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

ERROR = 'error'
PENDING = 'pending'
READY = 'ready'
UNKNOWN_STATUS = 'unknown_status'
WARNING = 'warning'
class scaleway.edge_services.v1alpha1.Plan(plan_name: 'PlanName')

Bases: object

plan_name: PlanName
class scaleway.edge_services.v1alpha1.PlanDetails(plan_name: 'PlanName', package_gb: 'int', pipeline_limit: 'int', waf_requests: 'int')

Bases: object

package_gb: int

Amount of egress data from cache included in subscription plan.

pipeline_limit: int

Number of pipelines included in subscription plan.

plan_name: PlanName

Subscription plan name.

waf_requests: int

Number of WAF requests included in subscription plan.

class scaleway.edge_services.v1alpha1.PlanName(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

ADVANCED = 'advanced'
PROFESSIONAL = 'professional'
STARTER = 'starter'
UNKNOWN_NAME = 'unknown_name'
class scaleway.edge_services.v1alpha1.PlanUsageDetails(plan_cost: 'Optional[Money]')

Bases: object

plan_cost: Money | None

Cost to date (this month) for the corresponding Edge Services subscription plan.

class scaleway.edge_services.v1alpha1.PurgeRequest(id: 'str', pipeline_id: 'str', status: 'PurgeRequestStatus', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', assets: 'Optional[List[str]]', all: 'Optional[bool]')

Bases: object

all: bool | None
assets: List[str] | None
created_at: datetime | None

Date the purge request was created.

id: str

ID of the purge request.

pipeline_id: str

Pipeline ID the purge request belongs to.

status: PurgeRequestStatus

Status of the purge request.

updated_at: datetime | None

Date the purge request was last updated.

class scaleway.edge_services.v1alpha1.PurgeRequestStatus(value: str, names: Any | None = None, *args: Any, **kwargs: Any)

Bases: str, Enum

DONE = 'done'
ERROR = 'error'
PENDING = 'pending'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.edge_services.v1alpha1.ScalewayLb(id: 'str', zone: 'ScwZone', frontend_id: 'str', is_ssl: 'Optional[bool]', domain_name: 'Optional[str]')

Bases: object

domain_name: str | None

Fully Qualified Domain Name (in the format subdomain.example.com) to use in HTTP requests sent towards your Load Balancer.

frontend_id: str

ID of the frontend linked to the Load Balancer.

id: str

ID of the Load Balancer.

is_ssl: bool | None

Defines whether the Load Balancer’s frontend handles SSL connections.

zone: str

Zone of the Load Balancer.

class scaleway.edge_services.v1alpha1.ScalewayLbBackendConfig(lbs: 'List[ScalewayLb]')

Bases: object

lbs: List[ScalewayLb]

Load Balancer information.

class scaleway.edge_services.v1alpha1.ScalewayS3BackendConfig(bucket_name: 'Optional[str]', bucket_region: 'Optional[str]', is_website: 'Optional[bool]')

Bases: object

bucket_name: str | None

Name of the Bucket.

bucket_region: str | None

Region of the Bucket.

is_website: bool | None

Defines whether the bucket website feature is enabled.

class scaleway.edge_services.v1alpha1.SelectPlanRequest(project_id: 'Optional[str]', plan_name: 'Optional[PlanName]')

Bases: object

plan_name: PlanName | None
project_id: str | None
class scaleway.edge_services.v1alpha1.TLSSecret(secret_id: 'str', region: 'ScwRegion')

Bases: object

region: str

Region of the Secret.

secret_id: str

ID of the Secret.

class scaleway.edge_services.v1alpha1.TLSSecretsConfig(tls_secrets: 'List[TLSSecret]')

Bases: object

tls_secrets: List[TLSSecret]

Secret information (from Secret Manager).

class scaleway.edge_services.v1alpha1.TLSStage(id: 'str', secrets: 'List[TLSSecret]', managed_certificate: 'bool', project_id: 'str', pipeline_id: 'Optional[str]', certificate_expires_at: 'Optional[datetime]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
certificate_expires_at: datetime | None

Expiration date of the certificate.

created_at: datetime | None

Date the TLS stage was created.

id: str

ID of the TLS stage.

managed_certificate: bool

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

pipeline_id: str | None

Pipeline ID the TLS stage belongs to.

project_id: str

Project ID of the TLS stage.

secrets: List[TLSSecret]

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

updated_at: datetime | None

Date the TLS stage was last updated.

class scaleway.edge_services.v1alpha1.UpdateBackendStageRequest(backend_stage_id: 'str', scaleway_s3: 'Optional[ScalewayS3BackendConfig]', scaleway_lb: 'Optional[ScalewayLbBackendConfig]')

Bases: object

backend_stage_id: str

ID of the backend stage to update.

scaleway_lb: ScalewayLbBackendConfig | None
scaleway_s3: ScalewayS3BackendConfig | None
class scaleway.edge_services.v1alpha1.UpdateCacheStageRequest(cache_stage_id: 'str', fallback_ttl: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str

ID of the cache stage to update.

fallback_ttl: str | None

Time To Live (TTL) in seconds. Defines how long content is cached.

class scaleway.edge_services.v1alpha1.UpdateDNSStageRequest(dns_stage_id: 'str', fqdns: 'Optional[List[str]]', tls_stage_id: 'Optional[str]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
dns_stage_id: str

ID of the DNS stage to update.

fqdns: List[str] | None

Fully Qualified Domain Name (in the format subdomain.example.com) attached to the stage.

tls_stage_id: str | None
class scaleway.edge_services.v1alpha1.UpdatePipelineRequest(pipeline_id: 'str', name: 'Optional[str]', description: 'Optional[str]', dns_stage_id: 'Optional[str]')

Bases: object

description: str | None

Description of the pipeline.

dns_stage_id: str | None
name: str | None

Name of the pipeline.

pipeline_id: str

ID of the pipeline to update.

class scaleway.edge_services.v1alpha1.UpdateTLSStageRequest(tls_stage_id: 'str', tls_secrets_config: 'Optional[TLSSecretsConfig]', managed_certificate: 'Optional[bool]', cache_stage_id: 'Optional[str]', backend_stage_id: 'Optional[str]')

Bases: object

backend_stage_id: str | None
cache_stage_id: str | None
managed_certificate: bool | None

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

tls_secrets_config: TLSSecretsConfig | None

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

tls_stage_id: str

ID of the TLS stage to update.