API RU VDS


Getting started
 
Users
 
Servers
API functions
Before you send any request, it is necessary to obtain authentication SessionToken. It can be valid indefinitely or for 24 hrs.
Develop your applications so that no customer can obtain your SessionToken. It should be known only to the server part of your application and never to the customer one.
SessionToken is valid until its expiration time provided that neither username or password is modified. Otherwise all previous SessionTokens get deactivated.
URL: https://ruvds.com/api/logon/
Query Parameters:
key – personal API key (specified in account settings)
username – your login or email
password – your account password
endless – enter 1 to get an indefinite token or 0 to get a 24 hrs token
Request Example:
https://ruvds.com/api/logon/?key=KEY&username=LOGIN&password=PASSWORD&endless=0
Response Example:
{
"rejectReason": 0,
"sessionToken": "af85eb943daeb116eb351ec4b9b45983facfa97e37776c3a03538194245dc853",
"expire": "19032016164537"
}
Response Fields:
rejectReason – numeric value (error code)
errMessage – error description, if occured
sessionToken – your authentication token
expire – token expiration UTC date and time (ddMMyyyyHHmmss format). If NULL , the token is indefinite
Error Codes:
0 – request successfully completed
1 – login/email not provided
2 – password not provided
3 – incorrect login+password combination
5 – internal system error
6 – API key not provided
7 – incorrect API key
8 – you’ve exceeded the number of authentication attempts
13 – client's account prohibits authentication with third-party API keys

The function allows you to get available balance information and details about amounts added and paid on the website.
URL: https://ruvds.com/api/balance/
Query Parameters:
sessionToken – token received after authentication
details – enter 1 for information about amounts added and paid or 0 to see your current balance
Request Example:
https://ruvds.com/api/balance/?sessionToken=YOURTOKEN&details=0
Response Example:
{
"rejectReason": 0,
"amount": 50,
"currency": 1,
"details":
{
"income": 350,
"debited": 300,
"items":
[
{
"type": 2,
"dt": "12012016133846",
"amount": 300,
"currency": 1,
"description": "Pay for server RU36118 (from 07.02.2016 to 07.03.2016)",
},
{
"type": 1,
"dt": "12022016164537",
"amount": 350,
"currency": 1,
"description": "Pay by Visa/MasterCard card",
}
]
}
}
Response Fields:
rejectReason – numeric value (error code)
errMessage – error description, if occured
amount – available balance
currency – balance currency (1 - RUB, 2 - UAH, 3 - USD, 4 - EUR)
details – detailed information, if requested:
income – total amount added
debited – total amount paid
items – amount added/paid information:
type – 1 amount added, 2 amount paid
dt – operation date and time (UTC, ddMMyyyyHHmmss format)
amount – total
currency – operation currency
description – text description
Error Codes:
0 – request successfully completed
1 – invalid authentication token
2 – authentication token not specified
100 – internal system error

