scaleway.dedibox.v1 package

Submodules

scaleway.dedibox.v1.api module

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

Bases: API

Dedibox Phoenix API.

attach_failover_i_ps(*, server_id: int, fips_ids: List[int], zone: Optional[str] = None) None

Attach failovers on baremetal server. Attach failovers on the server associated with the given ID. :param server_id: ID of the server. :param fips_ids: List of ID of failovers IP to attach. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.attach_failover_i_ps(
    server_id=1,
    fips_ids=[],
)
attach_failover_ip_to_mac_address(*, ip_id: int, zone: Optional[str] = None, type_: Optional[AttachFailoverIPToMacAddressRequestMacType] = None, mac: Optional[str] = None) IP

Attach a failover IP to a MAC address. :param ip_id: ID of the failover IP. :param zone: Zone to target. If none is passed will use default zone from the config. :param type_: A mac type. :param mac: A valid mac address (existing or not). :return: IP

Usage:

result = api.attach_failover_ip_to_mac_address(
    ip_id=1,
)
cancel_server_install(*, server_id: int, zone: Optional[str] = None) None

Cancels the current (running) server installation. Cancels the current server installation associated with the given server ID. :param server_id: Server ID of the server to cancel install. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.cancel_server_install(
    server_id=1,
)
create_failover_i_ps(*, offer_id: int, quantity: int, zone: Optional[str] = None, project_id: Optional[str] = None) CreateFailoverIPsResponse

Order failover IPs. Order X failover IPs. :param offer_id: Failover IP offer ID. :param quantity: Quantity. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID. :return: CreateFailoverIPsResponse

Usage:

result = api.create_failover_i_ps(
    offer_id=1,
    quantity=1,
)
create_server(*, offer_id: int, server_option_ids: List[int], zone: Optional[str] = None, project_id: Optional[str] = None, datacenter_name: Optional[str] = None) Service

Create a baremetal server. Create a new baremetal server. The order return you a service ID to follow the provisionning status you could call GetService. :param offer_id: Offer ID of the new server. :param server_option_ids: Server option IDs of the new server. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID of the new server. :param datacenter_name: Datacenter name of the new server. :return: Service

Usage:

result = api.create_server(
    offer_id=1,
    server_option_ids=[],
)
delete_failover_ip(*, ip_id: int, zone: Optional[str] = None) None

Delete a failover server. Delete the failover associated with the given ID. :param ip_id: ID of the failover IP to delete. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.delete_failover_ip(
    ip_id=1,
)
delete_server(*, server_id: int, zone: Optional[str] = None) None

Delete a baremetal server. Delete the server associated with the given ID. :param server_id: Server ID to delete. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.delete_server(
    server_id=1,
)
delete_service(*, service_id: int, zone: Optional[str] = None) Service

Delete a specific service. Delete the service associated with the given ID. :param service_id: ID of the service. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Service

Usage:

result = api.delete_service(
    service_id=1,
)
detach_failover_i_ps(*, fips_ids: List[int], zone: Optional[str] = None) None

Detach failovers on baremetal server. Detach failovers on the server associated with the given ID. :param fips_ids: List of IDs of failovers IP to detach. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.detach_failover_i_ps(
    fips_ids=[],
)
detach_failover_ip_from_mac_address(*, ip_id: int, zone: Optional[str] = None) IP

Detach a failover IP from a MAC address. :param ip_id: ID of the failover IP. :param zone: Zone to target. If none is passed will use default zone from the config. :return: IP

Usage:

result = api.detach_failover_ip_from_mac_address(
    ip_id=1,
)
get_bmc_access(*, server_id: int, zone: Optional[str] = None) BMCAccess

Get BMC (Baseboard Management Controller) access for a given baremetal server. Get the BMC (Baseboard Management Controller) access associated with the given ID. :param server_id: ID of the server to get BMC access. :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=1,
)
get_failover_ip(*, ip_id: int, zone: Optional[str] = None) FailoverIP

Get a specific baremetal server. Get the server associated with the given ID. :param ip_id: ID of the failover IP. :param zone: Zone to target. If none is passed will use default zone from the config. :return: FailoverIP

Usage:

result = api.get_failover_ip(
    ip_id=1,
)
get_offer(*, offer_id: int, zone: Optional[str] = None, project_id: Optional[str] = None) Offer

Get offer. Return specific offer for the given ID. :param offer_id: ID of offer. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID. :return: Offer

Usage:

result = api.get_offer(
    offer_id=1,
)
get_ordered_service(*, ordered_service_id: int, zone: Optional[str] = None) Service
Parameters:
  • ordered_service_id

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

Returns:

Service

Usage:

result = api.get_ordered_service(
    ordered_service_id=1,
)
get_os(*, os_id: int, server_id: int, zone: Optional[str] = None, project_id: Optional[str] = None) OS

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

Usage:

result = api.get_os(
    os_id=1,
    server_id=1,
)
get_raid(*, server_id: int, zone: Optional[str] = None) Raid

Get raid. Return raid for the given server 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: Raid

Usage:

result = api.get_raid(
    server_id=1,
)
get_remaining_quota(*, zone: Optional[str] = None, project_id: Optional[str] = None) GetRemainingQuotaResponse

Get remaining quota. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID. :return: GetRemainingQuotaResponse

Usage:

result = api.get_remaining_quota()
get_rescue(*, server_id: int, zone: Optional[str] = None) Rescue

Get rescue information. Return rescue information for the given server ID. :param server_id: ID of the server to get rescue. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Rescue

Usage:

result = api.get_rescue(
    server_id=1,
)
get_server(*, server_id: int, zone: Optional[str] = None) Server

Get a specific baremetal server. Get the server associated with the given 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=1,
)
get_server_backup(*, server_id: int, zone: Optional[str] = None) Backup
Parameters:
  • server_id – Server ID of the backup.

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

Returns:

Backup

Usage:

result = api.get_server_backup(
    server_id=1,
)
get_server_default_partitioning(*, server_id: int, os_id: int, zone: Optional[str] = None) ServerDefaultPartitioning

Get server default partitioning. Get the server default partitioning schema associated with the given server ID and OS ID. :param server_id: ID of the server. :param os_id: OS ID of the default partitioning. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerDefaultPartitioning

Usage:

result = api.get_server_default_partitioning(
    server_id=1,
    os_id=1,
)
get_server_install(*, server_id: int, zone: Optional[str] = None) ServerInstall

Get a specific server installation status. Get the server installation status associated with the given server ID. :param server_id: Server ID of the server to install. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerInstall

Usage:

result = api.get_server_install(
    server_id=1,
)
get_service(*, service_id: int, zone: Optional[str] = None) Service

Get a specific service. Get the service associated with the given ID. :param service_id: ID of the service. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Service

Usage:

result = api.get_service(
    service_id=1,
)
install_server(*, server_id: int, os_id: int, hostname: str, zone: Optional[str] = None, user_login: Optional[str] = None, user_password: Optional[str] = None, panel_password: Optional[str] = None, root_password: Optional[str] = None, partitions: Optional[List[InstallPartition]] = None, ssh_key_ids: Optional[List[str]] = None, license_offer_id: Optional[int] = None, ip_id: Optional[int] = None) ServerInstall

Install a baremetal server. Install an OS on the server associated with the given ID. :param server_id: Server ID to install. :param os_id: OS ID to install on the server. :param hostname: Hostname of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :param user_login: User to install on the server. :param user_password: User password to install on the server. :param panel_password: Panel password to install on the server. :param root_password: Root password to install on the server. :param partitions: Partitions to install on the server. :param ssh_key_ids: SSH key IDs authorized on the server. :param license_offer_id: Offer ID of license to install on server. :param ip_id: IP to link at the license to install on server. :return: ServerInstall

Usage:

result = api.install_server(
    server_id=1,
    os_id=1,
    hostname="example",
)
list_failover_i_ps(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListFailoverIPsRequestOrderBy] = None, project_id: Optional[str] = None, search: Optional[str] = None, only_available: Optional[bool] = None) ListFailoverIPsResponse

List failovers for project. List failovers servers for project. :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 failovers IP per page. :param order_by: Order of the failovers IP. :param project_id: Filter failovers IP by project ID. :param search: Filter failovers IP which matching with this field. :param only_available: True: return all failovers IP not attached on server false: return all failovers IP attached on server. :return: ListFailoverIPsResponse

Usage:

result = api.list_failover_i_ps()
list_failover_i_ps_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListFailoverIPsRequestOrderBy] = None, project_id: Optional[str] = None, search: Optional[str] = None, only_available: Optional[bool] = None) List[FailoverIP]

List failovers for project. List failovers servers for project. :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 failovers IP per page. :param order_by: Order of the failovers IP. :param project_id: Filter failovers IP by project ID. :param search: Filter failovers IP which matching with this field. :param only_available: True: return all failovers IP not attached on server false: return all failovers IP attached on server. :return: List[FailoverIP]

Usage:

result = api.list_failover_i_ps_all()
list_offers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOffersRequestOrderBy] = None, commercial_range: Optional[str] = None, catalog: Optional[OfferCatalog] = None, project_id: Optional[str] = None, is_failover_ip: Optional[bool] = None, is_failover_block: Optional[bool] = None, sold_in: Optional[List[str]] = None, available_only: Optional[bool] = None, is_rpn_san: Optional[bool] = None) ListOffersResponse

List offers. List all available server offers. :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 offer per page. :param order_by: Order of the offers. :param commercial_range: Filter on commercial range. :param catalog: Filter on catalog. :param project_id: Project ID. :param is_failover_ip: Get the current failover IP offer. :param is_failover_block: Get the current failover IP block offer. :param sold_in: Filter offers depending on their datacenter. :param available_only: Set this filter to true to only return available offers. :param is_rpn_san: Get the RPN SAN offers. :return: ListOffersResponse

Usage:

result = api.list_offers()
list_offers_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOffersRequestOrderBy] = None, commercial_range: Optional[str] = None, catalog: Optional[OfferCatalog] = None, project_id: Optional[str] = None, is_failover_ip: Optional[bool] = None, is_failover_block: Optional[bool] = None, sold_in: Optional[List[str]] = None, available_only: Optional[bool] = None, is_rpn_san: Optional[bool] = None) List[Offer]

List offers. List all available server offers. :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 offer per page. :param order_by: Order of the offers. :param commercial_range: Filter on commercial range. :param catalog: Filter on catalog. :param project_id: Project ID. :param is_failover_ip: Get the current failover IP offer. :param is_failover_block: Get the current failover IP block offer. :param sold_in: Filter offers depending on their datacenter. :param available_only: Set this filter to true to only return available offers. :param is_rpn_san: Get the RPN SAN offers. :return: List[Offer]

Usage:

result = api.list_offers_all()
list_os(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOSRequestOrderBy] = None, type_: Optional[OSType] = None, project_id: Optional[str] = None) ListOSResponse

List all available OS that can be install on a baremetal server. :param server_id: Filter OS by compatible server ID. :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 order_by: Order of the OS. :param type_: Type of the OS. :param project_id: Project ID. :return: ListOSResponse

Usage:

result = api.list_os(
    server_id=1,
)
list_os_all(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOSRequestOrderBy] = None, type_: Optional[OSType] = None, project_id: Optional[str] = None) List[OS]

List all available OS that can be install on a baremetal server. :param server_id: Filter OS by compatible server ID. :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 order_by: Order of the OS. :param type_: Type of the OS. :param project_id: Project ID. :return: List[OS]

Usage:

result = api.list_os_all(
    server_id=1,
)
list_server_disks(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerDisksRequestOrderBy] = None) ListServerDisksResponse

List server disks. List disks associated to the given server ID. :param server_id: Server ID of the server disks. :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 disk per page. :param order_by: Order of the server disks. :return: ListServerDisksResponse

Usage:

result = api.list_server_disks(
    server_id=1,
)
list_server_disks_all(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerDisksRequestOrderBy] = None) List[ServerDisk]

List server disks. List disks associated to the given server ID. :param server_id: Server ID of the server disks. :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 disk per page. :param order_by: Order of the server disks. :return: List[ServerDisk]

Usage:

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

List server events. List events associated to the given server ID. :param server_id: Server ID of the server events. :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 event per page. :param order_by: Order of the server events. :return: ListServerEventsResponse

Usage:

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

List server events. List events associated to the given server ID. :param server_id: Server ID of the server events. :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 event per page. :param order_by: Order of the server events. :return: List[ServerEvent]

Usage:

result = api.list_server_events_all(
    server_id=1,
)
list_servers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServersRequestOrderBy] = None, project_id: Optional[str] = None, search: Optional[str] = None) ListServersResponse

List baremetal servers for project. :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 per page. :param order_by: Order of the servers. :param project_id: Filter servers by project ID. :param search: Filter servers by hostname. :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, project_id: Optional[str] = None, search: Optional[str] = None) List[ServerSummary]

List baremetal servers for project. :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 per page. :param order_by: Order of the servers. :param project_id: Filter servers by project ID. :param search: Filter servers by hostname. :return: List[ServerSummary]

Usage:

result = api.list_servers_all()
list_services(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServicesRequestOrderBy] = None, project_id: Optional[str] = None) ListServicesResponse

List services. :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 service per page. :param order_by: Order of the services. :param project_id: Project ID. :return: ListServicesResponse

Usage:

result = api.list_services()
list_services_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServicesRequestOrderBy] = None, project_id: Optional[str] = None) List[Service]

List services. :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 service per page. :param order_by: Order of the services. :param project_id: Project ID. :return: List[Service]

Usage:

result = api.list_services_all()
list_subscribable_server_options(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None) ListSubscribableServerOptionsResponse

List subscribable server options. List subscribable options associated to the given server ID. :param server_id: Server ID of the subscribable server options. :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 subscribable server option per page. :return: ListSubscribableServerOptionsResponse

Usage:

result = api.list_subscribable_server_options(
    server_id=1,
)
list_subscribable_server_options_all(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None) List[Offer]

List subscribable server options. List subscribable options associated to the given server ID. :param server_id: Server ID of the subscribable server options. :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 subscribable server option per page. :return: List[Offer]

Usage:

result = api.list_subscribable_server_options_all(
    server_id=1,
)
reboot_server(*, server_id: int, zone: Optional[str] = None) None

Reboot a baremetal server. Reboot the server associated with the given ID, use boot param to reboot in rescue. :param server_id: Server ID to reboot. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.reboot_server(
    server_id=1,
)
start_bmc_access(*, server_id: int, ip: str, zone: Optional[str] = None) None

Start BMC (Baseboard Management Controller) access for a given baremetal server. Start BMC (Baseboard Management Controller) access associated with the given ID. The BMC (Baseboard Management Controller) access is available one hour after the installation of the server. :param server_id: ID of the server to start the BMC access. :param ip: The IP authorized to connect to the given server. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.start_bmc_access(
    server_id=1,
    ip="example",
)
start_rescue(*, server_id: int, os_id: int, zone: Optional[str] = None) Rescue

Start in rescue baremetal server. Start in rescue the server associated with the given ID. :param server_id: ID of the server to start rescue. :param os_id: OS ID to use to start rescue. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Rescue

Usage:

result = api.start_rescue(
    server_id=1,
    os_id=1,
)
start_server(*, server_id: int, zone: Optional[str] = None) None

Start a baremetal server. Start the server associated with the given ID. :param server_id: Server ID to start. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

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

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

Usage:

result = api.stop_bmc_access(
    server_id=1,
)
stop_rescue(*, server_id: int, zone: Optional[str] = None) None

Stop rescue on baremetal server. Stop rescue on the server associated with the given ID. :param server_id: ID of the server to stop rescue. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.stop_rescue(
    server_id=1,
)
stop_server(*, server_id: int, zone: Optional[str] = None) None

Stop a baremetal server. Stop the server associated with the given ID. :param server_id: Server ID to stop. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.stop_server(
    server_id=1,
)
subscribe_server_option(*, server_id: int, option_id: int, zone: Optional[str] = None) Service

Subscribe server option. Subscribe option for the given server ID. :param server_id: Server ID to subscribe server option. :param option_id: Option ID to subscribe. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Service

Usage:

result = api.subscribe_server_option(
    server_id=1,
    option_id=1,
)
subscribe_storage_options(*, server_id: int, options_ids: List[int], zone: Optional[str] = None) SubscribeStorageOptionsResponse

Subscribe storage server option. Subscribe storage option for the given server ID. :param server_id: Server ID of the storage options to subscribe. :param options_ids: Option IDs of the storage options to subscribe. :param zone: Zone to target. If none is passed will use default zone from the config. :return: SubscribeStorageOptionsResponse

Usage:

result = api.subscribe_storage_options(
    server_id=1,
    options_ids=[],
)
update_raid(*, server_id: int, raid_arrays: List[UpdatableRaidArray], zone: Optional[str] = None) None

Update RAID. Update RAID associated with the given server ID. :param server_id: ID of the server. :param raid_arrays: RAIDs to update. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.update_raid(
    server_id=1,
    raid_arrays=[],
)
update_reverse(*, ip_id: int, reverse: str, zone: Optional[str] = None) IP

Update reverse of ip. Update reverse of ip associated with the given ID. :param ip_id: ID of the IP. :param reverse: Reverse to apply on the IP. :param zone: Zone to target. If none is passed will use default zone from the config. :return: IP

Usage:

result = api.update_reverse(
    ip_id=1,
    reverse="example",
)
update_server(*, server_id: int, zone: Optional[str] = None, hostname: Optional[str] = None, enable_ipv6: Optional[bool] = None) Server

Update a baremetal server. Update the server associated with the given ID. :param server_id: Server ID to update. :param zone: Zone to target. If none is passed will use default zone from the config. :param hostname: Hostname of the server to update. :param enable_ipv6: Flag to enable or not the IPv6 of server. :return: Server

Usage:

result = api.update_server(
    server_id=1,
)
update_server_backup(*, server_id: int, zone: Optional[str] = None, password: Optional[str] = None, autologin: Optional[bool] = None, acl_enabled: Optional[bool] = None) Backup
Parameters:
  • server_id – Server ID to update backup.

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

  • password – Password of the server backup.

  • autologin – Autologin of the server backup.

  • acl_enabled – Boolean to enable or disable ACL.

Returns:

Backup

Usage:

result = api.update_server_backup(
    server_id=1,
)
update_server_tags(*, server_id: int, zone: Optional[str] = None, tags: Optional[List[str]] = None) Server
Parameters:
  • server_id – Server ID to update the tags.

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

  • tags – Tags of server to update.

Returns:

Server

Usage:

result = api.update_server_tags(
    server_id=1,
)
wait_for_bmc_access(*, server_id: int, zone: Optional[str] = None, options: Optional[WaitForOptions[BMCAccess, bool]] = None) BMCAccess

Get BMC (Baseboard Management Controller) access for a given baremetal server. Get the BMC (Baseboard Management Controller) access associated with the given ID. :param server_id: ID of the server to get BMC access. :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=1,
)
wait_for_server(*, server_id: int, zone: Optional[str] = None, options: Optional[WaitForOptions[Server, bool]] = None) Server

Get a specific baremetal server. Get the server associated with the given 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=1,
)
wait_for_server_install(*, server_id: int, zone: Optional[str] = None, options: Optional[WaitForOptions[ServerInstall, bool]] = None) ServerInstall

Get a specific server installation status. Get the server installation status associated with the given server ID. :param server_id: Server ID of the server to install. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerInstall

Usage:

result = api.get_server_install(
    server_id=1,
)
class scaleway.dedibox.v1.api.DediboxV1BillingAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix Billing API.

can_order(*, project_id: Optional[str] = None) CanOrderResponse
Parameters:

project_id

Returns:

CanOrderResponse

Usage:

result = api.can_order()
download_invoice(*, invoice_id: int) ScwFile
Parameters:

invoice_id

Returns:

ScwFile

Usage:

result = api.download_invoice(
    invoice_id=1,
)
download_refund(*, refund_id: int) ScwFile
Parameters:

refund_id

Returns:

ScwFile

Usage:

result = api.download_refund(
    refund_id=1,
)
get_invoice(*, invoice_id: int) Invoice
Parameters:

invoice_id

Returns:

Invoice

Usage:

result = api.get_invoice(
    invoice_id=1,
)
get_refund(*, refund_id: int) Refund
Parameters:

refund_id

Returns:

Refund

Usage:

result = api.get_refund(
    refund_id=1,
)
list_invoices(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListInvoicesRequestOrderBy] = None, project_id: Optional[str] = None) ListInvoicesResponse
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

ListInvoicesResponse

Usage:

result = api.list_invoices()
list_invoices_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListInvoicesRequestOrderBy] = None, project_id: Optional[str] = None) List[InvoiceSummary]
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

List[InvoiceSummary]

Usage:

result = api.list_invoices_all()
list_refunds(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRefundsRequestOrderBy] = None, project_id: Optional[str] = None) ListRefundsResponse
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

ListRefundsResponse

Usage:

result = api.list_refunds()
list_refunds_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRefundsRequestOrderBy] = None, project_id: Optional[str] = None) List[RefundSummary]
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

List[RefundSummary]

Usage:

result = api.list_refunds_all()
class scaleway.dedibox.v1.api.DediboxV1IPv6BlockAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix IPv6 Block API.

create_i_pv6_block(*, project_id: Optional[str] = None) IPv6Block

Create IPv6 block for baremetal server. Create IPv6 block associated with the given project ID. :param project_id: ID of the project. :return: IPv6Block

Usage:

result = api.create_i_pv6_block()
create_i_pv6_block_subnet(*, block_id: int, address: str, cidr: int) IPv6Block

Create IPv6 block subnet. Create IPv6 block subnet for the given IP ID. /48 could create subnet in /56 (quota link to your number of server). /56 could create subnet in /64 (quota link to your number of failover IP). :param block_id: ID of the IPv6 block. :param address: Address of the IPv6. :param cidr: Classless InterDomain Routing notation of the IPv6. :return: IPv6Block

Usage:

result = api.create_i_pv6_block_subnet(
    block_id=1,
    address="example",
    cidr=1,
)
delete_i_pv6_block(*, block_id: int) None

Delete IPv6 block. Delete IPv6 block subnet with the given ID. :param block_id: ID of the IPv6 block to delete.

Usage:

result = api.delete_i_pv6_block(
    block_id=1,
)
get_i_pv6_block(*, project_id: Optional[str] = None) IPv6Block

Get a specific IPv6 block. Get the IPv6 block associated with the given ID. :param project_id: ID of the project. :return: IPv6Block

Usage:

result = api.get_i_pv6_block()
get_i_pv6_block_quotas(*, project_id: Optional[str] = None) GetIPv6BlockQuotasResponse

Get IPv6 block quota. Get IPv6 block quota with the given project ID. /48 one per organization. /56 link to your number of server. /64 link to your number of failover IP. :param project_id: ID of the project. :return: GetIPv6BlockQuotasResponse

Usage:

result = api.get_i_pv6_block_quotas()
list_i_pv6_block_subnets_available(*, block_id: int) ListIPv6BlockSubnetsAvailableResponse

List available IPv6 block subnets. List all available IPv6 block subnets for given IP ID. :param block_id: ID of the IPv6 block. :return: ListIPv6BlockSubnetsAvailableResponse

Usage:

result = api.list_i_pv6_block_subnets_available(
    block_id=1,
)
update_i_pv6_block(*, block_id: int, nameservers: Optional[List[str]] = None) IPv6Block

Update IPv6 block. Update DNS associated to IPv6 block. If DNS is used, minimum of 2 is necessary and maximum of 5 (no duplicate). :param block_id: ID of the IPv6 block. :param nameservers: DNS to link to the IPv6. :return: IPv6Block

Usage:

result = api.update_i_pv6_block(
    block_id=1,
)
class scaleway.dedibox.v1.api.DediboxV1RpnAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN API.

get_rpn_status(*, project_id: Optional[str] = None, rpnv1_group_id: Optional[int] = None, rpnv2_group_id: Optional[int] = None) GetRpnStatusResponse
Parameters:
  • project_id – A project ID.

  • rpnv1_group_id – An RPN v1 group ID.

  • rpnv2_group_id – An RPN v2 group ID.

Returns:

GetRpnStatusResponse

Usage:

result = api.get_rpn_status()
list_rpn_server_capabilities(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnServerCapabilitiesRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnServerCapabilitiesResponse
Parameters:
  • page – Page number.

  • page_size – Number of servers per page.

  • order_by – Order of the servers.

  • project_id – Filter servers by project ID.

Returns:

ListRpnServerCapabilitiesResponse

Usage:

result = api.list_rpn_server_capabilities()
list_rpn_server_capabilities_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnServerCapabilitiesRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnServerCapability]
Parameters:
  • page – Page number.

  • page_size – Number of servers per page.

  • order_by – Order of the servers.

  • project_id – Filter servers by project ID.

Returns:

List[RpnServerCapability]

Usage:

result = api.list_rpn_server_capabilities_all()
class scaleway.dedibox.v1.api.DediboxV1RpnSanAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN SAN API.

add_ip(*, rpn_san_id: int, ip_ids: List[int]) None
Parameters:
  • rpn_san_id – RPN SAN ID.

  • ip_ids – An array of IP ID.

Usage:

result = api.add_ip(
    rpn_san_id=1,
    ip_ids=[],
)
create_rpn_san(*, offer_id: int, project_id: Optional[str] = None) Service
Parameters:
  • offer_id – Offer ID.

  • project_id – Your project ID.

Returns:

Service

Usage:

result = api.create_rpn_san(
    offer_id=1,
)
delete_rpn_san(*, rpn_san_id: int) None
Parameters:

rpn_san_id – RPN SAN ID.

Usage:

result = api.delete_rpn_san(
    rpn_san_id=1,
)
get_rpn_san(*, rpn_san_id: int) RpnSan
Parameters:

rpn_san_id – RPN SAN ID.

Returns:

RpnSan

Usage:

result = api.get_rpn_san(
    rpn_san_id=1,
)
list_available_ips(*, rpn_san_id: int, type_: Optional[RpnSanIpType] = None) ListIpsResponse
Parameters:
  • rpn_san_id – RPN SAN ID.

  • type – Filter by IP type (server | rpnv2_subnet).

Returns:

ListIpsResponse

Usage:

result = api.list_available_ips(
    rpn_san_id=1,
)
list_ips(*, rpn_san_id: int, type_: Optional[RpnSanIpType] = None) ListIpsResponse
Parameters:
  • rpn_san_id – RPN SAN ID.

  • type – Filter by IP type (server | rpnv2_subnet).

Returns:

ListIpsResponse

Usage:

result = api.list_ips(
    rpn_san_id=1,
)
list_rpn_sans(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnSansRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnSansResponse
Parameters:
  • page – Page number.

  • page_size – Number of RPN SANs per page.

  • order_by – Order of the RPN SANs.

  • project_id – Filter RPN SANs by project ID.

Returns:

ListRpnSansResponse

Usage:

result = api.list_rpn_sans()
list_rpn_sans_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnSansRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnSanSummary]
Parameters:
  • page – Page number.

  • page_size – Number of RPN SANs per page.

  • order_by – Order of the RPN SANs.

  • project_id – Filter RPN SANs by project ID.

Returns:

List[RpnSanSummary]

Usage:

result = api.list_rpn_sans_all()
remove_ip(*, rpn_san_id: int, ip_ids: List[int]) None
Parameters:
  • rpn_san_id – RPN SAN ID.

  • ip_ids – An array of IP ID.

Usage:

result = api.remove_ip(
    rpn_san_id=1,
    ip_ids=[],
)
wait_for_rpn_san(*, rpn_san_id: int, options: Optional[WaitForOptions[RpnSan, bool]] = None) RpnSan
Parameters:

rpn_san_id – RPN SAN ID.

Returns:

RpnSan

Usage:

result = api.get_rpn_san(
    rpn_san_id=1,
)
class scaleway.dedibox.v1.api.DediboxV1RpnV1API(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN v1 API.

accept_rpn_invite(*, member_id: int) None
Parameters:

member_id – The member ID.

Usage:

result = api.accept_rpn_invite(
    member_id=1,
)
add_rpn_group_members(*, group_id: int, server_ids: Optional[List[int]] = None, san_server_ids: Optional[List[int]] = None) RpnGroup
Parameters:
  • group_id – The rpn v1 group ID.

  • server_ids – A collection of rpn v1 capable server IDs.

  • san_server_ids – A collection of rpn v1 capable RPN SAN server IDs.

Returns:

RpnGroup

Usage:

result = api.add_rpn_group_members(
    group_id=1,
)
create_rpn_group(*, name: str, server_ids: Optional[List[int]] = None, san_server_ids: Optional[List[int]] = None, project_id: Optional[str] = None) RpnGroup
Parameters:
  • name – Rpn v1 group name.

  • server_ids – A collection of rpn v1 capable servers.

  • san_server_ids – A collection of rpn v1 capable rpn sans servers.

  • project_id – A project ID.

Returns:

RpnGroup

Usage:

result = api.create_rpn_group(
    name="example",
)
delete_rpn_group(*, group_id: int) None
Parameters:

group_id – Rpn v1 group ID.

Usage:

result = api.delete_rpn_group(
    group_id=1,
)
delete_rpn_group_members(*, group_id: int, member_ids: List[int]) RpnGroup
Parameters:
  • group_id – The rpn v1 group ID.

  • member_ids – A collection of rpn v1 group members IDs.

Returns:

RpnGroup

Usage:

result = api.delete_rpn_group_members(
    group_id=1,
    member_ids=[],
)
get_rpn_group(*, group_id: int) RpnGroup
Parameters:

group_id – Rpn v1 group ID.

Returns:

RpnGroup

Usage:

result = api.get_rpn_group(
    group_id=1,
)
leave_rpn_group(*, group_id: int, member_ids: List[int], project_id: Optional[str] = None) None
Parameters:
  • group_id – The RPN V1 group ID.

  • member_ids – A collection of rpn v1 group members IDs.

  • project_id – A project ID.

Usage:

result = api.leave_rpn_group(
    group_id=1,
    member_ids=[],
)
list_rpn_capable_san_servers(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableSanServersRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnCapableSanServersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

ListRpnCapableSanServersResponse

Usage:

result = api.list_rpn_capable_san_servers()
list_rpn_capable_san_servers_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableSanServersRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnSanServer]
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

List[RpnSanServer]

Usage:

result = api.list_rpn_capable_san_servers_all()
list_rpn_capable_servers(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableServersRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnCapableServersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

ListRpnCapableServersResponse

Usage:

result = api.list_rpn_capable_servers()
list_rpn_capable_servers_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableServersRequestOrderBy] = None, project_id: Optional[str] = None) List[Server]
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

