scaleway.baremetal.v1 package

Submodules

scaleway.baremetal.v1.api module

class scaleway.baremetal.v1.api.BaremetalV1API(client: Client, *, bypass_validation: bool = False)

Bases: API

This API allows you to manage your Elastic Metal servers.

add_option_server(*, server_id: str, option_id: str, zone: Optional[str] = None, expires_at: Optional[datetime] = None) Server

Add server option. Add an option, such as Private Networks, to a specific server. :param server_id: ID of the server. :param option_id: ID of the option to add. :param zone: Zone to target. If none is passed will use default zone from the config. :param expires_at: Auto expire the option after this date. :return: Server

Usage:

result = api.add_option_server(
    server_id="example",
    option_id="example",
)
create_server(*, offer_id: str, name: str, description: str, zone: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None, tags: Optional[List[str]] = None, install: Optional[CreateServerRequestInstall] = None, option_ids: Optional[List[str]] = None) Server

Create an Elastic Metal server. Create a new Elastic Metal server. Once the server is created, proceed with the [installation of an OS](#post-3e949e). :param offer_id: Offer ID of the new server. :param name: Name of the server (≠hostname). :param description: Description associated with the server, max 255 characters. :param zone: Zone to target. If none is passed will use default zone from the config. :param organization_id: Organization ID with which the server will be created. One-Of (‘project_identifier’): at most one of ‘project_id’, ‘organization_id’ could be set. :param project_id: Project ID with which the server will be created. One-Of (‘project_identifier’): at most one of ‘project_id’, ‘organization_id’ could be set. :param tags: Tags to associate to the server. :param install: Object describing the configuration details of the OS installation on the server. :param option_ids: IDs of options to enable on server. :return: Server

Usage:

result = api.create_server(
    offer_id="example",
    name="example",
    description="example",
)
delete_option_server(*, server_id: str, option_id: str, zone: Optional[str] = None) Server

Delete server option. Delete an option from a specific server. :param server_id: ID of the server. :param option_id: ID of the option to delete. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.delete_option_server(
    server_id="example",
    option_id="example",
)
delete_server(*, server_id: str, zone: Optional[str] = None) Server

Delete an Elastic Metal server. Delete the server associated with the ID. :param server_id: ID of the server to delete. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.delete_server(
    server_id="example",
)
get_bmc_access(*, server_id: str, zone: Optional[str] = None) BMCAccess

Get BMC access. Get the BMC (Baseboard Management Controller) access associated with the ID, including the URL and login information needed to connect. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: BMCAccess

Usage:

result = api.get_bmc_access(
    server_id="example",
)
get_default_partitioning_schema(*, offer_id: str, os_id: str, zone: Optional[str] = None) Schema

Get default partitioning schema. Get the default partitioning schema for the given offer ID and OS ID. :param offer_id: ID of the offer. :param os_id: ID of the OS. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Schema

Usage:

result = api.get_default_partitioning_schema(
    offer_id="example",
    os_id="example",
)
get_offer(*, offer_id: str, zone: Optional[str] = None) Offer

Get offer. Get details of an offer identified by its offer ID. :param offer_id: ID of the researched Offer. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Offer

Usage:

result = api.get_offer(
    offer_id="example",
)
get_option(*, option_id: str, zone: Optional[str] = None) Option

Get option. Return specific option for the ID. :param option_id: ID of the option. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Option

Usage:

result = api.get_option(
    option_id="example",
)
get_os(*, os_id: str, zone: Optional[str] = None) OS

Get OS with an ID. Return the specific OS for the ID. :param os_id: ID of the OS. :param zone: Zone to target. If none is passed will use default zone from the config. :return: OS

Usage:

result = api.get_os(
    os_id="example",
)
get_server(*, server_id: str, zone: Optional[str] = None) Server

Get a specific Elastic Metal server. Get full details of an existing Elastic Metal server associated with the ID. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.get_server(
    server_id="example",
)
get_server_metrics(*, server_id: str, zone: Optional[str] = None) GetServerMetricsResponse

Return server metrics. Get the ping status of the server associated with the ID. :param server_id: Server ID to get the metrics. :param zone: Zone to target. If none is passed will use default zone from the config. :return: GetServerMetricsResponse

Usage:

result = api.get_server_metrics(
    server_id="example",
)
install_server(*, server_id: str, os_id: str, hostname: str, ssh_key_ids: List[str], zone: Optional[str] = None, user: Optional[str] = None, password: Optional[str] = None, service_user: Optional[str] = None, service_password: Optional[str] = None, partitioning_schema: Optional[Schema] = None) Server

Install an Elastic Metal server. Install an Operating System (OS) on the Elastic Metal server with a specific ID. :param server_id: Server ID to install. :param os_id: ID of the OS to installation on the server. :param hostname: Hostname of the server. :param ssh_key_ids: SSH key IDs authorized on the server. :param zone: Zone to target. If none is passed will use default zone from the config. :param user: User used for the installation. :param password: Password used for the installation. :param service_user: User used for the service to install. :param service_password: Password used for the service to install. :param partitioning_schema: Partitioning schema. :return: Server

Usage:

result = api.install_server(
    server_id="example",
    os_id="example",
    hostname="example",
    ssh_key_ids=[],
)
list_offers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, subscription_period: Optional[OfferSubscriptionPeriod] = None, name: Optional[str] = None) ListOffersResponse

List offers. List all available Elastic Metal server configurations. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of offers per page. :param subscription_period: Subscription period type to filter offers by. :param name: Offer name to filter offers by. :return: ListOffersResponse

Usage:

result = api.list_offers()
list_offers_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, subscription_period: Optional[OfferSubscriptionPeriod] = None, name: Optional[str] = None) List[Offer]

List offers. List all available Elastic Metal server configurations. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of offers per page. :param subscription_period: Subscription period type to filter offers by. :param name: Offer name to filter offers by. :return: List[Offer]

Usage:

result = api.list_offers_all()
list_options(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None, name: Optional[str] = None) ListOptionsResponse

List options. List all options matching with filters. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of options per page. :param offer_id: Offer ID to filter options for. :param name: Name to filter options for. :return: ListOptionsResponse

Usage:

result = api.list_options()
list_options_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None, name: Optional[str] = None) List[Option]

List options. List all options matching with filters. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of options per page. :param offer_id: Offer ID to filter options for. :param name: Name to filter options for. :return: List[Option]

Usage:

result = api.list_options_all()
list_os(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None) ListOSResponse

List available OSes. List all OSes that are available for installation on Elastic Metal servers. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of OS per page. :param offer_id: Offer IDs to filter OSes for. :return: ListOSResponse

Usage:

result = api.list_os()
list_os_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None) List[OS]

List available OSes. List all OSes that are available for installation on Elastic Metal servers. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of OS per page. :param offer_id: Offer IDs to filter OSes for. :return: List[OS]

Usage:

result = api.list_os_all()
list_server_events(*, server_id: str, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerEventsRequestOrderBy] = None) ListServerEventsResponse

List server events. List event (i.e. start/stop/reboot) associated to the server ID. :param server_id: ID of the server events searched. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of server events per page. :param order_by: Order of the server events. :return: ListServerEventsResponse

Usage:

result = api.list_server_events(
    server_id="example",
)
list_server_events_all(*, server_id: str, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerEventsRequestOrderBy] = None) List[ServerEvent]

List server events. List event (i.e. start/stop/reboot) associated to the server ID. :param server_id: ID of the server events searched. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of server events per page. :param order_by: Order of the server events. :return: List[ServerEvent]

Usage:

result = api.list_server_events_all(
    server_id="example",
)
list_servers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServersRequestOrderBy] = None, tags: Optional[List[str]] = None, status: Optional[List[str]] = None, name: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None, option_id: Optional[str] = None) ListServersResponse

List Elastic Metal servers for an Organization. List Elastic Metal servers for a specific Organization. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of servers per page. :param order_by: Order of the servers. :param tags: Tags to filter for. :param status: Status to filter for. :param name: Names to filter for. :param organization_id: Organization ID to filter for. :param project_id: Project ID to filter for. :param option_id: Option ID to filter for. :return: ListServersResponse

Usage:

result = api.list_servers()
list_servers_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServersRequestOrderBy] = None, tags: Optional[List[str]] = None, status: Optional[List[str]] = None, name: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None, option_id: Optional[str] = None) List[Server]

List Elastic Metal servers for an Organization. List Elastic Metal servers for a specific Organization. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of servers per page. :param order_by: Order of the servers. :param tags: Tags to filter for. :param status: Status to filter for. :param name: Names to filter for. :param organization_id: Organization ID to filter for. :param project_id: Project ID to filter for. :param option_id: Option ID to filter for. :return: List[Server]

Usage:

result = api.list_servers_all()
list_settings(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListSettingsRequestOrderBy] = None, project_id: Optional[str] = None) ListSettingsResponse

List all settings. Return all settings for a Project ID. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Set the maximum list size. :param order_by: Sort order for items in the response. :param project_id: ID of the Project. :return: ListSettingsResponse

Usage:

result = api.list_settings()
list_settings_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListSettingsRequestOrderBy] = None, project_id: Optional[str] = None) List[Setting]

List all settings. Return all settings for a Project ID. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Set the maximum list size. :param order_by: Sort order for items in the response. :param project_id: ID of the Project. :return: List[Setting]

Usage:

result = api.list_settings_all()
reboot_server(*, server_id: str, zone: Optional[str] = None, boot_type: Optional[ServerBootType] = None) Server

Reboot an Elastic Metal server. Reboot the Elastic Metal server associated with the ID, use the boot_type rescue to reboot the server in rescue mode. :param server_id: ID of the server to reboot. :param zone: Zone to target. If none is passed will use default zone from the config. :param boot_type: The type of boot. :return: Server

Usage:

result = api.reboot_server(
    server_id="example",
)
start_bmc_access(*, server_id: str, ip: str, zone: Optional[str] = None) BMCAccess