This request returns a list of data centers and information about currently available services, tariffs, and tariffs combinations for each of them.
Creating servers with test period via API is not available right now.
URL: https://ruvds.com/api/datacenter/
Query Parameters:
sessionToken – token received after authentication
language – language identifier for localizing datacenter name (1 - Russian, 5 - English, 6 - German), if empty or not specified default language for uset that make request will be selected.
Request Example:
https://ruvds.com/api/datacenter/?sessionToken=YOURTOKEN&language=
Response Example:
{
  "rejectReason": 0,
  "datacenters": [
    {
      "id": 1,
      "name": "Rucloud: Россия, Королёв",
      "tariffs": {
        "14": {
          "id": 14,
          "drives": {
            "1": {
              "usage": [1, 2],
              "trial": 2
            },
            "3": {
              "usage": [1, 2],
              "trial": 2
            }
          },
          "vram": false,
          "ddos": {
            "price": 400
          }
        },
        "15": {
          "id": 15,
          "drives": {
            "1": {
              "usage": [1, 2],
              "trial": 2
            },
            "3": {
              "usage": [1, 2],
              "trial": 2
            }
          },
          "vram": false,
          "ddos": {
            "price": 400
          }
        },
        "21": {
          "id": 21,
          "drives": {
            "1": {
              "usage": [1],
              "trial": 2
            },
            "4": {
              "usage": [1],
              "trial": 2
            }
          },
          "vram": false,
          "ddos": {
            "price": 400
          }
        }
      },
      "driveTariffCombinations": [
        [1], [1, 3], [3], [4, 1]
      ],
      "trial": {
        "price": 2000,
        "cpu": 4,
        "ip": 2
      }
    }
  ]
}
Response Fields:
rejectReason – numeric value (error code)
errMessage – error description, if occured
datacenters – List of datacenters
id – datacenter ID
name – datacenter name
tariffs – tariffs available for creation in current data center
drives – drive tariffs available for creation with current tariff
usage – payment type (1 - payment for selected period, 2 - payment for resources) that available for current tariff and drive tariff combination
trial – Files.API.FldDatacentersTrial
vram – Files.API.FldDatacentersVRAM
ddos – field contains an object with DDoS parameters for this tariff, if protection is available, which contains a price (RUB) field - price in rubles at 0.5 Gbit/s, if DDoS protection is not available, the field is null
driveTariffCombinations – a list of drive tariff combinations that can be used to create a server (for example, [[1], [1, 3]] - you can create a server with several drives of type 1 or with several drives of type 1 or 3, but you cannot create a server with type 3 drives only)
trial – an object containing test period parameters
Error Codes:
0 – request successfully completed
1 – invalid authentication token
2 – authentication token not specified
100 – internal system error

The function returns the parameters of the tariff plans for the configuration of virtual servers and virtual disks.
By default, the function returns a list of current price plans only, but should you require an outdated price plan, you can also request it by ID.
URL: https://ruvds.com/api/tariff/
Query Parameters:
sessionToken – token received after authentication
tariffIds – required price plans IDs, separated by commas
driveTariffIds – required price plans IDs, separated by commas
Request Example:
https://ruvds.com/api/tariff/?sessionToken=YOURTOKEN&tariffIds=&driveTariffIds=
Response Example:
{
  "rejectReason": 0,
  "tariffs": {
    "Defaults": {
      "PerMonth": {
        "Config": "Regular",
        "Drive": "HDD"
      }
    },
    "PerMonth": {
      "Config": {
        "Regular": {
          "Name": "Regular",
          "CPU": 79,
          "RAM": 177,
          "VRAM": 1.953125,
          "IP": 100,
          "Id": 14,
          "IsActive": true
        },
        "Premium": {
          "Name": "Premium",
          "CPU": 198,
          "RAM": 177,
          "VRAM": 1.953125,
          "IP": 100,
          "Id": 15,
          "IsActive": true
        },
        "HugeServer": {
          "Name": "HugeServer",
          "CPU": 79,
          "RAM": 177,
          "VRAM": 1.953125,
          "IP": 100,
          "Id": 21,
          "IsActive": true
        }
      },
      "Drive": {
        "HDD": {
          "Id": 1,
          "Name": "HDD",
          "Type": 1,
          "Price": 5.5,
          "IsActive": true
        },
        "SSD": {
          "Id": 3,
          "Name": "SSD",
          "Type": 3,
          "Price": 15,
          "IsActive": true
        },
        "Huge HDD": {
          "Id": 4,
          "Name": "Huge HDD",
          "Type": 1,
          "Price": 0.48828125,
          "IsActive": true
        }
      },
      "ById": {
        "Config": null,
        "Drive": null
      }
    }
  }
}
Response Fields:
rejectReason – numeric value (error code)
errMessage – error description, if occured
tariffs – the object that contains information about currently actual tariff plans and tariff plans specified in the request
Defaults – the object containing names of the default tariff plans
PerMonth – the object contains information about tariff plans, which are used when payment for the selected period variant is choosed
Config – the object contains information about tariff plans (for virtual server parameters) currently active represented as "tariff plan name" -> "tariff plan parameters"
Id – identifier of tariff plan for virtual server parameters
Name – name of tariff plan for virtual server parameters
CPU – price of one CPU core (RUB)
RAM – 1 GB RAM price (RUB)
VRAM – 1 MB VRAM price (RUB)
IP – price 1 of extra IP address (RUB). 1 IP per server is free
IsActive – price plan active, yes/no
Drive – the object contains information about tariff plans (for virtual drive parameters) currently active represented as "tariff plan name" -> "tariff plan parameters"
Id – identifier of tariff plan for virtual drive parameters
Name – name of tariff plan for virtual drive parameters
Type – virtual disk type (1 - HDD, 3 - SSD)
Price – cost of 1 GB of virtual disk (RUB)
IsActive – price plan active, yes/no
ById – The object contains information about tariff plans that are used when choosing a payment service provider for a selected period, the identifiers of which the user specified in the tariffIds and driveTariffIds request parameters
Config – the object contains information about tariff plans (for virtual server parameters) the identifiers of which the user specified in the tariffIds request parameter represented as "identifier of tariff plan" -> "tariff plan parameters"
Drive – the object contains information about tariff plans (for virtual drive parameters) the identifiers of which the user specified in the driveTariffIds request parameter represented as "identifier of tariff plan" -> "tariff plan parameters"
Error Codes:
0 – request successfully completed
1 – invalid authentication token
2 – authentication token not specified
100 – internal system error