List[Server]

Usage:

result = api.list_rpn_capable_servers_all()
list_rpn_group_members(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupMembersRequestOrderBy] = None, group_id: int, project_id: Optional[str] = None) ListRpnGroupMembersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 group members per page.

  • order_by – Order of the rpn v1 group members.

  • group_id – Filter rpn v1 group members by group ID.

  • project_id – A project ID.

Returns:

ListRpnGroupMembersResponse

Usage:

result = api.list_rpn_group_members(
    group_id=1,
)
list_rpn_group_members_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupMembersRequestOrderBy] = None, group_id: int, project_id: Optional[str] = None) List[RpnGroupMember]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 group members per page.

  • order_by – Order of the rpn v1 group members.

  • group_id – Filter rpn v1 group members by group ID.

  • project_id – A project ID.

Returns:

List[RpnGroupMember]

Usage:

result = api.list_rpn_group_members_all(
    group_id=1,
)
list_rpn_groups(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupsRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnGroupsResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 groups per page.

  • order_by – Order of the rpn v1 groups.

  • project_id – Filter rpn v1 groups by project ID.

Returns:

ListRpnGroupsResponse

Usage:

result = api.list_rpn_groups()
list_rpn_groups_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupsRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnGroup]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 groups per page.

  • order_by – Order of the rpn v1 groups.

  • project_id – Filter rpn v1 groups by project ID.

Returns:

List[RpnGroup]

Usage:

result = api.list_rpn_groups_all()
list_rpn_invites(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnInvitesRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnInvitesResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

ListRpnInvitesResponse

Usage:

result = api.list_rpn_invites()
list_rpn_invites_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnInvitesRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnGroupMember]
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

List[RpnGroupMember]

Usage:

result = api.list_rpn_invites_all()
refuse_rpn_invite(*, member_id: int) None
Parameters:

member_id – The member ID.

Usage:

result = api.refuse_rpn_invite(
    member_id=1,
)
rpn_group_invite(*, group_id: int, server_ids: List[int], project_id: Optional[str] = None) None
Parameters:
  • group_id – The RPN V1 group ID.

  • server_ids – A collection of external server IDs.

  • project_id – A project ID.

Usage:

result = api.rpn_group_invite(
    group_id=1,
    server_ids=[],
)
update_rpn_group_name(*, group_id: int, name: Optional[str] = None) RpnGroup
Parameters:
  • group_id – Rpn v1 group ID.

  • name – New rpn v1 group name.

Returns:

RpnGroup

Usage:

result = api.update_rpn_group_name(
    group_id=1,
)
class scaleway.dedibox.v1.api.DediboxV1RpnV2API(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN v2 API.

add_rpn_v2_members(*, group_id: int, servers: List[int]) None
Parameters:
  • group_id – RPN V2 group ID.

  • servers – A collection of server IDs.

Usage:

result = api.add_rpn_v2_members(
    group_id=1,
    servers=[],
)
create_rpn_v2_group(*, name: str, servers: List[int], project_id: Optional[str] = None, type_: Optional[RpnV2GroupType] = None) RpnV2Group
Parameters:
  • name – RPN V2 group name.

  • servers – A collection of server IDs.

  • project_id – Project ID of the RPN V2 group.

  • type – RPN V2 group type (qing / standard).

Returns:

RpnV2Group

Usage:

result = api.create_rpn_v2_group(
    name="example",
    servers=[],
)
delete_rpn_v2_group(*, group_id: int) None
Parameters:

group_id – RPN V2 group ID.

Usage:

result = api.delete_rpn_v2_group(
    group_id=1,
)
delete_rpn_v2_members(*, group_id: int, member_ids: List[int]) None
Parameters:
  • group_id – RPN V2 group ID.

  • member_ids – A collection of member IDs.

Usage:

result = api.delete_rpn_v2_members(
    group_id=1,
    member_ids=[],
)
disable_rpn_v2_group_compatibility(*, group_id: int) None
Parameters:

group_id – RPN V2 group ID.

Usage:

result = api.disable_rpn_v2_group_compatibility(
    group_id=1,
)
enable_rpn_v2_group_compatibility(*, group_id: int, rpnv1_group_id: int) None
Parameters:
  • group_id – RPN V2 group ID.

  • rpnv1_group_id – RPN V1 group ID.

Usage:

result = api.enable_rpn_v2_group_compatibility(
    group_id=1,
    rpnv1_group_id=1,
)
get_rpn_v2_group(*, group_id: int) RpnV2Group
Parameters:

group_id – RPN V2 group ID.

Returns:

RpnV2Group

Usage:

result = api.get_rpn_v2_group(
    group_id=1,
)
list_rpn_v2_capable_resources(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2CapableResourcesRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnV2CapableResourcesResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 capable resources per page.

  • order_by – Order of the rpn v2 capable resources.

  • project_id – Filter rpn v2 capable resources by project ID.

Returns:

ListRpnV2CapableResourcesResponse

Usage:

result = api.list_rpn_v2_capable_resources()
list_rpn_v2_capable_resources_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2CapableResourcesRequestOrderBy] = None, project_id: Optional[str] = None) List[Server]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 capable resources per page.

  • order_by – Order of the rpn v2 capable resources.

  • project_id – Filter rpn v2 capable resources by project ID.

Returns:

List[Server]

Usage:

result = api.list_rpn_v2_capable_resources_all()
list_rpn_v2_group_logs(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupLogsRequestOrderBy] = None, group_id: int) ListRpnV2GroupLogsResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group logs per page.

  • order_by – Order of the rpn v2 group logs.

  • group_id – RPN V2 group ID.

Returns:

ListRpnV2GroupLogsResponse

Usage:

result = api.list_rpn_v2_group_logs(
    group_id=1,
)
list_rpn_v2_group_logs_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupLogsRequestOrderBy] = None, group_id: int) List[Log]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group logs per page.

  • order_by – Order of the rpn v2 group logs.

  • group_id – RPN V2 group ID.

Returns:

List[Log]

Usage:

result = api.list_rpn_v2_group_logs_all(
    group_id=1,
)
list_rpn_v2_groups(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupsRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnV2GroupsResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 groups per page.

  • order_by – Order of the rpn v2 groups.

  • project_id – Filter rpn v2 groups by project ID.

Returns:

ListRpnV2GroupsResponse

Usage:

result = api.list_rpn_v2_groups()
list_rpn_v2_groups_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupsRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnV2Group]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 groups per page.

  • order_by – Order of the rpn v2 groups.

  • project_id – Filter rpn v2 groups by project ID.

Returns:

List[RpnV2Group]

Usage:

result = api.list_rpn_v2_groups_all()
list_rpn_v2_members(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2MembersRequestOrderBy] = None, group_id: int, type_: Optional[ListRpnV2MembersRequestType] = None) ListRpnV2MembersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group members per page.

  • order_by – Order of the rpn v2 group members.

  • group_id – RPN V2 group ID.

  • type – Filter members by type.

Returns:

ListRpnV2MembersResponse

Usage:

result = api.list_rpn_v2_members(
    group_id=1,
)
list_rpn_v2_members_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2MembersRequestOrderBy] = None, group_id: int, type_: Optional[ListRpnV2MembersRequestType] = None) List[RpnV2Member]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group members per page.

  • order_by – Order of the rpn v2 group members.

  • group_id – RPN V2 group ID.

  • type – Filter members by type.

Returns:

List[RpnV2Member]

Usage:

result = api.list_rpn_v2_members_all(
    group_id=1,
)
update_rpn_v2_group_name(*, group_id: int, name: Optional[str] = None) RpnV2Group
Parameters:
  • group_id – RPN V2 group ID.

  • name – RPN V2 group name.

Returns:

RpnV2Group

Usage:

result = api.update_rpn_v2_group_name(
    group_id=1,
)
update_rpn_v2_vlan_for_members(*, group_id: int, member_ids: List[int], vlan: Optional[int] = None) None
Parameters:
  • group_id – RPN V2 group ID.

  • member_ids – RPN V2 member IDs.

  • vlan – Min: 0.

Max: 3967.

Usage:

result = api.update_rpn_v2_vlan_for_members(
    group_id=1,
    member_ids=[],
)
wait_for_rpn_v2_group(*, group_id: int, options: Optional[WaitForOptions[RpnV2Group, bool]] = None) RpnV2Group
Parameters:

group_id – RPN V2 group ID.

Returns:

RpnV2Group

Usage:

result = api.get_rpn_v2_group(
    group_id=1,
)

scaleway.dedibox.v1.content module

scaleway.dedibox.v1.content.BMC_ACCESS_TRANSIENT_STATUSES: List[BMCAccessStatus] = [<BMCAccessStatus.CREATING: 'creating'>, <BMCAccessStatus.DELETING: 'deleting'>]

Lists transient statutes of the enum BMCAccessStatus.

scaleway.dedibox.v1.content.I_PV6_BLOCK_DELEGATION_TRANSIENT_STATUSES: List[IPv6BlockDelegationStatus] = [<IPv6BlockDelegationStatus.UPDATING: 'updating'>]

Lists transient statutes of the enum IPv6BlockDelegationStatus.

scaleway.dedibox.v1.content.RPN_GROUP_MEMBER_TRANSIENT_STATUSES: List[RpnGroupMemberStatus] = [<RpnGroupMemberStatus.CREATING: 'creating'>, <RpnGroupMemberStatus.DELETING: 'deleting'>]

Lists transient statutes of the enum RpnGroupMemberStatus.

scaleway.dedibox.v1.content.RPN_SAN_TRANSIENT_STATUSES: List[RpnSanStatus] = [<RpnSanStatus.CREATING: 'creating'>, <RpnSanStatus.DELETING: 'deleting'>]

Lists transient statutes of the enum RpnSanStatus.

scaleway.dedibox.v1.content.RPN_V2_GROUP_TRANSIENT_STATUSES: List[RpnV2GroupStatus] = [<RpnV2GroupStatus.CREATING: 'creating'>, <RpnV2GroupStatus.UPDATING: 'updating'>, <RpnV2GroupStatus.DELETING: 'deleting'>]

Lists transient statutes of the enum RpnV2GroupStatus.

scaleway.dedibox.v1.content.RPN_V2_MEMBER_TRANSIENT_STATUSES: List[RpnV2MemberStatus] = [<RpnV2MemberStatus.CREATING: 'creating'>, <RpnV2MemberStatus.UPDATING: 'updating'>, <RpnV2MemberStatus.DELETING: 'deleting'>]

Lists transient statutes of the enum RpnV2MemberStatus.

scaleway.dedibox.v1.content.SERVER_INSTALL_TRANSIENT_STATUSES: List[ServerInstallStatus] = [<ServerInstallStatus.BOOTING: 'booting'>, <ServerInstallStatus.SETTING_UP_RAID: 'setting_up_raid'>, <ServerInstallStatus.PARTITIONING: 'partitioning'>, <ServerInstallStatus.FORMATTING: 'formatting'>, <ServerInstallStatus.INSTALLING: 'installing'>, <ServerInstallStatus.CONFIGURING: 'configuring'>, <ServerInstallStatus.CONFIGURING_BOOTLOADER: 'configuring_bootloader'>, <ServerInstallStatus.REBOOTING: 'rebooting'>]

Lists transient statutes of the enum ServerInstallStatus.

scaleway.dedibox.v1.content.SERVER_TRANSIENT_STATUSES: List[ServerStatus] = [<ServerStatus.DELIVERING: 'delivering'>, <ServerStatus.INSTALLING: 'installing'>]

Lists transient statutes of the enum ServerStatus.

scaleway.dedibox.v1.content.SERVICE_PROVISIONING_TRANSIENT_STATUSES: List[ServiceProvisioningStatus] = [<ServiceProvisioningStatus.DELIVERING: 'delivering'>, <ServiceProvisioningStatus.EXPIRING: 'expiring'>]

Lists transient statutes of the enum ServiceProvisioningStatus.

scaleway.dedibox.v1.marshalling module

