Create Methods

These API methods allow you to order Memset services.

Warning

Please use the dry_run=True argument when you are testing, so that invoices are not generated.

Payment Methods

When creating services using the API, the default payment method for your Memset account will be used. The following constraints on the account payment method apply when using the API to create products:

  • A card or billing account must be used to create services which are billed in arrears.
  • It is not possible to use PayPal when creating services

If you have consolidated billing enabled for your account, any charges will be added to your next consolidated bill by default. If you wish to be invoiced immediately, you can set add_to_next_bill=False, and the default payment method for your Memset account will be used.

See Payment Method Methods for more information on the payment methods API.

Operating Systems

When provisioning servers, you must include the required os parameter. The os parameter can be set to one of our stock operating systems or the name of a Memstore snapshot. For a list of our supported operating systems and the required API names, please see our Operating Systems page for more information.

If you wish to provision a server using a snapshot, please obtain the name of the snapshot using server.snapshot_list() and specify the os_option as the value for os.

See create.monthly_miniserver(), create.hourly_miniserver() and create.monthly_fullserver() for the list of available operating systems for each service type.

Control Panel

We offer cPanel as a chargeable extra for monthly servers, but not hourly Miniservers. Our cPanel image is based on 64-bit CentOS 7.

To specify that you want cPanel, you must specify os=centos7_cpanel_64.

Response format for create methods

returns:

A dictionary with the following keys

sku

String: The SKU of the service.

dry_run

Boolean: As specified in the API call.

currency

String: The currency of the order. You cannot specify the currency in the API request, the account’s currency will be used. Currently, the account currency must be changed via the Memset website. Returned value will be one of ‘GBP’, ‘USD’, or ‘EUR’.

net_setup_price

Float: The setup price for the service, net of VAT.

net_monthly_rental

Float: The monthly rental for the service, net of VAT.

net_hourly_inarrears_rental_price

Float: The hourly rate for this service, net of VAT. This will only be provided when creating hourly miniservers.

net_total

Float: The sum of the setup price and any rental payable in advance, net of VAT.

invoice_ref
Integer: The invoice reference for the order. Will not be provided if

the method is called with dry_run=True or if add_to_next_bill=True.

add_to_next_bill
Boolean: If True, any charges will be added to the next consolidated bill. If False,

any charges will be invoiced immediately. Will not be provided it the method is called with dry_run=True.

period

Integer: The period in months of the service. Not provided for services billed in-arrears.

job

Dictionary: Provides the status of the job to set up the requested service. Will not be provided when the method is called with dry_run=True. See job.status() for further details.

Example

The following example shows how to create a monthly miniserver.

First we call create.monthly_miniserver() with dry_run=True:

{
  "sku": "MSVM001",
  "os": "debian_jessie_64",
  "dry_run": true,
}

This will return a response similar to the following:

{
  'sku': u'MSVM001'
  'currency': u'GBP',
  'dry_run': True,
  'net_setup_price': 0,
  'net_total': 7.50,
}

If we are happy, we can make the same request, but this time with dry_run=False so that the service is actually created:

{
  "sku": "MSVM001",
  "os": "debian_jessie_64",
  "dry_run": false
}

This will give a response similar to the following:

{
  'sku': u'MSVM001'
  'currency': u'GBP',
  'dry_run': False,
  'invoice_ref': 100291,
  'job': {'error': False,
          'finished': False,
          'id': '739c99f25ed8d13e48ba94ec6a4a0102',
          'status': 'AWAITING-PAYMENT',
          'type': 'SETUP-NEW-MINISERVER'},
  'net_setup_price': 0,
  'net_total': 7.50
}

Note that a job has been created to set up the miniserver, with the status AWAITING-PAYMENT. Once the invoice has been paid, we can check the progress of the setup using the job.status() method.

If we provide an invalid parameter, an ApiErrorBadParameters() exception will be raised. For example, let’s try to provision a Miniserver with Windows and 1GB RAM.:

{
  "sku": "MSVM001",
  "os": "win2012serverstd_r2_64",
  "dry_run": false,
}

This is an invalid configuration, as Windows miniservers require at least 2 GB of RAM. Therefore we get an exception:

ApiErrorBadParameters: os: Please select a valid choice. Microsoft Windows 2012 Server R2, Standard Edition is not available for the current configuration. Windows requires at least 2 GB RAM.
create.available()

Returns the services which can be provisioned using the API.

Returns:a list of dictionaries for each available service with the following keys
sku
String: The code used to identify the service.
description
String: Description of the service.
type
String: The type of service.
default_params
Dictionary: The default parameters for this service. The parameters depend on the service type:

miniserver

ram_mb:
Integer: The number of megabytes of RAM.
disk_gb
Integer: The number of gigabytes of hard disk space.
data_zones
List: list of data zone names where the service is available in. The list can be empty if the service is data zone independent. The data zone name can be used in any create method that has a data_zone parameter.
create.extra_bandwidth()

Adds bandwidth to a server’s extra bandwidth bank.

The bandwidth bank is an additional pool of metered bandwidth that will only be used in the event that your monthly inclusive quote is exceeded. It is designed as a “top up tank” in case you have extra usage in any one month.

This is only valid for servers with metered bandwidth_type.

Parameters:
  • name (String) – Name of the service. Service names are 1-64 characters A-Z, a-z, 0-9, -, . and _. Ensure this value has at most 64 characters.
  • amount (Integer) – Amount of bandwidth to be added in GB. Acceptable values are: 50, 100, 250, 500
  • dry_run (Boolean) – If True, then the service is not provisioned but the information is still returned.
create.hourly_miniserver()

Warning

Our hourly Miniserver VM products are now deprecated and will be removed in a future API release. For cloud compute instances billed by the hour, please view our new Openstack Public Cloud product: https://www.memset.com/hosting-services/cloud/openstack/

Note that the os, firewall, intrusion_detection and disk_type options affect the price per hour.

