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, penetration_patrol 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
    MS0025 5mbps_10to1, 5mbps_5to1, 10mbps_7to1, 10mbps_4to1, 20mbps_4to1
    MS0050 5mbps_5to1, 10mbps_7to1, 10mbps_4to1, 20mbps_4to1, 30mbps_4to1
    MS0100 10mbps_7to1, 10mbps_4to1, 20mbps_4to1, 30mbps_4to1, 40mbps_4to1
    MS0200 10mbps_4to1, 20mbps_4to1, 30mbps_4to1, 40mbps_4to1, 50mbps_4to1
    MS0400 20mbps_4to1, 30mbps_4to1, 40mbps_4to1, 50mbps_4to1, 60mbps_4to1
    MS0800 40mbps_4to1, 50mbps_4to1, 60mbps_4to1, 80mbps_4to1, 100mbps_4to1
  • 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
    MS0025 50, 100, 150, 200, 250
    MS0050 100, 150, 200, 250, 300
    MS0100 150, 200, 250, 300, 350
    MS0200 250, 500, 750, 1000, 1250
    MS0400 500, 750, 1000, 1250, 1500
    MS0800 1000, 1500, 2000, 2500, 3000
  • 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
  • penetration_patrol (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    Penetration Patrol - server intrusion detection Acceptable values

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

    Port Parol monitoring. Acceptable values

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

    Perimeter Patrol - vulnerability assessment and scanning Acceptable values

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

    Microsoft SQL server. Available only for Windows servers.

    Acceptable values: mssql_web_2012, mssql_web_2014, mssql_web_2016, mssql_enterprise_2014, mssql_enterprise_2016, mssql_enterprise_2012, mssql_standard_2012, mssql_standard_2014, mssql_standard_2016

  • antivirus (String, Optional) –

    Antivirus software. Windows servers only. Acceptable values

    ‘none’
    None
    ‘sophos_antivirus’
    Sophos Anti-virus
  • firewall (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    The type of firewall you require. For more information see Memset’s Packet Patrol firewall 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, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) – 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
    MS0025H Miniserver VM1000 (Hourly)
    MS0050H Miniserver VM2000 (Hourly)
    MS0100H Miniserver VM4000 (Hourly)
    MS0200H Miniserver VM8000 (Hourly)
    MS0400H Miniserver VM16000 (Hourly)
    MS0800H Miniserver VM32000 (Hourly)

    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
    win2008serverstd_r2_64 64 Windows 2008 Server Standard R2 64-bit 2GB 32GB
    debian_wheezy_64 64 Debian 7 (Wheezy) 64-bit n/a n/a
    win2012serverstd_r2_64 64 Windows 2012 Server 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
    debian_jessie_64 64 Debian 8 (Jessie) 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
    ubuntu_xenial_64 64 Ubuntu 16.04 LTS (Xenial Xerus) 64-bit n/a n/a
    win2016serverstd_64 64 Windows 2016 Server 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

    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 “managed_infrastructure”. See our support matrix for further information. Acceptable values

    ‘managed_infrastructure’
    Managed Infrastructure SLA
    ‘managed_platform’
    Managed Platform SLA
    ‘infrastructure_only’
    Deprecated support level for use with our 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 Reading, 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
    CLOUDF100 Cloud Storage Fixed 100
    CLOUDF1000 Cloud Storage Fixed 1000
    CLOUDF200 Cloud Storage Fixed 200
    CLOUDF5 Cloud Storage Fixed 5
    CLOUDF50 Cloud Storage Fixed 50
    CLOUDF500 Cloud Storage Fixed 500
    CLOUDU1 Cloud Storage

    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 Reading, 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, 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.

    Acceptable values for Linux operating systems: 0, 10, 20, 50, 100, 200

    Acceptable values for Windows operating systems: 0, 50, 100, 200, 400

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

    Penetration Patrol - server intrusion detection. “monitored” and “protected” only available with support_level=managed. Acceptable values

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

    Port Parol monitoring. “managed” only available with support_level=managed. Acceptable values

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

    Perimeter Patrol - vulnerability assessment and scanning. “managed” only available with support_level=managed. Acceptable values

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

    Microsoft SQL server. Available only for Windows servers.

    Acceptable values: mssql_web_2012, mssql_web_2014, mssql_web_2016, mssql_enterprise_2014, mssql_enterprise_2016, mssql_enterprise_2012, mssql_standard_2012, mssql_standard_2014, mssql_standard_2016

  • antivirus (String, Optional) –

    Antivirus software. Windows servers only. Acceptable values

    ‘none’
    None
    ‘sophos_antivirus’
    Sophos Anti-virus
  • firewall (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    The type of firewall you require. For more information see Memset’s Packet Patrol firewall 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, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) – 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
    UFS26 Dedicated 2U Dell PE R730 2x Twelve-Core Xeon, 16xSATA
    UFS28 Dedicated 2U Dell PE R730 2x Sixteen-Core Xeon, 16xSATA
    UFS29 Dedicated 1U Dell PE R230 1x Quad-Core Xeon, 4xSATA
    UFS30 Dedicated 1U Dell PE R430 1x Oct-Core Xeon, 4xSATA
    UFS31 Dedicated 2U Dell PE R730xd 2x Oct-Core Xeon, 12xSATA

    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
    win2008serverstd_r2_64 64 Windows 2008 Server Standard R2 64-bit 2GB 32GB
    debian_wheezy_64 64 Debian 7 (Wheezy) 64-bit n/a n/a
    win2012serverstd_r2_64 64 Windows 2012 Server 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 2012 Server Datacenter R2 64-bit 2GB n/a
    debian_jessie_64 64 Debian 8 (Jessie) 64-bit n/a n/a
    centos7_cpanel_64 64 CentOS 7 cPanel 64-bit 2GB n/a
    ubuntu_xenial_64 64 Ubuntu 16.04 LTS (Xenial Xerus) 64-bit n/a n/a
    win2016serverstd_64 64 Windows 2016 Server Standard 64-bit 2GB n/a
    win2016serverdc_64 64 Windows 2016 Server Datacenter 64-bit 2GB n/a
    debian_stretch_64 64 Debian 9 (Stretch) 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 “managed_infrastructure”. See our support matrix for further information. Acceptable values

    ‘managed_infrastructure’
    Managed Infrastructure SLA
    ‘managed_platform’
    Managed Platform SLA
    ‘infrastructure_only’
    Deprecated support level for use with our 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 Reading, 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
    UFS26 8x240gb_ssd, 16x240gb_ssd, 16x480gb_ssd, 16x960gb_ssd
    UFS28 16x240gb_ssd, 16x480gb_ssd, 16x960gb_ssd, 16x2000gb_ssd
    UFS29 2x1000gb, 4x1000gb, 4x2000gb, 4x3000gb, 4x4000gb, 4x250gb_ssd, 4x500gb_ssd, 4x1000gb_ssd
    UFS30 4x1000gb, 4x2000gb, 4x3000gb, 4x4000gb, 4x6000gb, 4x250gb_ssd, 4x500gb_ssd, 4x1000gb_ssd, 4x2000gb_ssd
    UFS31 12x1000gb, 12x2000gb, 12x3000gb, 12x4000gb, 12x6000gb, 12x8000gb, 12x240gb_ssd, 12x480gb_ssd, 12x960gb_ssd
  • ram (String, Optional) –

    The amount of RAM for your server.

    sku ram options
    UFS26 64gb, 96gb, 128gb, 256gb, 384gb, 768gb
    UFS28 96gb, 128gb, 256gb, 384gb, 768gb
    UFS29 16gb, 32gb, 64gb
    UFS30 48gb, 64gb, 128gb, 256gb
    UFS31 32gb, 64gb, 96gb, 128gb, 256gb, 384gb
  • 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):