scaleway.dedibox.v1.marshalling.marshal_AttachFailoverIPToMacAddressRequest(request: AttachFailoverIPToMacAddressRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_AttachFailoverIPsRequest(request: AttachFailoverIPsRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_CreateFailoverIPsRequest(request: CreateFailoverIPsRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_CreateServerRequest(request: CreateServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_DetachFailoverIPsRequest(request: DetachFailoverIPsRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_IPv6BlockApiCreateIPv6BlockRequest(request: IPv6BlockApiCreateIPv6BlockRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_IPv6BlockApiCreateIPv6BlockSubnetRequest(request: IPv6BlockApiCreateIPv6BlockSubnetRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_IPv6BlockApiUpdateIPv6BlockRequest(request: IPv6BlockApiUpdateIPv6BlockRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_InstallPartition(request: InstallPartition, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_InstallServerRequest(request: InstallServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnSanApiAddIpRequest(request: RpnSanApiAddIpRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnSanApiCreateRpnSanRequest(request: RpnSanApiCreateRpnSanRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnSanApiRemoveIpRequest(request: RpnSanApiRemoveIpRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV1ApiAddRpnGroupMembersRequest(request: RpnV1ApiAddRpnGroupMembersRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV1ApiCreateRpnGroupRequest(request: RpnV1ApiCreateRpnGroupRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV1ApiDeleteRpnGroupMembersRequest(request: RpnV1ApiDeleteRpnGroupMembersRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV1ApiLeaveRpnGroupRequest(request: RpnV1ApiLeaveRpnGroupRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV1ApiRpnGroupInviteRequest(request: RpnV1ApiRpnGroupInviteRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV1ApiUpdateRpnGroupNameRequest(request: RpnV1ApiUpdateRpnGroupNameRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV2ApiAddRpnV2MembersRequest(request: RpnV2ApiAddRpnV2MembersRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV2ApiCreateRpnV2GroupRequest(request: RpnV2ApiCreateRpnV2GroupRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV2ApiDeleteRpnV2MembersRequest(request: RpnV2ApiDeleteRpnV2MembersRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV2ApiEnableRpnV2GroupCompatibilityRequest(request: RpnV2ApiEnableRpnV2GroupCompatibilityRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV2ApiUpdateRpnV2GroupNameRequest(request: RpnV2ApiUpdateRpnV2GroupNameRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_RpnV2ApiUpdateRpnV2VlanForMembersRequest(request: RpnV2ApiUpdateRpnV2VlanForMembersRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_StartBMCAccessRequest(request: StartBMCAccessRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_StartRescueRequest(request: StartRescueRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_SubscribeServerOptionRequest(request: SubscribeServerOptionRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_SubscribeStorageOptionsRequest(request: SubscribeStorageOptionsRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_UpdatableRaidArray(request: UpdatableRaidArray, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_UpdateRaidRequest(request: UpdateRaidRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_UpdateReverseRequest(request: UpdateReverseRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_UpdateServerBackupRequest(request: UpdateServerBackupRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_UpdateServerRequest(request: UpdateServerRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.marshal_UpdateServerTagsRequest(request: UpdateServerTagsRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway.dedibox.v1.marshalling.unmarshal_BMCAccess(data: Any) BMCAccess
scaleway.dedibox.v1.marshalling.unmarshal_Backup(data: Any) Backup
scaleway.dedibox.v1.marshalling.unmarshal_CPU(data: Any) CPU
scaleway.dedibox.v1.marshalling.unmarshal_CanOrderResponse(data: Any) CanOrderResponse
scaleway.dedibox.v1.marshalling.unmarshal_CreateFailoverIPsResponse(data: Any) CreateFailoverIPsResponse
scaleway.dedibox.v1.marshalling.unmarshal_Disk(data: Any) Disk
scaleway.dedibox.v1.marshalling.unmarshal_FailoverBlock(data: Any) FailoverBlock
scaleway.dedibox.v1.marshalling.unmarshal_FailoverIP(data: Any) FailoverIP
scaleway.dedibox.v1.marshalling.unmarshal_GetIPv6BlockQuotasResponse(data: Any) GetIPv6BlockQuotasResponse
scaleway.dedibox.v1.marshalling.unmarshal_GetIPv6BlockQuotasResponseQuota(data: Any) GetIPv6BlockQuotasResponseQuota
scaleway.dedibox.v1.marshalling.unmarshal_GetRemainingQuotaResponse(data: Any) GetRemainingQuotaResponse
scaleway.dedibox.v1.marshalling.unmarshal_GetRpnStatusResponse(data: Any) GetRpnStatusResponse
scaleway.dedibox.v1.marshalling.unmarshal_IP(data: Any) IP
scaleway.dedibox.v1.marshalling.unmarshal_IPv6Block(data: Any) IPv6Block
scaleway.dedibox.v1.marshalling.unmarshal_Invoice(data: Any) Invoice
scaleway.dedibox.v1.marshalling.unmarshal_InvoiceSummary(data: Any) InvoiceSummary
scaleway.dedibox.v1.marshalling.unmarshal_ListFailoverIPsResponse(data: Any) ListFailoverIPsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListIPv6BlockSubnetsAvailableResponse(data: Any) ListIPv6BlockSubnetsAvailableResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListIPv6BlockSubnetsAvailableResponseSubnet(data: Any) ListIPv6BlockSubnetsAvailableResponseSubnet
scaleway.dedibox.v1.marshalling.unmarshal_ListInvoicesResponse(data: Any) ListInvoicesResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListIpsResponse(data: Any) ListIpsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListOSResponse(data: Any) ListOSResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListOffersResponse(data: Any) ListOffersResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRefundsResponse(data: Any) ListRefundsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnCapableSanServersResponse(data: Any) ListRpnCapableSanServersResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnCapableServersResponse(data: Any) ListRpnCapableServersResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnGroupMembersResponse(data: Any) ListRpnGroupMembersResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnGroupsResponse(data: Any) ListRpnGroupsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnInvitesResponse(data: Any) ListRpnInvitesResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnSansResponse(data: Any) ListRpnSansResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnServerCapabilitiesResponse(data: Any) ListRpnServerCapabilitiesResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnV2CapableResourcesResponse(data: Any) ListRpnV2CapableResourcesResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnV2GroupLogsResponse(data: Any) ListRpnV2GroupLogsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnV2GroupsResponse(data: Any) ListRpnV2GroupsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListRpnV2MembersResponse(data: Any) ListRpnV2MembersResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListServerDisksResponse(data: Any) ListServerDisksResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListServerEventsResponse(data: Any) ListServerEventsResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListServersResponse(data: Any) ListServersResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListServicesResponse(data: Any) ListServicesResponse
scaleway.dedibox.v1.marshalling.unmarshal_ListSubscribableServerOptionsResponse(data: Any) ListSubscribableServerOptionsResponse
scaleway.dedibox.v1.marshalling.unmarshal_Log(data: Any) Log
scaleway.dedibox.v1.marshalling.unmarshal_Memory(data: Any) Memory
scaleway.dedibox.v1.marshalling.unmarshal_NetworkInterface(data: Any) NetworkInterface
scaleway.dedibox.v1.marshalling.unmarshal_OS(data: Any) OS
scaleway.dedibox.v1.marshalling.unmarshal_Offer(data: Any) Offer
scaleway.dedibox.v1.marshalling.unmarshal_OfferAntiDosInfo(data: Any) OfferAntiDosInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferBackupInfo(data: Any) OfferBackupInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferBandwidthInfo(data: Any) OfferBandwidthInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferFailoverBlockInfo(data: Any) OfferFailoverBlockInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferFailoverIpInfo(data: Any) OfferFailoverIpInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferLicenseInfo(data: Any) OfferLicenseInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferRPNInfo(data: Any) OfferRPNInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferSANInfo(data: Any) OfferSANInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferServerInfo(data: Any) OfferServerInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferServiceLevelInfo(data: Any) OfferServiceLevelInfo
scaleway.dedibox.v1.marshalling.unmarshal_OfferStorageInfo(data: Any) OfferStorageInfo
scaleway.dedibox.v1.marshalling.unmarshal_Partition(data: Any) Partition
scaleway.dedibox.v1.marshalling.unmarshal_PersistentMemory(data: Any) PersistentMemory
scaleway.dedibox.v1.marshalling.unmarshal_Raid(data: Any) Raid
scaleway.dedibox.v1.marshalling.unmarshal_RaidArray(data: Any) RaidArray
scaleway.dedibox.v1.marshalling.unmarshal_RaidController(data: Any) RaidController
scaleway.dedibox.v1.marshalling.unmarshal_Refund(data: Any) Refund
scaleway.dedibox.v1.marshalling.unmarshal_RefundSummary(data: Any) RefundSummary
scaleway.dedibox.v1.marshalling.unmarshal_Rescue(data: Any) Rescue
scaleway.dedibox.v1.marshalling.unmarshal_RpnGroup(data: Any) RpnGroup
scaleway.dedibox.v1.marshalling.unmarshal_RpnGroupMember(data: Any) RpnGroupMember
scaleway.dedibox.v1.marshalling.unmarshal_RpnSan(data: Any) RpnSan
scaleway.dedibox.v1.marshalling.unmarshal_RpnSanIp(data: Any) RpnSanIp
scaleway.dedibox.v1.marshalling.unmarshal_RpnSanIpRpnV2Group(data: Any) RpnSanIpRpnV2Group
scaleway.dedibox.v1.marshalling.unmarshal_RpnSanIpServer(data: Any) RpnSanIpServer
scaleway.dedibox.v1.marshalling.unmarshal_RpnSanServer(data: Any) RpnSanServer
scaleway.dedibox.v1.marshalling.unmarshal_RpnSanSummary(data: Any) RpnSanSummary
scaleway.dedibox.v1.marshalling.unmarshal_RpnServerCapability(data: Any) RpnServerCapability
scaleway.dedibox.v1.marshalling.unmarshal_RpnV2Group(data: Any) RpnV2Group
scaleway.dedibox.v1.marshalling.unmarshal_RpnV2GroupSubnet(data: Any) RpnV2GroupSubnet
scaleway.dedibox.v1.marshalling.unmarshal_RpnV2Member(data: Any) RpnV2Member
scaleway.dedibox.v1.marshalling.unmarshal_Server(data: Any) Server
scaleway.dedibox.v1.marshalling.unmarshal_ServerDefaultPartitioning(data: Any) ServerDefaultPartitioning
scaleway.dedibox.v1.marshalling.unmarshal_ServerDisk(data: Any) ServerDisk
scaleway.dedibox.v1.marshalling.unmarshal_ServerEvent(data: Any) ServerEvent
scaleway.dedibox.v1.marshalling.unmarshal_ServerInstall(data: Any) ServerInstall
scaleway.dedibox.v1.marshalling.unmarshal_ServerLocation(data: Any) ServerLocation
scaleway.dedibox.v1.marshalling.unmarshal_ServerOption(data: Any) ServerOption
scaleway.dedibox.v1.marshalling.unmarshal_ServerSummary(data: Any) ServerSummary
scaleway.dedibox.v1.marshalling.unmarshal_Service(data: Any) Service
scaleway.dedibox.v1.marshalling.unmarshal_ServiceLevel(data: Any) ServiceLevel
scaleway.dedibox.v1.marshalling.unmarshal_SubscribeStorageOptionsResponse(data: Any) SubscribeStorageOptionsResponse

scaleway.dedibox.v1.types module

class scaleway.dedibox.v1.types.AttachFailoverIPToMacAddressRequest(ip_id: 'int', zone: 'Optional[Zone]', type_: 'Optional[AttachFailoverIPToMacAddressRequestMacType]', mac: 'Optional[str]')

Bases: object

ip_id: int

ID of the failover IP.

mac: Optional[str]

A valid mac address (existing or not).

type_: Optional[AttachFailoverIPToMacAddressRequestMacType]

A mac type.

zone: Optional[str]

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

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

Bases: str, Enum

An enumeration.

KVM = 'kvm'
MAC_TYPE_UNKNOWN = 'mac_type_unknown'
VMWARE = 'vmware'
XEN = 'xen'
class scaleway.dedibox.v1.types.AttachFailoverIPsRequest(server_id: 'int', fips_ids: 'List[int]', zone: 'Optional[Zone]')

Bases: object

fips_ids: List[int]

List of ID of failovers IP to attach.

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.BMCAccess(url: 'str', login: 'str', password: 'str', status: 'BMCAccessStatus', 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.

status: BMCAccessStatus

Status of the connection.

url: str

URL to access to the server console.

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

Bases: str, Enum

An enumeration.

CREATED = 'created'
CREATING = 'creating'
DELETING = 'deleting'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.Backup(id: 'int', login: 'str', server: 'str', status: 'BackupStatus', acl_enabled: 'bool', autologin: 'bool', quota_space: 'int', quota_space_used: 'int', quota_files: 'int', quota_files_used: 'int')

Bases: object

acl_enabled: bool

ACL enable boolean of the backup.

autologin: bool

Autologin boolean of the backup.

id: int

ID of the backup.

login: str

Login of the backup.

quota_files: int

Total quota files of the backup.

quota_files_used: int

Quota files used of the backup.

quota_space: int

Total quota space of the backup.

quota_space_used: int

Quota space used of the backup.

server: str

Server of the backup.

status: BackupStatus

Status of the backup.

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

Bases: str, Enum

An enumeration.

INACTIVE = 'inactive'
READY = 'ready'
UNINITIALIZED = 'uninitialized'
UNKNOWN_BACKUP_STATUS = 'unknown_backup_status'
class scaleway.dedibox.v1.types.BillingApiCanOrderRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]
class scaleway.dedibox.v1.types.BillingApiDownloadInvoiceRequest(invoice_id: 'int')

Bases: object

invoice_id: int
class scaleway.dedibox.v1.types.BillingApiDownloadRefundRequest(refund_id: 'int')

Bases: object

refund_id: int
class scaleway.dedibox.v1.types.BillingApiGetInvoiceRequest(invoice_id: 'int')

Bases: object

invoice_id: int
class scaleway.dedibox.v1.types.BillingApiGetRefundRequest(refund_id: 'int')

Bases: object

refund_id: int
class scaleway.dedibox.v1.types.BillingApiListInvoicesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListInvoicesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListInvoicesRequestOrderBy]
page: Optional[int]
page_size: Optional[int]
project_id: Optional[str]
class scaleway.dedibox.v1.types.BillingApiListRefundsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRefundsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRefundsRequestOrderBy]
page: Optional[int]
page_size: Optional[int]
project_id: Optional[str]
class scaleway.dedibox.v1.types.CPU(name: 'str', core_count: 'int', thread_count: 'int', frequency: 'int')

Bases: object

core_count: int

Number of cores of the CPU.

frequency: int

Frequency of the CPU.

name: str

Name of CPU.

thread_count: int

Number of threads of the CPU.

class scaleway.dedibox.v1.types.CanOrderResponse(can_order: 'bool', quota_ok: 'bool', phone_confirmed: 'bool', email_confirmed: 'bool', user_confirmed: 'bool', payment_mode: 'bool', billing_ok: 'bool', message: 'Optional[str]')

Bases: object

billing_ok: bool
can_order: bool
email_confirmed: bool
message: Optional[str]
payment_mode: bool
phone_confirmed: bool
quota_ok: bool
user_confirmed: bool
class scaleway.dedibox.v1.types.CancelServerInstallRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID of the server to cancel install.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.CreateFailoverIPsRequest(offer_id: 'int', quantity: 'int', zone: 'Optional[Zone]', project_id: 'Optional[str]')

Bases: object

offer_id: int

Failover IP offer ID.

project_id: Optional[str]

Project ID.

quantity: int

Quantity.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.CreateFailoverIPsResponse(total_count: 'int', services: 'List[Service]')

Bases: object

services: List[Service]
total_count: int
class scaleway.dedibox.v1.types.CreateServerRequest(offer_id: 'int', server_option_ids: 'List[int]', zone: 'Optional[Zone]', project_id: 'Optional[str]', datacenter_name: 'Optional[str]')

Bases: object

datacenter_name: Optional[str]

Datacenter name of the new server.

offer_id: int

Offer ID of the new server.

project_id: Optional[str]

Project ID of the new server.

server_option_ids: List[int]

Server option IDs of the new server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.DeleteFailoverIPRequest(ip_id: 'int', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the failover IP to delete.

zone: Optional[str]

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

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

Bases: object

server_id: int

Server ID to delete.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.DeleteServiceRequest(service_id: 'int', zone: 'Optional[Zone]')

Bases: object

service_id: int

ID of the service.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.DetachFailoverIPFromMacAddressRequest(ip_id: 'int', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the failover IP.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.DetachFailoverIPsRequest(fips_ids: 'List[int]', zone: 'Optional[Zone]')

Bases: object

fips_ids: List[int]

List of IDs of failovers IP to detach.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.Disk(capacity: 'int', type_: 'ServerDiskType')

Bases: object

capacity: int

Capacity of the disk.

type_: ServerDiskType

Type of the disk.

class scaleway.dedibox.v1.types.FailoverBlock(id: 'int', address: 'str', nameservers: 'List[str]', ip_version: 'FailoverBlockVersion', cidr: 'int', netmask: 'str', gateway_ip: 'str')

Bases: object

address: str

IP of the failover block.

cidr: int

Classless InterDomain Routing notation of the failover block.

gateway_ip: str

Gateway IP of the failover block.

id: int

ID of the failover block.

ip_version: FailoverBlockVersion

IP version of the failover block.

nameservers: List[str]

Name servers.

netmask: str

Netmask of the failover block.

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

Bases: str, Enum

An enumeration.

IPV4 = 'ipv4'
IPV6 = 'ipv6'
UNKNOWN_VERSION = 'unknown_version'
class scaleway.dedibox.v1.types.FailoverIP(id: 'int', address: 'str', reverse: 'str', ip_version: 'FailoverIPVersion', cidr: 'int', netmask: 'str', gateway_ip: 'str', status: 'FailoverIPStatus', type_: 'FailoverIPInterfaceType', mac: 'Optional[str]', server_id: 'Optional[int]', block: 'Optional[FailoverBlock]', server_zone: 'Optional[str]')

Bases: object

address: str

IP of the failover IP.

block: Optional[FailoverBlock]

Block of the IP failover.

cidr: int

Classless InterDomain Routing notation of the failover IP.

gateway_ip: str

Gateway IP of the failover IP.

id: int

ID of the failover IP.

ip_version: FailoverIPVersion

IP version of the failover IP.

mac: Optional[str]

MAC address of the IP failover.

netmask: str

Netmask of the failover IP.

reverse: str

Reverse IP value.

server_id: Optional[int]

Server ID linked to the IP failover.

server_zone: Optional[str]

The server zone (if assigned).

status: FailoverIPStatus

Status of the IP failover.

type_: FailoverIPInterfaceType

The interface type.

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

Bases: str, Enum

An enumeration.

IPMI = 'ipmi'
NORMAL = 'normal'
UNKNOWN = 'unknown'
VIRTUAL = 'virtual'
class scaleway.dedibox.v1.types.FailoverIPStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BUSY = 'busy'
LOCKED = 'locked'
READY = 'ready'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.types.FailoverIPVersion(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

IPV4 = 'ipv4'
IPV6 = 'ipv6'
UNKNOWN_VERSION = 'unknown_version'
class scaleway.dedibox.v1.types.GetBMCAccessRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server to get BMC access.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetFailoverIPRequest(ip_id: 'int', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the failover IP.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetIPv6BlockQuotasResponse(quotas: 'List[GetIPv6BlockQuotasResponseQuota]', total_count: 'int')

Bases: object

quotas: List[GetIPv6BlockQuotasResponseQuota]

Quota for each CIDR of IPv6 block.

total_count: int

Total count of quotas.

class scaleway.dedibox.v1.types.GetIPv6BlockQuotasResponseQuota(quota: 'int', cidr: 'int')

Bases: object

cidr: int
quota: int
class scaleway.dedibox.v1.types.GetOSRequest(os_id: 'int', server_id: 'int', zone: 'Optional[Zone]', project_id: 'Optional[str]')

Bases: object

os_id: int

ID of the OS.

project_id: Optional[str]

Project ID.

server_id: int

ID of the server.

zone: Optional[str]

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

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

Bases: object

offer_id: int

ID of offer.

project_id: Optional[str]

Project ID.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetOrderedServiceRequest(ordered_service_id: 'int', zone: 'Optional[Zone]')

Bases: object

ordered_service_id: int
zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetRaidRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetRemainingQuotaRequest(zone: 'Optional[Zone]', project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

Project ID.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetRemainingQuotaResponse(failover_ip_quota: 'int', failover_ip_remaining_quota: 'int', failover_block_quota: 'int', failover_block_remaining_quota: 'int')

Bases: object

failover_block_quota: int

Current failover block quota.

failover_block_remaining_quota: int

Remaining failover block quota.

failover_ip_quota: int

Current failover IP quota.

failover_ip_remaining_quota: int

Remaining failover IP quota.

class scaleway.dedibox.v1.types.GetRescueRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server to get rescue.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetRpnStatusResponse(status: 'GetRpnStatusResponseStatus', operations_left: 'Optional[int]')

Bases: object

operations_left: Optional[int]

Number of operations left to perform before being operational.

status: GetRpnStatusResponseStatus

If status = ‘operational’, you can perform rpn actions in write.

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

Bases: str, Enum

An enumeration.

BUSY = 'busy'
OPERATIONAL = 'operational'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.types.GetServerBackupRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID of the backup.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetServerDefaultPartitioningRequest(server_id: 'int', os_id: 'int', zone: 'Optional[Zone]')

Bases: object

os_id: int

OS ID of the default partitioning.

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetServerInstallRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID of the server to install.

zone: Optional[str]

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

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

Bases: object

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.GetServiceRequest(service_id: 'int', zone: 'Optional[Zone]')

Bases: object

service_id: int

ID of the service.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.IP(ip_id: 'int', address: 'str', reverse: 'str', version: 'IPVersion', cidr: 'int', netmask: 'str', semantic: 'IPSemantic', gateway: 'str', status: 'IPStatus')

Bases: object

address: str

Address of the IP.

cidr: int

Classless InterDomain Routing notation of the IP.

gateway: str

Gateway of IP.

ip_id: int

ID of the IP.

netmask: str

Network mask of IP.

reverse: str

Reverse IP value.

semantic: IPSemantic

Semantic of IP.

status: IPStatus

Status of the IP.

version: IPVersion

Version of IP (v4 or v6).

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

Bases: str, Enum

An enumeration.

ADM = 'adm'
EXT = 'ext'
IPMI = 'ipmi'
MIGRATION = 'migration'
PRIVATE = 'private'
PROXAD = 'proxad'
PUBLIC = 'public'
REDIRECT = 'redirect'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.IPStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BUSY = 'busy'
LOCKED = 'locked'
READY = 'ready'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.types.IPVersion(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

IPV4 = 'ipv4'
IPV6 = 'ipv6'
class scaleway.dedibox.v1.types.IPv6Block(id: 'int', address: 'str', duid: 'str', nameservers: 'List[str]', cidr: 'int', subnets: 'List[IPv6Block]', delegation_status: 'IPv6BlockDelegationStatus')

Bases: object

address: str

Address of the IPv6.

cidr: int

Classless InterDomain Routing notation of the IPv6.

delegation_status: IPv6BlockDelegationStatus

The nameservers delegation status.

duid: str

DUID of the IPv6.

id: int

ID of the IPv6.

nameservers: List[str]

DNS linked to the IPv6.

subnets: List[IPv6Block]

All IPv6 subnets.

class scaleway.dedibox.v1.types.IPv6BlockApiCreateIPv6BlockRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

ID of the project.

class scaleway.dedibox.v1.types.IPv6BlockApiCreateIPv6BlockSubnetRequest(block_id: 'int', address: 'str', cidr: 'int')

Bases: object

address: str

Address of the IPv6.

block_id: int

ID of the IPv6 block.

cidr: int

Classless InterDomain Routing notation of the IPv6.

class scaleway.dedibox.v1.types.IPv6BlockApiDeleteIPv6BlockRequest(block_id: 'int')

Bases: object

block_id: int

ID of the IPv6 block to delete.

class scaleway.dedibox.v1.types.IPv6BlockApiGetIPv6BlockQuotasRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

ID of the project.

class scaleway.dedibox.v1.types.IPv6BlockApiGetIPv6BlockRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

ID of the project.

class scaleway.dedibox.v1.types.IPv6BlockApiListIPv6BlockSubnetsAvailableRequest(block_id: 'int')

Bases: object

block_id: int

ID of the IPv6 block.

class scaleway.dedibox.v1.types.IPv6BlockApiUpdateIPv6BlockRequest(block_id: 'int', nameservers: 'Optional[List[str]]')

Bases: object

block_id: int

ID of the IPv6 block.

nameservers: Optional[List[str]]

DNS to link to the IPv6.

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

Bases: str, Enum

An enumeration.

DONE = 'done'
UNKNOWN_STATUS = 'unknown_status'
UPDATING = 'updating'
class scaleway.dedibox.v1.types.InstallPartition(file_system: 'PartitionFileSystem', raid_level: 'RaidArrayRaidLevel', capacity: 'int', connectors: 'List[str]', mount_point: 'Optional[str]')

Bases: object

capacity: int

Capacity of the installation partition.

connectors: List[str]

Connectors of the installation partition.

file_system: PartitionFileSystem

File system of the installation partition.

mount_point: Optional[str]

Mount point of the installation partition.

raid_level: RaidArrayRaidLevel

RAID level of the installation partition.

class scaleway.dedibox.v1.types.InstallServerRequest(server_id: 'int', os_id: 'int', hostname: 'str', zone: 'Optional[Zone]', user_login: 'Optional[str]', user_password: 'Optional[str]', panel_password: 'Optional[str]', root_password: 'Optional[str]', partitions: 'Optional[List[InstallPartition]]', ssh_key_ids: 'Optional[List[str]]', license_offer_id: 'Optional[int]', ip_id: 'Optional[int]')

Bases: object

hostname: str

Hostname of the server.

ip_id: Optional[int]

IP to link at the license to install on server.

license_offer_id: Optional[int]

Offer ID of license to install on server.

os_id: int

OS ID to install on the server.

panel_password: Optional[str]

Panel password to install on the server.

partitions: Optional[List[InstallPartition]]

Partitions to install on the server.

root_password: Optional[str]

Root password to install on the server.

server_id: int

Server ID to install.

ssh_key_ids: Optional[List[str]]

SSH key IDs authorized on the server.

user_login: Optional[str]

User to install on the server.

user_password: Optional[str]

User password to install on the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.Invoice(id: 'int', status: 'InvoiceStatus', payment_method: 'InvoicePaymentMethod', content: 'str', transaction_id: 'int', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', paid_at: 'Optional[datetime]')

Bases: object

content: str
created_at: Optional[datetime]
id: int
paid_at: Optional[datetime]
payment_method: InvoicePaymentMethod
status: InvoiceStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
transaction_id: int
class scaleway.dedibox.v1.types.InvoicePaymentMethod(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AMEX = 'amex'
CREDIT_CARD = 'credit_card'
DIRECT_DEBIT = 'direct_debit'
PAYPAL = 'paypal'
TRANSFER = 'transfer'
UNKNOWN_PAYMENT_METHOD = 'unknown_payment_method'
class scaleway.dedibox.v1.types.InvoiceStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ERRORED = 'errored'
PAID = 'paid'
UNKNOWN_INVOICE_STATUS = 'unknown_invoice_status'
UNPAID = 'unpaid'
class scaleway.dedibox.v1.types.InvoiceSummary(id: 'int', status: 'InvoiceStatus', payment_method: 'InvoicePaymentMethod', transaction_id: 'int', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', paid_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]
id: int
paid_at: Optional[datetime]
payment_method: InvoicePaymentMethod
status: InvoiceStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
transaction_id: int
class scaleway.dedibox.v1.types.ListFailoverIPsRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListFailoverIPsRequestOrderBy]', project_id: 'Optional[str]', search: 'Optional[str]', only_available: 'Optional[bool]')

Bases: object

only_available: Optional[bool]

True: return all failovers IP not attached on server

false: return all failovers IP attached on server.

order_by: Optional[ListFailoverIPsRequestOrderBy]

Order of the failovers IP.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of failovers IP per page.

project_id: Optional[str]

Filter failovers IP by project ID.

search: Optional[str]

Filter failovers IP which matching with this field.

zone: Optional[str]

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

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

Bases: str, Enum

An enumeration.

IP_ASC = 'ip_asc'
IP_DESC = 'ip_desc'
class scaleway.dedibox.v1.types.ListFailoverIPsResponse(total_count: 'int', failover_ips: 'List[FailoverIP]')

Bases: object

failover_ips: List[FailoverIP]

List of failover IPs that match filters.

total_count: int

Total count of matching failovers IP.

class scaleway.dedibox.v1.types.ListIPv6BlockSubnetsAvailableResponse(subnet_availables: 'List[ListIPv6BlockSubnetsAvailableResponseSubnet]', total_count: 'int')

Bases: object

subnet_availables: List[ListIPv6BlockSubnetsAvailableResponseSubnet]

All available address and CIDR available in subnet.

total_count: int

Total count of available subnets.

class scaleway.dedibox.v1.types.ListIPv6BlockSubnetsAvailableResponseSubnet(address: 'str', cidr: 'int')

Bases: object

address: str
cidr: int
class scaleway.dedibox.v1.types.ListInvoicesRequestOrderBy(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.dedibox.v1.types.ListInvoicesResponse(total_count: 'int', invoices: 'List[InvoiceSummary]')

Bases: object

invoices: List[InvoiceSummary]
total_count: int
class scaleway.dedibox.v1.types.ListIpsResponse(total_count: 'int', ips: 'List[RpnSanIp]')

Bases: object

ips: List[RpnSanIp]

List of authorized IPs.

total_count: int

Total count of authorized IPs.

class scaleway.dedibox.v1.types.ListOSRequest(server_id: 'int', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListOSRequestOrderBy]', type_: 'Optional[OSType]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListOSRequestOrderBy]

Order of the OS.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of OS per page.

project_id: Optional[str]

Project ID.

server_id: int

Filter OS by compatible server ID.

type_: Optional[OSType]

Type of the OS.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.ListOSRequestOrderBy(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'
RELEASED_AT_ASC = 'released_at_asc'
RELEASED_AT_DESC = 'released_at_desc'
class scaleway.dedibox.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.dedibox.v1.types.ListOffersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListOffersRequestOrderBy]', commercial_range: 'Optional[str]', catalog: 'Optional[OfferCatalog]', project_id: 'Optional[str]', is_failover_ip: 'Optional[bool]', is_failover_block: 'Optional[bool]', sold_in: 'Optional[List[str]]', available_only: 'Optional[bool]', is_rpn_san: 'Optional[bool]')

Bases: object

available_only: Optional[bool]

Set this filter to true to only return available offers.

catalog: Optional[OfferCatalog]

Filter on catalog.

commercial_range: Optional[str]

Filter on commercial range.

is_failover_block: Optional[bool]

Get the current failover IP block offer.

is_failover_ip: Optional[bool]

Get the current failover IP offer.

is_rpn_san: Optional[bool]

Get the RPN SAN offers.

order_by: Optional[ListOffersRequestOrderBy]

Order of the offers.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of offer per page.

project_id: Optional[str]

Project ID.

sold_in: Optional[List[str]]

Filter offers depending on their datacenter.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.ListOffersRequestOrderBy(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'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
PRICE_ASC = 'price_asc'
PRICE_DESC = 'price_desc'
class scaleway.dedibox.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.dedibox.v1.types.ListRefundsRequestOrderBy(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.dedibox.v1.types.ListRefundsResponse(total_count: 'int', refunds: 'List[RefundSummary]')

Bases: object

refunds: List[RefundSummary]
total_count: int
class scaleway.dedibox.v1.types.ListRpnCapableSanServersRequestOrderBy(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.dedibox.v1.types.ListRpnCapableSanServersResponse(total_count: 'int', san_servers: 'List[RpnSanServer]')

Bases: object

san_servers: List[RpnSanServer]

List of san servers.

total_count: int

Total count of rpn capable san servers.

class scaleway.dedibox.v1.types.ListRpnCapableServersRequestOrderBy(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.dedibox.v1.types.ListRpnCapableServersResponse(total_count: 'int', servers: 'List[Server]')

Bases: object

servers: List[Server]

List of servers.

total_count: int

Total count of rpn capable servers.

class scaleway.dedibox.v1.types.ListRpnGroupMembersRequestOrderBy(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.dedibox.v1.types.ListRpnGroupMembersResponse(total_count: 'int', members: 'List[RpnGroupMember]')

Bases: object

members: List[RpnGroupMember]

List of rpn v1 group members.

total_count: int

Total count of rpn v1 group members.

class scaleway.dedibox.v1.types.ListRpnGroupsRequestOrderBy(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.dedibox.v1.types.ListRpnGroupsResponse(total_count: 'int', rpn_groups: 'List[RpnGroup]')

Bases: object

rpn_groups: List[RpnGroup]

List of rpn v1 groups.

total_count: int

Total count of rpn groups.

class scaleway.dedibox.v1.types.ListRpnInvitesRequestOrderBy(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.dedibox.v1.types.ListRpnInvitesResponse(total_count: 'int', members: 'List[RpnGroupMember]')

Bases: object

members: List[RpnGroupMember]

List of invites.

total_count: int

Total count of invites.

class scaleway.dedibox.v1.types.ListRpnSansRequestOrderBy(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.dedibox.v1.types.ListRpnSansResponse(total_count: 'int', rpn_sans: 'List[RpnSanSummary]')

Bases: object

rpn_sans: List[RpnSanSummary]

List of RPN SANs that match filters.

total_count: int

Total count of matching RPN SANs.

class scaleway.dedibox.v1.types.ListRpnServerCapabilitiesRequestOrderBy(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.dedibox.v1.types.ListRpnServerCapabilitiesResponse(total_count: 'int', servers: 'List[RpnServerCapability]')

Bases: object

servers: List[RpnServerCapability]

List of servers and their RPN capabilities.

total_count: int

Total count of servers.

class scaleway.dedibox.v1.types.ListRpnV2CapableResourcesRequestOrderBy(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.dedibox.v1.types.ListRpnV2CapableResourcesResponse(total_count: 'int', servers: 'List[Server]')

Bases: object

servers: List[Server]

List of rpn v2 capable resources that match filters.

total_count: int

Total count of matching rpn v2 capable resources.

class scaleway.dedibox.v1.types.ListRpnV2GroupLogsRequestOrderBy(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.dedibox.v1.types.ListRpnV2GroupLogsResponse(total_count: 'int', logs: 'List[Log]')

Bases: object

logs: List[Log]

List of rpn v2 logs that match filters.

total_count: int

Total count of matching rpn v2 logs.

class scaleway.dedibox.v1.types.ListRpnV2GroupsRequestOrderBy(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.dedibox.v1.types.ListRpnV2GroupsResponse(total_count: 'int', rpn_groups: 'List[RpnV2Group]')

Bases: object

rpn_groups: List[RpnV2Group]

List of rpn v2 groups that match filters.

total_count: int

Total count of matching rpn v2 groups.

class scaleway.dedibox.v1.types.ListRpnV2MembersRequestOrderBy(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.dedibox.v1.types.ListRpnV2MembersRequestType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

RPNV1_GROUP = 'rpnv1_group'
SERVER = 'server'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.dedibox.v1.types.ListRpnV2MembersResponse(total_count: 'int', members: 'List[RpnV2Member]')

Bases: object

members: List[RpnV2Member]

List of rpn v2 group members that match filters.

total_count: int

Total count of matching rpn v2 group members.

class scaleway.dedibox.v1.types.ListServerDisksRequest(server_id: 'int', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServerDisksRequestOrderBy]')

Bases: object

order_by: Optional[ListServerDisksRequestOrderBy]

Order of the server disks.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of server disk per page.

server_id: int

Server ID of the server disks.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.ListServerDisksRequestOrderBy(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.dedibox.v1.types.ListServerDisksResponse(total_count: 'int', disks: 'List[ServerDisk]')

Bases: object

disks: List[ServerDisk]

Server disks that match filters.

total_count: int

Total count of matching server disks.

class scaleway.dedibox.v1.types.ListServerEventsRequest(server_id: 'int', 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 event per page.

server_id: int

Server ID of the server events.

zone: Optional[str]

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

class scaleway.dedibox.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.dedibox.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 server events.

class scaleway.dedibox.v1.types.ListServersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServersRequestOrderBy]', project_id: 'Optional[str]', search: 'Optional[str]')

Bases: object

order_by: Optional[ListServersRequestOrderBy]

Order of the servers.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of server per page.

project_id: Optional[str]

Filter servers by project ID.

search: Optional[str]

Filter servers by hostname.

zone: Optional[str]

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

class scaleway.dedibox.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.dedibox.v1.types.ListServersResponse(total_count: 'int', servers: 'List[ServerSummary]')

Bases: object

servers: List[ServerSummary]

Servers that match filters.

total_count: int

Total count of matching servers.

class scaleway.dedibox.v1.types.ListServicesRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServicesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListServicesRequestOrderBy]

Order of the services.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of service per page.

project_id: Optional[str]

Project ID.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.ListServicesRequestOrderBy(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.dedibox.v1.types.ListServicesResponse(total_count: 'int', services: 'List[Service]')

Bases: object

services: List[Service]

Services that match filters.

total_count: int

Total count of matching services.

class scaleway.dedibox.v1.types.ListSubscribableServerOptionsRequest(server_id: 'int', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]')

Bases: object

page: Optional[int]

Page number.

page_size: Optional[int]

Number of subscribable server option per page.

server_id: int

Server ID of the subscribable server options.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.ListSubscribableServerOptionsResponse(total_count: 'int', server_options: 'List[Offer]')

Bases: object

server_options: List[Offer]

Server options that match filters.

total_count: int

Total count of matching subscribable server options.

class scaleway.dedibox.v1.types.Log(id: 'int', action: 'LogAction', status: 'LogStatus', group: 'Optional[RpnV2Group]', member: 'Optional[RpnV2Member]', created_at: 'Optional[datetime]', finished_at: 'Optional[datetime]')

Bases: object

action: LogAction

Which action was performed.

created_at: Optional[datetime]

Creation date.

finished_at: Optional[datetime]

Completion date.

group: Optional[RpnV2Group]

RPN V2 group.

id: int

RPN V2 log ID.

member: Optional[RpnV2Member]

RPN V2 member (if appliable).

status: LogStatus

Action status.

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

Bases: str, Enum

An enumeration.

DESCRIPTION_UPDATED = 'description_updated'
GROUP_CREATED = 'group_created'
GROUP_DELETED = 'group_deleted'
MEMBERS_ADDED = 'members_added'
MEMBERS_DELETED = 'members_deleted'
RPNV1_MEMBERS_ADDED = 'rpnv1_members_added'
RPNV1_MEMBERS_DELETED = 'rpnv1_members_deleted'
UNKNOWN_LOG_ACTION = 'unknown_log_action'
VLAN_UPDATED = 'vlan_updated'
VLAN_UPDATED_ON_ALL_SERVERS = 'vlan_updated_on_all_servers'
class scaleway.dedibox.v1.types.LogStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ERROR = 'error'
IN_PROGRESS = 'in_progress'
SUCCESS = 'success'
UNKNOWN_LOG_STATUS = 'unknown_log_status'
class scaleway.dedibox.v1.types.Memory(capacity: 'int', type_: 'MemoryType', frequency: 'int', is_ecc: 'bool')

Bases: object

capacity: int

Capacity of the memory.

frequency: int

Frequency of the memory.

is_ecc: bool

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

type_: MemoryType

Type of the memory.

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

Bases: str, Enum

An enumeration.

DDR2 = 'ddr2'
DDR3 = 'ddr3'
DDR4 = 'ddr4'
DDR5 = 'ddr5'
class scaleway.dedibox.v1.types.NetworkInterface(card_id: 'int', device_id: 'int', mac: 'str', type_: 'NetworkInterfaceInterfaceType', ips: 'List[IP]')

Bases: object

card_id: int

Card ID of the network interface.

device_id: int

Device ID of the network interface.

ips: List[IP]

IPs of the network interface.

mac: str

MAC address of the network interface.

type_: NetworkInterfaceInterfaceType

Network interface type.

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

Bases: str, Enum

An enumeration.

IPMI = 'ipmi'
NORMAL = 'normal'
UNKNOWN = 'unknown'
VIRTUAL = 'virtual'
class scaleway.dedibox.v1.types.OS(id: 'int', name: 'str', type_: 'OSType', version: 'str', arch: 'OSArch', allow_custom_partitioning: 'bool', allow_ssh_keys: 'bool', requires_user: 'bool', requires_admin_password: 'bool', requires_panel_password: 'bool', allowed_filesystems: 'List[PartitionFileSystem]', requires_license: 'bool', license_offers: 'List[Offer]', display_name: 'str', password_regex: 'str', hostname_max_length: 'int', max_partitions: 'Optional[int]', panel_password_regex: 'Optional[str]', requires_valid_hostname: 'Optional[bool]', hostname_regex: 'Optional[str]', released_at: 'Optional[datetime]')

Bases: object

allow_custom_partitioning: bool

True if the OS allow custom partitioning.

allow_ssh_keys: bool

True if the OS allow SSH Keys.

allowed_filesystems: List[PartitionFileSystem]

True if the OS allow file systems.

arch: OSArch

Architecture of the OS.

display_name: str

Display name of the OS.

hostname_max_length: int

Hostname max length.

hostname_regex: Optional[str]

If both requires_valid_hostname & hostname_regex are set, it means that at least one of the criterias must be valid.

id: int

ID of the OS.

license_offers: List[Offer]

License offers available with the OS.

max_partitions: Optional[int]

Maximum number of partitions which can be created.

name: str

Name of the OS.

panel_password_regex: Optional[str]

Regex used to validate the panel installation password.

password_regex: str

Regex used to validate the installation passwords.

released_at: Optional[datetime]

OS release date.

requires_admin_password: bool

True if the OS requires admin password.

requires_license: bool

True if the OS requires license.

requires_panel_password: bool

True if the OS requires panel password.

requires_user: bool

True if the OS requires user.

requires_valid_hostname: Optional[bool]

If both requires_valid_hostname & hostname_regex are set, it means that at least one of the criterias must be valid.

type_: OSType

Type of the OS.

version: str

Version of the OS.

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

Bases: str, Enum

An enumeration.

AMD64 = 'amd64'
ARM = 'arm'
ARM64 = 'arm64'
UNKNOWN_ARCH = 'unknown_arch'
X86 = 'x86'
class scaleway.dedibox.v1.types.OSType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CUSTOM = 'custom'
DESKTOP = 'desktop'
PANEL = 'panel'
RESCUE = 'rescue'
SERVER = 'server'
UNKNOWN_TYPE = 'unknown_type'
VIRTU = 'virtu'
class scaleway.dedibox.v1.types.Offer(id: 'int', name: 'str', catalog: 'OfferCatalog', payment_frequency: 'OfferPaymentFrequency', pricing: 'Optional[Money]', server_info: 'Optional[OfferServerInfo]', service_level_info: 'Optional[OfferServiceLevelInfo]', rpn_info: 'Optional[OfferRPNInfo]', san_info: 'Optional[OfferSANInfo]', antidos_info: 'Optional[OfferAntiDosInfo]', backup_info: 'Optional[OfferBackupInfo]', usb_storage_info: 'Optional[OfferStorageInfo]', storage_info: 'Optional[OfferStorageInfo]', license_info: 'Optional[OfferLicenseInfo]', failover_ip_info: 'Optional[OfferFailoverIpInfo]', failover_block_info: 'Optional[OfferFailoverBlockInfo]', bandwidth_info: 'Optional[OfferBandwidthInfo]')

Bases: object

antidos_info: Optional[OfferAntiDosInfo]
backup_info: Optional[OfferBackupInfo]
bandwidth_info: Optional[OfferBandwidthInfo]
catalog: OfferCatalog

Catalog of the offer.

failover_block_info: Optional[OfferFailoverBlockInfo]
failover_ip_info: Optional[OfferFailoverIpInfo]
id: int

ID of the offer.

license_info: Optional[OfferLicenseInfo]
name: str

Name of the offer.

payment_frequency: OfferPaymentFrequency

Payment frequency of the offer.

pricing: Optional[Money]

Price of the offer.

rpn_info: Optional[OfferRPNInfo]
san_info: Optional[OfferSANInfo]
server_info: Optional[OfferServerInfo]
service_level_info: Optional[OfferServiceLevelInfo]
storage_info: Optional[OfferStorageInfo]
usb_storage_info: Optional[OfferStorageInfo]
class scaleway.dedibox.v1.types.OfferAntiDosInfo(type_: 'OfferAntiDosInfoType')

Bases: object

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

Bases: str, Enum

An enumeration.

CURATIVE = 'curative'
MINIMAL = 'minimal'
PREVENTIVE = 'preventive'
class scaleway.dedibox.v1.types.OfferBackupInfo(size: 'int')

Bases: object

size: int
class scaleway.dedibox.v1.types.OfferBandwidthInfo(speed: 'int')

Bases: object

speed: int
class scaleway.dedibox.v1.types.OfferCatalog(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ADMIN = 'admin'
ALL = 'all'
BETA = 'beta'
DEFAULT = 'default'
INACTIVE = 'inactive'
PREMIUM = 'premium'
RESELLER = 'reseller'
VOLUME = 'volume'
class scaleway.dedibox.v1.types.OfferFailoverBlockInfo(onetime_fees: 'Optional[Offer]')

Bases: object

onetime_fees: Optional[Offer]
class scaleway.dedibox.v1.types.OfferFailoverIpInfo(onetime_fees: 'Optional[Offer]')

Bases: object

onetime_fees: Optional[Offer]
class scaleway.dedibox.v1.types.OfferLicenseInfo(bound_to_ip: 'bool')

Bases: object

bound_to_ip: bool
class scaleway.dedibox.v1.types.OfferPaymentFrequency(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

MONTHLY = 'monthly'
ONESHOT = 'oneshot'
class scaleway.dedibox.v1.types.OfferRPNInfo(speed: 'int')

Bases: object

speed: int
class scaleway.dedibox.v1.types.OfferSANInfo(size: 'int', ha: 'bool', device_type: 'OfferSANInfoType')

Bases: object

device_type: OfferSANInfoType

Type of SAN device (hdd / ssd).

ha: bool

High availabilty offer.

size: int

SAN size (in bytes).

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

Bases: str, Enum

An enumeration.

HDD = 'hdd'
SSD = 'ssd'
class scaleway.dedibox.v1.types.OfferServerInfo(bandwidth: 'int', stock: 'OfferServerInfoStock', commercial_range: 'str', disks: 'List[Disk]', cpus: 'List[CPU]', memories: 'List[Memory]', persistent_memories: 'List[PersistentMemory]', raid_controllers: 'List[RaidController]', available_options: 'List[Offer]', connectivity: 'int', stock_by_datacenter: 'Dict[str, OfferServerInfoStock]', rpn_version: 'Optional[int]', onetime_fees: 'Optional[Offer]')

Bases: object

available_options: List[Offer]
bandwidth: int
commercial_range: str
connectivity: int
cpus: List[CPU]
disks: List[Disk]
memories: List[Memory]
onetime_fees: Optional[Offer]
persistent_memories: List[PersistentMemory]
raid_controllers: List[RaidController]
rpn_version: Optional[int]
stock: OfferServerInfoStock
stock_by_datacenter: Dict[str, OfferServerInfoStock]
class scaleway.dedibox.v1.types.OfferServerInfoStock(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AVAILABLE = 'available'
EMPTY = 'empty'
LOW = 'low'
class scaleway.dedibox.v1.types.OfferServiceLevelInfo(support_ticket: 'bool', support_phone: 'bool', sales_support: 'bool', git: 'str', sla: 'float', priority_support: 'bool', high_rpn_bandwidth: 'bool', customization: 'bool', antidos: 'bool', extra_failover_quota: 'int', available_options: 'List[Offer]')

Bases: object

antidos: bool
available_options: List[Offer]
customization: bool
extra_failover_quota: int
git: str
high_rpn_bandwidth: bool
priority_support: bool
sales_support: bool
sla: float
support_phone: bool
support_ticket: bool
class scaleway.dedibox.v1.types.OfferStorageInfo(max_quota: 'int', size: 'int')

Bases: object

max_quota: int
size: int
class scaleway.dedibox.v1.types.Partition(type_: 'PartitionType', file_system: 'PartitionFileSystem', raid_level: 'RaidArrayRaidLevel', capacity: 'int', connectors: 'List[str]', mount_point: 'Optional[str]')

Bases: object

capacity: int

Capacity of the partition.

connectors: List[str]

Connectors of the partition.

file_system: PartitionFileSystem

File system of the partition.

mount_point: Optional[str]

Mount point of the partition.

raid_level: RaidArrayRaidLevel

Raid level of the partition.

type_: PartitionType

Type of the partition.

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

Bases: str, Enum

An enumeration.

EFI = 'efi'
EXT2 = 'ext2'
EXT3 = 'ext3'
EXT4 = 'ext4'
FAT32 = 'fat32'
NTFS = 'ntfs'
SWAP = 'swap'
UFS = 'ufs'
UNKNOWN = 'unknown'
XFS = 'xfs'
class scaleway.dedibox.v1.types.PartitionType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

EXTENDED = 'extended'
LOGICAL = 'logical'
PRIMARY = 'primary'
class scaleway.dedibox.v1.types.PersistentMemory(capacity: 'int', frequency: 'int', model: 'str')

Bases: object

capacity: int

Capacity of the persistent memory.

frequency: int

Frequency of the persistent memory.

model: str

Model of the persistent memory.

class scaleway.dedibox.v1.types.Raid(raid_arrays: 'List[RaidArray]')

Bases: object

raid_arrays: List[RaidArray]

Details about the RAID controller.

class scaleway.dedibox.v1.types.RaidArray(raid_level: 'RaidArrayRaidLevel', disks: 'List[ServerDisk]')

Bases: object

disks: List[ServerDisk]

Disks on the RAID controller.

raid_level: RaidArrayRaidLevel

The RAID level.

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

Bases: str, Enum

An enumeration.

NO_RAID = 'no_raid'
RAID0 = 'raid0'
RAID1 = 'raid1'
RAID10 = 'raid10'
RAID5 = 'raid5'
RAID6 = 'raid6'
class scaleway.dedibox.v1.types.RaidController(model: 'str', raid_level: 'List[str]')

Bases: object

model: str

Model of the RAID controller.

raid_level: List[str]

RAID level of the RAID controller.

class scaleway.dedibox.v1.types.RebootServerRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID to reboot.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.Refund(id: 'int', status: 'RefundStatus', method: 'RefundMethod', content: 'str', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', refunded_at: 'Optional[datetime]')

Bases: object

content: str
created_at: Optional[datetime]
id: int
method: RefundMethod
refunded_at: Optional[datetime]
status: RefundStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
class scaleway.dedibox.v1.types.RefundMethod(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AMEX = 'amex'
CREDIT_CARD = 'credit_card'
PAYPAL = 'paypal'
TRANSFER = 'transfer'
UNKNOWN_REFUND_METHOD = 'unknown_refund_method'
class scaleway.dedibox.v1.types.RefundStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ERRORED = 'errored'
PAID = 'paid'
UNKNOWN_REFUND_STATUS = 'unknown_refund_status'
UNPAID = 'unpaid'
class scaleway.dedibox.v1.types.RefundSummary(id: 'int', status: 'RefundStatus', method: 'RefundMethod', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', refunded_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]
id: int
method: RefundMethod
refunded_at: Optional[datetime]
status: RefundStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
class scaleway.dedibox.v1.types.Rescue(os_id: 'int', login: 'str', password: 'str', protocol: 'RescueProtocol')

Bases: object

login: str

Login of the rescue.

os_id: int

OS ID of the rescue.

password: str

Password of the rescue.

protocol: RescueProtocol

Protocol of the resuce.

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

Bases: str, Enum

An enumeration.

SSH = 'ssh'
VNC = 'vnc'
class scaleway.dedibox.v1.types.RpnApiGetRpnStatusRequest(project_id: 'Optional[str]', rpnv1_group_id: 'Optional[int]', rpnv2_group_id: 'Optional[int]')

Bases: object

project_id: Optional[str]

A project ID.

rpnv1_group_id: Optional[int]

An RPN v1 group ID.

rpnv2_group_id: Optional[int]

An RPN v2 group ID.

class scaleway.dedibox.v1.types.RpnApiListRpnServerCapabilitiesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnServerCapabilitiesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnServerCapabilitiesRequestOrderBy]

Order of the servers.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of servers per page.

project_id: Optional[str]

Filter servers by project ID.

class scaleway.dedibox.v1.types.RpnGroup(id: 'int', name: 'str', type_: 'RpnGroupType', active: 'bool', owner: 'str', members_count: 'int', organization_id: 'str', project_id: 'str', created_at: 'Optional[datetime]')

Bases: object

active: bool

Whether the group is active or not.

created_at: Optional[datetime]

Rpn group creation date.

id: int

Rpn group member ID.

members_count: int

Total number of members.

name: str

Rpn group name.

organization_id: str

Rpn group organization ID.

owner: str

RPN group owner.

project_id: str

Rpn group project ID.

type_: RpnGroupType

Rpn group type (local or shared).

class scaleway.dedibox.v1.types.RpnGroupMember(id: 'int', status: 'RpnGroupMemberStatus', group_id: 'int', group_name: 'str', group_owner: 'str', owner: 'str', san_server: 'Optional[RpnSanServer]', server: 'Optional[Server]', speed: 'Optional[int]')

Bases: object

group_id: int

RPN group ID.

group_name: str

RPN group name.

group_owner: str

RPN group owner.

id: int

Rpn group member ID.

owner: str

RPN member owner.

san_server: Optional[RpnSanServer]

Authorized RPN SAN server.

server: Optional[Server]

Authorized rpn v1 capable server.

speed: Optional[int]

RPN speed.

status: RpnGroupMemberStatus

RPN group member status.

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETED = 'deleted'
DELETING = 'deleting'
PENDING_INVITATION = 'pending_invitation'
UNKNOWN_RPN_MEMBER_STATUS = 'unknown_rpn_member_status'
class scaleway.dedibox.v1.types.RpnGroupType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

LOCAL = 'local'
SHARED = 'shared'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.RpnSan(id: 'int', datacenter_name: 'str', organization_id: 'str', project_id: 'str', server_hostname: 'str', iqn_suffix: 'str', offer_id: 'int', created_at: 'Optional[datetime]', offer_name: 'str', status: 'RpnSanStatus', storage_size: 'int', iqn: 'str', rpnv1_compatible: 'bool', rpnv1_implicit: 'bool', offer: 'Optional[Offer]', delivered_at: 'Optional[datetime]', terminated_at: 'Optional[datetime]', expires_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Date of creation of the RPN SAN.

datacenter_name: str

Datacenter location.

delivered_at: Optional[datetime]

RPN SAN delivery date.

expires_at: Optional[datetime]

RPN SAN expiration date.

id: int

RPN SAN ID.

iqn: str
iqn_suffix: str

IQN suffix.

offer: Optional[Offer]
offer_id: int

Offer ID.

offer_name: str

Offer description.

organization_id: str

Organization ID.

project_id: str

Project ID.

rpnv1_compatible: bool

True if the SAN is compatible with the RPNv1 technology.

rpnv1_implicit: bool

True if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1.

server_hostname: str

RPN SAN server hostname.

status: RpnSanStatus

Status.

storage_size: int

RPN SAN storage size.

terminated_at: Optional[datetime]

RPN SAN termination date.

class scaleway.dedibox.v1.types.RpnSanApiAddIpRequest(rpn_san_id: 'int', ip_ids: 'List[int]')

Bases: object

ip_ids: List[int]

An array of IP ID.

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.types.RpnSanApiCreateRpnSanRequest(offer_id: 'int', project_id: 'Optional[str]')

Bases: object

offer_id: int

Offer ID.

project_id: Optional[str]

Your project ID.

class scaleway.dedibox.v1.types.RpnSanApiDeleteRpnSanRequest(rpn_san_id: 'int')

Bases: object

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.types.RpnSanApiGetRpnSanRequest(rpn_san_id: 'int')

Bases: object

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.types.RpnSanApiListAvailableIpsRequest(rpn_san_id: 'int', type_: 'Optional[RpnSanIpType]')

Bases: object

rpn_san_id: int

RPN SAN ID.

type_: Optional[RpnSanIpType]

Filter by IP type (server | rpnv2_subnet).

class scaleway.dedibox.v1.types.RpnSanApiListIpsRequest(rpn_san_id: 'int', type_: 'Optional[RpnSanIpType]')

Bases: object

rpn_san_id: int

RPN SAN ID.

type_: Optional[RpnSanIpType]

Filter by IP type (server | rpnv2_subnet).

class scaleway.dedibox.v1.types.RpnSanApiListRpnSansRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnSansRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnSansRequestOrderBy]

Order of the RPN SANs.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of RPN SANs per page.

project_id: Optional[str]

Filter RPN SANs by project ID.

class scaleway.dedibox.v1.types.RpnSanApiRemoveIpRequest(rpn_san_id: 'int', ip_ids: 'List[int]')

Bases: object

ip_ids: List[int]

An array of IP ID.

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.types.RpnSanIp(type_: 'RpnSanIpType', ip: 'Optional[IP]', server: 'Optional[RpnSanIpServer]', rpnv2_group: 'Optional[RpnSanIpRpnV2Group]')

Bases: object

ip: Optional[IP]

An IP object.

rpnv2_group: Optional[RpnSanIpRpnV2Group]
server: Optional[RpnSanIpServer]
type_: RpnSanIpType

IP type (server | rpnv2_subnet).

class scaleway.dedibox.v1.types.RpnSanIpRpnV2Group(id: 'int', name: 'str')

Bases: object

id: int
name: str
class scaleway.dedibox.v1.types.RpnSanIpServer(id: 'int', hostname: 'str', datacenter_name: 'str')

Bases: object

datacenter_name: str
hostname: str
id: int
class scaleway.dedibox.v1.types.RpnSanIpType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

RPNV2_SUBNET = 'rpnv2_subnet'
SERVER_IP = 'server_ip'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.RpnSanServer(id: 'int', datacenter_name: 'str', hostname: 'str', sans: 'List[RpnSan]', zone: 'Zone')

Bases: object

datacenter_name: str

The RPN SAN server datacenter name.

hostname: str

The RPN SAN server hostname.

id: int

The RPN SAN server ID.

sans: List[RpnSan]

RPN SANs linked to the RPN SAN server.

zone: str

The RPN SAN server zone.

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETING = 'deleting'
MAINTENANCE = 'maintenance'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.types.RpnSanSummary(id: 'int', datacenter_name: 'str', organization_id: 'str', project_id: 'str', server_hostname: 'str', iqn_suffix: 'str', offer_id: 'int', created_at: 'Optional[datetime]', offer_name: 'str', status: 'RpnSanStatus', storage_size: 'int', rpnv1_compatible: 'bool', rpnv1_implicit: 'bool', delivered_at: 'Optional[datetime]', terminated_at: 'Optional[datetime]', expires_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Date of creation of the RPN SAN.

datacenter_name: str

Datacenter location.

delivered_at: Optional[datetime]

RPN SAN delivery date.

expires_at: Optional[datetime]

RPN SAN expiration date.

id: int

RPN SAN ID.

iqn_suffix: str

IQN suffix.

offer_id: int

Offer ID.

offer_name: str

Offer description.

organization_id: str

Organization ID.

project_id: str

Project ID.

rpnv1_compatible: bool

True if the SAN is compatible with the RPNv1 technology.

rpnv1_implicit: bool

True if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1.

server_hostname: str

RPN SAN server hostname.

status: RpnSanStatus

Status.

storage_size: int

RPN SAN storage size.

terminated_at: Optional[datetime]

RPN SAN termination date.

class scaleway.dedibox.v1.types.RpnServerCapability(id: 'int', hostname: 'str', datacenter_name: 'str', zone: 'Zone', compatible_qinq: 'bool', can_join_qinq_group: 'bool', rpnv1_group_count: 'int', rpnv2_group_count: 'int', can_join_rpnv2_group: 'bool', ip_address: 'Optional[str]', rpn_version: 'Optional[int]')

Bases: object

can_join_qinq_group: bool

True if server can join a QinQ group.

can_join_rpnv2_group: bool

True if server can join an rpnv2 group.

compatible_qinq: bool

True if server is compatible with QinQ protocol (rpn v2).

datacenter_name: str

Server datacenter name.

hostname: str

Server hostname.

id: int

Server ID.

ip_address: Optional[str]

Private IP address (if rpn compatiblle).

rpn_version: Optional[int]

Supported rpn version.

rpnv1_group_count: int

Times server is linked in a rpnv1 group.

rpnv2_group_count: int

Times server is linked in a rpnv2 group.

zone: str

Server zone.

class scaleway.dedibox.v1.types.RpnV1ApiAcceptRpnInviteRequest(member_id: 'int')

Bases: object

member_id: int

The member ID.

class scaleway.dedibox.v1.types.RpnV1ApiAddRpnGroupMembersRequest(group_id: 'int', server_ids: 'Optional[List[int]]', san_server_ids: 'Optional[List[int]]')

Bases: object

group_id: int

The rpn v1 group ID.

san_server_ids: Optional[List[int]]

A collection of rpn v1 capable RPN SAN server IDs.

server_ids: Optional[List[int]]

A collection of rpn v1 capable server IDs.

class scaleway.dedibox.v1.types.RpnV1ApiCreateRpnGroupRequest(name: 'str', server_ids: 'Optional[List[int]]', san_server_ids: 'Optional[List[int]]', project_id: 'Optional[str]')

Bases: object

name: str

Rpn v1 group name.

project_id: Optional[str]

A project ID.

san_server_ids: Optional[List[int]]

A collection of rpn v1 capable rpn sans servers.

server_ids: Optional[List[int]]

A collection of rpn v1 capable servers.

class scaleway.dedibox.v1.types.RpnV1ApiDeleteRpnGroupMembersRequest(group_id: 'int', member_ids: 'List[int]')

Bases: object

group_id: int

The rpn v1 group ID.

member_ids: List[int]

A collection of rpn v1 group members IDs.

class scaleway.dedibox.v1.types.RpnV1ApiDeleteRpnGroupRequest(group_id: 'int')

Bases: object

group_id: int

Rpn v1 group ID.

class scaleway.dedibox.v1.types.RpnV1ApiGetRpnGroupRequest(group_id: 'int')

Bases: object

group_id: int

Rpn v1 group ID.

class scaleway.dedibox.v1.types.RpnV1ApiLeaveRpnGroupRequest(group_id: 'int', member_ids: 'List[int]', project_id: 'Optional[str]')

Bases: object

group_id: int

The RPN V1 group ID.

member_ids: List[int]

A collection of rpn v1 group members IDs.

project_id: Optional[str]

A project ID.

class scaleway.dedibox.v1.types.RpnV1ApiListRpnCapableSanServersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnCapableSanServersRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnCapableSanServersRequestOrderBy]

Order of the rpn capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn capable resources per page.

project_id: Optional[str]

Filter rpn capable resources by project ID.

class scaleway.dedibox.v1.types.RpnV1ApiListRpnCapableServersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnCapableServersRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnCapableServersRequestOrderBy]

Order of the rpn capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn capable resources per page.

project_id: Optional[str]

Filter rpn capable resources by project ID.

class scaleway.dedibox.v1.types.RpnV1ApiListRpnGroupMembersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnGroupMembersRequestOrderBy]', group_id: 'int', project_id: 'Optional[str]')

Bases: object

group_id: int

Filter rpn v1 group members by group ID.

order_by: Optional[ListRpnGroupMembersRequestOrderBy]

Order of the rpn v1 group members.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v1 group members per page.

project_id: Optional[str]

A project ID.

class scaleway.dedibox.v1.types.RpnV1ApiListRpnGroupsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnGroupsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnGroupsRequestOrderBy]

Order of the rpn v1 groups.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v1 groups per page.

project_id: Optional[str]

Filter rpn v1 groups by project ID.

class scaleway.dedibox.v1.types.RpnV1ApiListRpnInvitesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnInvitesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnInvitesRequestOrderBy]

Order of the rpn capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn capable resources per page.

project_id: Optional[str]

Filter rpn capable resources by project ID.

class scaleway.dedibox.v1.types.RpnV1ApiRefuseRpnInviteRequest(member_id: 'int')

Bases: object

member_id: int

The member ID.

class scaleway.dedibox.v1.types.RpnV1ApiRpnGroupInviteRequest(group_id: 'int', server_ids: 'List[int]', project_id: 'Optional[str]')

Bases: object

group_id: int

The RPN V1 group ID.

project_id: Optional[str]

A project ID.

server_ids: List[int]

A collection of external server IDs.

class scaleway.dedibox.v1.types.RpnV1ApiUpdateRpnGroupNameRequest(group_id: 'int', name: 'Optional[str]')

Bases: object

group_id: int

Rpn v1 group ID.

name: Optional[str]

New rpn v1 group name.

class scaleway.dedibox.v1.types.RpnV2ApiAddRpnV2MembersRequest(group_id: 'int', servers: 'List[int]')

Bases: object

group_id: int

RPN V2 group ID.

servers: List[int]

A collection of server IDs.

class scaleway.dedibox.v1.types.RpnV2ApiCreateRpnV2GroupRequest(name: 'str', servers: 'List[int]', project_id: 'Optional[str]', type_: 'Optional[RpnV2GroupType]')

Bases: object

name: str

RPN V2 group name.

project_id: Optional[str]

Project ID of the RPN V2 group.

servers: List[int]

A collection of server IDs.

type_: Optional[RpnV2GroupType]

RPN V2 group type (qing / standard).

class scaleway.dedibox.v1.types.RpnV2ApiDeleteRpnV2GroupRequest(group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

class scaleway.dedibox.v1.types.RpnV2ApiDeleteRpnV2MembersRequest(group_id: 'int', member_ids: 'List[int]')

Bases: object

group_id: int

RPN V2 group ID.

member_ids: List[int]

A collection of member IDs.

class scaleway.dedibox.v1.types.RpnV2ApiDisableRpnV2GroupCompatibilityRequest(group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

class scaleway.dedibox.v1.types.RpnV2ApiEnableRpnV2GroupCompatibilityRequest(group_id: 'int', rpnv1_group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

rpnv1_group_id: int

RPN V1 group ID.

class scaleway.dedibox.v1.types.RpnV2ApiGetRpnV2GroupRequest(group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

class scaleway.dedibox.v1.types.RpnV2ApiListRpnV2CapableResourcesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2CapableResourcesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnV2CapableResourcesRequestOrderBy]

Order of the rpn v2 capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 capable resources per page.

project_id: Optional[str]

Filter rpn v2 capable resources by project ID.

class scaleway.dedibox.v1.types.RpnV2ApiListRpnV2GroupLogsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2GroupLogsRequestOrderBy]', group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

order_by: Optional[ListRpnV2GroupLogsRequestOrderBy]

Order of the rpn v2 group logs.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 group logs per page.

class scaleway.dedibox.v1.types.RpnV2ApiListRpnV2GroupsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2GroupsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnV2GroupsRequestOrderBy]

Order of the rpn v2 groups.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 groups per page.

project_id: Optional[str]

Filter rpn v2 groups by project ID.

class scaleway.dedibox.v1.types.RpnV2ApiListRpnV2MembersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2MembersRequestOrderBy]', group_id: 'int', type_: 'Optional[ListRpnV2MembersRequestType]')

Bases: object

group_id: int

RPN V2 group ID.

order_by: Optional[ListRpnV2MembersRequestOrderBy]

Order of the rpn v2 group members.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 group members per page.

type_: Optional[ListRpnV2MembersRequestType]

Filter members by type.

class scaleway.dedibox.v1.types.RpnV2ApiUpdateRpnV2GroupNameRequest(group_id: 'int', name: 'Optional[str]')

Bases: object

group_id: int

RPN V2 group ID.

name: Optional[str]

RPN V2 group name.

class scaleway.dedibox.v1.types.RpnV2ApiUpdateRpnV2VlanForMembersRequest(group_id: 'int', member_ids: 'List[int]', vlan: 'Optional[int]')

Bases: object

group_id: int

RPN V2 group ID.

member_ids: List[int]

RPN V2 member IDs.

vlan: Optional[int]

Min: 0.

Max: 3967.

class scaleway.dedibox.v1.types.RpnV2Group(id: 'int', name: 'str', compatible_rpnv1: 'bool', organization_id: 'str', project_id: 'str', type_: 'RpnV2GroupType', status: 'RpnV2GroupStatus', owner: 'str', members_count: 'int', gateway: 'str', subnet: 'Optional[RpnV2GroupSubnet]', rpnv1_group: 'Optional[RpnGroup]')

Bases: object

compatible_rpnv1: bool

Whether or not the RPN V1 compatibility was enabled.

gateway: str

RPN V2 gateway.

id: int

RPN V2 group ID.

members_count: int

Total number of members.

name: str

RPN V2 group name.

organization_id: str

Organization ID of the RPN V2 group.

owner: str

RPN V2 group owner.

project_id: str

Project ID of the RPN V2 group.

rpnv1_group: Optional[RpnGroup]

The RPNv1 group (if the compatibility was enabled).

status: RpnV2GroupStatus

RPN V2 group status.

subnet: Optional[RpnV2GroupSubnet]

RPN V2 subnet.

type_: RpnV2GroupType

RPN V2 group type (qing / standard).

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETING = 'deleting'
UNKNOWN_GROUP_STATUS = 'unknown_group_status'
UPDATING = 'updating'
class scaleway.dedibox.v1.types.RpnV2GroupSubnet(address: 'str', cidr: 'int')

Bases: object

address: str
cidr: int
class scaleway.dedibox.v1.types.RpnV2GroupType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

QINQ = 'qinq'
STANDARD = 'standard'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.dedibox.v1.types.RpnV2Member(id: 'int', status: 'RpnV2MemberStatus', vlan: 'str', speed: 'Optional[int]', server: 'Optional[Server]', rpnv1_group: 'Optional[RpnGroup]')

Bases: object

id: int

RPN V2 member ID.

rpnv1_group: Optional[RpnGroup]
server: Optional[Server]
speed: Optional[int]

RPN speed.

status: RpnV2MemberStatus

RPN V2 member status.

vlan: str

RPN V2 member VLAN.

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETING = 'deleting'
UNKNOWN_MEMBER_STATUS = 'unknown_member_status'
UPDATING = 'updating'
class scaleway.dedibox.v1.types.Server(id: 'int', organization_id: 'str', project_id: 'str', hostname: 'str', rebooted_at: 'Optional[datetime]', status: 'ServerStatus', abuse_contact: 'str', interfaces: 'List[NetworkInterface]', zone: 'Zone', options: 'List[ServerOption]', has_bmc: 'bool', tags: 'List[str]', is_outsourced: 'bool', ipv6_slaac: 'bool', qinq: 'bool', is_rpnv2_member: 'bool', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', expired_at: 'Optional[datetime]', offer: 'Optional[Offer]', location: 'Optional[ServerLocation]', os: 'Optional[OS]', level: 'Optional[ServiceLevel]', rescue_os: 'Optional[OS]')

Bases: object

abuse_contact: str

Abuse contact of the server.

created_at: Optional[datetime]

Date of creation of the server.

expired_at: Optional[datetime]

Date of release of the server.

has_bmc: bool

Boolean if the server has a BMC.

hostname: str

Hostname of the server.

id: int

ID of the server.

interfaces: List[NetworkInterface]

Network interfaces of the server.

ipv6_slaac: bool

Whether or not you can enable/disable the IPv6.

is_outsourced: bool

Whether the server is outsourced or not.

is_rpnv2_member: bool

Whether or not the server is already part of an rpnv2 group.

level: Optional[ServiceLevel]

Service level of the server.

location: Optional[ServerLocation]

Location of the server.

offer: Optional[Offer]

Offer of the server.

options: List[ServerOption]

Options subscribe on the server.

organization_id: str

Organization ID the server is attached to.

os: Optional[OS]

OS installed on the server.

project_id: str

Project ID the server is attached to.

qinq: bool

Whether the server is compatible with QinQ.

rebooted_at: Optional[datetime]

Date of last reboot of the server.

rescue_os: Optional[OS]

Rescue OS of the server.

status: ServerStatus

Status of the server.

tags: List[str]

Array of customs tags attached to the server.

updated_at: Optional[datetime]

Date of last modification of the server.

zone: str

The zone in which is the server.

class scaleway.dedibox.v1.types.ServerDefaultPartitioning(partitions: 'List[Partition]')

Bases: object

partitions: List[Partition]

Default partitions.

class scaleway.dedibox.v1.types.ServerDisk(id: 'int', connector: 'str', type_: 'ServerDiskType', capacity: 'int', is_addon: 'bool')

Bases: object

capacity: int
connector: str
id: int
is_addon: bool
type_: ServerDiskType
class scaleway.dedibox.v1.types.ServerDiskType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

NVME = 'nvme'
SAS = 'sas'
SATA = 'sata'
SSD = 'ssd'
SSHD = 'sshd'
USB = 'usb'
class scaleway.dedibox.v1.types.ServerEvent(event_id: 'int', description: 'str', date: 'Optional[datetime]')

Bases: object

date: Optional[datetime]

Date of the event.

description: str

Description of the event.

event_id: int

ID of the event.

class scaleway.dedibox.v1.types.ServerInstall(os_id: 'int', hostname: 'str', partitions: 'List[Partition]', ssh_key_ids: 'List[str]', status: 'ServerInstallStatus', user_login: 'Optional[str]', panel_url: 'Optional[str]')

Bases: object

hostname: str
os_id: int
panel_url: Optional[str]
partitions: List[Partition]
ssh_key_ids: List[str]
status: ServerInstallStatus
user_login: Optional[str]
class scaleway.dedibox.v1.types.ServerInstallStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BOOTING = 'booting'
CONFIGURING = 'configuring'
CONFIGURING_BOOTLOADER = 'configuring_bootloader'
FORMATTING = 'formatting'
INSTALLED = 'installed'
INSTALLING = 'installing'
PARTITIONING = 'partitioning'
REBOOTING = 'rebooting'
SETTING_UP_RAID = 'setting_up_raid'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.ServerLocation(rack: 'str', room: 'str', datacenter_name: 'str')

Bases: object

datacenter_name: str
rack: str
room: str
class scaleway.dedibox.v1.types.ServerOption(options: 'List[ServerOption]', offer: 'Optional[Offer]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', expired_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]
expired_at: Optional[datetime]
offer: Optional[Offer]
options: List[ServerOption]
updated_at: Optional[datetime]
class scaleway.dedibox.v1.types.ServerStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BUSY = 'busy'
DELIVERING = 'delivering'
ERROR = 'error'
INSTALLING = 'installing'
LOCKED = 'locked'
READY = 'ready'
RESCUE = 'rescue'
STOPPED = 'stopped'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.ServerSummary(id: 'int', datacenter_name: 'str', organization_id: 'str', project_id: 'str', hostname: 'str', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', expired_at: 'Optional[datetime]', offer_id: 'int', offer_name: 'str', status: 'ServerStatus', interfaces: 'List[NetworkInterface]', zone: 'Zone', is_outsourced: 'bool', qinq: 'bool', os_id: 'Optional[int]', level: 'Optional[ServiceLevel]', rpn_version: 'Optional[int]')

Bases: object

created_at: Optional[datetime]

Date of creation of the server.

datacenter_name: str

Datacenter of the server.

expired_at: Optional[datetime]

Date of release of the server.

hostname: str

Hostname of the server.

id: int

ID of the server.

interfaces: List[NetworkInterface]

Network interfaces of the server.

is_outsourced: bool

Whether the server is outsourced or not.

level: Optional[ServiceLevel]

Service level of the server.

offer_id: int

Offer ID of the server.

offer_name: str

Offer name of the server.

organization_id: str

Organization ID the server is attached to.

os_id: Optional[int]

OS ID installed on server.

project_id: str

Project ID the server is attached to.

qinq: bool

Whether the server is compatible with QinQ.

rpn_version: Optional[int]

Supported RPN version.

status: ServerStatus

Status of the server.

updated_at: Optional[datetime]

Date of last modification of the server.

zone: str

The zone in which is the server.

class scaleway.dedibox.v1.types.Service(id: 'int', provisioning_status: 'ServiceProvisioningStatus', type_: 'ServiceType', resource_id: 'Optional[int]', offer: 'Optional[Offer]', created_at: 'Optional[datetime]', delivered_at: 'Optional[datetime]', terminated_at: 'Optional[datetime]', expires_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Creation date of the service.

delivered_at: Optional[datetime]

Delivery date of the service.

expires_at: Optional[datetime]

Expiration date of the service.

id: int

ID of the service.

offer: Optional[Offer]

Offer of the service.

provisioning_status: ServiceProvisioningStatus

Provisioning status of the service.

resource_id: Optional[int]

Resource ID of the service.

terminated_at: Optional[datetime]

Terminatation date of the service.

type_: ServiceType

Service type, either order or service.

class scaleway.dedibox.v1.types.ServiceLevel(offer_id: 'int', level: 'ServiceLevelLevel')

Bases: object

level: ServiceLevelLevel

Level type of service level.

offer_id: int

Offer ID of service level.

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

Bases: str, Enum

An enumeration.

BASIC = 'basic'
BUSINESS = 'business'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.ServiceProvisioningStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

DELIVERING = 'delivering'
ERROR = 'error'
EXPIRED = 'expired'
EXPIRING = 'expiring'
READY = 'ready'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.types.ServiceType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ORDER = 'order'
SERVICE = 'service'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.dedibox.v1.types.StartBMCAccessRequest(server_id: 'int', ip: 'str', zone: 'Optional[Zone]')

Bases: object

ip: str

The IP authorized to connect to the given server.

server_id: int

ID of the server to start the BMC access.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.StartRescueRequest(server_id: 'int', os_id: 'int', zone: 'Optional[Zone]')

Bases: object

os_id: int

OS ID to use to start rescue.

server_id: int

ID of the server to start rescue.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.StartServerRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID to start.

zone: Optional[str]

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

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

Bases: object

server_id: int

ID of the server to stop BMC access.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.StopRescueRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server to stop rescue.

zone: Optional[str]

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

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

Bases: object

server_id: int

Server ID to stop.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.SubscribeServerOptionRequest(server_id: 'int', option_id: 'int', zone: 'Optional[Zone]')

Bases: object

option_id: int

Option ID to subscribe.

server_id: int

Server ID to subscribe server option.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.SubscribeStorageOptionsRequest(server_id: 'int', options_ids: 'List[int]', zone: 'Optional[Zone]')

Bases: object

options_ids: List[int]

Option IDs of the storage options to subscribe.

server_id: int

Server ID of the storage options to subscribe.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.SubscribeStorageOptionsResponse(services: 'List[Service]')

Bases: object

services: List[Service]

Services subscribe storage options.

class scaleway.dedibox.v1.types.UpdatableRaidArray(raid_level: 'RaidArrayRaidLevel', disk_ids: 'List[int]')

Bases: object

disk_ids: List[int]

The list of Disk ID of the updatable RAID.

raid_level: RaidArrayRaidLevel

The RAID level.

class scaleway.dedibox.v1.types.UpdateRaidRequest(server_id: 'int', raid_arrays: 'List[UpdatableRaidArray]', zone: 'Optional[Zone]')

Bases: object

raid_arrays: List[UpdatableRaidArray]

RAIDs to update.

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.UpdateReverseRequest(ip_id: 'int', reverse: 'str', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the IP.

reverse: str

Reverse to apply on the IP.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.UpdateServerBackupRequest(server_id: 'int', zone: 'Optional[Zone]', password: 'Optional[str]', autologin: 'Optional[bool]', acl_enabled: 'Optional[bool]')

Bases: object

acl_enabled: Optional[bool]

Boolean to enable or disable ACL.

autologin: Optional[bool]

Autologin of the server backup.

password: Optional[str]

Password of the server backup.

server_id: int

Server ID to update backup.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.UpdateServerRequest(server_id: 'int', zone: 'Optional[Zone]', hostname: 'Optional[str]', enable_ipv6: 'Optional[bool]')

Bases: object

enable_ipv6: Optional[bool]

Flag to enable or not the IPv6 of server.

hostname: Optional[str]

Hostname of the server to update.

server_id: int

Server ID to update.

zone: Optional[str]

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

class scaleway.dedibox.v1.types.UpdateServerTagsRequest(server_id: 'int', zone: 'Optional[Zone]', tags: 'Optional[List[str]]')

Bases: object

server_id: int

Server ID to update the tags.

tags: Optional[List[str]]

Tags of server to update.

zone: Optional[str]

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

Module contents

class scaleway.dedibox.v1.AttachFailoverIPToMacAddressRequest(ip_id: 'int', zone: 'Optional[Zone]', type_: 'Optional[AttachFailoverIPToMacAddressRequestMacType]', mac: 'Optional[str]')

Bases: object

ip_id: int

ID of the failover IP.

mac: Optional[str]

A valid mac address (existing or not).

type_: Optional[AttachFailoverIPToMacAddressRequestMacType]

A mac type.

zone: Optional[str]

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

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

Bases: str, Enum

An enumeration.

KVM = 'kvm'
MAC_TYPE_UNKNOWN = 'mac_type_unknown'
VMWARE = 'vmware'
XEN = 'xen'
class scaleway.dedibox.v1.AttachFailoverIPsRequest(server_id: 'int', fips_ids: 'List[int]', zone: 'Optional[Zone]')

Bases: object

fips_ids: List[int]

List of ID of failovers IP to attach.

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.BMCAccess(url: 'str', login: 'str', password: 'str', status: 'BMCAccessStatus', 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.

status: BMCAccessStatus

Status of the connection.

url: str

URL to access to the server console.

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

Bases: str, Enum

An enumeration.

CREATED = 'created'
CREATING = 'creating'
DELETING = 'deleting'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.Backup(id: 'int', login: 'str', server: 'str', status: 'BackupStatus', acl_enabled: 'bool', autologin: 'bool', quota_space: 'int', quota_space_used: 'int', quota_files: 'int', quota_files_used: 'int')

Bases: object

acl_enabled: bool

ACL enable boolean of the backup.

autologin: bool

Autologin boolean of the backup.

id: int

ID of the backup.

login: str

Login of the backup.

quota_files: int

Total quota files of the backup.

quota_files_used: int

Quota files used of the backup.

quota_space: int

Total quota space of the backup.

quota_space_used: int

Quota space used of the backup.

server: str

Server of the backup.

status: BackupStatus

Status of the backup.

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

Bases: str, Enum

An enumeration.

INACTIVE = 'inactive'
READY = 'ready'
UNINITIALIZED = 'uninitialized'
UNKNOWN_BACKUP_STATUS = 'unknown_backup_status'
class scaleway.dedibox.v1.BillingApiCanOrderRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]
class scaleway.dedibox.v1.BillingApiDownloadInvoiceRequest(invoice_id: 'int')

Bases: object

invoice_id: int
class scaleway.dedibox.v1.BillingApiDownloadRefundRequest(refund_id: 'int')

Bases: object

refund_id: int
class scaleway.dedibox.v1.BillingApiGetInvoiceRequest(invoice_id: 'int')

Bases: object

invoice_id: int
class scaleway.dedibox.v1.BillingApiGetRefundRequest(refund_id: 'int')

Bases: object

refund_id: int
class scaleway.dedibox.v1.BillingApiListInvoicesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListInvoicesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListInvoicesRequestOrderBy]
page: Optional[int]
page_size: Optional[int]
project_id: Optional[str]
class scaleway.dedibox.v1.BillingApiListRefundsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRefundsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRefundsRequestOrderBy]
page: Optional[int]
page_size: Optional[int]
project_id: Optional[str]
class scaleway.dedibox.v1.CPU(name: 'str', core_count: 'int', thread_count: 'int', frequency: 'int')

Bases: object

core_count: int

Number of cores of the CPU.

frequency: int

Frequency of the CPU.

name: str

Name of CPU.

thread_count: int

Number of threads of the CPU.

class scaleway.dedibox.v1.CanOrderResponse(can_order: 'bool', quota_ok: 'bool', phone_confirmed: 'bool', email_confirmed: 'bool', user_confirmed: 'bool', payment_mode: 'bool', billing_ok: 'bool', message: 'Optional[str]')

Bases: object

billing_ok: bool
can_order: bool
email_confirmed: bool
message: Optional[str]
payment_mode: bool
phone_confirmed: bool
quota_ok: bool
user_confirmed: bool
class scaleway.dedibox.v1.CancelServerInstallRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID of the server to cancel install.

zone: Optional[str]

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

class scaleway.dedibox.v1.CreateFailoverIPsRequest(offer_id: 'int', quantity: 'int', zone: 'Optional[Zone]', project_id: 'Optional[str]')

Bases: object

offer_id: int

Failover IP offer ID.

project_id: Optional[str]

Project ID.

quantity: int

Quantity.

zone: Optional[str]

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

class scaleway.dedibox.v1.CreateFailoverIPsResponse(total_count: 'int', services: 'List[Service]')

Bases: object

services: List[Service]
total_count: int
class scaleway.dedibox.v1.CreateServerRequest(offer_id: 'int', server_option_ids: 'List[int]', zone: 'Optional[Zone]', project_id: 'Optional[str]', datacenter_name: 'Optional[str]')

Bases: object

datacenter_name: Optional[str]

Datacenter name of the new server.

offer_id: int

Offer ID of the new server.

project_id: Optional[str]

Project ID of the new server.

server_option_ids: List[int]

Server option IDs of the new server.

zone: Optional[str]

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

class scaleway.dedibox.v1.DediboxV1API(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix API.

attach_failover_i_ps(*, server_id: int, fips_ids: List[int], zone: Optional[str] = None) None

Attach failovers on baremetal server. Attach failovers on the server associated with the given ID. :param server_id: ID of the server. :param fips_ids: List of ID of failovers IP to attach. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.attach_failover_i_ps(
    server_id=1,
    fips_ids=[],
)
attach_failover_ip_to_mac_address(*, ip_id: int, zone: Optional[str] = None, type_: Optional[AttachFailoverIPToMacAddressRequestMacType] = None, mac: Optional[str] = None) IP

Attach a failover IP to a MAC address. :param ip_id: ID of the failover IP. :param zone: Zone to target. If none is passed will use default zone from the config. :param type_: A mac type. :param mac: A valid mac address (existing or not). :return: IP

Usage:

result = api.attach_failover_ip_to_mac_address(
    ip_id=1,
)
cancel_server_install(*, server_id: int, zone: Optional[str] = None) None

Cancels the current (running) server installation. Cancels the current server installation associated with the given server ID. :param server_id: Server ID of the server to cancel install. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.cancel_server_install(
    server_id=1,
)
create_failover_i_ps(*, offer_id: int, quantity: int, zone: Optional[str] = None, project_id: Optional[str] = None) CreateFailoverIPsResponse

Order failover IPs. Order X failover IPs. :param offer_id: Failover IP offer ID. :param quantity: Quantity. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID. :return: CreateFailoverIPsResponse

Usage:

result = api.create_failover_i_ps(
    offer_id=1,
    quantity=1,
)
create_server(*, offer_id: int, server_option_ids: List[int], zone: Optional[str] = None, project_id: Optional[str] = None, datacenter_name: Optional[str] = None) Service

Create a baremetal server. Create a new baremetal server. The order return you a service ID to follow the provisionning status you could call GetService. :param offer_id: Offer ID of the new server. :param server_option_ids: Server option IDs of the new server. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID of the new server. :param datacenter_name: Datacenter name of the new server. :return: Service

Usage:

result = api.create_server(
    offer_id=1,
    server_option_ids=[],
)
delete_failover_ip(*, ip_id: int, zone: Optional[str] = None) None

Delete a failover server. Delete the failover associated with the given ID. :param ip_id: ID of the failover IP to delete. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.delete_failover_ip(
    ip_id=1,
)
delete_server(*, server_id: int, zone: Optional[str] = None) None

Delete a baremetal server. Delete the server associated with the given ID. :param server_id: Server ID to delete. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.delete_server(
    server_id=1,
)
delete_service(*, service_id: int, zone: Optional[str] = None) Service

Delete a specific service. Delete the service associated with the given ID. :param service_id: ID of the service. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Service

Usage:

result = api.delete_service(
    service_id=1,
)
detach_failover_i_ps(*, fips_ids: List[int], zone: Optional[str] = None) None

Detach failovers on baremetal server. Detach failovers on the server associated with the given ID. :param fips_ids: List of IDs of failovers IP to detach. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.detach_failover_i_ps(
    fips_ids=[],
)
detach_failover_ip_from_mac_address(*, ip_id: int, zone: Optional[str] = None) IP

Detach a failover IP from a MAC address. :param ip_id: ID of the failover IP. :param zone: Zone to target. If none is passed will use default zone from the config. :return: IP

Usage:

result = api.detach_failover_ip_from_mac_address(
    ip_id=1,
)
get_bmc_access(*, server_id: int, zone: Optional[str] = None) BMCAccess

Get BMC (Baseboard Management Controller) access for a given baremetal server. Get the BMC (Baseboard Management Controller) access associated with the given ID. :param server_id: ID of the server to get BMC access. :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=1,
)
get_failover_ip(*, ip_id: int, zone: Optional[str] = None) FailoverIP

Get a specific baremetal server. Get the server associated with the given ID. :param ip_id: ID of the failover IP. :param zone: Zone to target. If none is passed will use default zone from the config. :return: FailoverIP

Usage:

result = api.get_failover_ip(
    ip_id=1,
)
get_offer(*, offer_id: int, zone: Optional[str] = None, project_id: Optional[str] = None) Offer

Get offer. Return specific offer for the given ID. :param offer_id: ID of offer. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID. :return: Offer

Usage:

result = api.get_offer(
    offer_id=1,
)
get_ordered_service(*, ordered_service_id: int, zone: Optional[str] = None) Service
Parameters:
  • ordered_service_id

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

Returns:

Service

Usage:

result = api.get_ordered_service(
    ordered_service_id=1,
)
get_os(*, os_id: int, server_id: int, zone: Optional[str] = None, project_id: Optional[str] = None) OS

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

Usage:

result = api.get_os(
    os_id=1,
    server_id=1,
)
get_raid(*, server_id: int, zone: Optional[str] = None) Raid

Get raid. Return raid for the given server 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: Raid

Usage:

result = api.get_raid(
    server_id=1,
)
get_remaining_quota(*, zone: Optional[str] = None, project_id: Optional[str] = None) GetRemainingQuotaResponse

Get remaining quota. :param zone: Zone to target. If none is passed will use default zone from the config. :param project_id: Project ID. :return: GetRemainingQuotaResponse

Usage:

result = api.get_remaining_quota()
get_rescue(*, server_id: int, zone: Optional[str] = None) Rescue

Get rescue information. Return rescue information for the given server ID. :param server_id: ID of the server to get rescue. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Rescue

Usage:

result = api.get_rescue(
    server_id=1,
)
get_server(*, server_id: int, zone: Optional[str] = None) Server

Get a specific baremetal server. Get the server associated with the given 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=1,
)
get_server_backup(*, server_id: int, zone: Optional[str] = None) Backup
Parameters:
  • server_id – Server ID of the backup.

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

Returns:

Backup

Usage:

result = api.get_server_backup(
    server_id=1,
)
get_server_default_partitioning(*, server_id: int, os_id: int, zone: Optional[str] = None) ServerDefaultPartitioning

Get server default partitioning. Get the server default partitioning schema associated with the given server ID and OS ID. :param server_id: ID of the server. :param os_id: OS ID of the default partitioning. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerDefaultPartitioning

Usage:

result = api.get_server_default_partitioning(
    server_id=1,
    os_id=1,
)
get_server_install(*, server_id: int, zone: Optional[str] = None) ServerInstall

Get a specific server installation status. Get the server installation status associated with the given server ID. :param server_id: Server ID of the server to install. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerInstall

Usage:

result = api.get_server_install(
    server_id=1,
)
get_service(*, service_id: int, zone: Optional[str] = None) Service

Get a specific service. Get the service associated with the given ID. :param service_id: ID of the service. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Service

Usage:

result = api.get_service(
    service_id=1,
)
install_server(*, server_id: int, os_id: int, hostname: str, zone: Optional[str] = None, user_login: Optional[str] = None, user_password: Optional[str] = None, panel_password: Optional[str] = None, root_password: Optional[str] = None, partitions: Optional[List[InstallPartition]] = None, ssh_key_ids: Optional[List[str]] = None, license_offer_id: Optional[int] = None, ip_id: Optional[int] = None) ServerInstall

Install a baremetal server. Install an OS on the server associated with the given ID. :param server_id: Server ID to install. :param os_id: OS ID to install on the server. :param hostname: Hostname of the server. :param zone: Zone to target. If none is passed will use default zone from the config. :param user_login: User to install on the server. :param user_password: User password to install on the server. :param panel_password: Panel password to install on the server. :param root_password: Root password to install on the server. :param partitions: Partitions to install on the server. :param ssh_key_ids: SSH key IDs authorized on the server. :param license_offer_id: Offer ID of license to install on server. :param ip_id: IP to link at the license to install on server. :return: ServerInstall

Usage:

result = api.install_server(
    server_id=1,
    os_id=1,
    hostname="example",
)
list_failover_i_ps(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListFailoverIPsRequestOrderBy] = None, project_id: Optional[str] = None, search: Optional[str] = None, only_available: Optional[bool] = None) ListFailoverIPsResponse

List failovers for project. List failovers servers for project. :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 failovers IP per page. :param order_by: Order of the failovers IP. :param project_id: Filter failovers IP by project ID. :param search: Filter failovers IP which matching with this field. :param only_available: True: return all failovers IP not attached on server false: return all failovers IP attached on server. :return: ListFailoverIPsResponse

Usage:

result = api.list_failover_i_ps()
list_failover_i_ps_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListFailoverIPsRequestOrderBy] = None, project_id: Optional[str] = None, search: Optional[str] = None, only_available: Optional[bool] = None) List[FailoverIP]

List failovers for project. List failovers servers for project. :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 failovers IP per page. :param order_by: Order of the failovers IP. :param project_id: Filter failovers IP by project ID. :param search: Filter failovers IP which matching with this field. :param only_available: True: return all failovers IP not attached on server false: return all failovers IP attached on server. :return: List[FailoverIP]

Usage:

result = api.list_failover_i_ps_all()
list_offers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOffersRequestOrderBy] = None, commercial_range: Optional[str] = None, catalog: Optional[OfferCatalog] = None, project_id: Optional[str] = None, is_failover_ip: Optional[bool] = None, is_failover_block: Optional[bool] = None, sold_in: Optional[List[str]] = None, available_only: Optional[bool] = None, is_rpn_san: Optional[bool] = None) ListOffersResponse

List offers. List all available server offers. :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 offer per page. :param order_by: Order of the offers. :param commercial_range: Filter on commercial range. :param catalog: Filter on catalog. :param project_id: Project ID. :param is_failover_ip: Get the current failover IP offer. :param is_failover_block: Get the current failover IP block offer. :param sold_in: Filter offers depending on their datacenter. :param available_only: Set this filter to true to only return available offers. :param is_rpn_san: Get the RPN SAN offers. :return: ListOffersResponse

Usage:

result = api.list_offers()
list_offers_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOffersRequestOrderBy] = None, commercial_range: Optional[str] = None, catalog: Optional[OfferCatalog] = None, project_id: Optional[str] = None, is_failover_ip: Optional[bool] = None, is_failover_block: Optional[bool] = None, sold_in: Optional[List[str]] = None, available_only: Optional[bool] = None, is_rpn_san: Optional[bool] = None) List[Offer]

List offers. List all available server offers. :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 offer per page. :param order_by: Order of the offers. :param commercial_range: Filter on commercial range. :param catalog: Filter on catalog. :param project_id: Project ID. :param is_failover_ip: Get the current failover IP offer. :param is_failover_block: Get the current failover IP block offer. :param sold_in: Filter offers depending on their datacenter. :param available_only: Set this filter to true to only return available offers. :param is_rpn_san: Get the RPN SAN offers. :return: List[Offer]

Usage:

result = api.list_offers_all()
list_os(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOSRequestOrderBy] = None, type_: Optional[OSType] = None, project_id: Optional[str] = None) ListOSResponse

List all available OS that can be install on a baremetal server. :param server_id: Filter OS by compatible server ID. :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 order_by: Order of the OS. :param type_: Type of the OS. :param project_id: Project ID. :return: ListOSResponse

Usage:

result = api.list_os(
    server_id=1,
)
list_os_all(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListOSRequestOrderBy] = None, type_: Optional[OSType] = None, project_id: Optional[str] = None) List[OS]

List all available OS that can be install on a baremetal server. :param server_id: Filter OS by compatible server ID. :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 order_by: Order of the OS. :param type_: Type of the OS. :param project_id: Project ID. :return: List[OS]

Usage:

result = api.list_os_all(
    server_id=1,
)
list_server_disks(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerDisksRequestOrderBy] = None) ListServerDisksResponse

List server disks. List disks associated to the given server ID. :param server_id: Server ID of the server disks. :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 disk per page. :param order_by: Order of the server disks. :return: ListServerDisksResponse

Usage:

result = api.list_server_disks(
    server_id=1,
)
list_server_disks_all(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServerDisksRequestOrderBy] = None) List[ServerDisk]

List server disks. List disks associated to the given server ID. :param server_id: Server ID of the server disks. :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 disk per page. :param order_by: Order of the server disks. :return: List[ServerDisk]

Usage:

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

List server events. List events associated to the given server ID. :param server_id: Server ID of the server events. :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 event per page. :param order_by: Order of the server events. :return: ListServerEventsResponse

Usage:

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

List server events. List events associated to the given server ID. :param server_id: Server ID of the server events. :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 event per page. :param order_by: Order of the server events. :return: List[ServerEvent]

Usage:

result = api.list_server_events_all(
    server_id=1,
)
list_servers(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServersRequestOrderBy] = None, project_id: Optional[str] = None, search: Optional[str] = None) ListServersResponse

List baremetal servers for project. :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 per page. :param order_by: Order of the servers. :param project_id: Filter servers by project ID. :param search: Filter servers by hostname. :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, project_id: Optional[str] = None, search: Optional[str] = None) List[ServerSummary]

List baremetal servers for project. :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 per page. :param order_by: Order of the servers. :param project_id: Filter servers by project ID. :param search: Filter servers by hostname. :return: List[ServerSummary]

Usage:

result = api.list_servers_all()
list_services(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServicesRequestOrderBy] = None, project_id: Optional[str] = None) ListServicesResponse

List services. :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 service per page. :param order_by: Order of the services. :param project_id: Project ID. :return: ListServicesResponse

Usage:

result = api.list_services()
list_services_all(*, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListServicesRequestOrderBy] = None, project_id: Optional[str] = None) List[Service]

List services. :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 service per page. :param order_by: Order of the services. :param project_id: Project ID. :return: List[Service]

Usage:

result = api.list_services_all()
list_subscribable_server_options(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None) ListSubscribableServerOptionsResponse

List subscribable server options. List subscribable options associated to the given server ID. :param server_id: Server ID of the subscribable server options. :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 subscribable server option per page. :return: ListSubscribableServerOptionsResponse

Usage:

result = api.list_subscribable_server_options(
    server_id=1,
)
list_subscribable_server_options_all(*, server_id: int, zone: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None) List[Offer]

List subscribable server options. List subscribable options associated to the given server ID. :param server_id: Server ID of the subscribable server options. :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 subscribable server option per page. :return: List[Offer]

Usage:

result = api.list_subscribable_server_options_all(
    server_id=1,
)
reboot_server(*, server_id: int, zone: Optional[str] = None) None

Reboot a baremetal server. Reboot the server associated with the given ID, use boot param to reboot in rescue. :param server_id: Server ID to reboot. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.reboot_server(
    server_id=1,
)
start_bmc_access(*, server_id: int, ip: str, zone: Optional[str] = None) None

Start BMC (Baseboard Management Controller) access for a given baremetal server. Start BMC (Baseboard Management Controller) access associated with the given ID. The BMC (Baseboard Management Controller) access is available one hour after the installation of the server. :param server_id: ID of the server to start the BMC access. :param ip: The IP authorized to connect to the given server. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.start_bmc_access(
    server_id=1,
    ip="example",
)
start_rescue(*, server_id: int, os_id: int, zone: Optional[str] = None) Rescue

Start in rescue baremetal server. Start in rescue the server associated with the given ID. :param server_id: ID of the server to start rescue. :param os_id: OS ID to use to start rescue. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Rescue

Usage:

result = api.start_rescue(
    server_id=1,
    os_id=1,
)
start_server(*, server_id: int, zone: Optional[str] = None) None

Start a baremetal server. Start the server associated with the given ID. :param server_id: Server ID to start. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

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

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

Usage:

result = api.stop_bmc_access(
    server_id=1,
)
stop_rescue(*, server_id: int, zone: Optional[str] = None) None

Stop rescue on baremetal server. Stop rescue on the server associated with the given ID. :param server_id: ID of the server to stop rescue. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.stop_rescue(
    server_id=1,
)
stop_server(*, server_id: int, zone: Optional[str] = None) None

Stop a baremetal server. Stop the server associated with the given ID. :param server_id: Server ID to stop. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.stop_server(
    server_id=1,
)
subscribe_server_option(*, server_id: int, option_id: int, zone: Optional[str] = None) Service

Subscribe server option. Subscribe option for the given server ID. :param server_id: Server ID to subscribe server option. :param option_id: Option ID to subscribe. :param zone: Zone to target. If none is passed will use default zone from the config. :return: Service

Usage:

result = api.subscribe_server_option(
    server_id=1,
    option_id=1,
)
subscribe_storage_options(*, server_id: int, options_ids: List[int], zone: Optional[str] = None) SubscribeStorageOptionsResponse

Subscribe storage server option. Subscribe storage option for the given server ID. :param server_id: Server ID of the storage options to subscribe. :param options_ids: Option IDs of the storage options to subscribe. :param zone: Zone to target. If none is passed will use default zone from the config. :return: SubscribeStorageOptionsResponse

Usage:

result = api.subscribe_storage_options(
    server_id=1,
    options_ids=[],
)
update_raid(*, server_id: int, raid_arrays: List[UpdatableRaidArray], zone: Optional[str] = None) None

Update RAID. Update RAID associated with the given server ID. :param server_id: ID of the server. :param raid_arrays: RAIDs to update. :param zone: Zone to target. If none is passed will use default zone from the config.

Usage:

result = api.update_raid(
    server_id=1,
    raid_arrays=[],
)
update_reverse(*, ip_id: int, reverse: str, zone: Optional[str] = None) IP

Update reverse of ip. Update reverse of ip associated with the given ID. :param ip_id: ID of the IP. :param reverse: Reverse to apply on the IP. :param zone: Zone to target. If none is passed will use default zone from the config. :return: IP

Usage:

result = api.update_reverse(
    ip_id=1,
    reverse="example",
)
update_server(*, server_id: int, zone: Optional[str] = None, hostname: Optional[str] = None, enable_ipv6: Optional[bool] = None) Server

Update a baremetal server. Update the server associated with the given ID. :param server_id: Server ID to update. :param zone: Zone to target. If none is passed will use default zone from the config. :param hostname: Hostname of the server to update. :param enable_ipv6: Flag to enable or not the IPv6 of server. :return: Server

Usage:

result = api.update_server(
    server_id=1,
)
update_server_backup(*, server_id: int, zone: Optional[str] = None, password: Optional[str] = None, autologin: Optional[bool] = None, acl_enabled: Optional[bool] = None) Backup
Parameters:
  • server_id – Server ID to update backup.

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

  • password – Password of the server backup.

  • autologin – Autologin of the server backup.

  • acl_enabled – Boolean to enable or disable ACL.

Returns:

Backup

Usage:

result = api.update_server_backup(
    server_id=1,
)
update_server_tags(*, server_id: int, zone: Optional[str] = None, tags: Optional[List[str]] = None) Server
Parameters:
  • server_id – Server ID to update the tags.

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

  • tags – Tags of server to update.

Returns:

Server

Usage:

result = api.update_server_tags(
    server_id=1,
)
wait_for_bmc_access(*, server_id: int, zone: Optional[str] = None, options: Optional[WaitForOptions[BMCAccess, bool]] = None) BMCAccess

Get BMC (Baseboard Management Controller) access for a given baremetal server. Get the BMC (Baseboard Management Controller) access associated with the given ID. :param server_id: ID of the server to get BMC access. :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=1,
)
wait_for_server(*, server_id: int, zone: Optional[str] = None, options: Optional[WaitForOptions[Server, bool]] = None) Server

Get a specific baremetal server. Get the server associated with the given 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=1,
)
wait_for_server_install(*, server_id: int, zone: Optional[str] = None, options: Optional[WaitForOptions[ServerInstall, bool]] = None) ServerInstall

Get a specific server installation status. Get the server installation status associated with the given server ID. :param server_id: Server ID of the server to install. :param zone: Zone to target. If none is passed will use default zone from the config. :return: ServerInstall

Usage:

result = api.get_server_install(
    server_id=1,
)
class scaleway.dedibox.v1.DediboxV1BillingAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix Billing API.

can_order(*, project_id: Optional[str] = None) CanOrderResponse
Parameters:

project_id

Returns:

CanOrderResponse

Usage:

result = api.can_order()
download_invoice(*, invoice_id: int) ScwFile
Parameters:

invoice_id

Returns:

ScwFile

Usage:

result = api.download_invoice(
    invoice_id=1,
)
download_refund(*, refund_id: int) ScwFile
Parameters:

refund_id

Returns:

ScwFile

Usage:

result = api.download_refund(
    refund_id=1,
)
get_invoice(*, invoice_id: int) Invoice
Parameters:

invoice_id

Returns:

Invoice

Usage:

result = api.get_invoice(
    invoice_id=1,
)
get_refund(*, refund_id: int) Refund
Parameters:

refund_id

Returns:

Refund

Usage:

result = api.get_refund(
    refund_id=1,
)
list_invoices(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListInvoicesRequestOrderBy] = None, project_id: Optional[str] = None) ListInvoicesResponse
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

ListInvoicesResponse

Usage:

result = api.list_invoices()
list_invoices_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListInvoicesRequestOrderBy] = None, project_id: Optional[str] = None) List[InvoiceSummary]
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

List[InvoiceSummary]

Usage:

result = api.list_invoices_all()
list_refunds(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRefundsRequestOrderBy] = None, project_id: Optional[str] = None) ListRefundsResponse
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

ListRefundsResponse

Usage:

result = api.list_refunds()
list_refunds_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRefundsRequestOrderBy] = None, project_id: Optional[str] = None) List[RefundSummary]
Parameters:
  • page

  • page_size

  • order_by

  • project_id

Returns:

List[RefundSummary]

Usage:

result = api.list_refunds_all()
class scaleway.dedibox.v1.DediboxV1IPv6BlockAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix IPv6 Block API.

create_i_pv6_block(*, project_id: Optional[str] = None) IPv6Block

Create IPv6 block for baremetal server. Create IPv6 block associated with the given project ID. :param project_id: ID of the project. :return: IPv6Block

Usage:

result = api.create_i_pv6_block()
create_i_pv6_block_subnet(*, block_id: int, address: str, cidr: int) IPv6Block

Create IPv6 block subnet. Create IPv6 block subnet for the given IP ID. /48 could create subnet in /56 (quota link to your number of server). /56 could create subnet in /64 (quota link to your number of failover IP). :param block_id: ID of the IPv6 block. :param address: Address of the IPv6. :param cidr: Classless InterDomain Routing notation of the IPv6. :return: IPv6Block

Usage:

result = api.create_i_pv6_block_subnet(
    block_id=1,
    address="example",
    cidr=1,
)
delete_i_pv6_block(*, block_id: int) None

Delete IPv6 block. Delete IPv6 block subnet with the given ID. :param block_id: ID of the IPv6 block to delete.

Usage:

result = api.delete_i_pv6_block(
    block_id=1,
)
get_i_pv6_block(*, project_id: Optional[str] = None) IPv6Block

Get a specific IPv6 block. Get the IPv6 block associated with the given ID. :param project_id: ID of the project. :return: IPv6Block

Usage:

result = api.get_i_pv6_block()
get_i_pv6_block_quotas(*, project_id: Optional[str] = None) GetIPv6BlockQuotasResponse

Get IPv6 block quota. Get IPv6 block quota with the given project ID. /48 one per organization. /56 link to your number of server. /64 link to your number of failover IP. :param project_id: ID of the project. :return: GetIPv6BlockQuotasResponse

Usage:

result = api.get_i_pv6_block_quotas()
list_i_pv6_block_subnets_available(*, block_id: int) ListIPv6BlockSubnetsAvailableResponse

List available IPv6 block subnets. List all available IPv6 block subnets for given IP ID. :param block_id: ID of the IPv6 block. :return: ListIPv6BlockSubnetsAvailableResponse

Usage:

result = api.list_i_pv6_block_subnets_available(
    block_id=1,
)
update_i_pv6_block(*, block_id: int, nameservers: Optional[List[str]] = None) IPv6Block

Update IPv6 block. Update DNS associated to IPv6 block. If DNS is used, minimum of 2 is necessary and maximum of 5 (no duplicate). :param block_id: ID of the IPv6 block. :param nameservers: DNS to link to the IPv6. :return: IPv6Block

Usage:

result = api.update_i_pv6_block(
    block_id=1,
)
class scaleway.dedibox.v1.DediboxV1RpnAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN API.

get_rpn_status(*, project_id: Optional[str] = None, rpnv1_group_id: Optional[int] = None, rpnv2_group_id: Optional[int] = None) GetRpnStatusResponse
Parameters:
  • project_id – A project ID.

  • rpnv1_group_id – An RPN v1 group ID.

  • rpnv2_group_id – An RPN v2 group ID.

Returns:

GetRpnStatusResponse

Usage:

result = api.get_rpn_status()
list_rpn_server_capabilities(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnServerCapabilitiesRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnServerCapabilitiesResponse
Parameters:
  • page – Page number.

  • page_size – Number of servers per page.

  • order_by – Order of the servers.

  • project_id – Filter servers by project ID.

Returns:

ListRpnServerCapabilitiesResponse

Usage:

result = api.list_rpn_server_capabilities()
list_rpn_server_capabilities_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnServerCapabilitiesRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnServerCapability]
Parameters:
  • page – Page number.

  • page_size – Number of servers per page.

  • order_by – Order of the servers.

  • project_id – Filter servers by project ID.

Returns:

List[RpnServerCapability]

Usage:

result = api.list_rpn_server_capabilities_all()
class scaleway.dedibox.v1.DediboxV1RpnSanAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN SAN API.

add_ip(*, rpn_san_id: int, ip_ids: List[int]) None
Parameters:
  • rpn_san_id – RPN SAN ID.

  • ip_ids – An array of IP ID.

Usage:

result = api.add_ip(
    rpn_san_id=1,
    ip_ids=[],
)
create_rpn_san(*, offer_id: int, project_id: Optional[str] = None) Service
Parameters:
  • offer_id – Offer ID.

  • project_id – Your project ID.

Returns:

Service

Usage:

result = api.create_rpn_san(
    offer_id=1,
)
delete_rpn_san(*, rpn_san_id: int) None
Parameters:

rpn_san_id – RPN SAN ID.

Usage:

result = api.delete_rpn_san(
    rpn_san_id=1,
)
get_rpn_san(*, rpn_san_id: int) RpnSan
Parameters:

rpn_san_id – RPN SAN ID.

Returns:

RpnSan

Usage:

result = api.get_rpn_san(
    rpn_san_id=1,
)
list_available_ips(*, rpn_san_id: int, type_: Optional[RpnSanIpType] = None) ListIpsResponse
Parameters:
  • rpn_san_id – RPN SAN ID.

  • type – Filter by IP type (server | rpnv2_subnet).

Returns:

ListIpsResponse

Usage:

result = api.list_available_ips(
    rpn_san_id=1,
)
list_ips(*, rpn_san_id: int, type_: Optional[RpnSanIpType] = None) ListIpsResponse
Parameters:
  • rpn_san_id – RPN SAN ID.

  • type – Filter by IP type (server | rpnv2_subnet).

Returns:

ListIpsResponse

Usage:

result = api.list_ips(
    rpn_san_id=1,
)
list_rpn_sans(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnSansRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnSansResponse
Parameters:
  • page – Page number.

  • page_size – Number of RPN SANs per page.

  • order_by – Order of the RPN SANs.

  • project_id – Filter RPN SANs by project ID.

Returns:

ListRpnSansResponse

Usage:

result = api.list_rpn_sans()
list_rpn_sans_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnSansRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnSanSummary]
Parameters:
  • page – Page number.

  • page_size – Number of RPN SANs per page.

  • order_by – Order of the RPN SANs.

  • project_id – Filter RPN SANs by project ID.

Returns:

List[RpnSanSummary]

Usage:

result = api.list_rpn_sans_all()
remove_ip(*, rpn_san_id: int, ip_ids: List[int]) None
Parameters:
  • rpn_san_id – RPN SAN ID.

  • ip_ids – An array of IP ID.

Usage:

result = api.remove_ip(
    rpn_san_id=1,
    ip_ids=[],
)
wait_for_rpn_san(*, rpn_san_id: int, options: Optional[WaitForOptions[RpnSan, bool]] = None) RpnSan
Parameters:

rpn_san_id – RPN SAN ID.

Returns:

RpnSan

Usage:

result = api.get_rpn_san(
    rpn_san_id=1,
)
class scaleway.dedibox.v1.DediboxV1RpnV1API(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN v1 API.

accept_rpn_invite(*, member_id: int) None
Parameters:

member_id – The member ID.

Usage:

result = api.accept_rpn_invite(
    member_id=1,
)
add_rpn_group_members(*, group_id: int, server_ids: Optional[List[int]] = None, san_server_ids: Optional[List[int]] = None) RpnGroup
Parameters:
  • group_id – The rpn v1 group ID.

  • server_ids – A collection of rpn v1 capable server IDs.

  • san_server_ids – A collection of rpn v1 capable RPN SAN server IDs.

Returns:

RpnGroup

Usage:

result = api.add_rpn_group_members(
    group_id=1,
)
create_rpn_group(*, name: str, server_ids: Optional[List[int]] = None, san_server_ids: Optional[List[int]] = None, project_id: Optional[str] = None) RpnGroup
Parameters:
  • name – Rpn v1 group name.

  • server_ids – A collection of rpn v1 capable servers.

  • san_server_ids – A collection of rpn v1 capable rpn sans servers.

  • project_id – A project ID.

Returns:

RpnGroup

Usage:

result = api.create_rpn_group(
    name="example",
)
delete_rpn_group(*, group_id: int) None
Parameters:

group_id – Rpn v1 group ID.

Usage:

result = api.delete_rpn_group(
    group_id=1,
)
delete_rpn_group_members(*, group_id: int, member_ids: List[int]) RpnGroup
Parameters:
  • group_id – The rpn v1 group ID.

  • member_ids – A collection of rpn v1 group members IDs.

Returns:

RpnGroup

Usage:

result = api.delete_rpn_group_members(
    group_id=1,
    member_ids=[],
)
get_rpn_group(*, group_id: int) RpnGroup
Parameters:

group_id – Rpn v1 group ID.

Returns:

RpnGroup

Usage:

result = api.get_rpn_group(
    group_id=1,
)
leave_rpn_group(*, group_id: int, member_ids: List[int], project_id: Optional[str] = None) None
Parameters:
  • group_id – The RPN V1 group ID.

  • member_ids – A collection of rpn v1 group members IDs.

  • project_id – A project ID.

Usage:

result = api.leave_rpn_group(
    group_id=1,
    member_ids=[],
)
list_rpn_capable_san_servers(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableSanServersRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnCapableSanServersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

ListRpnCapableSanServersResponse

Usage:

result = api.list_rpn_capable_san_servers()
list_rpn_capable_san_servers_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableSanServersRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnSanServer]
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

List[RpnSanServer]

Usage:

result = api.list_rpn_capable_san_servers_all()
list_rpn_capable_servers(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableServersRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnCapableServersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

ListRpnCapableServersResponse

Usage:

result = api.list_rpn_capable_servers()
list_rpn_capable_servers_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnCapableServersRequestOrderBy] = None, project_id: Optional[str] = None) List[Server]
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

List[Server]

Usage:

result = api.list_rpn_capable_servers_all()
list_rpn_group_members(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupMembersRequestOrderBy] = None, group_id: int, project_id: Optional[str] = None) ListRpnGroupMembersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 group members per page.

  • order_by – Order of the rpn v1 group members.

  • group_id – Filter rpn v1 group members by group ID.

  • project_id – A project ID.

Returns:

ListRpnGroupMembersResponse

Usage:

result = api.list_rpn_group_members(
    group_id=1,
)
list_rpn_group_members_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupMembersRequestOrderBy] = None, group_id: int, project_id: Optional[str] = None) List[RpnGroupMember]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 group members per page.

  • order_by – Order of the rpn v1 group members.

  • group_id – Filter rpn v1 group members by group ID.

  • project_id – A project ID.

Returns:

List[RpnGroupMember]

Usage:

result = api.list_rpn_group_members_all(
    group_id=1,
)
list_rpn_groups(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupsRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnGroupsResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 groups per page.

  • order_by – Order of the rpn v1 groups.

  • project_id – Filter rpn v1 groups by project ID.

Returns:

ListRpnGroupsResponse

Usage:

result = api.list_rpn_groups()
list_rpn_groups_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnGroupsRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnGroup]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v1 groups per page.

  • order_by – Order of the rpn v1 groups.

  • project_id – Filter rpn v1 groups by project ID.

Returns:

List[RpnGroup]

Usage:

result = api.list_rpn_groups_all()
list_rpn_invites(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnInvitesRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnInvitesResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

ListRpnInvitesResponse

Usage:

result = api.list_rpn_invites()
list_rpn_invites_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnInvitesRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnGroupMember]
Parameters:
  • page – Page number.

  • page_size – Number of rpn capable resources per page.

  • order_by – Order of the rpn capable resources.

  • project_id – Filter rpn capable resources by project ID.

Returns:

List[RpnGroupMember]

Usage:

result = api.list_rpn_invites_all()
refuse_rpn_invite(*, member_id: int) None
Parameters:

member_id – The member ID.

Usage:

result = api.refuse_rpn_invite(
    member_id=1,
)
rpn_group_invite(*, group_id: int, server_ids: List[int], project_id: Optional[str] = None) None
Parameters:
  • group_id – The RPN V1 group ID.

  • server_ids – A collection of external server IDs.

  • project_id – A project ID.

Usage:

result = api.rpn_group_invite(
    group_id=1,
    server_ids=[],
)
update_rpn_group_name(*, group_id: int, name: Optional[str] = None) RpnGroup
Parameters:
  • group_id – Rpn v1 group ID.

  • name – New rpn v1 group name.

Returns:

RpnGroup

Usage:

result = api.update_rpn_group_name(
    group_id=1,
)
class scaleway.dedibox.v1.DediboxV1RpnV2API(client: Client, *, bypass_validation: bool = False)

Bases: API

Dedibox Phoenix RPN v2 API.

add_rpn_v2_members(*, group_id: int, servers: List[int]) None
Parameters:
  • group_id – RPN V2 group ID.

  • servers – A collection of server IDs.

Usage:

result = api.add_rpn_v2_members(
    group_id=1,
    servers=[],
)
create_rpn_v2_group(*, name: str, servers: List[int], project_id: Optional[str] = None, type_: Optional[RpnV2GroupType] = None) RpnV2Group
Parameters:
  • name – RPN V2 group name.

  • servers – A collection of server IDs.

  • project_id – Project ID of the RPN V2 group.

  • type – RPN V2 group type (qing / standard).

Returns:

RpnV2Group

Usage:

result = api.create_rpn_v2_group(
    name="example",
    servers=[],
)
delete_rpn_v2_group(*, group_id: int) None
Parameters:

group_id – RPN V2 group ID.

Usage:

result = api.delete_rpn_v2_group(
    group_id=1,
)
delete_rpn_v2_members(*, group_id: int, member_ids: List[int]) None
Parameters:
  • group_id – RPN V2 group ID.

  • member_ids – A collection of member IDs.

Usage:

result = api.delete_rpn_v2_members(
    group_id=1,
    member_ids=[],
)
disable_rpn_v2_group_compatibility(*, group_id: int) None
Parameters:

group_id – RPN V2 group ID.

Usage:

result = api.disable_rpn_v2_group_compatibility(
    group_id=1,
)
enable_rpn_v2_group_compatibility(*, group_id: int, rpnv1_group_id: int) None
Parameters:
  • group_id – RPN V2 group ID.

  • rpnv1_group_id – RPN V1 group ID.

Usage:

result = api.enable_rpn_v2_group_compatibility(
    group_id=1,
    rpnv1_group_id=1,
)
get_rpn_v2_group(*, group_id: int) RpnV2Group
Parameters:

group_id – RPN V2 group ID.

Returns:

RpnV2Group

Usage:

result = api.get_rpn_v2_group(
    group_id=1,
)
list_rpn_v2_capable_resources(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2CapableResourcesRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnV2CapableResourcesResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 capable resources per page.

  • order_by – Order of the rpn v2 capable resources.

  • project_id – Filter rpn v2 capable resources by project ID.

Returns:

ListRpnV2CapableResourcesResponse

Usage:

result = api.list_rpn_v2_capable_resources()
list_rpn_v2_capable_resources_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2CapableResourcesRequestOrderBy] = None, project_id: Optional[str] = None) List[Server]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 capable resources per page.

  • order_by – Order of the rpn v2 capable resources.

  • project_id – Filter rpn v2 capable resources by project ID.

Returns:

List[Server]

Usage:

result = api.list_rpn_v2_capable_resources_all()
list_rpn_v2_group_logs(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupLogsRequestOrderBy] = None, group_id: int) ListRpnV2GroupLogsResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group logs per page.

  • order_by – Order of the rpn v2 group logs.

  • group_id – RPN V2 group ID.

Returns:

ListRpnV2GroupLogsResponse

Usage:

result = api.list_rpn_v2_group_logs(
    group_id=1,
)
list_rpn_v2_group_logs_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupLogsRequestOrderBy] = None, group_id: int) List[Log]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group logs per page.

  • order_by – Order of the rpn v2 group logs.

  • group_id – RPN V2 group ID.

Returns:

List[Log]

Usage:

result = api.list_rpn_v2_group_logs_all(
    group_id=1,
)
list_rpn_v2_groups(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupsRequestOrderBy] = None, project_id: Optional[str] = None) ListRpnV2GroupsResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 groups per page.

  • order_by – Order of the rpn v2 groups.

  • project_id – Filter rpn v2 groups by project ID.

Returns:

ListRpnV2GroupsResponse

Usage:

result = api.list_rpn_v2_groups()
list_rpn_v2_groups_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2GroupsRequestOrderBy] = None, project_id: Optional[str] = None) List[RpnV2Group]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 groups per page.

  • order_by – Order of the rpn v2 groups.

  • project_id – Filter rpn v2 groups by project ID.

Returns:

List[RpnV2Group]

Usage:

result = api.list_rpn_v2_groups_all()
list_rpn_v2_members(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2MembersRequestOrderBy] = None, group_id: int, type_: Optional[ListRpnV2MembersRequestType] = None) ListRpnV2MembersResponse
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group members per page.

  • order_by – Order of the rpn v2 group members.

  • group_id – RPN V2 group ID.

  • type – Filter members by type.

Returns:

ListRpnV2MembersResponse

Usage:

result = api.list_rpn_v2_members(
    group_id=1,
)
list_rpn_v2_members_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListRpnV2MembersRequestOrderBy] = None, group_id: int, type_: Optional[ListRpnV2MembersRequestType] = None) List[RpnV2Member]
Parameters:
  • page – Page number.

  • page_size – Number of rpn v2 group members per page.

  • order_by – Order of the rpn v2 group members.

  • group_id – RPN V2 group ID.

  • type – Filter members by type.

Returns:

List[RpnV2Member]

Usage:

result = api.list_rpn_v2_members_all(
    group_id=1,
)
update_rpn_v2_group_name(*, group_id: int, name: Optional[str] = None) RpnV2Group
Parameters:
  • group_id – RPN V2 group ID.

  • name – RPN V2 group name.

Returns:

RpnV2Group

Usage:

result = api.update_rpn_v2_group_name(
    group_id=1,
)
update_rpn_v2_vlan_for_members(*, group_id: int, member_ids: List[int], vlan: Optional[int] = None) None
Parameters:
  • group_id – RPN V2 group ID.

  • member_ids – RPN V2 member IDs.

  • vlan – Min: 0.

Max: 3967.

Usage:

result = api.update_rpn_v2_vlan_for_members(
    group_id=1,
    member_ids=[],
)
wait_for_rpn_v2_group(*, group_id: int, options: Optional[WaitForOptions[RpnV2Group, bool]] = None) RpnV2Group
Parameters:

group_id – RPN V2 group ID.

Returns:

RpnV2Group

Usage:

result = api.get_rpn_v2_group(
    group_id=1,
)
class scaleway.dedibox.v1.DeleteFailoverIPRequest(ip_id: 'int', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the failover IP to delete.

zone: Optional[str]

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

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

Bases: object

server_id: int

Server ID to delete.

zone: Optional[str]

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

class scaleway.dedibox.v1.DeleteServiceRequest(service_id: 'int', zone: 'Optional[Zone]')

Bases: object

service_id: int

ID of the service.

zone: Optional[str]

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

class scaleway.dedibox.v1.DetachFailoverIPFromMacAddressRequest(ip_id: 'int', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the failover IP.

zone: Optional[str]

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

class scaleway.dedibox.v1.DetachFailoverIPsRequest(fips_ids: 'List[int]', zone: 'Optional[Zone]')

Bases: object

fips_ids: List[int]

List of IDs of failovers IP to detach.

zone: Optional[str]

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

class scaleway.dedibox.v1.Disk(capacity: 'int', type_: 'ServerDiskType')

Bases: object

capacity: int

Capacity of the disk.

type_: ServerDiskType

Type of the disk.

class scaleway.dedibox.v1.FailoverBlock(id: 'int', address: 'str', nameservers: 'List[str]', ip_version: 'FailoverBlockVersion', cidr: 'int', netmask: 'str', gateway_ip: 'str')

Bases: object

address: str

IP of the failover block.

cidr: int

Classless InterDomain Routing notation of the failover block.

gateway_ip: str

Gateway IP of the failover block.

id: int

ID of the failover block.

ip_version: FailoverBlockVersion

IP version of the failover block.

nameservers: List[str]

Name servers.

netmask: str

Netmask of the failover block.

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

Bases: str, Enum

An enumeration.

IPV4 = 'ipv4'
IPV6 = 'ipv6'
UNKNOWN_VERSION = 'unknown_version'
class scaleway.dedibox.v1.FailoverIP(id: 'int', address: 'str', reverse: 'str', ip_version: 'FailoverIPVersion', cidr: 'int', netmask: 'str', gateway_ip: 'str', status: 'FailoverIPStatus', type_: 'FailoverIPInterfaceType', mac: 'Optional[str]', server_id: 'Optional[int]', block: 'Optional[FailoverBlock]', server_zone: 'Optional[str]')

Bases: object

address: str

IP of the failover IP.

block: Optional[FailoverBlock]

Block of the IP failover.

cidr: int

Classless InterDomain Routing notation of the failover IP.

gateway_ip: str

Gateway IP of the failover IP.

id: int

ID of the failover IP.

ip_version: FailoverIPVersion

IP version of the failover IP.

mac: Optional[str]

MAC address of the IP failover.

netmask: str

Netmask of the failover IP.

reverse: str

Reverse IP value.

server_id: Optional[int]

Server ID linked to the IP failover.

server_zone: Optional[str]

The server zone (if assigned).

status: FailoverIPStatus

Status of the IP failover.

type_: FailoverIPInterfaceType

The interface type.

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

Bases: str, Enum

An enumeration.

IPMI = 'ipmi'
NORMAL = 'normal'
UNKNOWN = 'unknown'
VIRTUAL = 'virtual'
class scaleway.dedibox.v1.FailoverIPStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BUSY = 'busy'
LOCKED = 'locked'
READY = 'ready'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.FailoverIPVersion(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

IPV4 = 'ipv4'
IPV6 = 'ipv6'
UNKNOWN_VERSION = 'unknown_version'
class scaleway.dedibox.v1.GetBMCAccessRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server to get BMC access.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetFailoverIPRequest(ip_id: 'int', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the failover IP.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetIPv6BlockQuotasResponse(quotas: 'List[GetIPv6BlockQuotasResponseQuota]', total_count: 'int')

Bases: object

quotas: List[GetIPv6BlockQuotasResponseQuota]

Quota for each CIDR of IPv6 block.

total_count: int

Total count of quotas.

class scaleway.dedibox.v1.GetIPv6BlockQuotasResponseQuota(quota: 'int', cidr: 'int')

Bases: object

cidr: int
quota: int
class scaleway.dedibox.v1.GetOSRequest(os_id: 'int', server_id: 'int', zone: 'Optional[Zone]', project_id: 'Optional[str]')

Bases: object

os_id: int

ID of the OS.

project_id: Optional[str]

Project ID.

server_id: int

ID of the server.

zone: Optional[str]

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

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

Bases: object

offer_id: int

ID of offer.

project_id: Optional[str]

Project ID.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetOrderedServiceRequest(ordered_service_id: 'int', zone: 'Optional[Zone]')

Bases: object

ordered_service_id: int
zone: Optional[str]

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

class scaleway.dedibox.v1.GetRaidRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetRemainingQuotaRequest(zone: 'Optional[Zone]', project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

Project ID.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetRemainingQuotaResponse(failover_ip_quota: 'int', failover_ip_remaining_quota: 'int', failover_block_quota: 'int', failover_block_remaining_quota: 'int')

Bases: object

failover_block_quota: int

Current failover block quota.

failover_block_remaining_quota: int

Remaining failover block quota.

failover_ip_quota: int

Current failover IP quota.

failover_ip_remaining_quota: int

Remaining failover IP quota.

class scaleway.dedibox.v1.GetRescueRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server to get rescue.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetRpnStatusResponse(status: 'GetRpnStatusResponseStatus', operations_left: 'Optional[int]')

Bases: object

operations_left: Optional[int]

Number of operations left to perform before being operational.

status: GetRpnStatusResponseStatus

If status = ‘operational’, you can perform rpn actions in write.

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

Bases: str, Enum

An enumeration.

BUSY = 'busy'
OPERATIONAL = 'operational'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.GetServerBackupRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID of the backup.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetServerDefaultPartitioningRequest(server_id: 'int', os_id: 'int', zone: 'Optional[Zone]')

Bases: object

os_id: int

OS ID of the default partitioning.

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetServerInstallRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID of the server to install.

zone: Optional[str]

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

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

Bases: object

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.GetServiceRequest(service_id: 'int', zone: 'Optional[Zone]')

Bases: object

service_id: int

ID of the service.

zone: Optional[str]

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

class scaleway.dedibox.v1.IP(ip_id: 'int', address: 'str', reverse: 'str', version: 'IPVersion', cidr: 'int', netmask: 'str', semantic: 'IPSemantic', gateway: 'str', status: 'IPStatus')

Bases: object

address: str

Address of the IP.

cidr: int

Classless InterDomain Routing notation of the IP.

gateway: str

Gateway of IP.

ip_id: int

ID of the IP.

netmask: str

Network mask of IP.

reverse: str

Reverse IP value.

semantic: IPSemantic

Semantic of IP.

status: IPStatus

Status of the IP.

version: IPVersion

Version of IP (v4 or v6).

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

Bases: str, Enum

An enumeration.

ADM = 'adm'
EXT = 'ext'
IPMI = 'ipmi'
MIGRATION = 'migration'
PRIVATE = 'private'
PROXAD = 'proxad'
PUBLIC = 'public'
REDIRECT = 'redirect'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.IPStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BUSY = 'busy'
LOCKED = 'locked'
READY = 'ready'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.IPVersion(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

IPV4 = 'ipv4'
IPV6 = 'ipv6'
class scaleway.dedibox.v1.IPv6Block(id: 'int', address: 'str', duid: 'str', nameservers: 'List[str]', cidr: 'int', subnets: 'List[IPv6Block]', delegation_status: 'IPv6BlockDelegationStatus')

Bases: object

address: str

Address of the IPv6.

cidr: int

Classless InterDomain Routing notation of the IPv6.

delegation_status: IPv6BlockDelegationStatus

The nameservers delegation status.

duid: str

DUID of the IPv6.

id: int

ID of the IPv6.

nameservers: List[str]

DNS linked to the IPv6.

subnets: List[IPv6Block]

All IPv6 subnets.

class scaleway.dedibox.v1.IPv6BlockApiCreateIPv6BlockRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

ID of the project.

class scaleway.dedibox.v1.IPv6BlockApiCreateIPv6BlockSubnetRequest(block_id: 'int', address: 'str', cidr: 'int')

Bases: object

address: str

Address of the IPv6.

block_id: int

ID of the IPv6 block.

cidr: int

Classless InterDomain Routing notation of the IPv6.

class scaleway.dedibox.v1.IPv6BlockApiDeleteIPv6BlockRequest(block_id: 'int')

Bases: object

block_id: int

ID of the IPv6 block to delete.

class scaleway.dedibox.v1.IPv6BlockApiGetIPv6BlockQuotasRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

ID of the project.

class scaleway.dedibox.v1.IPv6BlockApiGetIPv6BlockRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

ID of the project.

class scaleway.dedibox.v1.IPv6BlockApiListIPv6BlockSubnetsAvailableRequest(block_id: 'int')

Bases: object

block_id: int

ID of the IPv6 block.

class scaleway.dedibox.v1.IPv6BlockApiUpdateIPv6BlockRequest(block_id: 'int', nameservers: 'Optional[List[str]]')

Bases: object

block_id: int

ID of the IPv6 block.

nameservers: Optional[List[str]]

DNS to link to the IPv6.

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

Bases: str, Enum

An enumeration.

DONE = 'done'
UNKNOWN_STATUS = 'unknown_status'
UPDATING = 'updating'
class scaleway.dedibox.v1.InstallPartition(file_system: 'PartitionFileSystem', raid_level: 'RaidArrayRaidLevel', capacity: 'int', connectors: 'List[str]', mount_point: 'Optional[str]')

Bases: object

capacity: int

Capacity of the installation partition.

connectors: List[str]

Connectors of the installation partition.

file_system: PartitionFileSystem

File system of the installation partition.

mount_point: Optional[str]

Mount point of the installation partition.

raid_level: RaidArrayRaidLevel

RAID level of the installation partition.

class scaleway.dedibox.v1.InstallServerRequest(server_id: 'int', os_id: 'int', hostname: 'str', zone: 'Optional[Zone]', user_login: 'Optional[str]', user_password: 'Optional[str]', panel_password: 'Optional[str]', root_password: 'Optional[str]', partitions: 'Optional[List[InstallPartition]]', ssh_key_ids: 'Optional[List[str]]', license_offer_id: 'Optional[int]', ip_id: 'Optional[int]')

Bases: object

hostname: str

Hostname of the server.

ip_id: Optional[int]

IP to link at the license to install on server.

license_offer_id: Optional[int]

Offer ID of license to install on server.

os_id: int

OS ID to install on the server.

panel_password: Optional[str]

Panel password to install on the server.

partitions: Optional[List[InstallPartition]]

Partitions to install on the server.

root_password: Optional[str]

Root password to install on the server.

server_id: int

Server ID to install.

ssh_key_ids: Optional[List[str]]

SSH key IDs authorized on the server.

user_login: Optional[str]

User to install on the server.

user_password: Optional[str]

User password to install on the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.Invoice(id: 'int', status: 'InvoiceStatus', payment_method: 'InvoicePaymentMethod', content: 'str', transaction_id: 'int', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', paid_at: 'Optional[datetime]')

Bases: object

content: str
created_at: Optional[datetime]
id: int
paid_at: Optional[datetime]
payment_method: InvoicePaymentMethod
status: InvoiceStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
transaction_id: int
class scaleway.dedibox.v1.InvoicePaymentMethod(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AMEX = 'amex'
CREDIT_CARD = 'credit_card'
DIRECT_DEBIT = 'direct_debit'
PAYPAL = 'paypal'
TRANSFER = 'transfer'
UNKNOWN_PAYMENT_METHOD = 'unknown_payment_method'
class scaleway.dedibox.v1.InvoiceStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ERRORED = 'errored'
PAID = 'paid'
UNKNOWN_INVOICE_STATUS = 'unknown_invoice_status'
UNPAID = 'unpaid'
class scaleway.dedibox.v1.InvoiceSummary(id: 'int', status: 'InvoiceStatus', payment_method: 'InvoicePaymentMethod', transaction_id: 'int', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', paid_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]
id: int
paid_at: Optional[datetime]
payment_method: InvoicePaymentMethod
status: InvoiceStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
transaction_id: int
class scaleway.dedibox.v1.ListFailoverIPsRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListFailoverIPsRequestOrderBy]', project_id: 'Optional[str]', search: 'Optional[str]', only_available: 'Optional[bool]')

Bases: object

only_available: Optional[bool]

True: return all failovers IP not attached on server

false: return all failovers IP attached on server.

order_by: Optional[ListFailoverIPsRequestOrderBy]

Order of the failovers IP.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of failovers IP per page.

project_id: Optional[str]

Filter failovers IP by project ID.

search: Optional[str]

Filter failovers IP which matching with this field.

zone: Optional[str]

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

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

Bases: str, Enum

An enumeration.

IP_ASC = 'ip_asc'
IP_DESC = 'ip_desc'
class scaleway.dedibox.v1.ListFailoverIPsResponse(total_count: 'int', failover_ips: 'List[FailoverIP]')

Bases: object

failover_ips: List[FailoverIP]

List of failover IPs that match filters.

total_count: int

Total count of matching failovers IP.

class scaleway.dedibox.v1.ListIPv6BlockSubnetsAvailableResponse(subnet_availables: 'List[ListIPv6BlockSubnetsAvailableResponseSubnet]', total_count: 'int')

Bases: object

subnet_availables: List[ListIPv6BlockSubnetsAvailableResponseSubnet]

All available address and CIDR available in subnet.

total_count: int

Total count of available subnets.

class scaleway.dedibox.v1.ListIPv6BlockSubnetsAvailableResponseSubnet(address: 'str', cidr: 'int')

Bases: object

address: str
cidr: int
class scaleway.dedibox.v1.ListInvoicesRequestOrderBy(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.dedibox.v1.ListInvoicesResponse(total_count: 'int', invoices: 'List[InvoiceSummary]')

Bases: object

invoices: List[InvoiceSummary]
total_count: int
class scaleway.dedibox.v1.ListIpsResponse(total_count: 'int', ips: 'List[RpnSanIp]')

Bases: object

ips: List[RpnSanIp]

List of authorized IPs.

total_count: int

Total count of authorized IPs.

class scaleway.dedibox.v1.ListOSRequest(server_id: 'int', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListOSRequestOrderBy]', type_: 'Optional[OSType]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListOSRequestOrderBy]

Order of the OS.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of OS per page.

project_id: Optional[str]

Project ID.

server_id: int

Filter OS by compatible server ID.

type_: Optional[OSType]

Type of the OS.

zone: Optional[str]

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

class scaleway.dedibox.v1.ListOSRequestOrderBy(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'
RELEASED_AT_ASC = 'released_at_asc'
RELEASED_AT_DESC = 'released_at_desc'
class scaleway.dedibox.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.dedibox.v1.ListOffersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListOffersRequestOrderBy]', commercial_range: 'Optional[str]', catalog: 'Optional[OfferCatalog]', project_id: 'Optional[str]', is_failover_ip: 'Optional[bool]', is_failover_block: 'Optional[bool]', sold_in: 'Optional[List[str]]', available_only: 'Optional[bool]', is_rpn_san: 'Optional[bool]')

Bases: object

available_only: Optional[bool]

Set this filter to true to only return available offers.

catalog: Optional[OfferCatalog]

Filter on catalog.

commercial_range: Optional[str]

Filter on commercial range.

is_failover_block: Optional[bool]

Get the current failover IP block offer.

is_failover_ip: Optional[bool]

Get the current failover IP offer.

is_rpn_san: Optional[bool]

Get the RPN SAN offers.

order_by: Optional[ListOffersRequestOrderBy]

Order of the offers.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of offer per page.

project_id: Optional[str]

Project ID.

sold_in: Optional[List[str]]

Filter offers depending on their datacenter.

zone: Optional[str]

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

class scaleway.dedibox.v1.ListOffersRequestOrderBy(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'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
PRICE_ASC = 'price_asc'
PRICE_DESC = 'price_desc'
class scaleway.dedibox.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.dedibox.v1.ListRefundsRequestOrderBy(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.dedibox.v1.ListRefundsResponse(total_count: 'int', refunds: 'List[RefundSummary]')

Bases: object

refunds: List[RefundSummary]
total_count: int
class scaleway.dedibox.v1.ListRpnCapableSanServersRequestOrderBy(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.dedibox.v1.ListRpnCapableSanServersResponse(total_count: 'int', san_servers: 'List[RpnSanServer]')

Bases: object

san_servers: List[RpnSanServer]

List of san servers.

total_count: int

Total count of rpn capable san servers.

class scaleway.dedibox.v1.ListRpnCapableServersRequestOrderBy(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.dedibox.v1.ListRpnCapableServersResponse(total_count: 'int', servers: 'List[Server]')

Bases: object

servers: List[Server]

List of servers.

total_count: int

Total count of rpn capable servers.

class scaleway.dedibox.v1.ListRpnGroupMembersRequestOrderBy(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.dedibox.v1.ListRpnGroupMembersResponse(total_count: 'int', members: 'List[RpnGroupMember]')

Bases: object

members: List[RpnGroupMember]

List of rpn v1 group members.

total_count: int

Total count of rpn v1 group members.

class scaleway.dedibox.v1.ListRpnGroupsRequestOrderBy(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.dedibox.v1.ListRpnGroupsResponse(total_count: 'int', rpn_groups: 'List[RpnGroup]')

Bases: object

rpn_groups: List[RpnGroup]

List of rpn v1 groups.

total_count: int

Total count of rpn groups.

class scaleway.dedibox.v1.ListRpnInvitesRequestOrderBy(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.dedibox.v1.ListRpnInvitesResponse(total_count: 'int', members: 'List[RpnGroupMember]')

Bases: object

members: List[RpnGroupMember]

List of invites.

total_count: int

Total count of invites.

class scaleway.dedibox.v1.ListRpnSansRequestOrderBy(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.dedibox.v1.ListRpnSansResponse(total_count: 'int', rpn_sans: 'List[RpnSanSummary]')

Bases: object

rpn_sans: List[RpnSanSummary]

List of RPN SANs that match filters.

total_count: int

Total count of matching RPN SANs.

class scaleway.dedibox.v1.ListRpnServerCapabilitiesRequestOrderBy(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.dedibox.v1.ListRpnServerCapabilitiesResponse(total_count: 'int', servers: 'List[RpnServerCapability]')

Bases: object

servers: List[RpnServerCapability]

List of servers and their RPN capabilities.

total_count: int

Total count of servers.

class scaleway.dedibox.v1.ListRpnV2CapableResourcesRequestOrderBy(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.dedibox.v1.ListRpnV2CapableResourcesResponse(total_count: 'int', servers: 'List[Server]')

Bases: object

servers: List[Server]

List of rpn v2 capable resources that match filters.

total_count: int

Total count of matching rpn v2 capable resources.

class scaleway.dedibox.v1.ListRpnV2GroupLogsRequestOrderBy(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.dedibox.v1.ListRpnV2GroupLogsResponse(total_count: 'int', logs: 'List[Log]')

Bases: object

logs: List[Log]

List of rpn v2 logs that match filters.

total_count: int

Total count of matching rpn v2 logs.

class scaleway.dedibox.v1.ListRpnV2GroupsRequestOrderBy(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.dedibox.v1.ListRpnV2GroupsResponse(total_count: 'int', rpn_groups: 'List[RpnV2Group]')

Bases: object

rpn_groups: List[RpnV2Group]

List of rpn v2 groups that match filters.

total_count: int

Total count of matching rpn v2 groups.

class scaleway.dedibox.v1.ListRpnV2MembersRequestOrderBy(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.dedibox.v1.ListRpnV2MembersRequestType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

RPNV1_GROUP = 'rpnv1_group'
SERVER = 'server'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.dedibox.v1.ListRpnV2MembersResponse(total_count: 'int', members: 'List[RpnV2Member]')

Bases: object

members: List[RpnV2Member]

List of rpn v2 group members that match filters.

total_count: int

Total count of matching rpn v2 group members.

class scaleway.dedibox.v1.ListServerDisksRequest(server_id: 'int', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServerDisksRequestOrderBy]')

Bases: object

order_by: Optional[ListServerDisksRequestOrderBy]

Order of the server disks.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of server disk per page.

server_id: int

Server ID of the server disks.

zone: Optional[str]

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

class scaleway.dedibox.v1.ListServerDisksRequestOrderBy(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.dedibox.v1.ListServerDisksResponse(total_count: 'int', disks: 'List[ServerDisk]')

Bases: object

disks: List[ServerDisk]

Server disks that match filters.

total_count: int

Total count of matching server disks.

class scaleway.dedibox.v1.ListServerEventsRequest(server_id: 'int', 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 event per page.

server_id: int

Server ID of the server events.

zone: Optional[str]

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

class scaleway.dedibox.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.dedibox.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 server events.

class scaleway.dedibox.v1.ListServersRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServersRequestOrderBy]', project_id: 'Optional[str]', search: 'Optional[str]')

Bases: object

order_by: Optional[ListServersRequestOrderBy]

Order of the servers.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of server per page.

project_id: Optional[str]

Filter servers by project ID.

search: Optional[str]

Filter servers by hostname.

zone: Optional[str]

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

class scaleway.dedibox.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.dedibox.v1.ListServersResponse(total_count: 'int', servers: 'List[ServerSummary]')

Bases: object

servers: List[ServerSummary]

Servers that match filters.

total_count: int

Total count of matching servers.

class scaleway.dedibox.v1.ListServicesRequest(zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListServicesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListServicesRequestOrderBy]

Order of the services.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of service per page.

project_id: Optional[str]

Project ID.

zone: Optional[str]

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

class scaleway.dedibox.v1.ListServicesRequestOrderBy(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.dedibox.v1.ListServicesResponse(total_count: 'int', services: 'List[Service]')

Bases: object

services: List[Service]

Services that match filters.

total_count: int

Total count of matching services.

class scaleway.dedibox.v1.ListSubscribableServerOptionsRequest(server_id: 'int', zone: 'Optional[Zone]', page: 'Optional[int]', page_size: 'Optional[int]')

Bases: object

page: Optional[int]

Page number.

page_size: Optional[int]

Number of subscribable server option per page.

server_id: int

Server ID of the subscribable server options.

zone: Optional[str]

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

class scaleway.dedibox.v1.ListSubscribableServerOptionsResponse(total_count: 'int', server_options: 'List[Offer]')

Bases: object

server_options: List[Offer]

Server options that match filters.

total_count: int

Total count of matching subscribable server options.

class scaleway.dedibox.v1.Log(id: 'int', action: 'LogAction', status: 'LogStatus', group: 'Optional[RpnV2Group]', member: 'Optional[RpnV2Member]', created_at: 'Optional[datetime]', finished_at: 'Optional[datetime]')

Bases: object

action: LogAction

Which action was performed.

created_at: Optional[datetime]

Creation date.

finished_at: Optional[datetime]

Completion date.

group: Optional[RpnV2Group]

RPN V2 group.

id: int

RPN V2 log ID.

member: Optional[RpnV2Member]

RPN V2 member (if appliable).

status: LogStatus

Action status.

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

Bases: str, Enum

An enumeration.

DESCRIPTION_UPDATED = 'description_updated'
GROUP_CREATED = 'group_created'
GROUP_DELETED = 'group_deleted'
MEMBERS_ADDED = 'members_added'
MEMBERS_DELETED = 'members_deleted'
RPNV1_MEMBERS_ADDED = 'rpnv1_members_added'
RPNV1_MEMBERS_DELETED = 'rpnv1_members_deleted'
UNKNOWN_LOG_ACTION = 'unknown_log_action'
VLAN_UPDATED = 'vlan_updated'
VLAN_UPDATED_ON_ALL_SERVERS = 'vlan_updated_on_all_servers'
class scaleway.dedibox.v1.LogStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ERROR = 'error'
IN_PROGRESS = 'in_progress'
SUCCESS = 'success'
UNKNOWN_LOG_STATUS = 'unknown_log_status'
class scaleway.dedibox.v1.Memory(capacity: 'int', type_: 'MemoryType', frequency: 'int', is_ecc: 'bool')

Bases: object

capacity: int

Capacity of the memory.

frequency: int

Frequency of the memory.

is_ecc: bool

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

type_: MemoryType

Type of the memory.

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

Bases: str, Enum

An enumeration.

DDR2 = 'ddr2'
DDR3 = 'ddr3'
DDR4 = 'ddr4'
DDR5 = 'ddr5'
class scaleway.dedibox.v1.NetworkInterface(card_id: 'int', device_id: 'int', mac: 'str', type_: 'NetworkInterfaceInterfaceType', ips: 'List[IP]')

Bases: object

card_id: int

Card ID of the network interface.

device_id: int

Device ID of the network interface.

ips: List[IP]

IPs of the network interface.

mac: str

MAC address of the network interface.

type_: NetworkInterfaceInterfaceType

Network interface type.

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

Bases: str, Enum

An enumeration.

IPMI = 'ipmi'
NORMAL = 'normal'
UNKNOWN = 'unknown'
VIRTUAL = 'virtual'
class scaleway.dedibox.v1.OS(id: 'int', name: 'str', type_: 'OSType', version: 'str', arch: 'OSArch', allow_custom_partitioning: 'bool', allow_ssh_keys: 'bool', requires_user: 'bool', requires_admin_password: 'bool', requires_panel_password: 'bool', allowed_filesystems: 'List[PartitionFileSystem]', requires_license: 'bool', license_offers: 'List[Offer]', display_name: 'str', password_regex: 'str', hostname_max_length: 'int', max_partitions: 'Optional[int]', panel_password_regex: 'Optional[str]', requires_valid_hostname: 'Optional[bool]', hostname_regex: 'Optional[str]', released_at: 'Optional[datetime]')

Bases: object

allow_custom_partitioning: bool

True if the OS allow custom partitioning.

allow_ssh_keys: bool

True if the OS allow SSH Keys.

allowed_filesystems: List[PartitionFileSystem]

True if the OS allow file systems.

arch: OSArch

Architecture of the OS.

display_name: str

Display name of the OS.

hostname_max_length: int

Hostname max length.

hostname_regex: Optional[str]

If both requires_valid_hostname & hostname_regex are set, it means that at least one of the criterias must be valid.

id: int

ID of the OS.

license_offers: List[Offer]

License offers available with the OS.

max_partitions: Optional[int]

Maximum number of partitions which can be created.

name: str

Name of the OS.

panel_password_regex: Optional[str]

Regex used to validate the panel installation password.

password_regex: str

Regex used to validate the installation passwords.

released_at: Optional[datetime]

OS release date.

requires_admin_password: bool

True if the OS requires admin password.

requires_license: bool

True if the OS requires license.

requires_panel_password: bool

True if the OS requires panel password.

requires_user: bool

True if the OS requires user.

requires_valid_hostname: Optional[bool]

If both requires_valid_hostname & hostname_regex are set, it means that at least one of the criterias must be valid.

type_: OSType

Type of the OS.

version: str

Version of the OS.

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

Bases: str, Enum

An enumeration.

AMD64 = 'amd64'
ARM = 'arm'
ARM64 = 'arm64'
UNKNOWN_ARCH = 'unknown_arch'
X86 = 'x86'
class scaleway.dedibox.v1.OSType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CUSTOM = 'custom'
DESKTOP = 'desktop'
PANEL = 'panel'
RESCUE = 'rescue'
SERVER = 'server'
UNKNOWN_TYPE = 'unknown_type'
VIRTU = 'virtu'
class scaleway.dedibox.v1.Offer(id: 'int', name: 'str', catalog: 'OfferCatalog', payment_frequency: 'OfferPaymentFrequency', pricing: 'Optional[Money]', server_info: 'Optional[OfferServerInfo]', service_level_info: 'Optional[OfferServiceLevelInfo]', rpn_info: 'Optional[OfferRPNInfo]', san_info: 'Optional[OfferSANInfo]', antidos_info: 'Optional[OfferAntiDosInfo]', backup_info: 'Optional[OfferBackupInfo]', usb_storage_info: 'Optional[OfferStorageInfo]', storage_info: 'Optional[OfferStorageInfo]', license_info: 'Optional[OfferLicenseInfo]', failover_ip_info: 'Optional[OfferFailoverIpInfo]', failover_block_info: 'Optional[OfferFailoverBlockInfo]', bandwidth_info: 'Optional[OfferBandwidthInfo]')

Bases: object

antidos_info: Optional[OfferAntiDosInfo]
backup_info: Optional[OfferBackupInfo]
bandwidth_info: Optional[OfferBandwidthInfo]
catalog: OfferCatalog

Catalog of the offer.

failover_block_info: Optional[OfferFailoverBlockInfo]
failover_ip_info: Optional[OfferFailoverIpInfo]
id: int

ID of the offer.

license_info: Optional[OfferLicenseInfo]
name: str

Name of the offer.

payment_frequency: OfferPaymentFrequency

Payment frequency of the offer.

pricing: Optional[Money]

Price of the offer.

rpn_info: Optional[OfferRPNInfo]
san_info: Optional[OfferSANInfo]
server_info: Optional[OfferServerInfo]
service_level_info: Optional[OfferServiceLevelInfo]
storage_info: Optional[OfferStorageInfo]
usb_storage_info: Optional[OfferStorageInfo]
class scaleway.dedibox.v1.OfferAntiDosInfo(type_: 'OfferAntiDosInfoType')

Bases: object

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

Bases: str, Enum

An enumeration.

CURATIVE = 'curative'
MINIMAL = 'minimal'
PREVENTIVE = 'preventive'
class scaleway.dedibox.v1.OfferBackupInfo(size: 'int')

Bases: object

size: int
class scaleway.dedibox.v1.OfferBandwidthInfo(speed: 'int')

Bases: object

speed: int
class scaleway.dedibox.v1.OfferCatalog(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ADMIN = 'admin'
ALL = 'all'
BETA = 'beta'
DEFAULT = 'default'
INACTIVE = 'inactive'
PREMIUM = 'premium'
RESELLER = 'reseller'
VOLUME = 'volume'
class scaleway.dedibox.v1.OfferFailoverBlockInfo(onetime_fees: 'Optional[Offer]')

Bases: object

onetime_fees: Optional[Offer]
class scaleway.dedibox.v1.OfferFailoverIpInfo(onetime_fees: 'Optional[Offer]')

Bases: object

onetime_fees: Optional[Offer]
class scaleway.dedibox.v1.OfferLicenseInfo(bound_to_ip: 'bool')

Bases: object

bound_to_ip: bool
class scaleway.dedibox.v1.OfferPaymentFrequency(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

MONTHLY = 'monthly'
ONESHOT = 'oneshot'
class scaleway.dedibox.v1.OfferRPNInfo(speed: 'int')

Bases: object

speed: int
class scaleway.dedibox.v1.OfferSANInfo(size: 'int', ha: 'bool', device_type: 'OfferSANInfoType')

Bases: object

device_type: OfferSANInfoType

Type of SAN device (hdd / ssd).

ha: bool

High availabilty offer.

size: int

SAN size (in bytes).

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

Bases: str, Enum

An enumeration.

HDD = 'hdd'
SSD = 'ssd'
class scaleway.dedibox.v1.OfferServerInfo(bandwidth: 'int', stock: 'OfferServerInfoStock', commercial_range: 'str', disks: 'List[Disk]', cpus: 'List[CPU]', memories: 'List[Memory]', persistent_memories: 'List[PersistentMemory]', raid_controllers: 'List[RaidController]', available_options: 'List[Offer]', connectivity: 'int', stock_by_datacenter: 'Dict[str, OfferServerInfoStock]', rpn_version: 'Optional[int]', onetime_fees: 'Optional[Offer]')

Bases: object

available_options: List[Offer]
bandwidth: int
commercial_range: str
connectivity: int
cpus: List[CPU]
disks: List[Disk]
memories: List[Memory]
onetime_fees: Optional[Offer]
persistent_memories: List[PersistentMemory]
raid_controllers: List[RaidController]
rpn_version: Optional[int]
stock: OfferServerInfoStock
stock_by_datacenter: Dict[str, OfferServerInfoStock]
class scaleway.dedibox.v1.OfferServerInfoStock(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AVAILABLE = 'available'
EMPTY = 'empty'
LOW = 'low'
class scaleway.dedibox.v1.OfferServiceLevelInfo(support_ticket: 'bool', support_phone: 'bool', sales_support: 'bool', git: 'str', sla: 'float', priority_support: 'bool', high_rpn_bandwidth: 'bool', customization: 'bool', antidos: 'bool', extra_failover_quota: 'int', available_options: 'List[Offer]')

Bases: object

antidos: bool
available_options: List[Offer]
customization: bool
extra_failover_quota: int
git: str
high_rpn_bandwidth: bool
priority_support: bool
sales_support: bool
sla: float
support_phone: bool
support_ticket: bool
class scaleway.dedibox.v1.OfferStorageInfo(max_quota: 'int', size: 'int')

Bases: object

max_quota: int
size: int
class scaleway.dedibox.v1.Partition(type_: 'PartitionType', file_system: 'PartitionFileSystem', raid_level: 'RaidArrayRaidLevel', capacity: 'int', connectors: 'List[str]', mount_point: 'Optional[str]')

Bases: object

capacity: int

Capacity of the partition.

connectors: List[str]

Connectors of the partition.

file_system: PartitionFileSystem

File system of the partition.

mount_point: Optional[str]

Mount point of the partition.

raid_level: RaidArrayRaidLevel

Raid level of the partition.

type_: PartitionType

Type of the partition.

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

Bases: str, Enum

An enumeration.

EFI = 'efi'
EXT2 = 'ext2'
EXT3 = 'ext3'
EXT4 = 'ext4'
FAT32 = 'fat32'
NTFS = 'ntfs'
SWAP = 'swap'
UFS = 'ufs'
UNKNOWN = 'unknown'
XFS = 'xfs'
class scaleway.dedibox.v1.PartitionType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

EXTENDED = 'extended'
LOGICAL = 'logical'
PRIMARY = 'primary'
class scaleway.dedibox.v1.PersistentMemory(capacity: 'int', frequency: 'int', model: 'str')

Bases: object

capacity: int

Capacity of the persistent memory.

frequency: int

Frequency of the persistent memory.

model: str

Model of the persistent memory.

class scaleway.dedibox.v1.Raid(raid_arrays: 'List[RaidArray]')

Bases: object

raid_arrays: List[RaidArray]

Details about the RAID controller.

class scaleway.dedibox.v1.RaidArray(raid_level: 'RaidArrayRaidLevel', disks: 'List[ServerDisk]')

Bases: object

disks: List[ServerDisk]

Disks on the RAID controller.

raid_level: RaidArrayRaidLevel

The RAID level.

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

Bases: str, Enum

An enumeration.

NO_RAID = 'no_raid'
RAID0 = 'raid0'
RAID1 = 'raid1'
RAID10 = 'raid10'
RAID5 = 'raid5'
RAID6 = 'raid6'
class scaleway.dedibox.v1.RaidController(model: 'str', raid_level: 'List[str]')

Bases: object

model: str

Model of the RAID controller.

raid_level: List[str]

RAID level of the RAID controller.

class scaleway.dedibox.v1.RebootServerRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID to reboot.

zone: Optional[str]

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

class scaleway.dedibox.v1.Refund(id: 'int', status: 'RefundStatus', method: 'RefundMethod', content: 'str', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', refunded_at: 'Optional[datetime]')

Bases: object

content: str
created_at: Optional[datetime]
id: int
method: RefundMethod
refunded_at: Optional[datetime]
status: RefundStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
class scaleway.dedibox.v1.RefundMethod(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

AMEX = 'amex'
CREDIT_CARD = 'credit_card'
PAYPAL = 'paypal'
TRANSFER = 'transfer'
UNKNOWN_REFUND_METHOD = 'unknown_refund_method'
class scaleway.dedibox.v1.RefundStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ERRORED = 'errored'
PAID = 'paid'
UNKNOWN_REFUND_STATUS = 'unknown_refund_status'
UNPAID = 'unpaid'
class scaleway.dedibox.v1.RefundSummary(id: 'int', status: 'RefundStatus', method: 'RefundMethod', total_with_taxes: 'Optional[Money]', total_without_taxes: 'Optional[Money]', created_at: 'Optional[datetime]', refunded_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]
id: int
method: RefundMethod
refunded_at: Optional[datetime]
status: RefundStatus
total_with_taxes: Optional[Money]
total_without_taxes: Optional[Money]
class scaleway.dedibox.v1.Rescue(os_id: 'int', login: 'str', password: 'str', protocol: 'RescueProtocol')

Bases: object

login: str

Login of the rescue.

os_id: int

OS ID of the rescue.

password: str

Password of the rescue.

protocol: RescueProtocol

Protocol of the resuce.

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

Bases: str, Enum

An enumeration.

SSH = 'ssh'
VNC = 'vnc'
class scaleway.dedibox.v1.RpnApiGetRpnStatusRequest(project_id: 'Optional[str]', rpnv1_group_id: 'Optional[int]', rpnv2_group_id: 'Optional[int]')

Bases: object

project_id: Optional[str]

A project ID.

rpnv1_group_id: Optional[int]

An RPN v1 group ID.

rpnv2_group_id: Optional[int]

An RPN v2 group ID.

class scaleway.dedibox.v1.RpnApiListRpnServerCapabilitiesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnServerCapabilitiesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnServerCapabilitiesRequestOrderBy]

Order of the servers.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of servers per page.

project_id: Optional[str]

Filter servers by project ID.

class scaleway.dedibox.v1.RpnGroup(id: 'int', name: 'str', type_: 'RpnGroupType', active: 'bool', owner: 'str', members_count: 'int', organization_id: 'str', project_id: 'str', created_at: 'Optional[datetime]')

Bases: object

active: bool

Whether the group is active or not.

created_at: Optional[datetime]

Rpn group creation date.

id: int

Rpn group member ID.

members_count: int

Total number of members.

name: str

Rpn group name.

organization_id: str

Rpn group organization ID.

owner: str

RPN group owner.

project_id: str

Rpn group project ID.

type_: RpnGroupType

Rpn group type (local or shared).

class scaleway.dedibox.v1.RpnGroupMember(id: 'int', status: 'RpnGroupMemberStatus', group_id: 'int', group_name: 'str', group_owner: 'str', owner: 'str', san_server: 'Optional[RpnSanServer]', server: 'Optional[Server]', speed: 'Optional[int]')

Bases: object

group_id: int

RPN group ID.

group_name: str

RPN group name.

group_owner: str

RPN group owner.

id: int

Rpn group member ID.

owner: str

RPN member owner.

san_server: Optional[RpnSanServer]

Authorized RPN SAN server.

server: Optional[Server]

Authorized rpn v1 capable server.

speed: Optional[int]

RPN speed.

status: RpnGroupMemberStatus

RPN group member status.

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETED = 'deleted'
DELETING = 'deleting'
PENDING_INVITATION = 'pending_invitation'
UNKNOWN_RPN_MEMBER_STATUS = 'unknown_rpn_member_status'
class scaleway.dedibox.v1.RpnGroupType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

LOCAL = 'local'
SHARED = 'shared'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.RpnSan(id: 'int', datacenter_name: 'str', organization_id: 'str', project_id: 'str', server_hostname: 'str', iqn_suffix: 'str', offer_id: 'int', created_at: 'Optional[datetime]', offer_name: 'str', status: 'RpnSanStatus', storage_size: 'int', iqn: 'str', rpnv1_compatible: 'bool', rpnv1_implicit: 'bool', offer: 'Optional[Offer]', delivered_at: 'Optional[datetime]', terminated_at: 'Optional[datetime]', expires_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Date of creation of the RPN SAN.

datacenter_name: str

Datacenter location.

delivered_at: Optional[datetime]

RPN SAN delivery date.

expires_at: Optional[datetime]

RPN SAN expiration date.

id: int

RPN SAN ID.

iqn: str
iqn_suffix: str

IQN suffix.

offer: Optional[Offer]
offer_id: int

Offer ID.

offer_name: str

Offer description.

organization_id: str

Organization ID.

project_id: str

Project ID.

rpnv1_compatible: bool

True if the SAN is compatible with the RPNv1 technology.

rpnv1_implicit: bool

True if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1.

server_hostname: str

RPN SAN server hostname.

status: RpnSanStatus

Status.

storage_size: int

RPN SAN storage size.

terminated_at: Optional[datetime]

RPN SAN termination date.

class scaleway.dedibox.v1.RpnSanApiAddIpRequest(rpn_san_id: 'int', ip_ids: 'List[int]')

Bases: object

ip_ids: List[int]

An array of IP ID.

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.RpnSanApiCreateRpnSanRequest(offer_id: 'int', project_id: 'Optional[str]')

Bases: object

offer_id: int

Offer ID.

project_id: Optional[str]

Your project ID.

class scaleway.dedibox.v1.RpnSanApiDeleteRpnSanRequest(rpn_san_id: 'int')

Bases: object

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.RpnSanApiGetRpnSanRequest(rpn_san_id: 'int')

Bases: object

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.RpnSanApiListAvailableIpsRequest(rpn_san_id: 'int', type_: 'Optional[RpnSanIpType]')

Bases: object

rpn_san_id: int

RPN SAN ID.

type_: Optional[RpnSanIpType]

Filter by IP type (server | rpnv2_subnet).

class scaleway.dedibox.v1.RpnSanApiListIpsRequest(rpn_san_id: 'int', type_: 'Optional[RpnSanIpType]')

Bases: object

rpn_san_id: int

RPN SAN ID.

type_: Optional[RpnSanIpType]

Filter by IP type (server | rpnv2_subnet).

class scaleway.dedibox.v1.RpnSanApiListRpnSansRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnSansRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnSansRequestOrderBy]

Order of the RPN SANs.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of RPN SANs per page.

project_id: Optional[str]

Filter RPN SANs by project ID.

class scaleway.dedibox.v1.RpnSanApiRemoveIpRequest(rpn_san_id: 'int', ip_ids: 'List[int]')

Bases: object

ip_ids: List[int]

An array of IP ID.

rpn_san_id: int

RPN SAN ID.

class scaleway.dedibox.v1.RpnSanIp(type_: 'RpnSanIpType', ip: 'Optional[IP]', server: 'Optional[RpnSanIpServer]', rpnv2_group: 'Optional[RpnSanIpRpnV2Group]')

Bases: object

ip: Optional[IP]

An IP object.

rpnv2_group: Optional[RpnSanIpRpnV2Group]
server: Optional[RpnSanIpServer]
type_: RpnSanIpType

IP type (server | rpnv2_subnet).

class scaleway.dedibox.v1.RpnSanIpRpnV2Group(id: 'int', name: 'str')

Bases: object

id: int
name: str
class scaleway.dedibox.v1.RpnSanIpServer(id: 'int', hostname: 'str', datacenter_name: 'str')

Bases: object

datacenter_name: str
hostname: str
id: int
class scaleway.dedibox.v1.RpnSanIpType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

RPNV2_SUBNET = 'rpnv2_subnet'
SERVER_IP = 'server_ip'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.RpnSanServer(id: 'int', datacenter_name: 'str', hostname: 'str', sans: 'List[RpnSan]', zone: 'Zone')

Bases: object

datacenter_name: str

The RPN SAN server datacenter name.

hostname: str

The RPN SAN server hostname.

id: int

The RPN SAN server ID.

sans: List[RpnSan]

RPN SANs linked to the RPN SAN server.

zone: str

The RPN SAN server zone.

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETING = 'deleting'
MAINTENANCE = 'maintenance'
UNKNOWN_STATUS = 'unknown_status'
class scaleway.dedibox.v1.RpnSanSummary(id: 'int', datacenter_name: 'str', organization_id: 'str', project_id: 'str', server_hostname: 'str', iqn_suffix: 'str', offer_id: 'int', created_at: 'Optional[datetime]', offer_name: 'str', status: 'RpnSanStatus', storage_size: 'int', rpnv1_compatible: 'bool', rpnv1_implicit: 'bool', delivered_at: 'Optional[datetime]', terminated_at: 'Optional[datetime]', expires_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Date of creation of the RPN SAN.

datacenter_name: str

Datacenter location.

delivered_at: Optional[datetime]

RPN SAN delivery date.

expires_at: Optional[datetime]

RPN SAN expiration date.

id: int

RPN SAN ID.

iqn_suffix: str

IQN suffix.

offer_id: int

Offer ID.

offer_name: str

Offer description.

organization_id: str

Organization ID.

project_id: str

Project ID.

rpnv1_compatible: bool

True if the SAN is compatible with the RPNv1 technology.

rpnv1_implicit: bool

True if the offer supports the RPNv1 implicitly, false if it must to be added to a group to support RPNv1.

server_hostname: str

RPN SAN server hostname.

status: RpnSanStatus

Status.

storage_size: int

RPN SAN storage size.

terminated_at: Optional[datetime]

RPN SAN termination date.

class scaleway.dedibox.v1.RpnServerCapability(id: 'int', hostname: 'str', datacenter_name: 'str', zone: 'Zone', compatible_qinq: 'bool', can_join_qinq_group: 'bool', rpnv1_group_count: 'int', rpnv2_group_count: 'int', can_join_rpnv2_group: 'bool', ip_address: 'Optional[str]', rpn_version: 'Optional[int]')

Bases: object

can_join_qinq_group: bool

True if server can join a QinQ group.

can_join_rpnv2_group: bool

True if server can join an rpnv2 group.

compatible_qinq: bool

True if server is compatible with QinQ protocol (rpn v2).

datacenter_name: str

Server datacenter name.

hostname: str

Server hostname.

id: int

Server ID.

ip_address: Optional[str]

Private IP address (if rpn compatiblle).

rpn_version: Optional[int]

Supported rpn version.

rpnv1_group_count: int

Times server is linked in a rpnv1 group.

rpnv2_group_count: int

Times server is linked in a rpnv2 group.

zone: str

Server zone.

class scaleway.dedibox.v1.RpnV1ApiAcceptRpnInviteRequest(member_id: 'int')

Bases: object

member_id: int

The member ID.

class scaleway.dedibox.v1.RpnV1ApiAddRpnGroupMembersRequest(group_id: 'int', server_ids: 'Optional[List[int]]', san_server_ids: 'Optional[List[int]]')

Bases: object

group_id: int

The rpn v1 group ID.

san_server_ids: Optional[List[int]]

A collection of rpn v1 capable RPN SAN server IDs.

server_ids: Optional[List[int]]

A collection of rpn v1 capable server IDs.

class scaleway.dedibox.v1.RpnV1ApiCreateRpnGroupRequest(name: 'str', server_ids: 'Optional[List[int]]', san_server_ids: 'Optional[List[int]]', project_id: 'Optional[str]')

Bases: object

name: str

Rpn v1 group name.

project_id: Optional[str]

A project ID.

san_server_ids: Optional[List[int]]

A collection of rpn v1 capable rpn sans servers.

server_ids: Optional[List[int]]

A collection of rpn v1 capable servers.

class scaleway.dedibox.v1.RpnV1ApiDeleteRpnGroupMembersRequest(group_id: 'int', member_ids: 'List[int]')

Bases: object

group_id: int

The rpn v1 group ID.

member_ids: List[int]

A collection of rpn v1 group members IDs.

class scaleway.dedibox.v1.RpnV1ApiDeleteRpnGroupRequest(group_id: 'int')

Bases: object

group_id: int

Rpn v1 group ID.

class scaleway.dedibox.v1.RpnV1ApiGetRpnGroupRequest(group_id: 'int')

Bases: object

group_id: int

Rpn v1 group ID.

class scaleway.dedibox.v1.RpnV1ApiLeaveRpnGroupRequest(group_id: 'int', member_ids: 'List[int]', project_id: 'Optional[str]')

Bases: object

group_id: int

The RPN V1 group ID.

member_ids: List[int]

A collection of rpn v1 group members IDs.

project_id: Optional[str]

A project ID.

class scaleway.dedibox.v1.RpnV1ApiListRpnCapableSanServersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnCapableSanServersRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnCapableSanServersRequestOrderBy]

Order of the rpn capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn capable resources per page.

project_id: Optional[str]

Filter rpn capable resources by project ID.

class scaleway.dedibox.v1.RpnV1ApiListRpnCapableServersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnCapableServersRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnCapableServersRequestOrderBy]

Order of the rpn capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn capable resources per page.

project_id: Optional[str]

Filter rpn capable resources by project ID.

class scaleway.dedibox.v1.RpnV1ApiListRpnGroupMembersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnGroupMembersRequestOrderBy]', group_id: 'int', project_id: 'Optional[str]')

Bases: object

group_id: int

Filter rpn v1 group members by group ID.

order_by: Optional[ListRpnGroupMembersRequestOrderBy]

Order of the rpn v1 group members.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v1 group members per page.

project_id: Optional[str]

A project ID.

class scaleway.dedibox.v1.RpnV1ApiListRpnGroupsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnGroupsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnGroupsRequestOrderBy]

Order of the rpn v1 groups.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v1 groups per page.

project_id: Optional[str]

Filter rpn v1 groups by project ID.

class scaleway.dedibox.v1.RpnV1ApiListRpnInvitesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnInvitesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnInvitesRequestOrderBy]

Order of the rpn capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn capable resources per page.

project_id: Optional[str]

Filter rpn capable resources by project ID.

class scaleway.dedibox.v1.RpnV1ApiRefuseRpnInviteRequest(member_id: 'int')

Bases: object

member_id: int

The member ID.

class scaleway.dedibox.v1.RpnV1ApiRpnGroupInviteRequest(group_id: 'int', server_ids: 'List[int]', project_id: 'Optional[str]')

Bases: object

group_id: int

The RPN V1 group ID.

project_id: Optional[str]

A project ID.

server_ids: List[int]

A collection of external server IDs.

class scaleway.dedibox.v1.RpnV1ApiUpdateRpnGroupNameRequest(group_id: 'int', name: 'Optional[str]')

Bases: object

group_id: int

Rpn v1 group ID.

name: Optional[str]

New rpn v1 group name.

class scaleway.dedibox.v1.RpnV2ApiAddRpnV2MembersRequest(group_id: 'int', servers: 'List[int]')

Bases: object

group_id: int

RPN V2 group ID.

servers: List[int]

A collection of server IDs.

class scaleway.dedibox.v1.RpnV2ApiCreateRpnV2GroupRequest(name: 'str', servers: 'List[int]', project_id: 'Optional[str]', type_: 'Optional[RpnV2GroupType]')

Bases: object

name: str

RPN V2 group name.

project_id: Optional[str]

Project ID of the RPN V2 group.

servers: List[int]

A collection of server IDs.

type_: Optional[RpnV2GroupType]

RPN V2 group type (qing / standard).

class scaleway.dedibox.v1.RpnV2ApiDeleteRpnV2GroupRequest(group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

class scaleway.dedibox.v1.RpnV2ApiDeleteRpnV2MembersRequest(group_id: 'int', member_ids: 'List[int]')

Bases: object

group_id: int

RPN V2 group ID.

member_ids: List[int]

A collection of member IDs.

class scaleway.dedibox.v1.RpnV2ApiDisableRpnV2GroupCompatibilityRequest(group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

class scaleway.dedibox.v1.RpnV2ApiEnableRpnV2GroupCompatibilityRequest(group_id: 'int', rpnv1_group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

rpnv1_group_id: int

RPN V1 group ID.

class scaleway.dedibox.v1.RpnV2ApiGetRpnV2GroupRequest(group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

class scaleway.dedibox.v1.RpnV2ApiListRpnV2CapableResourcesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2CapableResourcesRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnV2CapableResourcesRequestOrderBy]

Order of the rpn v2 capable resources.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 capable resources per page.

project_id: Optional[str]

Filter rpn v2 capable resources by project ID.

class scaleway.dedibox.v1.RpnV2ApiListRpnV2GroupLogsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2GroupLogsRequestOrderBy]', group_id: 'int')

Bases: object

group_id: int

RPN V2 group ID.

order_by: Optional[ListRpnV2GroupLogsRequestOrderBy]

Order of the rpn v2 group logs.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 group logs per page.

class scaleway.dedibox.v1.RpnV2ApiListRpnV2GroupsRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2GroupsRequestOrderBy]', project_id: 'Optional[str]')

Bases: object

order_by: Optional[ListRpnV2GroupsRequestOrderBy]

Order of the rpn v2 groups.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 groups per page.

project_id: Optional[str]

Filter rpn v2 groups by project ID.

class scaleway.dedibox.v1.RpnV2ApiListRpnV2MembersRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListRpnV2MembersRequestOrderBy]', group_id: 'int', type_: 'Optional[ListRpnV2MembersRequestType]')

Bases: object

group_id: int

RPN V2 group ID.

order_by: Optional[ListRpnV2MembersRequestOrderBy]

Order of the rpn v2 group members.

page: Optional[int]

Page number.

page_size: Optional[int]

Number of rpn v2 group members per page.

type_: Optional[ListRpnV2MembersRequestType]

Filter members by type.

class scaleway.dedibox.v1.RpnV2ApiUpdateRpnV2GroupNameRequest(group_id: 'int', name: 'Optional[str]')

Bases: object

group_id: int

RPN V2 group ID.

name: Optional[str]

RPN V2 group name.

class scaleway.dedibox.v1.RpnV2ApiUpdateRpnV2VlanForMembersRequest(group_id: 'int', member_ids: 'List[int]', vlan: 'Optional[int]')

Bases: object

group_id: int

RPN V2 group ID.

member_ids: List[int]

RPN V2 member IDs.

vlan: Optional[int]

Min: 0.

Max: 3967.

class scaleway.dedibox.v1.RpnV2Group(id: 'int', name: 'str', compatible_rpnv1: 'bool', organization_id: 'str', project_id: 'str', type_: 'RpnV2GroupType', status: 'RpnV2GroupStatus', owner: 'str', members_count: 'int', gateway: 'str', subnet: 'Optional[RpnV2GroupSubnet]', rpnv1_group: 'Optional[RpnGroup]')

Bases: object

compatible_rpnv1: bool

Whether or not the RPN V1 compatibility was enabled.

gateway: str

RPN V2 gateway.

id: int

RPN V2 group ID.

members_count: int

Total number of members.

name: str

RPN V2 group name.

organization_id: str

Organization ID of the RPN V2 group.

owner: str

RPN V2 group owner.

project_id: str

Project ID of the RPN V2 group.

rpnv1_group: Optional[RpnGroup]

The RPNv1 group (if the compatibility was enabled).

status: RpnV2GroupStatus

RPN V2 group status.

subnet: Optional[RpnV2GroupSubnet]

RPN V2 subnet.

type_: RpnV2GroupType

RPN V2 group type (qing / standard).

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETING = 'deleting'
UNKNOWN_GROUP_STATUS = 'unknown_group_status'
UPDATING = 'updating'
class scaleway.dedibox.v1.RpnV2GroupSubnet(address: 'str', cidr: 'int')

Bases: object

address: str
cidr: int
class scaleway.dedibox.v1.RpnV2GroupType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

QINQ = 'qinq'
STANDARD = 'standard'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.dedibox.v1.RpnV2Member(id: 'int', status: 'RpnV2MemberStatus', vlan: 'str', speed: 'Optional[int]', server: 'Optional[Server]', rpnv1_group: 'Optional[RpnGroup]')

Bases: object

id: int

RPN V2 member ID.

rpnv1_group: Optional[RpnGroup]
server: Optional[Server]
speed: Optional[int]

RPN speed.

status: RpnV2MemberStatus

RPN V2 member status.

vlan: str

RPN V2 member VLAN.

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

Bases: str, Enum

An enumeration.

ACTIVE = 'active'
CREATING = 'creating'
DELETING = 'deleting'
UNKNOWN_MEMBER_STATUS = 'unknown_member_status'
UPDATING = 'updating'
class scaleway.dedibox.v1.Server(id: 'int', organization_id: 'str', project_id: 'str', hostname: 'str', rebooted_at: 'Optional[datetime]', status: 'ServerStatus', abuse_contact: 'str', interfaces: 'List[NetworkInterface]', zone: 'Zone', options: 'List[ServerOption]', has_bmc: 'bool', tags: 'List[str]', is_outsourced: 'bool', ipv6_slaac: 'bool', qinq: 'bool', is_rpnv2_member: 'bool', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', expired_at: 'Optional[datetime]', offer: 'Optional[Offer]', location: 'Optional[ServerLocation]', os: 'Optional[OS]', level: 'Optional[ServiceLevel]', rescue_os: 'Optional[OS]')

Bases: object

abuse_contact: str

Abuse contact of the server.

created_at: Optional[datetime]

Date of creation of the server.

expired_at: Optional[datetime]

Date of release of the server.

has_bmc: bool

Boolean if the server has a BMC.

hostname: str

Hostname of the server.

id: int

ID of the server.

interfaces: List[NetworkInterface]

Network interfaces of the server.

ipv6_slaac: bool

Whether or not you can enable/disable the IPv6.

is_outsourced: bool

Whether the server is outsourced or not.

is_rpnv2_member: bool

Whether or not the server is already part of an rpnv2 group.

level: Optional[ServiceLevel]

Service level of the server.

location: Optional[ServerLocation]

Location of the server.

offer: Optional[Offer]

Offer of the server.

options: List[ServerOption]

Options subscribe on the server.

organization_id: str

Organization ID the server is attached to.

os: Optional[OS]

OS installed on the server.

project_id: str

Project ID the server is attached to.

qinq: bool

Whether the server is compatible with QinQ.

rebooted_at: Optional[datetime]

Date of last reboot of the server.

rescue_os: Optional[OS]

Rescue OS of the server.

status: ServerStatus

Status of the server.

tags: List[str]

Array of customs tags attached to the server.

updated_at: Optional[datetime]

Date of last modification of the server.

zone: str

The zone in which is the server.

class scaleway.dedibox.v1.ServerDefaultPartitioning(partitions: 'List[Partition]')

Bases: object

partitions: List[Partition]

Default partitions.

class scaleway.dedibox.v1.ServerDisk(id: 'int', connector: 'str', type_: 'ServerDiskType', capacity: 'int', is_addon: 'bool')

Bases: object

capacity: int
connector: str
id: int
is_addon: bool
type_: ServerDiskType
class scaleway.dedibox.v1.ServerDiskType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

NVME = 'nvme'
SAS = 'sas'
SATA = 'sata'
SSD = 'ssd'
SSHD = 'sshd'
USB = 'usb'
class scaleway.dedibox.v1.ServerEvent(event_id: 'int', description: 'str', date: 'Optional[datetime]')

Bases: object

date: Optional[datetime]

Date of the event.

description: str

Description of the event.

event_id: int

ID of the event.

class scaleway.dedibox.v1.ServerInstall(os_id: 'int', hostname: 'str', partitions: 'List[Partition]', ssh_key_ids: 'List[str]', status: 'ServerInstallStatus', user_login: 'Optional[str]', panel_url: 'Optional[str]')

Bases: object

hostname: str
os_id: int
panel_url: Optional[str]
partitions: List[Partition]
ssh_key_ids: List[str]
status: ServerInstallStatus
user_login: Optional[str]
class scaleway.dedibox.v1.ServerInstallStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BOOTING = 'booting'
CONFIGURING = 'configuring'
CONFIGURING_BOOTLOADER = 'configuring_bootloader'
FORMATTING = 'formatting'
INSTALLED = 'installed'
INSTALLING = 'installing'
PARTITIONING = 'partitioning'
REBOOTING = 'rebooting'
SETTING_UP_RAID = 'setting_up_raid'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.ServerLocation(rack: 'str', room: 'str', datacenter_name: 'str')

Bases: object

datacenter_name: str
rack: str
room: str
class scaleway.dedibox.v1.ServerOption(options: 'List[ServerOption]', offer: 'Optional[Offer]', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', expired_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]
expired_at: Optional[datetime]
offer: Optional[Offer]
options: List[ServerOption]
updated_at: Optional[datetime]
class scaleway.dedibox.v1.ServerStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BUSY = 'busy'
DELIVERING = 'delivering'
ERROR = 'error'
INSTALLING = 'installing'
LOCKED = 'locked'
READY = 'ready'
RESCUE = 'rescue'
STOPPED = 'stopped'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.ServerSummary(id: 'int', datacenter_name: 'str', organization_id: 'str', project_id: 'str', hostname: 'str', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]', expired_at: 'Optional[datetime]', offer_id: 'int', offer_name: 'str', status: 'ServerStatus', interfaces: 'List[NetworkInterface]', zone: 'Zone', is_outsourced: 'bool', qinq: 'bool', os_id: 'Optional[int]', level: 'Optional[ServiceLevel]', rpn_version: 'Optional[int]')

Bases: object

created_at: Optional[datetime]

Date of creation of the server.

datacenter_name: str

Datacenter of the server.

expired_at: Optional[datetime]

Date of release of the server.

hostname: str

Hostname of the server.

id: int

ID of the server.

interfaces: List[NetworkInterface]

Network interfaces of the server.

is_outsourced: bool

Whether the server is outsourced or not.

level: Optional[ServiceLevel]

Service level of the server.

offer_id: int

Offer ID of the server.

offer_name: str

Offer name of the server.

organization_id: str

Organization ID the server is attached to.

os_id: Optional[int]

OS ID installed on server.

project_id: str

Project ID the server is attached to.

qinq: bool

Whether the server is compatible with QinQ.

rpn_version: Optional[int]

Supported RPN version.

status: ServerStatus

Status of the server.

updated_at: Optional[datetime]

Date of last modification of the server.

zone: str

The zone in which is the server.

class scaleway.dedibox.v1.Service(id: 'int', provisioning_status: 'ServiceProvisioningStatus', type_: 'ServiceType', resource_id: 'Optional[int]', offer: 'Optional[Offer]', created_at: 'Optional[datetime]', delivered_at: 'Optional[datetime]', terminated_at: 'Optional[datetime]', expires_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Creation date of the service.

delivered_at: Optional[datetime]

Delivery date of the service.

expires_at: Optional[datetime]

Expiration date of the service.

id: int

ID of the service.

offer: Optional[Offer]

Offer of the service.

provisioning_status: ServiceProvisioningStatus

Provisioning status of the service.

resource_id: Optional[int]

Resource ID of the service.

terminated_at: Optional[datetime]

Terminatation date of the service.

type_: ServiceType

Service type, either order or service.

class scaleway.dedibox.v1.ServiceLevel(offer_id: 'int', level: 'ServiceLevelLevel')

Bases: object

level: ServiceLevelLevel

Level type of service level.

offer_id: int

Offer ID of service level.

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

Bases: str, Enum

An enumeration.

BASIC = 'basic'
BUSINESS = 'business'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.ServiceProvisioningStatus(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

DELIVERING = 'delivering'
ERROR = 'error'
EXPIRED = 'expired'
EXPIRING = 'expiring'
READY = 'ready'
UNKNOWN = 'unknown'
class scaleway.dedibox.v1.ServiceType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ORDER = 'order'
SERVICE = 'service'
UNKNOWN_TYPE = 'unknown_type'
class scaleway.dedibox.v1.StartBMCAccessRequest(server_id: 'int', ip: 'str', zone: 'Optional[Zone]')

Bases: object

ip: str

The IP authorized to connect to the given server.

server_id: int

ID of the server to start the BMC access.

zone: Optional[str]

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

class scaleway.dedibox.v1.StartRescueRequest(server_id: 'int', os_id: 'int', zone: 'Optional[Zone]')

Bases: object

os_id: int

OS ID to use to start rescue.

server_id: int

ID of the server to start rescue.

zone: Optional[str]

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

class scaleway.dedibox.v1.StartServerRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

Server ID to start.

zone: Optional[str]

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

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

Bases: object

server_id: int

ID of the server to stop BMC access.

zone: Optional[str]

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

class scaleway.dedibox.v1.StopRescueRequest(server_id: 'int', zone: 'Optional[Zone]')

Bases: object

server_id: int

ID of the server to stop rescue.

zone: Optional[str]

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

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

Bases: object

server_id: int

Server ID to stop.

zone: Optional[str]

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

class scaleway.dedibox.v1.SubscribeServerOptionRequest(server_id: 'int', option_id: 'int', zone: 'Optional[Zone]')

Bases: object

option_id: int

Option ID to subscribe.

server_id: int

Server ID to subscribe server option.

zone: Optional[str]

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

class scaleway.dedibox.v1.SubscribeStorageOptionsRequest(server_id: 'int', options_ids: 'List[int]', zone: 'Optional[Zone]')

Bases: object

options_ids: List[int]

Option IDs of the storage options to subscribe.

server_id: int

Server ID of the storage options to subscribe.

zone: Optional[str]

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

class scaleway.dedibox.v1.SubscribeStorageOptionsResponse(services: 'List[Service]')

Bases: object

services: List[Service]

Services subscribe storage options.

class scaleway.dedibox.v1.UpdatableRaidArray(raid_level: 'RaidArrayRaidLevel', disk_ids: 'List[int]')

Bases: object

disk_ids: List[int]

The list of Disk ID of the updatable RAID.

raid_level: RaidArrayRaidLevel

The RAID level.

class scaleway.dedibox.v1.UpdateRaidRequest(server_id: 'int', raid_arrays: 'List[UpdatableRaidArray]', zone: 'Optional[Zone]')

Bases: object

raid_arrays: List[UpdatableRaidArray]

RAIDs to update.

server_id: int

ID of the server.

zone: Optional[str]

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

class scaleway.dedibox.v1.UpdateReverseRequest(ip_id: 'int', reverse: 'str', zone: 'Optional[Zone]')

Bases: object

ip_id: int

ID of the IP.

reverse: str

Reverse to apply on the IP.

zone: Optional[str]

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

class scaleway.dedibox.v1.UpdateServerBackupRequest(server_id: 'int', zone: 'Optional[Zone]', password: 'Optional[str]', autologin: 'Optional[bool]', acl_enabled: 'Optional[bool]')

Bases: object

acl_enabled: Optional[bool]

Boolean to enable or disable ACL.

autologin: Optional[bool]

Autologin of the server backup.

password: Optional[str]

Password of the server backup.

server_id: int

Server ID to update backup.

zone: Optional[str]

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

class scaleway.dedibox.v1.UpdateServerRequest(server_id: 'int', zone: 'Optional[Zone]', hostname: 'Optional[str]', enable_ipv6: 'Optional[bool]')

Bases: object

enable_ipv6: Optional[bool]

Flag to enable or not the IPv6 of server.

hostname: Optional[str]

Hostname of the server to update.

server_id: int

Server ID to update.

zone: Optional[str]

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

class scaleway.dedibox.v1.UpdateServerTagsRequest(server_id: 'int', zone: 'Optional[Zone]', tags: 'Optional[List[str]]')

Bases: object

server_id: int

Server ID to update the tags.

tags: Optional[List[str]]

Tags of server to update.

zone: Optional[str]

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