Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
title: Serverless Containers v1beta1 to v1
description: Discover the new features and changes introduced in the Serverless Containers v1 API.
tags: containers serverless-containers migration api v1 serverless
dates:
validation: 2026-02-09
posted: 2026-02-09
---

# Overview of the v1 API evolution

The transition from `v1beta1` to `v1` for Scaleway Serverless Containers introduces significant improvements in security, resource management, and flexibility.
While the transition is designed to be as smooth as possible, users of the API, CLI, and Terraform should note several key updates to field names and behaviors.

The changes outlined in this document only concern Serverless Containers. The Serverless Functions and Serverless Jobs APIs remains the same.

<Message type="note">
Be mindful of the `Breaking changes` mentions.
</Message>

## Key improvements

### Advanced Triggers and Cron management

Triggers have been redesigned to offer more granular control over how your containers are invoked.

* **Unified CRONs:** CRONs are now managed as a specific type of trigger. This simplifies resource management by using the `/triggers` route for all event sources.
* **Custom HTTP paths and headers:** You can now specify a custom HTTP path (ex: `/my-trigger`) and custom headers for any trigger, providing better integration with your application logic.
* **Self-managed credentials:** For SQS and NATS triggers, you must now provide your own IAM credentials. This improvement prevents accidental trigger failures caused by deleted system-generated credentials, and enables more flexibility (triggering a Scaleway container from SQS queue hosted on your Instance).

### Automatic Deployment

In the `v1` API, the `deploy = true` flag is no longer required. `CreateContainer` API calls and container updates will now automatically deploy the container immediately. This aligns Serverless Containers with the standard behavior of all other Scaleway products.

### IAM Authentication

JWT-based authentication is being gradually deprecated in favor of IAM credentials. The deprecation will be effective once IAM credentials provide the same granularity as JWTs. Refer to the [dedicated documentation](/serverless-functions/how-to/migrate-jwt-to-iam-authentication/) for more information.

### Container Registry namespaces

Creating a Serverless Containers namespace no longer creates a `funcscw` Container Registry namespace automatically.

This change allows for greater control over the organization of Container Registry namespaces, and avoids quota errors when creating Container namespaces.

### Health Checks

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if it's worth discussing, but health checks now expose a timeout parameter.

In addition to health checks, we have introduced Startup Probes. They allow advanced users to define a specific check that runs only during the initial boot of the container, preventing the system from prematurely restarting slow-starting applications.

## Breaking changes

<Message type="warning">
If you call the Scaleway Serverless Containers API directly via HTTP calls, you must pay attention to the following breaking changes.
</Message>

When using the product via higher level clients like [Scaleway Console](https://console.scaleway.com/), [CLI](https://github.com/scaleway/scaleway-cli), [SDK](https://www.scaleway.com/en/docs/scaleway-sdk/),
[Terraform](https://registry.terraform.io/providers/scaleway/scaleway/latest/docs) the impacts will be minor.

### API field changes

In order to provide a seamless experience across all Scaleway products, we updated the following fields:

| `v1beta1` name | `v1` name | Unit change | Notes |
| ------------------------- | --------------------------- | --------------- | -------------------------------------------- |
| `memory_limit` | `memory_limit_bytes` | MiB to Bytes | |
| `local_storage_limit` | `local_storage_limit_bytes` | MiB to Bytes | |
| `domain_name` | `public_endpoint` | N/A | To differentiate public and private endpoints |
| `health_check` | `liveness_probe` | N/A | Was a readiness probe in `v1beta1` |
| `cpu_limit` | `mvcpu_limit` | N/A | Precision of the unit |
| `http_option: Redirected` | `https_connections_only` | N/A | Now a boolean value |

Loading