The function returns the list of an operating systems available for installation to virtual server.
URL: https://ruvds.com/api/os/
Query Parameters:
sessionToken – token received after authentication
Request Example:
https://ruvds.com/api/os/?sessionToken=YOURTOKEN
Response Example:
{
  "rejectReason": 0,
  "os": [
    {
      "Id": 15,
      "Name": "Windows Server 2019 (RUS)"
    },
    {
      "Id": 16,
      "Name": "Windows Server 2019 (ENG)"
    },
    {
      "Id": 13,
      "Name": "Windows Server 2016 (RUS)"
    },
    {
      "Id": 14,
      "Name": "Windows Server 2016 (ENG)"
    },
    {
      "Id": 1,
      "Name": "Windows Server 2012 R2 (RUS)"
    },
    {
      "Id": 2,
      "Name": "Windows Server 2012 R2 (ENG)"
    },
    {
      "Id": 5,
      "Name": "Windows Server 2003 R2 SP2 (RUS)"
    },
    {
      "Id": 6,
      "Name": "Windows Server 2003 R2 SP2 (ENG)"
    },
    {
      "Id": 17,
      "Name": "Debian 9.6 (ENG)"
    },
    {
      "Id": 8,
      "Name": "Debian 8.5 (ENG)"
    },
    {
      "Id": 19,
      "Name": "CentOS 7.6.1810 (ENG)"
    },
    {
      "Id": 10,
      "Name": "CentOS 7.2.1511 (ENG)"
    },
    {
      "Id": 18,
      "Name": "Ubuntu 18.04 LTS (ENG)"
    },
    {
      "Id": 12,
      "Name": "Ubuntu 16.04 LTS (ENG)"
    }
  ]
}
Response Fields:
rejectReason – numeric value (error code)
errMessage – error description, if occured
os – List of objects containing options available for installation of operating systems
Id – Operating system id
Name – Name of the operating system
Error Codes:
0 – request successfully completed
1 – invalid authentication token
2 – authentication token not specified
100 – internal system error

 
We use cookies (our own) to make our websites easier for you to use. By continuing to use our website, you consent to the use of cookies. Please see our Privacy Policy for more information on cookies and information on how you can change your browser's cookie settings.