Extra documentation

How to order a dedicated server

Dedicated servers can be ordered by first retrieving a list of predefined dedicated server configurations. Then you take one of the configurations, optionally adjust its items to better suit your needs and return all these details back to the API for validation. The validation process will check if your configuration contains no errors and will calculate the price and return any errors or the price. If there are no errors the whole configuration is returned as well. You can use that configuration data to finally place the order.
When the order is placed, you will receive the ID of the invoice that has been generated, as well as the newly generated password of the server. You must pay the invoice (if you are not a reseller) before the order will be processed. You will receive an email notification when the server is ready for you to use.

Tips

Nearly all aspects and details of the configurations, item groups and items are fairly self explanatory. But to help you on your way, we will provide a few tips:
Configurations are identified by their tag.
Item groups and items are identified by their unique code.

Groups and items have more properties though, which are there to make them comprehendable for humans. An item can also have specifications that inform you of requirements. For example, a CHASSIS will have specifications describing how many CPUs it can hold, and which types of CPU will fit. How many hard disks, how much memory it can hold, etc. You will need these to successfully make adjustments to the configurations.

Submitting a dedicated server configuration order

Before you submit a configuration to place an order, we recommend you validate it first using the "validateServerConfig" call. This returns whether the configuration with groups and items is valid and it returns pricing information. Upon a successful result, you could place the actual order using the "orderServer" call.

Configuration structure
The structure of the configuration you must submit is as follows (printed in JSON format):
		{
			"748293DC":                         		// The group code
			[
				{
					"itemCode": "IFE2F97E2",	// The item code
					"amount": 1			// The item quantity
				}
			],
			"F89E7244":
			[
				{
					"itemCode": "IA64CBE6A",
					"amount": 1
				}
			],
			"97374354":
			[
				{
					"itemCode": "I66645E4E",
					"amount": 1
				}
			],
			... etc ...
		}
		

Dedicated server configuration

When your server has been made available to you, you may want to configure it further.
You can give it a new name, assign rDNS and so forth. You can do this form the CP as well as the API.
Please see the dedicated server section for more information.

Dedicated server OS install

You can install an OS onto a dedicated server, via the API.
Most of the request parameters are described in the dedicated server documentation, but the parameters osPartitioning and osRaid need some clarification.

osPartitioning
For every drive in the server that you want partitioned, create an array with its partitioning, in the following format:
		{
			"osPartitioning": {
				"0": {
					"0": {
						"0": "/boot", 			// Mount point
						"1": "1024", 			// in MB
						"2": "ext3" 			// Filesystem
					},
					"1": {
						"0": "/",			// Mount point
						"1": "Remaining space",
						"2": "ext3"			// Filesystem
					},
					"2": {
						"0": "swap", 			// Mount point
						"1": "4096", 			// in MB
						"2": "swap"  			// Filesystem
					}
				}
			}
		}
		
It is not mandatory to specify a partitioning scheme for every drive except the first. You could omit the other drives and format them when the server can be accessed remotely.
If you want to put two drives into RAID mode, you must of course use the osRaid parameter, but you should also supply identical partitioning for each drive you want to include in the RAID mode. Or, if you want to use all drives in the same RAID, you only have to submit the partitioning for drive A (and submit the osRaid parameter).

osRaid
If you have specified that the server drives should be in a RAID format, you must submit the osRaid parameter as well.
You list the same partitions as in osPartitioning, indicating which RAID mode each partition must use.
		{
		    "osRaid": {
				"0": {
					"0": {
						"0": "/boot", 			// Mount point
						"1": "1" 			// SW raid type
					},
					"1": {
						"0": "/", 			// Mount point
						"1": "0" 			// SW raid type
 					}            
				},
				"1": {
 					"0": {
						"0": "/boot", 			// Mount point
						"1": "1" 			// SW raid type
 					},
 					"1": {
						"0": "/", 			// Mount point
						"1": "0" 			// SW raid type
 					}            
				}            
        }
		

Note that in this example the swap partition has been left out of the osRaid parameter, since we don't want swap in RAID mode. But you could.
Also note that software RAID is only supported on OS's that support it (properly). Red Hat based operating systems are the most prominent ones amongst that list.