Scaleway SDK for Python
raw JSON → 2.11.0 verified Sat May 09 auth: no python
Official Python SDK for Scaleway cloud infrastructure. Provides client libraries for managing Scaleway resources (instances, Kubernetes, databases, etc.). Currently at version 2.11.0, with monthly releases.
pip install scaleway-core Common errors
error ModuleNotFoundError: No module named 'scaleway' ↓
cause Installing 'scaleway-core' does not create a top-level module named 'scaleway'? Actually, it does. But users may have installed 'scaleway-sdk' (v1) instead.
fix
Uninstall old SDK and install 'scaleway-core': pip uninstall scaleway-sdk && pip install scaleway-core
error AttributeError: module 'scaleway' has no attribute 'Client' ↓
cause You may have an older version of scaleway-core installed, or you are importing from 'scaleway_core' directly. In v2, the Client is exported at 'scaleway.Client'.
fix
Ensure scaleway-core >=2.0.0: pip install --upgrade scaleway-core
error scaleway.core.exceptions.ConfigurationError: Missing mandatory environment variables: SCW_ACCESS_KEY ↓
cause Client.from_env() requires SCW_ACCESS_KEY, SCW_SECRET_KEY, and SCW_DEFAULT_PROJECT_ID to be set.
fix
Set environment variables or pass credentials explicitly: Client(access_key='...', secret_key='...', default_project_id='...')
Warnings
breaking SDK v2 (scaleway-core) is a complete rewrite from v1 (scaleway-sdk). Import paths, client initialization, and API classes have changed significantly. ↓
fix Use 'from scaleway import Client' and 'from scaleway.{service}.{version} import {ServiceAPI}' patterns. See migration guide: https://github.com/scaleway/scaleway-sdk-python/blob/main/MIGRATION.md
gotcha API classes are versioned (e.g., instance.v1, k8s.v1). Using the wrong version may lead to missing methods or different response structures. ↓
fix Always check the Scaleway API documentation for the latest version. For example, instance API is at 'instance.v1'.
gotcha Environment variables SCW_ACCESS_KEY and SCW_SECRET_KEY are required. If not set, Client.from_env() will raise a ConfigurationError. ↓
fix Set environment variables or use 'Client(access_key=..., secret_key=..., default_project_id=...)' explicitly.
gotcha Pagination is handled automatically by default (per_page=100, max_pages=5). Large lists may be truncated. ↓
fix Adjust per_page and max_pages parameters in list methods, or iterate over pages manually using the pagination API.
Imports
- Client wrong
from scaleway_core import Clientcorrectfrom scaleway import Client - ScalewayException wrong
from scaleway_core.exceptions import ScalewayExceptioncorrectfrom scaleway import ScalewayException
Quickstart
from scaleway import Client
from scaleway.instance.v1 import InstanceAPI
# Initialize client (uses SCW_ACCESS_KEY, SCW_SECRET_KEY, SCW_DEFAULT_PROJECT_ID env vars)
client = Client.from_env()
api = InstanceAPI(client)
# List instances
servers = api.list_servers().servers
for server in servers:
print(server.name, server.state)