Parameters:
  • connection (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    For unmetered bandwidth_type only. Acceptable values are a combination of burst speed and contention ratio e.g. 5mbps_10to1 means 5Mbps burst with contention of 10:1. Dedicated line speed therefore is burst divided by contention, e.g. the dedicated line speed for a line with a connection value of 5mbps_10to1 is 5 / 10 = 0.5Mbps.

    sku connection options
       
  • monthly_transfer_gb (Integer, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    For metered bandwidth_type only. Acceptable values

    sku monthly_transfer_gb options
       
  • bandwidth_type (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Bandwidth type for your connection. Acceptable values

    ‘metered’
    Charged per Gb of data transferred.
    ‘unmetered’
    The server has part or all of a dedicated connection; no extra charges
  • backups (Integer, Optional) –
  • lvs (Integer, Optional, Deprecated and ignored: This parameter is deprecated and will be unsupported in future API releases.) – Load-balancing and auto-failover
  • intrusion_detection (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Intrusion Detection Acceptable values

    ‘none’
    No intrusion detection
    ‘basic’
    Intrusion Detection Self-monitored
  • monitoring_level (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Server Monitoring. Acceptable values

    ‘basic’
    Server Monitoring Basic
    ‘advanced’
    Server Monitoring Advanced Self-monitored
  • vulnscan (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Vulnerability Management - Powered by F-Secure Radar Acceptable values

    ‘none’
    No scanning
    ‘basic’
    Self-monitored
  • database (String, Optional) –

    Microsoft SQL server. Available only for Windows servers.

    Acceptable values:

  • antivirus (String, Optional) –

    Antivirus software. Windows servers only. Acceptable values

    ‘none’
    None
    ‘sophos_antivirus’
    Sophos Anti-virus
  • firewall (String, Optional) –

    The type of firewall you require. For more information see Memset’s Firewalling page. ‘managed’ only available with support_level=managed. Acceptable values

    ‘none’
    No firewalling
    ‘basic’
    Basic
    ‘self_managed’
    Self-managed
    ‘managed’
    Memset-managed
  • firewall_rule_group (String, Optional) – The name of an existing account firewall rule group to apply. (For the following firewall types only: ‘managed’, ‘self_managed’)
  • sku (String) –

    The SKU of the service you wish to provision. Acceptable values are

    sku description
       

    See also: create.available() method to get a list with descriptions of available services.

  • dry_run (Boolean) – If True, then the service is not provisioned but the information is still returned.
  • discount_code (String, Optional) – Discount code to be applied.
  • add_to_next_bill (Boolean, Optional) – If True, any charges will be added to the next consolidated bill if possible. If False, an invoice will be generated using the account’s default payment method. Defaults to True for accounts with consolidated billing enabled, otherwise False. It is only possible to set add_to_next_bill=True for accounts with consolidated billing enabled.
  • os (String) –

    The Operating System. Acceptable values include a Memstore snapshot name or one of the operating systems below. Please note the snapshot name needs to be the os_option value obtained from the server.snapshot_list() method.

    os os_bits description min ram max ram
    centos6_64 64 CentOS 6 64-bit n/a n/a
    win2012serverstd_r2_64 64 Windows Server 2012 Standard R2 64-bit 2GB n/a
    ubuntu_trusty_64 64 Ubuntu 14.04 LTS (Trusty Tahr) 64-bit n/a n/a
    centos7_64 64 CentOS 7 64-bit n/a n/a
    ubuntu_trusty_docker_64 64 Ubuntu 14.04 LTS (Trusty Tahr, Docker pre-installed) 64-bit n/a n/a
    centos7_cpanel_64 64 CentOS 7 cPanel 64-bit 2GB n/a
    win2016serverstd_64 64 Windows Server 2016 Standard 64-bit 2GB n/a
    ubuntu_xenial_docker_64 64 Ubuntu 16.04 LTS (Xenial Xerus, Docker pre-installed) 64-bit n/a n/a
    debian_stretch_64 64 Debian 9 (Stretch) 64-bit n/a n/a
    ubuntu_bionic_64 64 Ubuntu 18.04 LTS (Bionic Beaver) 64-bit n/a n/a
    ubuntu_bionic_docker_64 64 Ubuntu 18.04 LTS (Bionic Beaver, Docker pre-installed) 64-bit n/a n/a
    win2019serverstd_64 64 Windows Server 2019 Standard 2GB n/a
    debian_buster_64 64 Debian 10 (Buster) 64-bit n/a n/a

    See also: Operating systems for further information.

  • os_bits (String, Optional, Deprecated and ignored: This parameter is deprecated and will be unsupported in future API releases.) – Whether to use a 32 or 64-bit system. Note that some operating systems may not be available in both versions. Deprecated for newly provisioned servers - operating systems of all newly provisioned servers are 64 bit. Acceptable values: ‘32’, ‘64’.
  • support_level (String, Optional) –

    The level of technical support. Default value is “standard” unless the sku is a Standard Cloud VPS sku, in which case the default and only available value is “infrastructure_only”. See our support matrix for further information. Acceptable values

    ‘standard’
    Standard Support
    ‘premium’
    Premium Support
    ‘premium’
    Premium Plus Support
    ‘managed_infrastructure’
    Standard Support
    ‘managed_platform’
    Premium Support
    ‘infrastructure_only’
    For use with Standard VPS and deprecated classic Miniserver VMs.
    ‘basic’
    Deprecated support level for use with our classic Miniserver VMs.
    ‘managed’
    Deprecated Support level for use with our classic Miniserver VMs.
  • vlan (String, Optional) – The name of a vLAN product to put the server in when it is created.
  • network_zone (String, Optional) –

    The Network Zone to deploy your Miniserver VM in. The default network zone is ‘dunsfold’. Acceptable values are

    network_zone location
    reading Maidenhead, Berkshire, UK
    dunsfold Dunsfold, Surrey, UK
  • data_zone (String, Optional) – The Data Zone in which to deploy your Miniserver VM. For regular accounts, defaults to ‘Memset Public Cloud’. For community cloud accounts, defaults to that account’s community cloud.
  • period (Integer, Optional) – The rental period in months. Valid rental period values are: 1, 3, 6, 12. The default period is 1.
  • pub_ssh_key (String, Optional) – Public SSH key to be installed in the server (root user). Only available for Linux servers.
  • disk_type (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    The disk type required. Acceptable values

    ‘hdd’
    Standard rotating magnetic media
    ‘ssd’
    High performance Solid State Disk
create.memstore()

Provisions a Memstore instance.

See the Memstore cloud storage page for pricing and more information.

Parameters:
  • sku (String) –

    The SKU of the service you wish to provision. Acceptable values are

    sku description
       

    See also: create.available() method to get a list with descriptions of available services.

  • dry_run (Boolean) – If True, then the service is not provisioned but the information is still returned.
  • discount_code (String, Optional) – Discount code to be applied.
  • add_to_next_bill (Boolean, Optional) – If True, any charges will be added to the next consolidated bill if possible. If False, an invoice will be generated using the account’s default payment method. Defaults to True for accounts with consolidated billing enabled, otherwise False. It is only possible to set add_to_next_bill=True for accounts with consolidated billing enabled.
  • network_zone (String, Optional) –

    The Network Zone to deploy your Memstore. The default network zone is ‘reading’. Acceptable values are

    network_zone location
    reading Maidenhead, Berkshire, UK
    dunsfold Dunsfold, Surrey, UK
  • data_zone (String, Optional) – The Data Zone to deploy your Memstore. The default data zone depends on whether the account belongs to a community cloud or not. For regular accounts, defaults to ‘Memset Public Cloud’
create.monthly_fullserver()

Provisions a full server for a period of months.

See the Fully Dedicated Server packages page for pricing and more information.

Note that the following optional extras will affect the monthly price: os, firewall, disk, ram, net_card_speed_gbps, bandwidth_type, connection, monthly_transfer_gb, period support_level, monitoring_level, backups, vulnscan, database and antivirus.

Parameters:
  • bandwidth_type (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Bandwidth type for your connection. Acceptable values

    ‘metered’
    Charged per Gb of data transferred.
    ‘unmetered’
    The server has part or all of a dedicated connection; no extra charges
  • backups (Integer, Optional) –

    Managed daily backups. Capacity required in Gb. Not available for Standard VPS (i.e. skus beginning with VPS0)

    Acceptable values for Linux operating systems:

    Acceptable values for Windows operating systems:

  • lvs (Integer, Optional, Deprecated and ignored: This parameter is deprecated and will be unsupported in future API releases.) – Load-balancing and auto-failover
  • intrusion_detection (String, Optional) –

    Intrusion Detection. “monitored” and “protected” only available with support_level=managed. Acceptable values

    ‘none’
    No intrusion detection
    ‘basic’
    Intrusion Detection Self-monitored
    ‘monitored’
    Intrusion Detection Memset-monitored
    ‘protected’
    Intrusion Detection Memset-protected
  • monitoring_level (String, Optional) –

    Server Monitoring. “managed” only available with support_level=managed. Acceptable values

    ‘basic’
    Server Monitoring Basic
    ‘advanced’
    Server Monitoring Advanced Self-monitored
    ‘managed’
    Server Monitoring Advanced Memset-monitored
  • vulnscan (String, Optional) –

    Vulnerability Management - Powered by F-Secure Radar. If you have not already done so for your account, you will be emailed with instructions on how to activate this service. “managed” only available with support_level=managed. Acceptable values

    ‘none’
    No vulnerability management
    ‘basic’
    Self-monitored
    ‘managed’
    Memset-monitored
  • database (String, Optional) –

    Microsoft SQL server. Available only for Windows servers.

    Acceptable values:

  • antivirus (String, Optional) –

    Antivirus software. Windows servers only. Acceptable values

    ‘none’
    None
    ‘sophos_antivirus’
    Sophos Anti-virus
  • firewall (String, Optional) –

    The type of firewall you require. For more information see Memset’s Firewalling page. ‘managed’ only available with support_level=managed. Acceptable values

    ‘none’
    No firewalling
    ‘basic’
    Basic
    ‘self_managed’
    Self-managed
    ‘managed’
    Memset-managed
  • firewall_rule_group (String, Optional) – The name of an existing account firewall rule group to apply. (For the following firewall types only: ‘managed’, ‘self_managed’)
  • sku (String) –

    The SKU of the service you wish to provision. Acceptable values are

    sku description
       

    See also: create.available() method to get a list with descriptions of available services.

  • dry_run (Boolean) – If True, then the service is not provisioned but the information is still returned.
  • discount_code (String, Optional) – Discount code to be applied.
  • add_to_next_bill (Boolean, Optional) – If True, any charges will be added to the next consolidated bill if possible. If False, an invoice will be generated using the account’s default payment method. Defaults to True for accounts with consolidated billing enabled, otherwise False. It is only possible to set add_to_next_bill=True for accounts with consolidated billing enabled.
  • os (String) –

    The Operating System. Acceptable values include a Memstore snapshot name or one of the operating systems below. Please note the snapshot name needs to be the os_option value obtained from the server.snapshot_list() method.

    os os_bits description min ram max ram
    centos6_64 64 CentOS 6 64-bit n/a n/a
    win2012serverstd_r2_64 64 Windows Server 2012 Standard R2 64-bit 2GB n/a
    ubuntu_trusty_64 64 Ubuntu 14.04 LTS (Trusty Tahr) 64-bit n/a n/a
    centos7_64 64 CentOS 7 64-bit n/a n/a
    win2012serverdc_r2_64 64 Windows Server 2012 Datacenter R2 64-bit 2GB n/a
    centos7_cpanel_64 64 CentOS 7 cPanel 64-bit 2GB n/a
    win2016serverstd_64 64 Windows Server 2016 Standard 64-bit 2GB n/a
    win2016serverdc_64 64 Windows Server 2016 Datacenter 64-bit 2GB n/a
    debian_stretch_64 64 Debian 9 (Stretch) 64-bit n/a n/a
    ubuntu_bionic_64 64 Ubuntu 18.04 LTS (Bionic Beaver) 64-bit n/a n/a
    win2019serverstd_64 64 Windows Server 2019 Standard 2GB n/a
    debian_buster_64 64 Debian 10 (Buster) 64-bit n/a n/a

    See also: Operating systems for further information.

  • os_bits (String, Optional, Deprecated and ignored: This parameter is deprecated and will be unsupported in future API releases.) – Whether to use a 32 or 64-bit system. Note that some operating systems may not be available in both versions. Deprecated for newly provisioned servers - operating systems of all newly provisioned servers are 64 bit. Acceptable values: ‘32’, ‘64’.
  • support_level (String, Optional) –

    The level of technical support. Default value is “standard” unless the sku is a Standard Cloud VPS sku, in which case the default and only available value is “infrastructure_only”. See our support matrix for further information. Acceptable values

    ‘standard’
    Standard Support
    ‘premium’
    Premium Support
    ‘premium’
    Premium Plus Support
    ‘managed_infrastructure’
    Standard Support
    ‘managed_platform’
    Premium Support
    ‘infrastructure_only’
    For use with Standard VPS and deprecated classic Miniserver VMs.
    ‘basic’
    Deprecated support level for use with our classic Miniserver VMs.
    ‘managed’
    Deprecated Support level for use with our classic Miniserver VMs.
  • vlan (String, Optional) – The name of a vLAN product to put the server in when it is created.
  • network_zone (String, Optional) –

    The Network Zone to deploy your server. The default network zone is ‘dunsfold’. Acceptable values are

    network_zone location
    reading Maidenhead, Berkshire, UK
    dunsfold Dunsfold, Surrey, UK
  • data_zone (String, Optional) – The Data Zone to deploy your server. The default data zone depends on whether the account belongs to a community cloud or not. For regular accounts, defaults to ‘Memset Public Cloud’
  • period (Integer, Optional) – The rental period in months. Valid rental period values are: 1, 3, 6, 12. The default period is 1.
  • pub_ssh_key (String, Optional) – Public SSH key to be installed in the server (root user). Only available for Linux servers.
  • disk (String, Optional) –

    RAID disk size.

    Valid options

    sku disk options
       
  • ram (String, Optional) –

    The amount of RAM for your server.

    sku ram options
       
  • nvme (String, Optional) –

    NVMe SSDs (PCIE based flash storage). Only available on some product specs

    Valid options

    sku nvme options
       
  • net_card_speed_gbps (String, Optional) – The network card speed for the server (Gbps). Acceptable values are 1 or 10. 10Gbps networking is only available for the following skus:
  • partitioning (String, Optional) –

    Disk partitioning scheme. Acceptable values depend on the sku, os and disk options. For 4-disk chassis types (SKU UFS20 and UFS21), the value all_root is only valid for Linux operating systems. For other chassis types, the value all_root is only valid when the disk array is less than or equal to 2 TB. Acceptable values:

    all_root
    For Linux operating systems: Single large root partition. For Windows operating systems: Single large drive C:
    data_home
    For Linux operating systems, 20 GB root partition and the remainder in /home. For Windows operating systems: 50 GB drive C: and the remainder in drive D:
    two_volumes
    Two volumes, C: and D:. Only applicable to 4-disk dedicated servers with Windows operating systems.
    custom
    Custom partitioning. If you select this option, you must include your requirements using the setup_requirements parameter.
  • setup_instructions (String, Optional) – Special setup instructions, for example custom partitioning requirements.
create.monthly_miniserver()

Provisions a Miniserver VM instance for a period of months.

See the Miniserver VM packages page for pricing and more information.

Warning

Please note that the following parameters are deprecated and only supported for our classic Miniservers (e.g. skus beginning with MS0):

disk_type, disk_gb, bandwidth_type, connection, monthly_transfer_gb

The following optional extras will affect the monthly price: os, firewall, disk_type, disk_gb, bandwidth_type, connection, monthly_transfer_gb, period, support_level, monitoring_level, backups, vulnscan, database, antivirus and intrusion_detection

Parameters:
  • connection (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    For unmetered bandwidth_type only. Acceptable values are a combination of burst speed and contention ratio e.g. 5mbps_10to1 means 5Mbps burst with contention of 10:1. Dedicated line speed therefore is burst divided by contention, e.g. the dedicated line speed for a line with a connection value of 5mbps_10to1 is 5 / 10 = 0.5Mbps.

    sku connection options
       
  • monthly_transfer_gb (Integer, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    For metered bandwidth_type only. Acceptable values

    sku monthly_transfer_gb options
       
  • bandwidth_type (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Bandwidth type for your connection. Acceptable values

    ‘metered’
    Charged per Gb of data transferred.
    ‘unmetered’
    The server has part or all of a dedicated connection; no extra charges
  • backups (Integer, Optional) –

    Managed daily backups. Capacity required in Gb. Not available for Standard VPS (i.e. skus beginning with VPS0)

    Acceptable values for Linux operating systems:

    Acceptable values for Windows operating systems:

  • lvs (Integer, Optional, Deprecated and ignored: This parameter is deprecated and will be unsupported in future API releases.) – Load-balancing and auto-failover
  • intrusion_detection (String, Optional) –

    Intrusion Detection. “monitored” and “protected” only available with support_level=managed. Acceptable values

    ‘none’
    No intrusion detection
    ‘basic’
    Intrusion Detection Self-monitored
    ‘monitored’
    Intrusion Detection Memset-monitored
    ‘protected’
    Intrusion Detection Memset-protected
  • monitoring_level (String, Optional) –

    Server Monitoring. “managed” only available with support_level=managed. Acceptable values

    ‘basic’
    Server Monitoring Basic
    ‘advanced’
    Server Monitoring Advanced Self-monitored
    ‘managed’
    Server Monitoring Advanced Memset-monitored
  • vulnscan (String, Optional) –

    Vulnerability Management - Powered by F-Secure Radar. If you have not already done so for your account, you will be emailed with instructions on how to activate this service. “managed” only available with support_level=managed. Acceptable values

    ‘none’
    No vulnerability management
    ‘basic’
    Self-monitored
    ‘managed’
    Memset-monitored
  • database (String, Optional) –

    Microsoft SQL server. Available only for Windows servers.

    Acceptable values:

  • antivirus (String, Optional) –

    Antivirus software. Windows servers only. Acceptable values

    ‘none’
    None
    ‘sophos_antivirus’
    Sophos Anti-virus
  • firewall (String, Optional) –

    The type of firewall you require. For more information see Memset’s Firewalling page. ‘managed’ only available with support_level=managed. Acceptable values

    ‘none’
    No firewalling
    ‘basic’
    Basic
    ‘self_managed’
    Self-managed
    ‘managed’
    Memset-managed
  • firewall_rule_group (String, Optional) – The name of an existing account firewall rule group to apply. (For the following firewall types only: ‘managed’, ‘self_managed’)
  • sku (String) –

    Premium Cloud VPS skus

    sku description
       

    Standard Cloud VPS skus

    sku description
       

    Classic Miniserver skus

    sku description
       

    Please note that our classic Miniserver skus are deprecated and will be unsupported in future API releases. See also: create.available() method to get a list with descriptions of available services.

  • dry_run (Boolean) – If True, then the service is not provisioned but the information is still returned.
  • discount_code (String, Optional) – Discount code to be applied.
  • add_to_next_bill (Boolean, Optional) – If True, any charges will be added to the next consolidated bill if possible. If False, an invoice will be generated using the account’s default payment method. Defaults to True for accounts with consolidated billing enabled, otherwise False. It is only possible to set add_to_next_bill=True for accounts with consolidated billing enabled.
  • os (String) –

    The Operating System. Acceptable values include a Memstore snapshot name or one of the operating systems below. Please note the snapshot name needs to be the os_option value obtained from the server.snapshot_list() method.

    os os_bits description min ram max ram
    centos6_64 64 CentOS 6 64-bit n/a n/a
    win2012serverstd_r2_64 64 Windows Server 2012 Standard R2 64-bit 2GB n/a
    ubuntu_trusty_64 64 Ubuntu 14.04 LTS (Trusty Tahr) 64-bit n/a n/a
    centos7_64 64 CentOS 7 64-bit n/a n/a
    ubuntu_trusty_docker_64 64 Ubuntu 14.04 LTS (Trusty Tahr, Docker pre-installed) 64-bit n/a n/a
    centos7_cpanel_64 64 CentOS 7 cPanel 64-bit 2GB n/a
    win2016serverstd_64 64 Windows Server 2016 Standard 64-bit 2GB n/a
    ubuntu_xenial_docker_64 64 Ubuntu 16.04 LTS (Xenial Xerus, Docker pre-installed) 64-bit n/a n/a
    debian_stretch_64 64 Debian 9 (Stretch) 64-bit n/a n/a
    ubuntu_bionic_64 64 Ubuntu 18.04 LTS (Bionic Beaver) 64-bit n/a n/a
    ubuntu_bionic_docker_64 64 Ubuntu 18.04 LTS (Bionic Beaver, Docker pre-installed) 64-bit n/a n/a
    win2019serverstd_64 64 Windows Server 2019 Standard 2GB n/a
    debian_buster_64 64 Debian 10 (Buster) 64-bit n/a n/a

    See also: Operating systems for further information.

  • os_bits (String, Optional, Deprecated and ignored: This parameter is deprecated and will be unsupported in future API releases.) – Whether to use a 32 or 64-bit system. Note that some operating systems may not be available in both versions. Deprecated for newly provisioned servers - operating systems of all newly provisioned servers are 64 bit. Acceptable values: ‘32’, ‘64’.
  • support_level (String, Optional) –

    The level of technical support. Default value is “standard” unless the sku is a Standard Cloud VPS sku, in which case the default and only available value is “infrastructure_only”. See our support matrix for further information. Acceptable values

    ‘standard’
    Standard Support
    ‘premium’
    Premium Support
    ‘premium’
    Premium Plus Support
    ‘managed_infrastructure’
    Standard Support
    ‘managed_platform’
    Premium Support
    ‘infrastructure_only’
    For use with Standard VPS and deprecated classic Miniserver VMs.
    ‘basic’
    Deprecated support level for use with our classic Miniserver VMs.
    ‘managed’
    Deprecated Support level for use with our classic Miniserver VMs.
  • vlan (String, Optional) – The name of a vLAN product to put the server in when it is created.
  • network_zone (String, Optional) –

    The Network Zone to deploy your Miniserver VM. The default network zone is ‘dunsfold’. Acceptable values are

    network_zone location
    reading Maidenhead, Berkshire, UK
    dunsfold Dunsfold, Surrey, UK
  • data_zone (String, Optional) – The Data Zone to deploy your Miniserver VM. The default data zone depends on whether the account belongs to a community cloud or not. For regular accounts, defaults to ‘Memset Public Cloud’
  • period (Integer, Optional) – The rental period in months. Valid rental period values are: 1, 3, 6, 12. The default period is 1.
  • pub_ssh_key (String, Optional) – Public SSH key to be installed in the server (root user). Only available for Linux servers.
  • disk_type (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    For classic Miniservers only. All current Miniserver specifications have the ‘ssd’ disk_type. Acceptable values

    ‘hdd’
    Standard rotating magnetic media
    ‘ssd’
    High performance Solid State Disk
create.openstack_project()

Provisions a Cloud IaaS (powered by OpenStack) project.

See the Cloud IaaS page for pricing and more information.

Parameters:
  • sku (String) –

    The SKU of the service you wish to provision. Acceptable values are

    sku description
       

    See also: create.available() method to get a list with descriptions of available services.

  • dry_run (Boolean) – If True, then the service is not provisioned but the information is still returned.
  • discount_code (String, Optional) – Discount code to be applied.
  • add_to_next_bill (Boolean, Optional) – If True, any charges will be added to the next consolidated bill if possible. If False, an invoice will be generated using the account’s default payment method. Defaults to True for accounts with consolidated billing enabled, otherwise False. It is only possible to set add_to_next_bill=True for accounts with consolidated billing enabled.
create.verify_discount_code()

Returns information about a discount code.

Parameters:discount_code (String) – Discount code to verify.
Returns:if the discount code is valid, this method returns a dictionary with following keys:
sku
String: The code used to identify the service to apply the discount code.
description
String: Description of the discount code.
incompatible
List: parameter values that aren’t compatible with the discount (format “param:value”). It can be empty.
required
List: parameter values that are implicitly set when using this discount (format “param:value”). Any other value in parameters in this list will be ignored. It can be empty.

In order to see how a discount code affects a product price, use the appropriate create method providing the discount code and setting dry_run parameter to True.

Raises :ApiErrorDoesNotExist if the discount code doesn’t exist or is not valid for this account.

Table Of Contents

Previous topic

Cluster Service Methods

Next topic

DNS Methods

This Page