firewall, firewall_rule_group, disk_type, disk_gb, bandwidth_type, connection, monthly_transfer_gb, penetration_patrol, vulnscan

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 penetration_patrol

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
    MS0025 5mbps_10to1, 5mbps_5to1, 10mbps_7to1, 10mbps_4to1, 20mbps_4to1
    MS0050 5mbps_5to1, 10mbps_7to1, 10mbps_4to1, 20mbps_4to1, 30mbps_4to1
    MS0100 10mbps_7to1, 10mbps_4to1, 20mbps_4to1, 30mbps_4to1, 40mbps_4to1
    MS0200 10mbps_4to1, 20mbps_4to1, 30mbps_4to1, 40mbps_4to1, 50mbps_4to1
    MS0400 20mbps_4to1, 30mbps_4to1, 40mbps_4to1, 50mbps_4to1, 60mbps_4to1
    MS0800 40mbps_4to1, 50mbps_4to1, 60mbps_4to1, 80mbps_4to1, 100mbps_4to1
  • 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
    MS0025 50, 100, 150, 200, 250
    MS0050 100, 150, 200, 250, 300
    MS0100 150, 200, 250, 300, 350
    MS0200 250, 500, 750, 1000, 1250
    MS0400 500, 750, 1000, 1250, 1500
    MS0800 1000, 1500, 2000, 2500, 3000
  • 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.

    Acceptable values for Linux operating systems: 0, 10, 20, 50, 100, 200

    Acceptable values for Windows operating systems: 0, 50, 100, 200, 400

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

    Penetration Patrol - server intrusion detection. “monitored” and “protected” only available with support_level=managed. Acceptable values

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

    Port Parol monitoring. “managed” only available with support_level=managed. Acceptable values

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

    Perimeter Patrol - vulnerability assessment and scanning. “managed” only available with support_level=managed. Acceptable values

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

    Microsoft SQL server. Available only for Windows servers.

    Acceptable values: mssql_web_2012, mssql_web_2014, mssql_web_2016, mssql_enterprise_2014, mssql_enterprise_2016, mssql_enterprise_2012, mssql_standard_2012, mssql_standard_2014, mssql_standard_2016

  • antivirus (String, Optional) –

    Antivirus software. Windows servers only. Acceptable values

    ‘none’
    None
    ‘sophos_antivirus’
    Sophos Anti-virus
  • firewall (String, Optional, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) –

    The type of firewall you require. For more information see Memset’s Packet Patrol firewall 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, Deprecated: This parameter is deprecated and will be unsupported in future API releases.) – The name of an existing account firewall rule group to apply. (For the following firewall types only: ‘managed’, ‘self_managed’)
  • sku (String) –
    sku description
    MSVM001 Cloud VPS MSVM001
    MSVM002 Cloud VPS MSVM002
    MSVM004 Cloud VPS MSVM004
    MSVM008 Cloud VPS MSVM008
    MSVM016 Cloud VPS MSVM016
    MSVM032 Cloud VPS MSVM032
    MSVM064 Cloud VPS MSVM064

    Classic Miniserver skus

    sku description
    MS0025 Miniserver VM1000
    MS0050 Miniserver VM2000
    MS0100 Miniserver VM4000
    MS0200 Miniserver VM8000
    MS0400 Miniserver VM16000
    MS0800 Miniserver VM32000

    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
    win2008serverstd_r2_64 64 Windows 2008 Server Standard R2 64-bit 2GB 32GB
    debian_wheezy_64 64 Debian 7 (Wheezy) 64-bit n/a n/a
    win2012serverstd_r2_64 64 Windows 2012 Server 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
    debian_jessie_64 64 Debian 8 (Jessie) 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
    ubuntu_xenial_64 64 Ubuntu 16.04 LTS (Xenial Xerus) 64-bit n/a n/a
    win2016serverstd_64 64 Windows 2016 Server 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

    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 “managed_infrastructure”. See our support matrix for further information. Acceptable values

    ‘managed_infrastructure’
    Managed Infrastructure SLA
    ‘managed_platform’
    Managed Platform SLA
    ‘infrastructure_only’
    Deprecated support level for use with our 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 Reading, 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