Start BMC access. Start BMC (Baseboard Management Controller) access associated with the ID. The BMC (Baseboard Management Controller) access is available one hour after the installation of the server. You need first to create an option Remote Access. You will find the ID and the price with a call to listOffers (https://developers.scaleway.com/en/products/baremetal/api/#get-78db92). Then add the option https://developers.scaleway.com/en/products/baremetal/api/#post-b14abd. After adding the BMC option, you need to Get Remote Access to get the login/password https://developers.scaleway.com/en/products/baremetal/api/#get-cefc0f. Do not forget to delete the Option after use. :param server_id: ID of the server. :param ip: The IP authorized to connect to the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: BMCAccess

Usage:

result = api.start_bmc_access(
    server_id="example",
    ip="example",
)
start_server(*, server_id: str, zone: Optional[str] = None, boot_type: Optional[ServerBootType] = None) Server

Start an Elastic Metal server. Start the server associated with the ID. :param server_id: ID of the server to start. :param zone: Zone to target. If none is passed will use default zone from the config. :param boot_type: The type of boot. :return: Server

Usage:

result = api.start_server(
    server_id="example",
)
stop_bmc_access(*, server_id: str, zone: Optional[str] = None) None

Stop BMC access. Stop BMC (Baseboard Management Controller) access associated with the ID. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.stop_bmc_access(
    server_id="example",
)
stop_server(*, server_id: str, zone: Optional[str] = None) Server

Stop an Elastic Metal server. Stop the server associated with the ID. The server remains allocated to your account and all data remains on the local storage of the server. :param server_id: ID of the server to stop. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.stop_server(
    server_id="example",
)
update_ip(*, server_id: str, ip_id: str, zone: Optional[str] = None, reverse: Optional[str] = None) IP

Update IP. Configure the IP address associated with the server ID and IP ID. You can use this method to set a reverse DNS for an IP address. :param server_id: ID of the server. :param ip_id: ID of the IP to update. :param zone: Zone to target. If none is passed will use default zone from the config. :param reverse: New reverse IP to update, not updated if null. :return: IP

Usage:

result = api.update_ip(
    server_id="example",
    ip_id="example",
)
update_server(*, server_id: str, zone: Optional[str] = None, name: Optional[str] = None, description: Optional[str] = None, tags: Optional[List[str]] = None) Server

Update an Elastic Metal server. Update the server associated with the ID. You can update parameters such as the server’s name, tags and description. Any parameters left null in the request body are not updated. :param server_id: ID of the server to update. :param zone: Zone to target. If none is passed will use default zone from the config. :param name: Name of the server (≠hostname), not updated if null. :param description: Description associated with the server, max 255 characters, not updated if null. :param tags: Tags associated with the server, not updated if null. :return: Server

Usage:

result = api.update_server(
    server_id="example",
)
update_setting(*, setting_id: str, zone: Optional[str] = None, enabled: Optional[bool] = None) Setting

Update setting. Update a setting for a Project ID (enable or disable). :param setting_id: ID of the setting. :param zone: Zone to target. If none is passed will use default zone from the config. :param enabled: Defines whether the setting is enabled. :return: Setting

Usage:

result = api.update_setting(
    setting_id="example",
)
validate_partitioning_schema(*, offer_id: str, os_id: str, zone: Optional[str] = None, partitioning_schema: Optional[Schema] = None) None

Validate client partitioning schema. Validate the incoming partitioning schema from a user before installing the server. Return default ErrorCode if invalid. :param offer_id: Offer ID of the server. :param os_id: OS ID. :param zone: Zone to target. If none is passed will use default zone from the config. :param partitioning_schema: Partitioning schema.

Usage:

result = api.validate_partitioning_schema(
    offer_id="example",
    os_id="example",
)
wait_for_server(*, server_id: str, zone: Optional[str] = None, options: Optional[WaitForOptions[Server, bool]] = None) Server

Get a specific Elastic Metal server. Get full details of an existing Elastic Metal server associated with the ID. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.get_server(
    server_id="example",
)
class scaleway.baremetal.v1.api.BaremetalV1PrivateNetworkAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Elastic Metal - Private Network API.

add_server_private_network(*, server_id: str, private_network_id: str, zone: Optional[str] = None) ServerPrivateNetwork

Add a server to a Private Network. :param server_id: The ID of the server. :param private_network_id: The ID of the Private Network. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerPrivateNetwork

Usage:

result = api.add_server_private_network(
    server_id="example",
    private_network_id="example",
)
delete_server_private_network(*, server_id: str, private_network_id: str, zone: Optional[str] = None) None

Delete a Private Network. :param server_id: The ID of the server. :param private_network_id: The ID of the Private Network. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.delete_server_private_network(
    server_id="example",
    private_network_id="example",
)
list_server_private_networks(*, zone: Optional[str] = None, order_by: Optional[ListServerPrivateNetworksRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, server_id: Optional[str] = None, private_network_id: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None) ListServerPrivateNetworksResponse

List the Private Networks of a server. :param zone: Zone to target. If none is passed will use default zone from the config. :param order_by: The sort order for the returned Private Networks. :param page: The page number for the returned Private Networks. :param page_size: The maximum number of Private Networks per page. :param server_id: Filter Private Networks by server ID. :param private_network_id: Filter Private Networks by Private Network ID. :param organization_id: Filter Private Networks by Organization ID. :param project_id: Filter Private Networks by Project ID. :return: ListServerPrivateNetworksResponse

Usage:

result = api.list_server_private_networks()
list_server_private_networks_all(*, zone: Optional[str] = None, order_by: Optional[ListServerPrivateNetworksRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, server_id: Optional[str] = None, private_network_id: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None) List[ServerPrivateNetwork]

List the Private Networks of a server. :param zone: Zone to target. If none is passed will use default zone from the config. :param order_by: The sort order for the returned Private Networks. :param page: The page number for the returned Private Networks. :param page_size: The maximum number of Private Networks per page. :param server_id: Filter Private Networks by server ID. :param private_network_id: Filter Private Networks by Private Network ID. :param organization_id: Filter Private Networks by Organization ID. :param project_id: Filter Private Networks by Project ID. :return: List[ServerPrivateNetwork]

Usage:

result = api.list_server_private_networks_all()
set_server_private_networks(*, server_id: str, private_network_ids: List[str], zone: Optional[str] = None) SetServerPrivateNetworksResponse

Set multiple Private Networks on a server. :param server_id: The ID of the server. :param private_network_ids: The IDs of the Private Networks. :param zone: Zone to target. If none is passed will use default zone from the config. :return: SetServerPrivateNetworksResponse

Usage:

result = api.set_server_private_networks(
    server_id="example",
    private_network_ids=[],
)

scaleway.baremetal.v1.content module

scaleway.baremetal.v1.content.SERVER_INSTALL_TRANSIENT_STATUSES: List[ServerInstallStatus] = [<ServerInstallStatus.TO_INSTALL: 'to_install'>, <ServerInstallStatus.INSTALLING: 'installing'>]

Lists transient statutes of the enum ServerInstallStatus.

scaleway.baremetal.v1.content.SERVER_PRIVATE_NETWORK_TRANSIENT_STATUSES: List[ServerPrivateNetworkStatus] = [<ServerPrivateNetworkStatus.ATTACHING: 'attaching'>, <ServerPrivateNetworkStatus.DETACHING: 'detaching'>]

Lists transient statutes of the enum ServerPrivateNetworkStatus.

scaleway.baremetal.v1.content.SERVER_TRANSIENT_STATUSES: List[ServerStatus] = [<ServerStatus.DELIVERING: 'delivering'>, <ServerStatus.STOPPING: 'stopping'>, <ServerStatus.STARTING: 'starting'>, <ServerStatus.DELETING: 'deleting'>, <ServerStatus.ORDERED: 'ordered'>, <ServerStatus.RESETTING: 'resetting'>]

Lists transient statutes of the enum ServerStatus.

scaleway.baremetal.v1.marshalling module

scaleway.baremetal.v1.marshalling.marshal_AddOptionServerRequest(request: AddOptionServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_CreateServerRequest(request: CreateServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_CreateServerRequestInstall(request: CreateServerRequestInstall, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_InstallServerRequest(request: InstallServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_PrivateNetworkApiAddServerPrivateNetworkRequest(request: PrivateNetworkApiAddServerPrivateNetworkRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_PrivateNetworkApiSetServerPrivateNetworksRequest(request: PrivateNetworkApiSetServerPrivateNetworksRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_RebootServerRequest(request: RebootServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_Schema(request: Schema, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_SchemaDisk(request: SchemaDisk, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_SchemaFilesystem(request: SchemaFilesystem, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_SchemaPartition(request: SchemaPartition, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_SchemaPool(request: SchemaPool, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_SchemaRAID(request: SchemaRAID, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_SchemaZFS(request: SchemaZFS, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_StartBMCAccessRequest(request: StartBMCAccessRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_StartServerRequest(request: StartServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_UpdateIPRequest(request: UpdateIPRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_UpdateServerRequest(request: UpdateServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_UpdateSettingRequest(request: UpdateSettingRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.marshal_ValidatePartitioningSchemaRequest(request: ValidatePartitioningSchemaRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.baremetal.v1.marshalling.unmarshal_BMCAccess(data: Any) BMCAccess
scaleway.baremetal.v1.marshalling.unmarshal_CPU(data: Any) CPU
scaleway.baremetal.v1.marshalling.unmarshal_CertificationOption(data: Any) CertificationOption
scaleway.baremetal.v1.marshalling.unmarshal_Disk(data: Any) Disk
scaleway.baremetal.v1.marshalling.unmarshal_GPU(data: Any) GPU
scaleway.baremetal.v1.marshalling.unmarshal_GetServerMetricsResponse(data: Any) GetServerMetricsResponse
scaleway.baremetal.v1.marshalling.unmarshal_IP(data: Any) IP
scaleway.baremetal.v1.marshalling.unmarshal_LicenseOption(data: Any) LicenseOption
scaleway.baremetal.v1.marshalling.unmarshal_ListOSResponse(data: Any) ListOSResponse
scaleway.baremetal.v1.marshalling.unmarshal_ListOffersResponse(data: Any) ListOffersResponse
scaleway.baremetal.v1.marshalling.unmarshal_ListOptionsResponse(data: Any) ListOptionsResponse
scaleway.baremetal.v1.marshalling.unmarshal_ListServerEventsResponse(data: Any) ListServerEventsResponse
scaleway.baremetal.v1.marshalling.unmarshal_ListServerPrivateNetworksResponse(data: Any) ListServerPrivateNetworksResponse
scaleway.baremetal.v1.marshalling.unmarshal_ListServersResponse(data: Any) ListServersResponse
scaleway.baremetal.v1.marshalling.unmarshal_ListSettingsResponse(data: Any) ListSettingsResponse
scaleway.baremetal.v1.marshalling.unmarshal_Memory(data: Any) Memory
scaleway.baremetal.v1.marshalling.unmarshal_OS(data: Any) OS
scaleway.baremetal.v1.marshalling.unmarshal_OSOSField(data: Any) OSOSField
scaleway.baremetal.v1.marshalling.unmarshal_Offer(data: Any) Offer
scaleway.baremetal.v1.marshalling.unmarshal_OfferOptionOffer(data: Any) OfferOptionOffer
scaleway.baremetal.v1.marshalling.unmarshal_Option(data: Any) Option
scaleway.baremetal.v1.marshalling.unmarshal_PersistentMemory(data: Any) PersistentMemory
scaleway.baremetal.v1.marshalling.unmarshal_PrivateNetworkOption(data: Any) PrivateNetworkOption
scaleway.baremetal.v1.marshalling.unmarshal_PublicBandwidthOption(data: Any) PublicBandwidthOption
scaleway.baremetal.v1.marshalling.unmarshal_RaidController(data: Any) RaidController
scaleway.baremetal.v1.marshalling.unmarshal_RemoteAccessOption(data: Any) RemoteAccessOption
scaleway.baremetal.v1.marshalling.unmarshal_Schema(data: Any) Schema
scaleway.baremetal.v1.marshalling.unmarshal_SchemaDisk(data: Any) SchemaDisk
scaleway.baremetal.v1.marshalling.unmarshal_SchemaFilesystem(data: Any) SchemaFilesystem
scaleway.baremetal.v1.marshalling.unmarshal_SchemaPartition(data: Any) SchemaPartition
scaleway.baremetal.v1.marshalling.unmarshal_SchemaPool(data: Any) SchemaPool
scaleway.baremetal.v1.marshalling.unmarshal_SchemaRAID(data: Any) SchemaRAID
scaleway.baremetal.v1.marshalling.unmarshal_SchemaZFS(data: Any) SchemaZFS
scaleway.baremetal.v1.marshalling.unmarshal_Server(data: Any) Server
scaleway.baremetal.v1.marshalling.unmarshal_ServerEvent(data: Any) ServerEvent
scaleway.baremetal.v1.marshalling.unmarshal_ServerInstall(data: Any) ServerInstall
scaleway.baremetal.v1.marshalling.unmarshal_ServerOption(data: Any) ServerOption
scaleway.baremetal.v1.marshalling.unmarshal_ServerPrivateNetwork(data: Any) ServerPrivateNetwork
scaleway.baremetal.v1.marshalling.unmarshal_ServerRescueServer(data: Any) ServerRescueServer
scaleway.baremetal.v1.marshalling.unmarshal_SetServerPrivateNetworksResponse(data: Any) SetServerPrivateNetworksResponse
scaleway.baremetal.v1.marshalling.unmarshal_Setting(data: Any) Setting

scaleway.baremetal.v1.types module

class scaleway.baremetal.v1.types.AddOptionServerRequest(server_id: 'str', option_id: 'str', zone: 'Optional[Zone]', expires_at: 'Optional[datetime]')

Bases: object

expires_at: Optional[datetime]

Auto expire the option after this date.

option_id: str

ID of the option to add.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.BMCAccess(url: 'str', login: 'str', password: 'str', expires_at: 'Optional[datetime]')

Bases: object

expires_at: Optional[datetime]

The date after which the BMC (Baseboard Management Controller) access will be closed.

login: str

The login to use for the BMC (Baseboard Management Controller) access authentification.

password: str

The password to use for the BMC (Baseboard Management Controller) access authentification.

url: str

URL to access to the server console.

class scaleway.baremetal.v1.types.CPU(name: 'str', core_count: 'int', thread_count: 'int', frequency: 'int', benchmark: 'str')

Bases: object

benchmark: str

Benchmark of the CPU.

core_count: int

Number of CPU cores.

frequency: int

Frequency of the CPU in MHz.

name: str

Name of the CPU.

thread_count: int

Number CPU threads.

class scaleway.baremetal.v1.types.CertificationOption

Bases: object

class scaleway.baremetal.v1.types.CreateServerRequest(offer_id: 'str', name: 'str', description: 'str', zone: 'Optional[Zone]', tags: 'Optional[List[str]]', install: 'Optional[CreateServerRequestInstall]', option_ids: 'Optional[List[str]]', project_id: 'Optional[str]', organization_id: 'Optional[str]')

Bases: object

description: str

Description associated with the server, max 255 characters.

install: Optional[CreateServerRequestInstall]

Object describing the configuration details of the OS installation on the server.

name: str

Name of the server (≠hostname).

offer_id: str

Offer ID of the new server.

option_ids: Optional[List[str]]

IDs of options to enable on server.

organization_id: Optional[str]
project_id: Optional[str]
tags: Optional[List[str]]

Tags to associate to the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.CreateServerRequestInstall(os_id: 'str', hostname: 'str', ssh_key_ids: 'List[str]', user: 'Optional[str]', password: 'Optional[str]', service_user: 'Optional[str]', service_password: 'Optional[str]', partitioning_schema: 'Optional[Schema]')

Bases: object

hostname: str

Hostname of the server.

os_id: str

ID of the OS to installation on the server.

partitioning_schema: Optional[Schema]

Partitioning schema.

password: Optional[str]

Password for the installation.

service_password: Optional[str]

Password used for the service to install.

service_user: Optional[str]

Regular user that runs the service to be installed on the server.

ssh_key_ids: List[str]

SSH key IDs authorized on the server.

user: Optional[str]

User for the installation.

class scaleway.baremetal.v1.types.DeleteOptionServerRequest(server_id: 'str', option_id: 'str', zone: 'Optional[Zone]')

Bases: object

option_id: str

ID of the option to delete.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.DeleteServerRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server to delete.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.Disk(capacity: 'int', type_: 'str')

Bases: object

capacity: int

Capacity of the disk in bytes.

type_: str

Type of the disk.

class scaleway.baremetal.v1.types.GPU(name: 'str', vram: 'int')

Bases: object

name: str

Name of the GPU.

vram: int

Capacity of the vram in bytes.

class scaleway.baremetal.v1.types.GetBMCAccessRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.GetDefaultPartitioningSchemaRequest(offer_id: 'str', os_id: 'str', zone: 'Optional[Zone]')

Bases: object

offer_id: str

ID of the offer.

os_id: str

ID of the OS.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.GetOSRequest(os_id: 'str', zone: 'Optional[Zone]')

Bases: object

os_id: str

ID of the OS.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.GetOfferRequest(offer_id: 'str', zone: 'Optional[Zone]')

Bases: object

offer_id: str

ID of the researched Offer.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.GetOptionRequest(option_id: 'str', zone: 'Optional[Zone]')

Bases: object

option_id: str

ID of the option.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.GetServerMetricsRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

Server ID to get the metrics.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.GetServerMetricsResponse(pings: 'Optional[TimeSeries]')

Bases: object

pings: Optional[TimeSeries]

Timeseries object representing pings on the server.

class scaleway.baremetal.v1.types.GetServerRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.IP(id: 'str', address: 'str', reverse: 'str', version: 'IPVersion', reverse_status: 'IPReverseStatus', reverse_status_message: 'str')

Bases: object

address: str

Address of the IP.

id: str

ID of the IP.

reverse: str

Reverse IP value.

reverse_status: IPReverseStatus

Status of the reverse.

reverse_status_message: str

A message related to the reverse status, e.g. in case of an error.

version: IPVersion

Version of IP (v4 or v6).

class scaleway.baremetal.v1.types.IPReverseStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
ERROR = 'error'
PENDING = 'pending'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.types.IPVersion(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

I_PV4 = 'i_pv4'
I_PV6 = 'i_pv6'
class scaleway.baremetal.v1.types.InstallServerRequest(server_id: 'str', os_id: 'str', hostname: 'str', ssh_key_ids: 'List[str]', zone: 'Optional[Zone]', user: 'Optional[str]', password: 'Optional[str]', service_user: 'Optional[str]', service_password: 'Optional[str]', partitioning_schema: 'Optional[Schema]')

Bases: object

hostname: str

Hostname of the server.

os_id: str

ID of the OS to installation on the server.

partitioning_schema: Optional[Schema]

Partitioning schema.

password: Optional[str]

Password used for the installation.

server_id: str

Server ID to install.

service_password: Optional[str]

Password used for the service to install.

service_user: Optional[str]

User used for the service to install.

ssh_key_ids: List[str]

SSH key IDs authorized on the server.

user: Optional[str]

User used for the installation.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.LicenseOption(os_id: 'str')

Bases: object

os_id: str
class scaleway.baremetal.v1.types.ListOSRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', offer_id: 'Optional[str]')

Bases: object

offer_id: Optional[str]

Offer IDs to filter OSes for.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of OS per page.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ListOSResponse(total_count: 'int', os: 'List[OS]')

Bases: object

os: List[OS]

OS that match filters.

total_count: int

Total count of matching OS.

class scaleway.baremetal.v1.types.ListOffersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', subscription_period: 'Optional[OfferSubscriptionPeriod]', name: 'Optional[str]')

Bases: object

name: Optional[str]

Offer name to filter offers by.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of offers per page.

subscription_period: Optional[OfferSubscriptionPeriod]

Subscription period type to filter offers by.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ListOffersResponse(total_count: 'int', offers: 'List[Offer]')

Bases: object

offers: List[Offer]

Offers that match filters.

total_count: int

Total count of matching offers.

class scaleway.baremetal.v1.types.ListOptionsRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', offer_id: 'Optional[str]', name: 'Optional[str]')

Bases: object

name: Optional[str]

Name to filter options for.

offer_id: Optional[str]

Offer ID to filter options for.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of options per page.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ListOptionsResponse(total_count: 'int', options: 'List[Option]')

Bases: object

options: List[Option]

Options that match filters.

total_count: int

Total count of matching options.

class scaleway.baremetal.v1.types.ListServerEventsRequest(server_id: 'str', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServerEventsRequestOrderBy]')

Bases: object

order_by: Optional[ListServerEventsRequestOrderBy]

Order of the server events.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of server events per page.

server_id: str

ID of the server events searched.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ListServerEventsRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.baremetal.v1.types.ListServerEventsResponse(total_count: 'int', events: 'List[ServerEvent]')

Bases: object

events: List[ServerEvent]

Server events that match filters.

total_count: int

Total count of matching events.

class scaleway.baremetal.v1.types.ListServerPrivateNetworksRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
UPDATED_AT_ASC = 'updated_at_asc'
UPDATED_AT_DESC = 'updated_at_desc'
class scaleway.baremetal.v1.types.ListServerPrivateNetworksResponse(server_private_networks: 'List[ServerPrivateNetwork]', total_count: 'int')

Bases: object

server_private_networks: List[ServerPrivateNetwork]
total_count: int
class scaleway.baremetal.v1.types.ListServersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServersRequestOrderBy]', tags: 'Optional[List[str]]', status: 'Optional[List[str]]', name: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]', option_id: 'Optional[str]')

Bases: object

name: Optional[str]

Names to filter for.

option_id: Optional[str]

Option ID to filter for.

order_by: Optional[ListServersRequestOrderBy]

Order of the servers.

organization_id: Optional[str]

Organization ID to filter for.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of servers per page.

project_id: Optional[str]

Project ID to filter for.

status: Optional[List[str]]

Status to filter for.

tags: Optional[List[str]]

Tags to filter for.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ListServersRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.baremetal.v1.types.ListServersResponse(total_count: 'int', servers: 'List[Server]')

Bases: object

servers: List[Server]

Array of Elastic Metal server objects matching the filters in the request.

total_count: int

Total count of matching servers.

class scaleway.baremetal.v1.types.ListSettingsRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListSettingsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListSettingsRequestOrderBy]

Sort order for items in the response.

page: Optional[int]

Page number.

page_size: Optional[int]

Set the maximum list size.

project_id: Optional[str]

ID of the Project.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ListSettingsRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.baremetal.v1.types.ListSettingsResponse(total_count: 'int', settings: 'List[Setting]')

Bases: object

settings: List[Setting]

Settings that match filters.

total_count: int

Total count of matching settings.

class scaleway.baremetal.v1.types.Memory(capacity: 'int', type_: 'str', frequency: 'int', is_ecc: 'bool')

Bases: object

capacity: int

Capacity of the memory in bytes.

frequency: int

Frequency of the memory in MHz.

is_ecc: bool

True if the memory is an error-correcting code memory.

type_: str

Type of the memory.

class scaleway.baremetal.v1.types.OS(id: 'str', name: 'str', version: 'str', logo_url: 'str', ssh: 'Optional[OSOSField]', user: 'Optional[OSOSField]', password: 'Optional[OSOSField]', service_user: 'Optional[OSOSField]', service_password: 'Optional[OSOSField]', enabled: 'bool', license_required: 'bool', allowed: 'bool', custom_partitioning_supported: 'bool')

Bases: object

allowed: bool

Defines if a specific Organization is allowed to install this OS type.

custom_partitioning_supported: bool

Defines if custom partitioning is supported by this OS.

enabled: bool

Defines if the operating system is enabled or not.

id: str

ID of the OS.

license_required: bool

License required (check server options for pricing details).

logo_url: str

URL of this OS’s logo.

name: str

Name of the OS.

password: Optional[OSOSField]

Object defining the password requirements to install the OS.

service_password: Optional[OSOSField]

Object defining the password requirements to install the service.

service_user: Optional[OSOSField]

Object defining the username requirements to install the service.

ssh: Optional[OSOSField]

Object defining the SSH requirements to install the OS.

user: Optional[OSOSField]

Object defining the username requirements to install the OS.

version: str

Version of the OS.

class scaleway.baremetal.v1.types.OSOSField(editable: 'bool', required: 'bool', default_value: 'Optional[str]')

Bases: object

default_value: Optional[str]
editable: bool
required: bool
class scaleway.baremetal.v1.types.Offer(id: 'str', name: 'str', stock: 'OfferStock', bandwidth: 'int', max_bandwidth: 'int', commercial_range: 'str', disks: 'List[Disk]', enable: 'bool', cpus: 'List[CPU]', memories: 'List[Memory]', price_per_hour: 'Optional[Money]', price_per_month: 'Optional[Money]', quota_name: 'str', persistent_memories: 'List[PersistentMemory]', raid_controllers: 'List[RaidController]', incompatible_os_ids: 'List[str]', subscription_period: 'OfferSubscriptionPeriod', operation_path: 'str', options: 'List[OfferOptionOffer]', private_bandwidth: 'int', shared_bandwidth: 'bool', tags: 'List[str]', gpus: 'List[GPU]', fee: 'Optional[Money]')

Bases: object

bandwidth: int

Public bandwidth available (in bits/s) with the offer.

commercial_range: str

Commercial range of the offer.

cpus: List[CPU]

CPU specifications of the offer.

disks: List[Disk]

Disks specifications of the offer.

enable: bool

Defines whether the offer is currently available.

fee: Optional[Money]

One time fee invoiced by Scaleway for the setup and activation of the server.

gpus: List[GPU]

GPU specifications of the offer.

id: str

ID of the offer.

incompatible_os_ids: List[str]

Array of OS images IDs incompatible with the server.

max_bandwidth: int

Maximum public bandwidth available (in bits/s) depending on available options.

memories: List[Memory]

Memory specifications of the offer.

name: str

Name of the offer.

operation_path: str

Operation path of the service.

options: List[OfferOptionOffer]

Available options for customization of the server.

persistent_memories: List[PersistentMemory]

Persistent memory specifications of the offer.

price_per_hour: Optional[Money]

Price of the offer for the next 60 minutes (a server order at 11h32 will be payed until 12h32).

price_per_month: Optional[Money]

Monthly price of the offer, if subscribing on a monthly basis.

private_bandwidth: int

Private bandwidth available in bits/s with the offer.

quota_name: str

Name of the quota associated to the offer.

raid_controllers: List[RaidController]

Raid controller specifications of the offer.

shared_bandwidth: bool

Defines whether the offer’s bandwidth is shared or not.

stock: OfferStock

Stock level.

subscription_period: OfferSubscriptionPeriod

Period of subscription for the offer.

tags: List[str]

Array of tags attached to the offer.

class scaleway.baremetal.v1.types.OfferOptionOffer(id: 'str', name: 'str', enabled: 'bool', subscription_period: 'OfferSubscriptionPeriod', manageable: 'bool', price: 'Optional[Money]', os_id: 'Optional[str]', license: 'Optional[LicenseOption]', public_bandwidth: 'Optional[PublicBandwidthOption]', private_network: 'Optional[PrivateNetworkOption]', remote_access: 'Optional[RemoteAccessOption]', certification: 'Optional[CertificationOption]')

Bases: object

certification: Optional[CertificationOption]
enabled: bool

If true the option is enabled and included by default in the offer

If false the option is available for the offer but not included by default.

id: str

ID of the option.

license: Optional[LicenseOption]
manageable: bool

Boolean to know if option could be managed.

name: str

Name of the option.

os_id: Optional[str]

Deprecated, use LicenseOptionVars.os_id instead.

price: Optional[Money]

Price of the option.

private_network: Optional[PrivateNetworkOption]
public_bandwidth: Optional[PublicBandwidthOption]
remote_access: Optional[RemoteAccessOption]
subscription_period: OfferSubscriptionPeriod

Period of subscription for the offer.

class scaleway.baremetal.v1.types.OfferStock(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AVAILABLE = 'available'
EMPTY = 'empty'
LOW = 'low'
class scaleway.baremetal.v1.types.OfferSubscriptionPeriod(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

HOURLY = 'hourly'
MONTHLY = 'monthly'
UNKNOWN_SUBSCRIPTION_PERIOD = 'unknown_subscription_period'
class scaleway.baremetal.v1.types.Option(id: 'str', name: 'str', manageable: 'bool', license: 'Optional[LicenseOption]', public_bandwidth: 'Optional[PublicBandwidthOption]', private_network: 'Optional[PrivateNetworkOption]', remote_access: 'Optional[RemoteAccessOption]', certification: 'Optional[CertificationOption]')

Bases: object

certification: Optional[CertificationOption]
id: str

ID of the option.

license: Optional[LicenseOption]
manageable: bool

Defines whether the option is manageable (could be added or removed).

name: str

Name of the option.

private_network: Optional[PrivateNetworkOption]
public_bandwidth: Optional[PublicBandwidthOption]
remote_access: Optional[RemoteAccessOption]
class scaleway.baremetal.v1.types.PersistentMemory(capacity: 'int', type_: 'str', frequency: 'int')

Bases: object

capacity: int

Capacity of the memory in bytes.

frequency: int

Frequency of the memory in MHz.

type_: str

Type of the memory.

class scaleway.baremetal.v1.types.PrivateNetworkApiAddServerPrivateNetworkRequest(server_id: 'str', private_network_id: 'str', zone: 'Optional[Zone]')

Bases: object

private_network_id: str

The ID of the Private Network.

server_id: str

The ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.PrivateNetworkApiDeleteServerPrivateNetworkRequest(server_id: 'str', private_network_id: 'str', zone: 'Optional[Zone]')

Bases: object

private_network_id: str

The ID of the Private Network.

server_id: str

The ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.PrivateNetworkApiListServerPrivateNetworksRequest(zone: 'Optional[Zone]', order_by: 'Optional[ListServerPrivateNetworksRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', server_id: 'Optional[str]', private_network_id: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListServerPrivateNetworksRequestOrderBy]

The sort order for the returned Private Networks.

organization_id: Optional[str]

Filter Private Networks by Organization ID.

page: Optional[int]

The page number for the returned Private Networks.

page_size: Optional[int]

The maximum number of Private Networks per page.

private_network_id: Optional[str]

Filter Private Networks by Private Network ID.

project_id: Optional[str]

Filter Private Networks by Project ID.

server_id: Optional[str]

Filter Private Networks by server ID.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.PrivateNetworkApiSetServerPrivateNetworksRequest(server_id: 'str', private_network_ids: 'List[str]', zone: 'Optional[Zone]')

Bases: object

private_network_ids: List[str]

The IDs of the Private Networks.

server_id: str

The ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.PrivateNetworkOption(bandwidth_in_bps: 'int')

Bases: object

bandwidth_in_bps: int
class scaleway.baremetal.v1.types.PublicBandwidthOption(bandwidth_in_bps: 'int')

Bases: object

bandwidth_in_bps: int
class scaleway.baremetal.v1.types.RaidController(model: 'str', raid_level: 'List[str]')

Bases: object

model: str
raid_level: List[str]
class scaleway.baremetal.v1.types.RebootServerRequest(server_id: 'str', zone: 'Optional[Zone]', boot_type: 'Optional[ServerBootType]')

Bases: object

boot_type: Optional[ServerBootType]

The type of boot.

server_id: str

ID of the server to reboot.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.RemoteAccessOption

Bases: object

class scaleway.baremetal.v1.types.Schema(disks: 'List[SchemaDisk]', raids: 'List[SchemaRAID]', filesystems: 'List[SchemaFilesystem]', zfs: 'Optional[SchemaZFS]')

Bases: object

disks: List[SchemaDisk]
filesystems: List[SchemaFilesystem]
raids: List[SchemaRAID]
zfs: Optional[SchemaZFS]
class scaleway.baremetal.v1.types.SchemaDisk(device: 'str', partitions: 'List[SchemaPartition]')

Bases: object

device: str
partitions: List[SchemaPartition]
class scaleway.baremetal.v1.types.SchemaFilesystem(device: 'str', format: 'SchemaFilesystemFormat', mountpoint: 'str')

Bases: object

device: str
format: SchemaFilesystemFormat
mountpoint: str
class scaleway.baremetal.v1.types.SchemaFilesystemFormat(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

EXT4 = 'ext4'
FAT32 = 'fat32'
SWAP = 'swap'
UNKNOWN_FORMAT = 'unknown_format'
XFS = 'xfs'
ZFS = 'zfs'
class scaleway.baremetal.v1.types.SchemaPartition(label: 'SchemaPartitionLabel', number: 'int', size: 'int')

Bases: object

label: SchemaPartitionLabel
number: int
size: int
class scaleway.baremetal.v1.types.SchemaPartitionLabel(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BOOT = 'boot'
DATA = 'data'
HOME = 'home'
LEGACY = 'legacy'
RAID = 'raid'
ROOT = 'root'
SWAP = 'swap'
UEFI = 'uefi'
UNKNOWN_PARTITION_LABEL = 'unknown_partition_label'
ZFS = 'zfs'
class scaleway.baremetal.v1.types.SchemaPool(name: 'str', type_: 'SchemaPoolType', devices: 'List[str]', options: 'List[str]', filesystem_options: 'List[str]')

Bases: object

devices: List[str]
filesystem_options: List[str]
name: str
options: List[str]
type_: SchemaPoolType
class scaleway.baremetal.v1.types.SchemaPoolType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

MIRROR = 'mirror'
NO_RAID = 'no_raid'
RAIDZ1 = 'raidz1'
RAIDZ2 = 'raidz2'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.baremetal.v1.types.SchemaRAID(name: 'str', level: 'SchemaRAIDLevel', devices: 'List[str]')

Bases: object

devices: List[str]
level: SchemaRAIDLevel
name: str
class scaleway.baremetal.v1.types.SchemaRAIDLevel(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

RAID_LEVEL_0 = 'raid_level_0'
RAID_LEVEL_1 = 'raid_level_1'
RAID_LEVEL_10 = 'raid_level_10'
RAID_LEVEL_5 = 'raid_level_5'
RAID_LEVEL_6 = 'raid_level_6'
UNKNOWN_RAID_LEVEL = 'unknown_raid_level'
class scaleway.baremetal.v1.types.SchemaZFS(pools: 'List[SchemaPool]')

Bases: object

pools: List[SchemaPool]
class scaleway.baremetal.v1.types.Server(id: 'str', organization_id: 'str', project_id: 'str', name: 'str', description: 'str', status: 'ServerStatus', updated_at: 'Optional[datetime]', created_at: 'Optional[datetime]', offer_id: 'str', offer_name: 'str', tags: 'List[str]', ips: 'List[IP]', domain: 'str', boot_type: 'ServerBootType', zone: 'Zone', ping_status: 'ServerPingStatus', options: 'List[ServerOption]', install: 'Optional[ServerInstall]', rescue_server: 'Optional[ServerRescueServer]')

Bases: object

boot_type: ServerBootType

Boot type of the server.

created_at: Optional[datetime]

Creation date of the server.

description: str

Description of the server.

domain: str

Domain of the server.

id: str

ID of the server.

install: Optional[ServerInstall]

Configuration of the installation.

ips: List[IP]

Array of IPs attached to the server.

name: str

Name of the server.

offer_id: str

Offer ID of the server.

offer_name: str

Offer name of the server.

options: List[ServerOption]

Options enabled on the server.

organization_id: str

Organization ID the server is attached to.

ping_status: ServerPingStatus

Status of server ping.

project_id: str

Project ID the server is attached to.

rescue_server: Optional[ServerRescueServer]

Configuration of rescue boot.

status: ServerStatus

Status of the server.

tags: List[str]

Array of custom tags attached to the server.

updated_at: Optional[datetime]

Last modification date of the server.

zone: str

Zone in which is the server located.

class scaleway.baremetal.v1.types.ServerBootType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

NORMAL = 'normal'
RESCUE = 'rescue'
UNKNOWN_BOOT_TYPE = 'unknown_boot_type'
class scaleway.baremetal.v1.types.ServerEvent(id: 'str', action: 'str', updated_at: 'Optional[datetime]', created_at: 'Optional[datetime]')

Bases: object

action: str

The action that will be applied to the server.

created_at: Optional[datetime]

Date of creation of the action.

id: str

ID of the server to which the action will be applied.

updated_at: Optional[datetime]

Date of last modification of the action.

class scaleway.baremetal.v1.types.ServerInstall(os_id: 'str', hostname: 'str', ssh_key_ids: 'List[str]', status: 'ServerInstallStatus', user: 'str', service_user: 'str', service_url: 'str', partitioning_schema: 'Optional[Schema]')

Bases: object

hostname: str

Host defined during the server installation.

os_id: str

ID of the OS.

partitioning_schema: Optional[Schema]

Partitioning schema.

service_url: str

Address of the installed service.

service_user: str

Service user defined in the server installation, or the default user if none were specified.

ssh_key_ids: List[str]

SSH public key IDs defined during server installation.

status: ServerInstallStatus

Status of the server installation.

user: str

User defined in the server installation, or the default user if none were specified.

class scaleway.baremetal.v1.types.ServerInstallStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

COMPLETED = 'completed'
ERROR = 'error'
INSTALLING = 'installing'
TO_INSTALL = 'to_install'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.types.ServerOption(id: 'str', name: 'str', status: 'ServerOptionOptionStatus', manageable: 'bool', expires_at: 'Optional[datetime]', license: 'Optional[LicenseOption]', public_bandwidth: 'Optional[PublicBandwidthOption]', private_network: 'Optional[PrivateNetworkOption]', remote_access: 'Optional[RemoteAccessOption]', certification: 'Optional[CertificationOption]')

Bases: object

certification: Optional[CertificationOption]
expires_at: Optional[datetime]

Auto expiration date for compatible options.

id: str

ID of the option.

license: Optional[LicenseOption]
manageable: bool

Defines whether the option can be managed (added or removed).

name: str

Name of the option.

private_network: Optional[PrivateNetworkOption]
public_bandwidth: Optional[PublicBandwidthOption]
remote_access: Optional[RemoteAccessOption]
status: ServerOptionOptionStatus

Status of the option on this server.

class scaleway.baremetal.v1.types.ServerOptionOptionStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

OPTION_STATUS_DISABLING = 'option_status_disabling'
OPTION_STATUS_ENABLE = 'option_status_enable'
OPTION_STATUS_ENABLING = 'option_status_enabling'
OPTION_STATUS_ERROR = 'option_status_error'
OPTION_STATUS_UNKNOWN = 'option_status_unknown'
class scaleway.baremetal.v1.types.ServerPingStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

PING_STATUS_DOWN = 'ping_status_down'
PING_STATUS_UNKNOWN = 'ping_status_unknown'
PING_STATUS_UP = 'ping_status_up'
class scaleway.baremetal.v1.types.ServerPrivateNetwork(id: 'str', project_id: 'str', server_id: 'str', private_network_id: 'str', status: 'ServerPrivateNetworkStatus', vlan: 'Optional[int]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

The Private Network creation date.

id: str

The Private Network ID.

private_network_id: str

The Private Network ID.

project_id: str

The Private Network Project ID.

server_id: str

The server ID.

status: ServerPrivateNetworkStatus

The configuration status of the Private Network.

updated_at: Optional[datetime]

The date the Private Network was last modified.

vlan: Optional[int]

The VLAN ID associated to the Private Network.

class scaleway.baremetal.v1.types.ServerPrivateNetworkStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ATTACHED = 'attached'
ATTACHING = 'attaching'
DETACHING = 'detaching'
ERROR = 'error'
LOCKED = 'locked'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.types.ServerRescueServer(user: 'str', password: 'str')

Bases: object

password: str

Rescue password.

user: str

Rescue user name.

class scaleway.baremetal.v1.types.ServerStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

DELETING = 'deleting'
DELIVERING = 'delivering'
ERROR = 'error'
LOCKED = 'locked'
ORDERED = 'ordered'
OUT_OF_STOCK = 'out_of_stock'
READY = 'ready'
RESETTING = 'resetting'
STARTING = 'starting'
STOPPED = 'stopped'
STOPPING = 'stopping'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.types.SetServerPrivateNetworksResponse(server_private_networks: 'List[ServerPrivateNetwork]')

Bases: object

server_private_networks: List[ServerPrivateNetwork]
class scaleway.baremetal.v1.types.Setting(id: 'str', type_: 'SettingType', project_id: 'str', enabled: 'bool')

Bases: object

enabled: bool

Defines whether the setting is enabled.

id: str

ID of the setting.

project_id: str

ID of the Project ID.

type_: SettingType

Type of the setting.

class scaleway.baremetal.v1.types.SettingType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

SMTP = 'smtp'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.types.StartBMCAccessRequest(server_id: 'str', ip: 'str', zone: 'Optional[Zone]')

Bases: object

ip: str

The IP authorized to connect to the server.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.StartServerRequest(server_id: 'str', zone: 'Optional[Zone]', boot_type: 'Optional[ServerBootType]')

Bases: object

boot_type: Optional[ServerBootType]

The type of boot.

server_id: str

ID of the server to start.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.StopBMCAccessRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.StopServerRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server to stop.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.UpdateIPRequest(server_id: 'str', ip_id: 'str', zone: 'Optional[Zone]', reverse: 'Optional[str]')

Bases: object

ip_id: str

ID of the IP to update.

reverse: Optional[str]

New reverse IP to update, not updated if null.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.UpdateServerRequest(server_id: 'str', zone: 'Optional[Zone]', name: 'Optional[str]', description: 'Optional[str]', tags: 'Optional[List[str]]')

Bases: object

description: Optional[str]

Description associated with the server, max 255 characters, not updated if null.

name: Optional[str]

Name of the server (≠hostname), not updated if null.

server_id: str

ID of the server to update.

tags: Optional[List[str]]

Tags associated with the server, not updated if null.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.UpdateSettingRequest(setting_id: 'str', zone: 'Optional[Zone]', enabled: 'Optional[bool]')

Bases: object

enabled: Optional[bool]

Defines whether the setting is enabled.

setting_id: str

ID of the setting.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.types.ValidatePartitioningSchemaRequest(offer_id: 'str', os_id: 'str', zone: 'Optional[Zone]', partitioning_schema: 'Optional[Schema]')

Bases: object

offer_id: str

Offer ID of the server.

os_id: str

OS ID.

partitioning_schema: Optional[Schema]

Partitioning schema.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

Module contents

class scaleway.baremetal.v1.AddOptionServerRequest(server_id: 'str', option_id: 'str', zone: 'Optional[Zone]', expires_at: 'Optional[datetime]')

Bases: object

expires_at: Optional[datetime]

Auto expire the option after this date.

option_id: str

ID of the option to add.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.BMCAccess(url: 'str', login: 'str', password: 'str', expires_at: 'Optional[datetime]')

Bases: object

expires_at: Optional[datetime]

The date after which the BMC (Baseboard Management Controller) access will be closed.

login: str

The login to use for the BMC (Baseboard Management Controller) access authentification.

password: str

The password to use for the BMC (Baseboard Management Controller) access authentification.

url: str

URL to access to the server console.

class scaleway.baremetal.v1.BaremetalV1API(client: Client, *, bypass_validation: bool = False)

Bases: API

This API allows you to manage your Elastic Metal servers.

add_option_server(*, server_id: str, option_id: str, zone: Optional[str] = None, expires_at: Optional[datetime] = None) Server

Add server option. Add an option, such as Private Networks, to a specific server. :param server_id: ID of the server. :param option_id: ID of the option to add. :param zone: Zone to target. If none is passed will use default zone from the config. :param expires_at: Auto expire the option after this date. :return: Server

Usage:

result = api.add_option_server(
    server_id="example",
    option_id="example",
)
create_server(*, offer_id: str, name: str, description: str, zone: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None, tags: Optional[List[str]] = None, install: Optional[CreateServerRequestInstall] = None, option_ids: Optional[List[str]] = None) Server

Create an Elastic Metal server. Create a new Elastic Metal server. Once the server is created, proceed with the [installation of an OS](#post-3e949e). :param offer_id: Offer ID of the new server. :param name: Name of the server (≠hostname). :param description: Description associated with the server, max 255 characters. :param zone: Zone to target. If none is passed will use default zone from the config. :param organization_id: Organization ID with which the server will be created. One-Of (‘project_identifier’): at most one of ‘project_id’, ‘organization_id’ could be set. :param project_id: Project ID with which the server will be created. One-Of (‘project_identifier’): at most one of ‘project_id’, ‘organization_id’ could be set. :param tags: Tags to associate to the server. :param install: Object describing the configuration details of the OS installation on the server. :param option_ids: IDs of options to enable on server. :return: Server

Usage:

result = api.create_server(
    offer_id="example",
    name="example",
    description="example",
)
delete_option_server(*, server_id: str, option_id: str, zone: Optional[str] = None) Server

Delete server option. Delete an option from a specific server. :param server_id: ID of the server. :param option_id: ID of the option to delete. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.delete_option_server(
    server_id="example",
    option_id="example",
)
delete_server(*, server_id: str, zone: Optional[str] = None) Server

Delete an Elastic Metal server. Delete the server associated with the ID. :param server_id: ID of the server to delete. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.delete_server(
    server_id="example",
)
get_bmc_access(*, server_id: str, zone: Optional[str] = None) BMCAccess

Get BMC access. Get the BMC (Baseboard Management Controller) access associated with the ID, including the URL and login information needed to connect. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: BMCAccess

Usage:

result = api.get_bmc_access(
    server_id="example",
)
get_default_partitioning_schema(*, offer_id: str, os_id: str, zone: Optional[str] = None) Schema

Get default partitioning schema. Get the default partitioning schema for the given offer ID and OS ID. :param offer_id: ID of the offer. :param os_id: ID of the OS. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Schema

Usage:

result = api.get_default_partitioning_schema(
    offer_id="example",
    os_id="example",
)
get_offer(*, offer_id: str, zone: Optional[str] = None) Offer

Get offer. Get details of an offer identified by its offer ID. :param offer_id: ID of the researched Offer. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Offer

Usage:

result = api.get_offer(
    offer_id="example",
)
get_option(*, option_id: str, zone: Optional[str] = None) Option

Get option. Return specific option for the ID. :param option_id: ID of the option. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Option

Usage:

result = api.get_option(
    option_id="example",
)
get_os(*, os_id: str, zone: Optional[str] = None) OS

Get OS with an ID. Return the specific OS for the ID. :param os_id: ID of the OS. :param zone: Zone to target. If none is passed will use default zone from the config. :return: OS

Usage:

result = api.get_os(
    os_id="example",
)
get_server(*, server_id: str, zone: Optional[str] = None) Server

Get a specific Elastic Metal server. Get full details of an existing Elastic Metal server associated with the ID. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.get_server(
    server_id="example",
)
get_server_metrics(*, server_id: str, zone: Optional[str] = None) GetServerMetricsResponse

Return server metrics. Get the ping status of the server associated with the ID. :param server_id: Server ID to get the metrics. :param zone: Zone to target. If none is passed will use default zone from the config. :return: GetServerMetricsResponse

Usage:

result = api.get_server_metrics(
    server_id="example",
)
install_server(*, server_id: str, os_id: str, hostname: str, ssh_key_ids: List[str], zone: Optional[str] = None, user: Optional[str] = None, password: Optional[str] = None, service_user: Optional[str] = None, service_password: Optional[str] = None, partitioning_schema: Optional[Schema] = None) Server

Install an Elastic Metal server. Install an Operating System (OS) on the Elastic Metal server with a specific ID. :param server_id: Server ID to install. :param os_id: ID of the OS to installation on the server. :param hostname: Hostname of the server. :param ssh_key_ids: SSH key IDs authorized on the server. :param zone: Zone to target. If none is passed will use default zone from the config. :param user: User used for the installation. :param password: Password used for the installation. :param service_user: User used for the service to install. :param service_password: Password used for the service to install. :param partitioning_schema: Partitioning schema. :return: Server

Usage:

result = api.install_server(
    server_id="example",
    os_id="example",
    hostname="example",
    ssh_key_ids=[],
)
list_offers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, subscription_period: Optional[OfferSubscriptionPeriod] = None, name: Optional[str] = None) ListOffersResponse

List offers. List all available Elastic Metal server configurations. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of offers per page. :param subscription_period: Subscription period type to filter offers by. :param name: Offer name to filter offers by. :return: ListOffersResponse

Usage:

result = api.list_offers()
list_offers_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, subscription_period: Optional[OfferSubscriptionPeriod] = None, name: Optional[str] = None) List[Offer]

List offers. List all available Elastic Metal server configurations. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of offers per page. :param subscription_period: Subscription period type to filter offers by. :param name: Offer name to filter offers by. :return: List[Offer]

Usage:

result = api.list_offers_all()
list_options(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None, name: Optional[str] = None) ListOptionsResponse

List options. List all options matching with filters. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of options per page. :param offer_id: Offer ID to filter options for. :param name: Name to filter options for. :return: ListOptionsResponse

Usage:

result = api.list_options()
list_options_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None, name: Optional[str] = None) List[Option]

List options. List all options matching with filters. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of options per page. :param offer_id: Offer ID to filter options for. :param name: Name to filter options for. :return: List[Option]

Usage:

result = api.list_options_all()
list_os(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None) ListOSResponse

List available OSes. List all OSes that are available for installation on Elastic Metal servers. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of OS per page. :param offer_id: Offer IDs to filter OSes for. :return: ListOSResponse

Usage:

result = api.list_os()
list_os_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, offer_id: Optional[str] = None) List[OS]

List available OSes. List all OSes that are available for installation on Elastic Metal servers. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of OS per page. :param offer_id: Offer IDs to filter OSes for. :return: List[OS]

Usage:

result = api.list_os_all()
list_server_events(*, server_id: str, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerEventsRequestOrderBy] = None) ListServerEventsResponse

List server events. List event (i.e. start/stop/reboot) associated to the server ID. :param server_id: ID of the server events searched. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of server events per page. :param order_by: Order of the server events. :return: ListServerEventsResponse

Usage:

result = api.list_server_events(
    server_id="example",
)
list_server_events_all(*, server_id: str, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerEventsRequestOrderBy] = None) List[ServerEvent]

List server events. List event (i.e. start/stop/reboot) associated to the server ID. :param server_id: ID of the server events searched. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of server events per page. :param order_by: Order of the server events. :return: List[ServerEvent]

Usage:

result = api.list_server_events_all(
    server_id="example",
)
list_servers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServersRequestOrderBy] = None, tags: Optional[List[str]] = None, status: Optional[List[str]] = None, name: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None, option_id: Optional[str] = None) ListServersResponse

List Elastic Metal servers for an Organization. List Elastic Metal servers for a specific Organization. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of servers per page. :param order_by: Order of the servers. :param tags: Tags to filter for. :param status: Status to filter for. :param name: Names to filter for. :param organization_id: Organization ID to filter for. :param project_id: Project ID to filter for. :param option_id: Option ID to filter for. :return: ListServersResponse

Usage:

result = api.list_servers()
list_servers_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServersRequestOrderBy] = None, tags: Optional[List[str]] = None, status: Optional[List[str]] = None, name: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None, option_id: Optional[str] = None) List[Server]

List Elastic Metal servers for an Organization. List Elastic Metal servers for a specific Organization. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Number of servers per page. :param order_by: Order of the servers. :param tags: Tags to filter for. :param status: Status to filter for. :param name: Names to filter for. :param organization_id: Organization ID to filter for. :param project_id: Project ID to filter for. :param option_id: Option ID to filter for. :return: List[Server]

Usage:

result = api.list_servers_all()
list_settings(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListSettingsRequestOrderBy] = None, project_id: Optional[str] = None) ListSettingsResponse

List all settings. Return all settings for a Project ID. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Set the maximum list size. :param order_by: Sort order for items in the response. :param project_id: ID of the Project. :return: ListSettingsResponse

Usage:

result = api.list_settings()
list_settings_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListSettingsRequestOrderBy] = None, project_id: Optional[str] = None) List[Setting]

List all settings. Return all settings for a Project ID. :param zone: Zone to target. If none is passed will use default zone from the config. :param page: Page number. :param page_size: Set the maximum list size. :param order_by: Sort order for items in the response. :param project_id: ID of the Project. :return: List[Setting]

Usage:

result = api.list_settings_all()
reboot_server(*, server_id: str, zone: Optional[str] = None, boot_type: Optional[ServerBootType] = None) Server

Reboot an Elastic Metal server. Reboot the Elastic Metal server associated with the ID, use the boot_type rescue to reboot the server in rescue mode. :param server_id: ID of the server to reboot. :param zone: Zone to target. If none is passed will use default zone from the config. :param boot_type: The type of boot. :return: Server

Usage:

result = api.reboot_server(
    server_id="example",
)
start_bmc_access(*, server_id: str, ip: str, zone: Optional[str] = None) BMCAccess

Start BMC access. Start BMC (Baseboard Management Controller) access associated with the ID. The BMC (Baseboard Management Controller) access is available one hour after the installation of the server. You need first to create an option Remote Access. You will find the ID and the price with a call to listOffers (https://developers.scaleway.com/en/products/baremetal/api/#get-78db92). Then add the option https://developers.scaleway.com/en/products/baremetal/api/#post-b14abd. After adding the BMC option, you need to Get Remote Access to get the login/password https://developers.scaleway.com/en/products/baremetal/api/#get-cefc0f. Do not forget to delete the Option after use. :param server_id: ID of the server. :param ip: The IP authorized to connect to the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: BMCAccess

Usage:

result = api.start_bmc_access(
    server_id="example",
    ip="example",
)
start_server(*, server_id: str, zone: Optional[str] = None, boot_type: Optional[ServerBootType] = None) Server

Start an Elastic Metal server. Start the server associated with the ID. :param server_id: ID of the server to start. :param zone: Zone to target. If none is passed will use default zone from the config. :param boot_type: The type of boot. :return: Server

Usage:

result = api.start_server(
    server_id="example",
)
stop_bmc_access(*, server_id: str, zone: Optional[str] = None) None

Stop BMC access. Stop BMC (Baseboard Management Controller) access associated with the ID. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.stop_bmc_access(
    server_id="example",
)
stop_server(*, server_id: str, zone: Optional[str] = None) Server

Stop an Elastic Metal server. Stop the server associated with the ID. The server remains allocated to your account and all data remains on the local storage of the server. :param server_id: ID of the server to stop. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.stop_server(
    server_id="example",
)
update_ip(*, server_id: str, ip_id: str, zone: Optional[str] = None, reverse: Optional[str] = None) IP

Update IP. Configure the IP address associated with the server ID and IP ID. You can use this method to set a reverse DNS for an IP address. :param server_id: ID of the server. :param ip_id: ID of the IP to update. :param zone: Zone to target. If none is passed will use default zone from the config. :param reverse: New reverse IP to update, not updated if null. :return: IP

Usage:

result = api.update_ip(
    server_id="example",
    ip_id="example",
)
update_server(*, server_id: str, zone: Optional[str] = None, name: Optional[str] = None, description: Optional[str] = None, tags: Optional[List[str]] = None) Server

Update an Elastic Metal server. Update the server associated with the ID. You can update parameters such as the server’s name, tags and description. Any parameters left null in the request body are not updated. :param server_id: ID of the server to update. :param zone: Zone to target. If none is passed will use default zone from the config. :param name: Name of the server (≠hostname), not updated if null. :param description: Description associated with the server, max 255 characters, not updated if null. :param tags: Tags associated with the server, not updated if null. :return: Server

Usage:

result = api.update_server(
    server_id="example",
)
update_setting(*, setting_id: str, zone: Optional[str] = None, enabled: Optional[bool] = None) Setting

Update setting. Update a setting for a Project ID (enable or disable). :param setting_id: ID of the setting. :param zone: Zone to target. If none is passed will use default zone from the config. :param enabled: Defines whether the setting is enabled. :return: Setting

Usage:

result = api.update_setting(
    setting_id="example",
)
validate_partitioning_schema(*, offer_id: str, os_id: str, zone: Optional[str] = None, partitioning_schema: Optional[Schema] = None) None

Validate client partitioning schema. Validate the incoming partitioning schema from a user before installing the server. Return default ErrorCode if invalid. :param offer_id: Offer ID of the server. :param os_id: OS ID. :param zone: Zone to target. If none is passed will use default zone from the config. :param partitioning_schema: Partitioning schema.

Usage:

result = api.validate_partitioning_schema(
    offer_id="example",
    os_id="example",
)
wait_for_server(*, server_id: str, zone: Optional[str] = None, options: Optional[WaitForOptions[Server, bool]] = None) Server

Get a specific Elastic Metal server. Get full details of an existing Elastic Metal server associated with the ID. :param server_id: ID of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Server

Usage:

result = api.get_server(
    server_id="example",
)
class scaleway.baremetal.v1.BaremetalV1PrivateNetworkAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Elastic Metal - Private Network API.

add_server_private_network(*, server_id: str, private_network_id: str, zone: Optional[str] = None) ServerPrivateNetwork

Add a server to a Private Network. :param server_id: The ID of the server. :param private_network_id: The ID of the Private Network. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerPrivateNetwork

Usage:

result = api.add_server_private_network(
    server_id="example",
    private_network_id="example",
)
delete_server_private_network(*, server_id: str, private_network_id: str, zone: Optional[str] = None) None

Delete a Private Network. :param server_id: The ID of the server. :param private_network_id: The ID of the Private Network. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.delete_server_private_network(
    server_id="example",
    private_network_id="example",
)
list_server_private_networks(*, zone: Optional[str] = None, order_by: Optional[ListServerPrivateNetworksRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, server_id: Optional[str] = None, private_network_id: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None) ListServerPrivateNetworksResponse

List the Private Networks of a server. :param zone: Zone to target. If none is passed will use default zone from the config. :param order_by: The sort order for the returned Private Networks. :param page: The page number for the returned Private Networks. :param page_size: The maximum number of Private Networks per page. :param server_id: Filter Private Networks by server ID. :param private_network_id: Filter Private Networks by Private Network ID. :param organization_id: Filter Private Networks by Organization ID. :param project_id: Filter Private Networks by Project ID. :return: ListServerPrivateNetworksResponse

Usage:

result = api.list_server_private_networks()
list_server_private_networks_all(*, zone: Optional[str] = None, order_by: Optional[ListServerPrivateNetworksRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, server_id: Optional[str] = None, private_network_id: Optional[str] = None, organization_id: Optional[str] = None, project_id: Optional[str] = None) List[ServerPrivateNetwork]

List the Private Networks of a server. :param zone: Zone to target. If none is passed will use default zone from the config. :param order_by: The sort order for the returned Private Networks. :param page: The page number for the returned Private Networks. :param page_size: The maximum number of Private Networks per page. :param server_id: Filter Private Networks by server ID. :param private_network_id: Filter Private Networks by Private Network ID. :param organization_id: Filter Private Networks by Organization ID. :param project_id: Filter Private Networks by Project ID. :return: List[ServerPrivateNetwork]

Usage:

result = api.list_server_private_networks_all()
set_server_private_networks(*, server_id: str, private_network_ids: List[str], zone: Optional[str] = None) SetServerPrivateNetworksResponse

Set multiple Private Networks on a server. :param server_id: The ID of the server. :param private_network_ids: The IDs of the Private Networks. :param zone: Zone to target. If none is passed will use default zone from the config. :return: SetServerPrivateNetworksResponse

Usage:

result = api.set_server_private_networks(
    server_id="example",
    private_network_ids=[],
)
class scaleway.baremetal.v1.CPU(name: 'str', core_count: 'int', thread_count: 'int', frequency: 'int', benchmark: 'str')

Bases: object

benchmark: str

Benchmark of the CPU.

core_count: int

Number of CPU cores.

frequency: int

Frequency of the CPU in MHz.

name: str

Name of the CPU.

thread_count: int

Number CPU threads.

class scaleway.baremetal.v1.CertificationOption

Bases: object

class scaleway.baremetal.v1.CreateServerRequest(offer_id: 'str', name: 'str', description: 'str', zone: 'Optional[Zone]', tags: 'Optional[List[str]]', install: 'Optional[CreateServerRequestInstall]', option_ids: 'Optional[List[str]]', project_id: 'Optional[str]', organization_id: 'Optional[str]')

Bases: object

description: str

Description associated with the server, max 255 characters.

install: Optional[CreateServerRequestInstall]

Object describing the configuration details of the OS installation on the server.

name: str

Name of the server (≠hostname).

offer_id: str

Offer ID of the new server.

option_ids: Optional[List[str]]

IDs of options to enable on server.

organization_id: Optional[str]
project_id: Optional[str]
tags: Optional[List[str]]

Tags to associate to the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.CreateServerRequestInstall(os_id: 'str', hostname: 'str', ssh_key_ids: 'List[str]', user: 'Optional[str]', password: 'Optional[str]', service_user: 'Optional[str]', service_password: 'Optional[str]', partitioning_schema: 'Optional[Schema]')

Bases: object

hostname: str

Hostname of the server.

os_id: str

ID of the OS to installation on the server.

partitioning_schema: Optional[Schema]

Partitioning schema.

password: Optional[str]

Password for the installation.

service_password: Optional[str]

Password used for the service to install.

service_user: Optional[str]

Regular user that runs the service to be installed on the server.

ssh_key_ids: List[str]

SSH key IDs authorized on the server.

user: Optional[str]

User for the installation.

class scaleway.baremetal.v1.DeleteOptionServerRequest(server_id: 'str', option_id: 'str', zone: 'Optional[Zone]')

Bases: object

option_id: str

ID of the option to delete.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.DeleteServerRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server to delete.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.Disk(capacity: 'int', type_: 'str')

Bases: object

capacity: int

Capacity of the disk in bytes.

type_: str

Type of the disk.

class scaleway.baremetal.v1.GPU(name: 'str', vram: 'int')

Bases: object

name: str

Name of the GPU.

vram: int

Capacity of the vram in bytes.

class scaleway.baremetal.v1.GetBMCAccessRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.GetDefaultPartitioningSchemaRequest(offer_id: 'str', os_id: 'str', zone: 'Optional[Zone]')

Bases: object

offer_id: str

ID of the offer.

os_id: str

ID of the OS.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.GetOSRequest(os_id: 'str', zone: 'Optional[Zone]')

Bases: object

os_id: str

ID of the OS.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.GetOfferRequest(offer_id: 'str', zone: 'Optional[Zone]')

Bases: object

offer_id: str

ID of the researched Offer.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.GetOptionRequest(option_id: 'str', zone: 'Optional[Zone]')

Bases: object

option_id: str

ID of the option.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.GetServerMetricsRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

Server ID to get the metrics.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.GetServerMetricsResponse(pings: 'Optional[TimeSeries]')

Bases: object

pings: Optional[TimeSeries]

Timeseries object representing pings on the server.

class scaleway.baremetal.v1.GetServerRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.IP(id: 'str', address: 'str', reverse: 'str', version: 'IPVersion', reverse_status: 'IPReverseStatus', reverse_status_message: 'str')

Bases: object

address: str

Address of the IP.

id: str

ID of the IP.

reverse: str

Reverse IP value.

reverse_status: IPReverseStatus

Status of the reverse.

reverse_status_message: str

A message related to the reverse status, e.g. in case of an error.

version: IPVersion

Version of IP (v4 or v6).

class scaleway.baremetal.v1.IPReverseStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
ERROR = 'error'
PENDING = 'pending'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.IPVersion(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

I_PV4 = 'i_pv4'
I_PV6 = 'i_pv6'
class scaleway.baremetal.v1.InstallServerRequest(server_id: 'str', os_id: 'str', hostname: 'str', ssh_key_ids: 'List[str]', zone: 'Optional[Zone]', user: 'Optional[str]', password: 'Optional[str]', service_user: 'Optional[str]', service_password: 'Optional[str]', partitioning_schema: 'Optional[Schema]')

Bases: object

hostname: str

Hostname of the server.

os_id: str

ID of the OS to installation on the server.

partitioning_schema: Optional[Schema]

Partitioning schema.

password: Optional[str]

Password used for the installation.

server_id: str

Server ID to install.

service_password: Optional[str]

Password used for the service to install.

service_user: Optional[str]

User used for the service to install.

ssh_key_ids: List[str]

SSH key IDs authorized on the server.

user: Optional[str]

User used for the installation.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.LicenseOption(os_id: 'str')

Bases: object

os_id: str
class scaleway.baremetal.v1.ListOSRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', offer_id: 'Optional[str]')

Bases: object

offer_id: Optional[str]

Offer IDs to filter OSes for.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of OS per page.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ListOSResponse(total_count: 'int', os: 'List[OS]')

Bases: object

os: List[OS]

OS that match filters.

total_count: int

Total count of matching OS.

class scaleway.baremetal.v1.ListOffersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', subscription_period: 'Optional[OfferSubscriptionPeriod]', name: 'Optional[str]')

Bases: object

name: Optional[str]

Offer name to filter offers by.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of offers per page.

subscription_period: Optional[OfferSubscriptionPeriod]

Subscription period type to filter offers by.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ListOffersResponse(total_count: 'int', offers: 'List[Offer]')

Bases: object

offers: List[Offer]

Offers that match filters.

total_count: int

Total count of matching offers.

class scaleway.baremetal.v1.ListOptionsRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', offer_id: 'Optional[str]', name: 'Optional[str]')

Bases: object

name: Optional[str]

Name to filter options for.

offer_id: Optional[str]

Offer ID to filter options for.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of options per page.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ListOptionsResponse(total_count: 'int', options: 'List[Option]')

Bases: object

options: List[Option]

Options that match filters.

total_count: int

Total count of matching options.

class scaleway.baremetal.v1.ListServerEventsRequest(server_id: 'str', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServerEventsRequestOrderBy]')

Bases: object

order_by: Optional[ListServerEventsRequestOrderBy]

Order of the server events.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of server events per page.

server_id: str

ID of the server events searched.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ListServerEventsRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.baremetal.v1.ListServerEventsResponse(total_count: 'int', events: 'List[ServerEvent]')

Bases: object

events: List[ServerEvent]

Server events that match filters.

total_count: int

Total count of matching events.

class scaleway.baremetal.v1.ListServerPrivateNetworksRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
UPDATED_AT_ASC = 'updated_at_asc'
UPDATED_AT_DESC = 'updated_at_desc'
class scaleway.baremetal.v1.ListServerPrivateNetworksResponse(server_private_networks: 'List[ServerPrivateNetwork]', total_count: 'int')

Bases: object

server_private_networks: List[ServerPrivateNetwork]
total_count: int
class scaleway.baremetal.v1.ListServersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServersRequestOrderBy]', tags: 'Optional[List[str]]', status: 'Optional[List[str]]', name: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]', option_id: 'Optional[str]')

Bases: object

name: Optional[str]

Names to filter for.

option_id: Optional[str]

Option ID to filter for.

order_by: Optional[ListServersRequestOrderBy]

Order of the servers.

organization_id: Optional[str]

Organization ID to filter for.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of servers per page.

project_id: Optional[str]

Project ID to filter for.

status: Optional[List[str]]

Status to filter for.

tags: Optional[List[str]]

Tags to filter for.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ListServersRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.baremetal.v1.ListServersResponse(total_count: 'int', servers: 'List[Server]')

Bases: object

servers: List[Server]

Array of Elastic Metal server objects matching the filters in the request.

total_count: int

Total count of matching servers.

class scaleway.baremetal.v1.ListSettingsRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListSettingsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListSettingsRequestOrderBy]

Sort order for items in the response.

page: Optional[int]

Page number.

page_size: Optional[int]

Set the maximum list size.

project_id: Optional[str]

ID of the Project.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ListSettingsRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
class scaleway.baremetal.v1.ListSettingsResponse(total_count: 'int', settings: 'List[Setting]')

Bases: object

settings: List[Setting]

Settings that match filters.

total_count: int

Total count of matching settings.

class scaleway.baremetal.v1.Memory(capacity: 'int', type_: 'str', frequency: 'int', is_ecc: 'bool')

Bases: object

capacity: int

Capacity of the memory in bytes.

frequency: int

Frequency of the memory in MHz.

is_ecc: bool

True if the memory is an error-correcting code memory.

type_: str

Type of the memory.

class scaleway.baremetal.v1.OS(id: 'str', name: 'str', version: 'str', logo_url: 'str', ssh: 'Optional[OSOSField]', user: 'Optional[OSOSField]', password: 'Optional[OSOSField]', service_user: 'Optional[OSOSField]', service_password: 'Optional[OSOSField]', enabled: 'bool', license_required: 'bool', allowed: 'bool', custom_partitioning_supported: 'bool')

Bases: object

allowed: bool

Defines if a specific Organization is allowed to install this OS type.

custom_partitioning_supported: bool

Defines if custom partitioning is supported by this OS.

enabled: bool

Defines if the operating system is enabled or not.

id: str

ID of the OS.

license_required: bool

License required (check server options for pricing details).

logo_url: str

URL of this OS’s logo.

name: str

Name of the OS.

password: Optional[OSOSField]

Object defining the password requirements to install the OS.

service_password: Optional[OSOSField]

Object defining the password requirements to install the service.

service_user: Optional[OSOSField]

Object defining the username requirements to install the service.

ssh: Optional[OSOSField]

Object defining the SSH requirements to install the OS.

user: Optional[OSOSField]

Object defining the username requirements to install the OS.

version: str

Version of the OS.

class scaleway.baremetal.v1.OSOSField(editable: 'bool', required: 'bool', default_value: 'Optional[str]')

Bases: object

default_value: Optional[str]
editable: bool
required: bool
class scaleway.baremetal.v1.Offer(id: 'str', name: 'str', stock: 'OfferStock', bandwidth: 'int', max_bandwidth: 'int', commercial_range: 'str', disks: 'List[Disk]', enable: 'bool', cpus: 'List[CPU]', memories: 'List[Memory]', price_per_hour: 'Optional[Money]', price_per_month: 'Optional[Money]', quota_name: 'str', persistent_memories: 'List[PersistentMemory]', raid_controllers: 'List[RaidController]', incompatible_os_ids: 'List[str]', subscription_period: 'OfferSubscriptionPeriod', operation_path: 'str', options: 'List[OfferOptionOffer]', private_bandwidth: 'int', shared_bandwidth: 'bool', tags: 'List[str]', gpus: 'List[GPU]', fee: 'Optional[Money]')

Bases: object

bandwidth: int

Public bandwidth available (in bits/s) with the offer.

commercial_range: str

Commercial range of the offer.

cpus: List[CPU]

CPU specifications of the offer.

disks: List[Disk]

Disks specifications of the offer.

enable: bool

Defines whether the offer is currently available.

fee: Optional[Money]

One time fee invoiced by Scaleway for the setup and activation of the server.

gpus: List[GPU]

GPU specifications of the offer.

id: str

ID of the offer.

incompatible_os_ids: List[str]

Array of OS images IDs incompatible with the server.

max_bandwidth: int

Maximum public bandwidth available (in bits/s) depending on available options.

memories: List[Memory]

Memory specifications of the offer.

name: str

Name of the offer.

operation_path: str

Operation path of the service.

options: List[OfferOptionOffer]

Available options for customization of the server.

persistent_memories: List[PersistentMemory]

Persistent memory specifications of the offer.

price_per_hour: Optional[Money]

Price of the offer for the next 60 minutes (a server order at 11h32 will be payed until 12h32).

price_per_month: Optional[Money]

Monthly price of the offer, if subscribing on a monthly basis.

private_bandwidth: int

Private bandwidth available in bits/s with the offer.

quota_name: str

Name of the quota associated to the offer.

raid_controllers: List[RaidController]

Raid controller specifications of the offer.

shared_bandwidth: bool

Defines whether the offer’s bandwidth is shared or not.

stock: OfferStock

Stock level.

subscription_period: OfferSubscriptionPeriod

Period of subscription for the offer.

tags: List[str]

Array of tags attached to the offer.

class scaleway.baremetal.v1.OfferOptionOffer(id: 'str', name: 'str', enabled: 'bool', subscription_period: 'OfferSubscriptionPeriod', manageable: 'bool', price: 'Optional[Money]', os_id: 'Optional[str]', license: 'Optional[LicenseOption]', public_bandwidth: 'Optional[PublicBandwidthOption]', private_network: 'Optional[PrivateNetworkOption]', remote_access: 'Optional[RemoteAccessOption]', certification: 'Optional[CertificationOption]')

Bases: object

certification: Optional[CertificationOption]
enabled: bool

If true the option is enabled and included by default in the offer

If false the option is available for the offer but not included by default.

id: str

ID of the option.

license: Optional[LicenseOption]
manageable: bool

Boolean to know if option could be managed.

name: str

Name of the option.

os_id: Optional[str]

Deprecated, use LicenseOptionVars.os_id instead.

price: Optional[Money]

Price of the option.

private_network: Optional[PrivateNetworkOption]
public_bandwidth: Optional[PublicBandwidthOption]
remote_access: Optional[RemoteAccessOption]
subscription_period: OfferSubscriptionPeriod

Period of subscription for the offer.

class scaleway.baremetal.v1.OfferStock(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AVAILABLE = 'available'
EMPTY = 'empty'
LOW = 'low'
class scaleway.baremetal.v1.OfferSubscriptionPeriod(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

HOURLY = 'hourly'
MONTHLY = 'monthly'
UNKNOWN_SUBSCRIPTION_PERIOD = 'unknown_subscription_period'
class scaleway.baremetal.v1.Option(id: 'str', name: 'str', manageable: 'bool', license: 'Optional[LicenseOption]', public_bandwidth: 'Optional[PublicBandwidthOption]', private_network: 'Optional[PrivateNetworkOption]', remote_access: 'Optional[RemoteAccessOption]', certification: 'Optional[CertificationOption]')

Bases: object

certification: Optional[CertificationOption]
id: str

ID of the option.

license: Optional[LicenseOption]
manageable: bool

Defines whether the option is manageable (could be added or removed).

name: str

Name of the option.

private_network: Optional[PrivateNetworkOption]
public_bandwidth: Optional[PublicBandwidthOption]
remote_access: Optional[RemoteAccessOption]
class scaleway.baremetal.v1.PersistentMemory(capacity: 'int', type_: 'str', frequency: 'int')

Bases: object

capacity: int

Capacity of the memory in bytes.

frequency: int

Frequency of the memory in MHz.

type_: str

Type of the memory.

class scaleway.baremetal.v1.PrivateNetworkApiAddServerPrivateNetworkRequest(server_id: 'str', private_network_id: 'str', zone: 'Optional[Zone]')

Bases: object

private_network_id: str

The ID of the Private Network.

server_id: str

The ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.PrivateNetworkApiDeleteServerPrivateNetworkRequest(server_id: 'str', private_network_id: 'str', zone: 'Optional[Zone]')

Bases: object

private_network_id: str

The ID of the Private Network.

server_id: str

The ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.PrivateNetworkApiListServerPrivateNetworksRequest(zone: 'Optional[Zone]', order_by: 'Optional[ListServerPrivateNetworksRequestOrderBy]', page: 'Optional[int]', page_size: 'Optional[int]', server_id: 'Optional[str]', private_network_id: 'Optional[str]', organization_id: 'Optional[str]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListServerPrivateNetworksRequestOrderBy]

The sort order for the returned Private Networks.

organization_id: Optional[str]

Filter Private Networks by Organization ID.

page: Optional[int]

The page number for the returned Private Networks.

page_size: Optional[int]

The maximum number of Private Networks per page.

private_network_id: Optional[str]

Filter Private Networks by Private Network ID.

project_id: Optional[str]

Filter Private Networks by Project ID.

server_id: Optional[str]

Filter Private Networks by server ID.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.PrivateNetworkApiSetServerPrivateNetworksRequest(server_id: 'str', private_network_ids: 'List[str]', zone: 'Optional[Zone]')

Bases: object

private_network_ids: List[str]

The IDs of the Private Networks.

server_id: str

The ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.PrivateNetworkOption(bandwidth_in_bps: 'int')

Bases: object

bandwidth_in_bps: int
class scaleway.baremetal.v1.PublicBandwidthOption(bandwidth_in_bps: 'int')

Bases: object

bandwidth_in_bps: int
class scaleway.baremetal.v1.RaidController(model: 'str', raid_level: 'List[str]')

Bases: object

model: str
raid_level: List[str]
class scaleway.baremetal.v1.RebootServerRequest(server_id: 'str', zone: 'Optional[Zone]', boot_type: 'Optional[ServerBootType]')

Bases: object

boot_type: Optional[ServerBootType]

The type of boot.

server_id: str

ID of the server to reboot.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.RemoteAccessOption

Bases: object

class scaleway.baremetal.v1.Schema(disks: 'List[SchemaDisk]', raids: 'List[SchemaRAID]', filesystems: 'List[SchemaFilesystem]', zfs: 'Optional[SchemaZFS]')

Bases: object

disks: List[SchemaDisk]
filesystems: List[SchemaFilesystem]
raids: List[SchemaRAID]
zfs: Optional[SchemaZFS]
class scaleway.baremetal.v1.SchemaDisk(device: 'str', partitions: 'List[SchemaPartition]')

Bases: object

device: str
partitions: List[SchemaPartition]
class scaleway.baremetal.v1.SchemaFilesystem(device: 'str', format: 'SchemaFilesystemFormat', mountpoint: 'str')

Bases: object

device: str
format: SchemaFilesystemFormat
mountpoint: str
class scaleway.baremetal.v1.SchemaFilesystemFormat(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

EXT4 = 'ext4'
FAT32 = 'fat32'
SWAP = 'swap'
UNKNOWN_FORMAT = 'unknown_format'
XFS = 'xfs'
ZFS = 'zfs'
class scaleway.baremetal.v1.SchemaPartition(label: 'SchemaPartitionLabel', number: 'int', size: 'int')

Bases: object

label: SchemaPartitionLabel
number: int
size: int
class scaleway.baremetal.v1.SchemaPartitionLabel(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BOOT = 'boot'
DATA = 'data'
HOME = 'home'
LEGACY = 'legacy'
RAID = 'raid'
ROOT = 'root'
SWAP = 'swap'
UEFI = 'uefi'
UNKNOWN_PARTITION_LABEL = 'unknown_partition_label'
ZFS = 'zfs'
class scaleway.baremetal.v1.SchemaPool(name: 'str', type_: 'SchemaPoolType', devices: 'List[str]', options: 'List[str]', filesystem_options: 'List[str]')

Bases: object

devices: List[str]
filesystem_options: List[str]
name: str
options: List[str]
type_: SchemaPoolType
class scaleway.baremetal.v1.SchemaPoolType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

MIRROR = 'mirror'
NO_RAID = 'no_raid'
RAIDZ1 = 'raidz1'
RAIDZ2 = 'raidz2'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.baremetal.v1.SchemaRAID(name: 'str', level: 'SchemaRAIDLevel', devices: 'List[str]')

Bases: object

devices: List[str]
level: SchemaRAIDLevel
name: str
class scaleway.baremetal.v1.SchemaRAIDLevel(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

RAID_LEVEL_0 = 'raid_level_0'
RAID_LEVEL_1 = 'raid_level_1'
RAID_LEVEL_10 = 'raid_level_10'
RAID_LEVEL_5 = 'raid_level_5'
RAID_LEVEL_6 = 'raid_level_6'
UNKNOWN_RAID_LEVEL = 'unknown_raid_level'
class scaleway.baremetal.v1.SchemaZFS(pools: 'List[SchemaPool]')

Bases: object

pools: List[SchemaPool]
class scaleway.baremetal.v1.Server(id: 'str', organization_id: 'str', project_id: 'str', name: 'str', description: 'str', status: 'ServerStatus', updated_at: 'Optional[datetime]', created_at: 'Optional[datetime]', offer_id: 'str', offer_name: 'str', tags: 'List[str]', ips: 'List[IP]', domain: 'str', boot_type: 'ServerBootType', zone: 'Zone', ping_status: 'ServerPingStatus', options: 'List[ServerOption]', install: 'Optional[ServerInstall]', rescue_server: 'Optional[ServerRescueServer]')

Bases: object

boot_type: ServerBootType

Boot type of the server.

created_at: Optional[datetime]

Creation date of the server.

description: str

Description of the server.

domain: str

Domain of the server.

id: str

ID of the server.

install: Optional[ServerInstall]

Configuration of the installation.

ips: List[IP]

Array of IPs attached to the server.

name: str

Name of the server.

offer_id: str

Offer ID of the server.

offer_name: str

Offer name of the server.

options: List[ServerOption]

Options enabled on the server.

organization_id: str

Organization ID the server is attached to.

ping_status: ServerPingStatus

Status of server ping.

project_id: str

Project ID the server is attached to.

rescue_server: Optional[ServerRescueServer]

Configuration of rescue boot.

status: ServerStatus

Status of the server.

tags: List[str]

Array of custom tags attached to the server.

updated_at: Optional[datetime]

Last modification date of the server.

zone: str

Zone in which is the server located.

class scaleway.baremetal.v1.ServerBootType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

NORMAL = 'normal'
RESCUE = 'rescue'
UNKNOWN_BOOT_TYPE = 'unknown_boot_type'
class scaleway.baremetal.v1.ServerEvent(id: 'str', action: 'str', updated_at: 'Optional[datetime]', created_at: 'Optional[datetime]')

Bases: object

action: str

The action that will be applied to the server.

created_at: Optional[datetime]

Date of creation of the action.

id: str

ID of the server to which the action will be applied.

updated_at: Optional[datetime]

Date of last modification of the action.

class scaleway.baremetal.v1.ServerInstall(os_id: 'str', hostname: 'str', ssh_key_ids: 'List[str]', status: 'ServerInstallStatus', user: 'str', service_user: 'str', service_url: 'str', partitioning_schema: 'Optional[Schema]')

Bases: object

hostname: str

Host defined during the server installation.

os_id: str

ID of the OS.

partitioning_schema: Optional[Schema]

Partitioning schema.

service_url: str

Address of the installed service.

service_user: str

Service user defined in the server installation, or the default user if none were specified.

ssh_key_ids: List[str]

SSH public key IDs defined during server installation.

status: ServerInstallStatus

Status of the server installation.

user: str

User defined in the server installation, or the default user if none were specified.

class scaleway.baremetal.v1.ServerInstallStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

COMPLETED = 'completed'
ERROR = 'error'
INSTALLING = 'installing'
TO_INSTALL = 'to_install'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.ServerOption(id: 'str', name: 'str', status: 'ServerOptionOptionStatus', manageable: 'bool', expires_at: 'Optional[datetime]', license: 'Optional[LicenseOption]', public_bandwidth: 'Optional[PublicBandwidthOption]', private_network: 'Optional[PrivateNetworkOption]', remote_access: 'Optional[RemoteAccessOption]', certification: 'Optional[CertificationOption]')

Bases: object

certification: Optional[CertificationOption]
expires_at: Optional[datetime]

Auto expiration date for compatible options.

id: str

ID of the option.

license: Optional[LicenseOption]
manageable: bool

Defines whether the option can be managed (added or removed).

name: str

Name of the option.

private_network: Optional[PrivateNetworkOption]
public_bandwidth: Optional[PublicBandwidthOption]
remote_access: Optional[RemoteAccessOption]
status: ServerOptionOptionStatus

Status of the option on this server.

class scaleway.baremetal.v1.ServerOptionOptionStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

OPTION_STATUS_DISABLING = 'option_status_disabling'
OPTION_STATUS_ENABLE = 'option_status_enable'
OPTION_STATUS_ENABLING = 'option_status_enabling'
OPTION_STATUS_ERROR = 'option_status_error'
OPTION_STATUS_UNKNOWN = 'option_status_unknown'
class scaleway.baremetal.v1.ServerPingStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

PING_STATUS_DOWN = 'ping_status_down'
PING_STATUS_UNKNOWN = 'ping_status_unknown'
PING_STATUS_UP = 'ping_status_up'
class scaleway.baremetal.v1.ServerPrivateNetwork(id: 'str', project_id: 'str', server_id: 'str', private_network_id: 'str', status: 'ServerPrivateNetworkStatus', vlan: 'Optional[int]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

The Private Network creation date.

id: str

The Private Network ID.

private_network_id: str

The Private Network ID.

project_id: str

The Private Network Project ID.

server_id: str

The server ID.

status: ServerPrivateNetworkStatus

The configuration status of the Private Network.

updated_at: Optional[datetime]

The date the Private Network was last modified.

vlan: Optional[int]

The VLAN ID associated to the Private Network.

class scaleway.baremetal.v1.ServerPrivateNetworkStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ATTACHED = 'attached'
ATTACHING = 'attaching'
DETACHING = 'detaching'
ERROR = 'error'
LOCKED = 'locked'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.ServerRescueServer(user: 'str', password: 'str')

Bases: object

password: str

Rescue password.

user: str

Rescue user name.

class scaleway.baremetal.v1.ServerStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

DELETING = 'deleting'
DELIVERING = 'delivering'
ERROR = 'error'
LOCKED = 'locked'
ORDERED = 'ordered'
OUT_OF_STOCK = 'out_of_stock'
READY = 'ready'
RESETTING = 'resetting'
STARTING = 'starting'
STOPPED = 'stopped'
STOPPING = 'stopping'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.SetServerPrivateNetworksResponse(server_private_networks: 'List[ServerPrivateNetwork]')

Bases: object

server_private_networks: List[ServerPrivateNetwork]
class scaleway.baremetal.v1.Setting(id: 'str', type_: 'SettingType', project_id: 'str', enabled: 'bool')

Bases: object

enabled: bool

Defines whether the setting is enabled.

id: str

ID of the setting.

project_id: str

ID of the Project ID.

type_: SettingType

Type of the setting.

class scaleway.baremetal.v1.SettingType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

SMTP = 'smtp'
UNKNOWN = 'unknown'
class scaleway.baremetal.v1.StartBMCAccessRequest(server_id: 'str', ip: 'str', zone: 'Optional[Zone]')

Bases: object

ip: str

The IP authorized to connect to the server.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.StartServerRequest(server_id: 'str', zone: 'Optional[Zone]', boot_type: 'Optional[ServerBootType]')

Bases: object

boot_type: Optional[ServerBootType]

The type of boot.

server_id: str

ID of the server to start.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.StopBMCAccessRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.StopServerRequest(server_id: 'str', zone: 'Optional[Zone]')

Bases: object

server_id: str

ID of the server to stop.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.UpdateIPRequest(server_id: 'str', ip_id: 'str', zone: 'Optional[Zone]', reverse: 'Optional[str]')

Bases: object

ip_id: str

ID of the IP to update.

reverse: Optional[str]

New reverse IP to update, not updated if null.

server_id: str

ID of the server.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.UpdateServerRequest(server_id: 'str', zone: 'Optional[Zone]', name: 'Optional[str]', description: 'Optional[str]', tags: 'Optional[List[str]]')

Bases: object

description: Optional[str]

Description associated with the server, max 255 characters, not updated if null.

name: Optional[str]

Name of the server (≠hostname), not updated if null.

server_id: str

ID of the server to update.

tags: Optional[List[str]]

Tags associated with the server, not updated if null.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.UpdateSettingRequest(setting_id: 'str', zone: 'Optional[Zone]', enabled: 'Optional[bool]')

Bases: object

enabled: Optional[bool]

Defines whether the setting is enabled.

setting_id: str

ID of the setting.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.

class scaleway.baremetal.v1.ValidatePartitioningSchemaRequest(offer_id: 'str', os_id: 'str', zone: 'Optional[Zone]', partitioning_schema: 'Optional[Schema]')

Bases: object

offer_id: str

Offer ID of the server.

os_id: str

OS ID.

partitioning_schema: Optional[Schema]

Partitioning schema.

zone: Optional[str]

Zone to target. If none is passed will use default zone from the config.