Download OpenAPI specification:Download
To get your token, go to Elestio security tab, then click on Manage API Tokens > Create Token.
You will get a token similar to ggiKvqrHfpAhBofvjOtax4JI
You will need to call /api/auth/checkAPIToken to get a valid jwt.
You can then use this jwt to call all others API calls.
string User email address | |
token | string User token generated for Authentication |
{- "token": "gx45xxxXuZ5PZxs8dXXRhMpV0"
}
{- "status": "OK",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S"
}
jwt | string User jwt for Authentication |
templateID | string Template id of the service which user wants to create |
serverType | string Type of the service server. |
datacenter | string The datacenter from where the server will be hosted |
serverName | string Name of the server given by user |
appid | string Application id |
data | string |
support | string Level of the support plan choosen for the server |
projectId | string Project id for the selected service |
version | string Version of service software |
adminEmail | string Email address of service owner/admin |
deploymentServiceType | string Enum: "normal" "restore" "clone" The kind of operation you intend to carry out while deploying the VM. Normal refers to simply deploying a regular VM, restore to deploying a new VM from an old deleted VM (Only possible if you're deploying within 14 days of deletion and you don't choose to opt out of borg backup at that time), and clone to deploying a new copy of a running VM. |
serviceType | string Enum: "Service" "CICD" "LB" The type of VM you're deploying. Service refers to a regular VM, CICD refers to a CI/CD pipeline target, and LB refers to a load balancer. |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "templateID": "38",
- "serverType": "SMALL-1C-2G",
- "datacenter": "fsnl",
- "serverName": "ubuntu-3dfd",
- "appid": "Cloudxx",
- "data": "data",
- "support": "level1",
- "projectId": "17734567",
- "version": "1",
- "deploymentServiceType": "normal",
- "serviceType": "Service"
}
{- "action": {
- "id": 402419563,
- "command": "create_server",
- "status": "running",
- "progress": 0,
- "started": "2022-03-08T10:48:46.000Z",
- "finished": "1970-01-01T00:00:00.000Z",
- "resources": [
- {
- "id": 12345678,
- "type": "server"
}
]
}, - "providerServerID": 12345678
}
jwt | string User jwt token for Authentication |
appid | string Application id |
projectId | string Project id for selected service |
isActiveService | string If the service is running it will be true |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "appid": "Cloudxx",
- "projectId": "17734567",
- "isActiveService": "true"
}
[- {
- "id": 12345,
- "status": "running",
- "deploymentStatus": "Deployed",
- "appID": "Cloudxx",
- "selected_software_tag": "latest",
- "displayName": "ubuntu-xxxxx",
- "vmID": "12345678",
- "ipv4": "127.132.230.13",
- "cname": "ubuntu-xxxxx-xxxx.vm.appdrag.net",
- "projectID": "123",
- "template": 38,
- "datacenter": "fsn1",
- "globalIP": "127.17.71.1",
- "country": "Germany",
- "city": "Falkenstein",
- "templateName": "Ubuntu",
- "category": "Operating Systems",
- "token": "ghn45ht2-xxgr-gXxbYxID2",
- "imageType": "ubuntu-20.04",
- "serverType": "SMALL-1C-2G",
- "traffic_outgoing": 0,
- "traffic_ingoing": 0,
- "traffic_included": 21990232555520,
- "cores": 1,
- "ramGB": "2.00",
- "storageSizeGB": 20,
- "isProtected": 0,
- "creationDate": "2022-03-08T11:00:54.000Z",
- "lastUpdate": "2022-03-08T11:03:20.000Z",
- "backupsActivated": 1,
- "remoteBackupsActivated": 1,
- "isFirewallActivated": 0,
- "isAlertsActivated": 0,
- "isLocked": 0,
- "managedDBPort": "",
- "managedDBCLI": "",
- "pricePerHour": "0.014",
- "provider": "hetzner",
- "firewallPorts": "",
- "adminUser": "null",
- "app_AutoUpdate_Enabled": 1,
- "system_AutoUpdate_Enabled": 1,
- "rateLimiter": "150r/m",
- "outputCacheDurationInSeconds": 0,
- "support": "level1"
}
]
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected service |
projectID | string Project id of selected service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "projectID": "123"
}
{- "serviceInfos": [
- {
- "id": 123,
- "appID": "Cloudxx",
- "category": "Databases & Cache",
- "city": "Falkenstein",
- "cname": "postgresql-xxxxx-xxxx.vm.appdrag.net",
- "cores": 1,
- "country": "Germany",
- "creationDate": "2022-03-07T17:57:09.000Z",
- "datacenter": "fsn1",
- "deploymentStatus": "Deployed",
- "displayName": "postgresql-xxxxx",
- "dockerhub_image": "postgres",
- "externalBackupRetainDay": 7,
- "externalBackupUpdateDay": -1,
- "externalBackupUpdateHour": 1,
- "externalBackupUpdateMinute": 0,
- "firewallPorts": "11123,11343",
- "firewall_id": "xxxxx",
- "globalIP": "127.17.71.1",
- "imageType": "ubuntu-20.04",
- "ipv4": "142.132.185.174",
- "ipv6": "2a01:4f8:c010:a3e8::/64",
- "isAlertsActivated": 1,
- "isExternalBackupActivated": 0,
- "isFirewallActivated": 1,
- "isLocked": 0,
- "isOriginExist": 0,
- "isProtected": 0,
- "isVolumeExist": 0,
- "isWaitingForMigration": 0,
- "lastUpdate": "2022-03-07T19:05:56.000Z",
- "managedDBCLI": "PGPASSWORD=[APP_PASSWORD] psql --host=[DOMAIN] --port=34523 --username=postgres",
- "managedDBPort": "34523",
- "outputCacheDurationInSeconds": 0,
- "provider": "hetzner",
- "ramGB": "2.00",
- "rateLimiter": "150r/m",
- "remoteBackupsActivated": 1,
- "selected_software_tag": "14",
- "serverType": "SMALL-1C-2G",
- "status": "running",
- "storageSizeGB": 20,
- "support": "level1"
}
]
}
curl --request GET \ --url https://api.elest.io/api/servers/getTemplates
{- "instances": [
- {
- "id": 11,
- "category": "Databases & Cache",
- "title": "PostgreSQL",
- "version": "14",
- "description": "PostgreSQL is a powerful, open-source, object-relational database system that uses and extends the SQL language combined with many features that safely store and scale the most complicated data workloads. It has a strong reputation for its architecture, reliability, data integrity, robust feature set and extensibility. It runs on all major operating systems, is ACID-compliant, and has powerful add-ons such as the PostGIS geospatial database extender."
}, - {
- "id": 12,
- "category": "Databases & Cache",
- "title": "MySQL",
- "version": "8",
- "description": "MySQL is an open-source relational database management system (RDBMS). Many of the world's largest organizations rely on it to power their high-volume websites, business-critical systems and packaged software. It runs on almost all platforms, including Linux, UNIX and Windows."
}, - {
- "id": 13,
- "category": "Operating Systems",
- "minCores": 1,
- "osName": "Ubuntu 20.04",
- "showOrder": 0,
- "title": "Ubuntu",
- "version": "20.04",
- "description": "Ubuntu is officially released in three editions: Desktop, Server, and Core for Internet of Things devices and robots. All the editions can run on the computer alone, or in a virtual machine"
}, - {
- "id": 14,
- "category": "Applications",
- "description": "WordPress is a free and open-source content management system. The core WordPress software is built by hundreds of community volunteers. You can avail of any of thousands of plugins and themes to transform your site. Over 60 million people have chosen WordPress to power the place on the web they call home. WordPress is written in PHP and paired with a MySQL or MariaDB database.",
- "minCores": 1,
- "osName": "Ubuntu 20.04",
- "showOrder": 0,
- "title": "Wordpress",
- "version": "latest"
}
]
}
curl --request GET \ --url https://api.elest.io/api/servers/getServerSizes
{- "instances": [
- {
- "Continent": "Europe",
- "Country": "Netherlands",
- "City": "Amsterdam",
- "CountryCode": "NL",
- "providerName": "DO",
- "regionID": "ams3",
- "regionCode": "ams3",
- "regionName": "Digital Ocean - NL - AMS3",
- "title": "MICRO-1C-1G",
- "providerType": "s-1vcpu-1gb-intel",
- "vCPU": 1,
- "ramGB": "1.00",
- "storageType": "NVME",
- "storageSizeGB": 25,
- "offerTrafficIncludedGB": "1000",
- "pricePerHour": "0.022",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Netherlands",
- "City": "Amsterdam",
- "CountryCode": "NL",
- "providerName": "DO",
- "regionID": "ams3",
- "regionCode": "ams3",
- "regionName": "Digital Ocean - NL - AMS3",
- "title": "SMALL-1C-2G",
- "providerType": "s-1vcpu-2gb-intel",
- "vCPU": 1,
- "ramGB": "2.00",
- "storageType": "NVME",
- "storageSizeGB": 50,
- "offerTrafficIncludedGB": "2000",
- "pricePerHour": "0.045",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Netherlands",
- "City": "Amsterdam",
- "CountryCode": "NL",
- "providerName": "DO",
- "regionID": "ams3",
- "regionCode": "ams3",
- "regionName": "Digital Ocean - NL - AMS3",
- "title": "MEDIUM-2C-4G",
- "providerType": "s-2vcpu-4gb-intel",
- "vCPU": 2,
- "ramGB": "4.00",
- "storageType": "NVME",
- "storageSizeGB": 80,
- "offerTrafficIncludedGB": "4000",
- "pricePerHour": "0.089",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Netherlands",
- "City": "Amsterdam",
- "CountryCode": "NL",
- "providerName": "DO",
- "regionID": "ams3",
- "regionCode": "ams3",
- "regionName": "Digital Ocean - NL - AMS3",
- "title": "LARGE-4C-8G",
- "providerType": "s-4vcpu-8gb-intel",
- "vCPU": 4,
- "ramGB": "8.00",
- "storageType": "NVME",
- "storageSizeGB": 160,
- "offerTrafficIncludedGB": "5000",
- "pricePerHour": "0.179",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Netherlands",
- "City": "Amsterdam",
- "CountryCode": "NL",
- "providerName": "DO",
- "regionID": "ams3",
- "regionCode": "ams3",
- "regionName": "Digital Ocean - NL - AMS3",
- "title": "XLARGE-8C-16G",
- "providerType": "s-8vcpu-16gb-intel",
- "vCPU": 8,
- "ramGB": "16.00",
- "storageType": "NVME",
- "storageSizeGB": 320,
- "offerTrafficIncludedGB": "6000",
- "pricePerHour": "0.357",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Asia",
- "Country": "India",
- "City": "Bangalore",
- "CountryCode": "IN",
- "providerName": "DO",
- "regionID": "blr1",
- "regionCode": "blr1",
- "regionName": "Digital Ocean - IN - blr1",
- "title": "MICRO-1C-1G",
- "providerType": "s-1vcpu-1gb-intel",
- "vCPU": 1,
- "ramGB": "1.00",
- "storageType": "NVME",
- "storageSizeGB": 25,
- "offerTrafficIncludedGB": "1000",
- "pricePerHour": "0.022",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Asia",
- "Country": "India",
- "City": "Bangalore",
- "CountryCode": "IN",
- "providerName": "DO",
- "regionID": "blr1",
- "regionCode": "blr1",
- "regionName": "Digital Ocean - IN - blr1",
- "title": "SMALL-1C-2G",
- "providerType": "s-1vcpu-2gb-intel",
- "vCPU": 1,
- "ramGB": "2.00",
- "storageType": "NVME",
- "storageSizeGB": 50,
- "offerTrafficIncludedGB": "2000",
- "pricePerHour": "0.045",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Asia",
- "Country": "India",
- "City": "Bangalore",
- "CountryCode": "IN",
- "providerName": "DO",
- "regionID": "blr1",
- "regionCode": "blr1",
- "regionName": "Digital Ocean - IN - blr1",
- "title": "MEDIUM-2C-4G",
- "providerType": "s-2vcpu-4gb-intel",
- "vCPU": 2,
- "ramGB": "4.00",
- "storageType": "NVME",
- "storageSizeGB": 80,
- "offerTrafficIncludedGB": "4000",
- "pricePerHour": "0.089",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Asia",
- "Country": "India",
- "City": "Bangalore",
- "CountryCode": "IN",
- "providerName": "DO",
- "regionID": "blr1",
- "regionCode": "blr1",
- "regionName": "Digital Ocean - IN - blr1",
- "title": "LARGE-4C-8G",
- "providerType": "s-4vcpu-8gb-intel",
- "vCPU": 4,
- "ramGB": "8.00",
- "storageType": "NVME",
- "storageSizeGB": 160,
- "offerTrafficIncludedGB": "5000",
- "pricePerHour": "0.179",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Asia",
- "Country": "India",
- "City": "Bangalore",
- "CountryCode": "IN",
- "providerName": "DO",
- "regionID": "blr1",
- "regionCode": "blr1",
- "regionName": "Digital Ocean - IN - blr1",
- "title": "XLARGE-8C-16G",
- "providerType": "s-8vcpu-16gb-intel",
- "vCPU": 8,
- "ramGB": "16.00",
- "storageType": "NVME",
- "storageSizeGB": 320,
- "offerTrafficIncludedGB": "6000",
- "pricePerHour": "0.357",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Germany",
- "City": "Frankfurt",
- "CountryCode": "DE",
- "providerName": "DO",
- "regionID": "fra1",
- "regionCode": "fra1",
- "regionName": "Digital Ocean - DE - FRA1",
- "title": "MICRO-1C-1G",
- "providerType": "s-1vcpu-1gb-intel",
- "vCPU": 1,
- "ramGB": "1.00",
- "storageType": "NVME",
- "storageSizeGB": 25,
- "offerTrafficIncludedGB": "1000",
- "pricePerHour": "0.022",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Germany",
- "City": "Frankfurt",
- "CountryCode": "DE",
- "providerName": "DO",
- "regionID": "fra1",
- "regionCode": "fra1",
- "regionName": "Digital Ocean - DE - FRA1",
- "title": "SMALL-1C-2G",
- "providerType": "s-1vcpu-2gb-intel",
- "vCPU": 1,
- "ramGB": "2.00",
- "storageType": "NVME",
- "storageSizeGB": 50,
- "offerTrafficIncludedGB": "2000",
- "pricePerHour": "0.045",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Germany",
- "City": "Frankfurt",
- "CountryCode": "DE",
- "providerName": "DO",
- "regionID": "fra1",
- "regionCode": "fra1",
- "regionName": "Digital Ocean - DE - FRA1",
- "title": "MEDIUM-2C-4G",
- "providerType": "s-2vcpu-4gb-intel",
- "vCPU": 2,
- "ramGB": "4.00",
- "storageType": "NVME",
- "storageSizeGB": 80,
- "offerTrafficIncludedGB": "4000",
- "pricePerHour": "0.089",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Germany",
- "City": "Frankfurt",
- "CountryCode": "DE",
- "providerName": "DO",
- "regionID": "fra1",
- "regionCode": "fra1",
- "regionName": "Digital Ocean - DE - FRA1",
- "title": "LARGE-4C-8G",
- "providerType": "s-4vcpu-8gb-intel",
- "vCPU": 4,
- "ramGB": "8.00",
- "storageType": "NVME",
- "storageSizeGB": 160,
- "offerTrafficIncludedGB": "5000",
- "pricePerHour": "0.179",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "Germany",
- "City": "Frankfurt",
- "CountryCode": "DE",
- "providerName": "DO",
- "regionID": "fra1",
- "regionCode": "fra1",
- "regionName": "Digital Ocean - DE - FRA1",
- "title": "XLARGE-8C-16G",
- "providerType": "s-8vcpu-16gb-intel",
- "vCPU": 8,
- "ramGB": "16.00",
- "storageType": "NVME",
- "storageSizeGB": 320,
- "offerTrafficIncludedGB": "6000",
- "pricePerHour": "0.357",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "United Kingdom",
- "City": "London",
- "CountryCode": "GB",
- "providerName": "DO",
- "regionID": "lon1",
- "regionCode": "lon1",
- "regionName": "Digital Ocean - UK - LON1",
- "title": "MICRO-1C-1G",
- "providerType": "s-1vcpu-1gb-intel",
- "vCPU": 1,
- "ramGB": "1.00",
- "storageType": "NVME",
- "storageSizeGB": 25,
- "offerTrafficIncludedGB": "1000",
- "pricePerHour": "0.022",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "United Kingdom",
- "City": "London",
- "CountryCode": "GB",
- "providerName": "DO",
- "regionID": "lon1",
- "regionCode": "lon1",
- "regionName": "Digital Ocean - UK - LON1",
- "title": "SMALL-1C-2G",
- "providerType": "s-1vcpu-2gb-intel",
- "vCPU": 1,
- "ramGB": "2.00",
- "storageType": "NVME",
- "storageSizeGB": 50,
- "offerTrafficIncludedGB": "2000",
- "pricePerHour": "0.045",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "United Kingdom",
- "City": "London",
- "CountryCode": "GB",
- "providerName": "DO",
- "regionID": "lon1",
- "regionCode": "lon1",
- "regionName": "Digital Ocean - UK - LON1",
- "title": "MEDIUM-2C-4G",
- "providerType": "s-2vcpu-4gb-intel",
- "vCPU": 2,
- "ramGB": "4.00",
- "storageType": "NVME",
- "storageSizeGB": 80,
- "offerTrafficIncludedGB": "4000",
- "pricePerHour": "0.089",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "United Kingdom",
- "City": "London",
- "CountryCode": "GB",
- "providerName": "DO",
- "regionID": "lon1",
- "regionCode": "lon1",
- "regionName": "Digital Ocean - UK - LON1",
- "title": "LARGE-4C-8G",
- "providerType": "s-4vcpu-8gb-intel",
- "vCPU": 4,
- "ramGB": "8.00",
- "storageType": "NVME",
- "storageSizeGB": 160,
- "offerTrafficIncludedGB": "5000",
- "pricePerHour": "0.179",
- "cpuBrand": "Intel Xeon"
}, - {
- "Continent": "Europe",
- "Country": "United Kingdom",
- "City": "London",
- "CountryCode": "GB",
- "providerName": "DO",
- "regionID": "lon1",
- "regionCode": "lon1",
- "regionName": "Digital Ocean - UK - LON1",
- "title": "XLARGE-8C-16G",
- "providerType": "s-8vcpu-16gb-intel",
- "vCPU": 8,
- "ramGB": "16.00",
- "storageType": "NVME",
- "storageSizeGB": 320,
- "offerTrafficIncludedGB": "6000",
- "pricePerHour": "0.357",
- "cpuBrand": "Intel Xeon"
}, - "..."
]
}
vmID | string Virtual machine id of selected service |
jwt | string User jwt token for Authentication |
isDeleteServiceWithBackup | string It will be true if user don't want to keep any backups |
{- "vmID": "123456789",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "isDeleteServiceWithBackup": "false"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected service |
action | string Enum: "reboot" "reset" "shutdown" "poweroff" "poweron" "getServiceVolume" "createServiceVolume" "manageServiceVolumeProtection" "..." Action to be performed on server |
{- "action": "reboot",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789"
}
{- "actionID": 123456789,
- "status": "running"
}
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected server |
action | string Enum: "scriptBackupsList" "scriptBackup" "scriptBackupDelete" "scriptRestore" "..." Action to be executed |
param1 | string |
param2 | string |
param3 | string |
{- "action": "scriptBackupsList",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "param1": "",
- "param2": "",
- "param3": "",
- "vmID": "123456789"
}
{- "status": "OK",
- "data": {
- "status": "OK",
- "url": ""
}
}
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected server |
maxRate | string What should be the maximum rate that needs to be passed |
periodType | string Period Type can be minutes(m), hours(h) ... |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "maxRate": "150",
- "periodType": "m"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
vmID | string Service Virtual machine id |
durationInSeconds | string Duration for when get requests should be cached |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "durationInSeconds": "200"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id for which user wants a ssh client |
projectID | string Project id of selected service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "projectID": "123"
}
{- "user": "root",
- "password": "nfstiofhng123ndfio5"
}
jwt | string User jwt token for Authentication |
serviceId | string Id of service which needs to be moved |
projectId | string Id of project which service should be moved |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serviceId": "1232323",
- "projectId": "17734567"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
vmID | string Service Virtual machine ID for getting ssh direct terminal |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789"
}
{
}
jwt | string User jwt token for Authentication |
vmID | string Service Virtual machine id for getting logs |
mode | string |
projectID | string Selected service project id |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "mode": "mode",
- "projectID": "123"
}
{- "mode": "iframe"
}
jwt | string User jwt token for Authentication |
vmID | string Id of virtual machine for starting vs code |
projectID | string If for project |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "projectID": "123"
}
{- "user": "root",
- "password": "XXXXXXXXXXXXXXX"
}
jwt | string User jwt token for Authentication |
vmID | string Service Virtual machine id for starting file explorer |
projectID | string Selected Service Project id |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "projectID": "123"
}
{- "user": "root",
- "password": "XXXXXXXXXXXXXXX"
}
Get App URL & Credentials in the context of the service.
jwt | string User jwt token for Authentication |
vmID | string Service Virtual machine id |
targetPort | string Port no of application in which it is running |
srvPort | string Service port no |
projectID | string Selected service project id |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "targetPort": "3000",
- "srvPort": "343",
- "projectID": "123"
}
{- "user": "root",
- "password": "dlfnsld-n43n85n0=-lo34h"
}
jwt | string User jwt token for Authentication |
serverID | string Server id of the service for getting notes |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serverID": "34334123"
}
{- "data": {
- "id": 12345,
- "providerServerID": "12345678"
}, - "status": "OK"
}
jwt | string User jwt token for Authentication |
serverID | string Server id of the Service for updating the notes |
notes | string Notes written by user for service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serverID": "12345678",
- "notes": "notes"
}
{- "message": "Updated successfully",
- "status": "OK"
}
jwt required | string Example: jwt=ImF1dGSZQOAINZRpdHNX1dG9S User Validation token |
namespace required | string Example: namespace=library Namespace for service to get docker tags |
name required | string Example: name=postgres Name of the service must be provided to get the docker tags |
curl --request GET \ --url 'https://api.elest.io/api/servers/getDockerTags?jwt=ImF1dGSZQOAINZRpdHNX1dG9S&namespace=library&name=postgres'
{- "status": "OK",
- "data": [
- {
- "version": "latest",
- "last_updated_name": "2022-03-05T14:06:18.330928Z"
}, - {
- "version": "bullseye",
- "last_updated_name": "2022-03-05T14:06:13.946343Z"
}, - {
- "version": "13",
- "last_updated_name": "2022-03-05T14:05:14.033198Z"
}, - "..."
]
}
serverIDs | string Server ids user has access to |
jwt | string User jwt token for Authentication |
startDate | string Starting date when audit is perfomed |
endDate | string End Date for audit |
{- "serverIDs": "[2132,1232]",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "startDate": "11/12/2021",
- "endDate": "11/12/2021"
}
{- "status": "OK",
- "count": 4,
- "data": [
- {
- "id": 49088,
- "time": "2022-03-07T17:35:31.651Z",
- "server_id": "12345",
- "event_category": "Power",
- "event_type": "Shutdown",
- "event_details": "",
- "user_id": 129,
- "sourceip": "127.98.153.162",
- "monitoring_domain": "elestio-monitoring-backend-staging.vm.openvm.cloud"
}, - {
- "id": 49087,
- "time": "2022-03-07T17:28:37.837Z",
- "server_id": "12345",
- "event_category": "RemoteBackup",
- "event_type": "Enable",
- "event_details": "",
- "user_id": 129,
- "sourceip": "127.203.32.115",
- "monitoring_domain": "elestio-monitoring-backend-staging.vm.openvm.cloud"
}, - {
- "id": 49086,
- "time": "2022-03-07T17:27:52.038Z",
- "server_id": "12345",
- "event_category": "GlobalIP",
- "event_type": "Enable",
- "event_details": "",
- "user_id": 129,
- "sourceip": "127.203.32.115",
- "monitoring_domain": "elestio-monitoring-backend-staging.vm.openvm.cloud"
}, - {
- "id": 49087,
- "time": "2022-03-07T17:26:51.883Z",
- "server_id": "12345",
- "event_category": "Global",
- "event_type": "CreateVM",
- "event_details": "SMALL-1C-2G;Ubuntu",
- "user_id": 129,
- "sourceip": "127.98.153.162",
- "monitoring_domain": "elestio-monitoring-backend-staging.vm.openvm.cloud"
}
]
}
jwt | string User jwt token for Authentication |
serverID | string Server id for service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serverID": "34334"
}
{- "message": "Finished",
- "data": "{\"message\":\"Finished\",\"status\":\"OK\"}",
- "status": "OK"
}
jwt | string User jwt token for Authentication |
serverID | string Server id of the service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serverID": "34334"
}
{- "message": "Finished",
- "data": [
- {
- "name": "snapshot_2022-03-08-14.00.22",
- "date": "Tue, 2022-03-08 14:00:23"
}
], - "status": "OK"
}
jwt | string User jwt token for Authentication |
serverID | string Server id of the service which user wants to restore backup |
snapshotName | string Name of the snapshot user wants to restore |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serverID": "34334",
- "snapshotName": "backup_34nghnf"
}
{- "message": "Finished",
- "data": [
- {
- "name": "snapshot_2022-03-08-14.00.22",
- "date": "Tue, 2022-03-08 14:00:23"
}
], - "status": "OK"
}
serverID | string Server id of the service |
backupPath | string Path where autobackups will be saved |
backupHour | string Every day at this hour a backup will be made |
{- "serverID": "34334",
- "backupPath": "/backup/",
- "backupHour": "00:00"
}
{- "message": "Auto Backup Started",
- "data": {
- "stdOut": "nameserver 8.8.8.8",
- "stdErr": ""
}, - "status": "OK"
}
jwt | string User jwt token for Authentication |
serverID | string Server id for service for which backup should be created |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "serverID": "34334"
}
{- "message": "Backup Started",
- "data": {
- "stdOut": "",
- "stdErr": ""
}, - "status": "OK",
- "mode": "iframe"
}
jwt | string User jwt token for authentication. |
projectId | string Id of project for getting billings |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectId": "17734567"
}
{- "status": "OK",
- "data": {
- "nbServices": 1,
- "totalFromBeginning": "2.562",
- "costPerHour": "0.0140",
- "monthlyCost": "10.22",
- "boardInformations": [
- {
- "id": 1959,
- "startTime": "2022-03-07T17:57:09.000Z",
- "endTime": "2022-03-07T19:06:48.000Z",
- "amount": "0.028",
- "nbHoursUsed": 2,
- "displayName": "postgresql-gqab4"
}, - {
- "id": 1968,
- "startTime": "2022-03-08T10:48:46.000Z",
- "endTime": "2022-03-08T10:56:33.000Z",
- "amount": "0.014",
- "nbHoursUsed": 1,
- "displayName": "ubuntu-qdclw"
}, - {
- "id": 1971,
- "startTime": "2022-03-08T13:25:17.000Z",
- "endTime": "2022-03-08T13:30:03.000Z",
- "amount": "0.000",
- "nbHoursUsed": 1,
- "displayName": "wordpress-iylo4"
}, - "..."
]
}
}
jwt required | string Example: jwt=ImF1dGSZQOAINZRpdHNX1dG9S User Authentication Token |
curl --request GET \ --url 'https://api.elest.io/api/billings/getBillings?jwt=ImF1dGSZQOAINZRpdHNX1dG9S'
{- "status": "OK",
- "data": {
- "123": {
- "servicesCount": 0,
- "costPerHour": 0,
- "monthlyCost": 0
}, - "321": {
- "servicesCount": 1,
- "costPerHour": 0.014,
- "monthlyCost": 10.22
}
}
}
jwt | string User jwt token for Authentication |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S"
}
{- "status": "OK",
- "data": {
- "projects": [
- {
- "id": 112,
- "projectID": 112,
- "role": "Admin",
- "userID": 129,
- "creation_date": "2022-02-28T10:04:09.000Z",
- "project_name": "default-project",
- "owner_id": 129,
- "networkCIDR": "127.17.71.0"
}
]
}
}
jwt | string User jwt token for Authentication |
name | string Name of project to be created |
description | string Project description provided by user |
technicalEmails | string Emails added by user |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "name": "project1",
- "description": "description",
- "technicalEmails": "emails"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
projectId | string Selected service project id |
name | string Name of the project |
description | string Project description |
technicalEmails | string Emails for project |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectId": "17734567",
- "name": "project1",
- "description": "description",
- "technicalEmails": "emails"
}
{- "status": "OK"
}
jwt required | string Example: jwt=ImF1dGSZQOAINZRpdHNX1dG9S User Authentication token |
projectId required | string Example: projectId=17734567 Id of project to be deleted |
curl --request DELETE \ --url 'https://api.elest.io/api/projects/deleteProject?jwt=ImF1dGSZQOAINZRpdHNX1dG9S&projectId=17734567'
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
projectId | string Selected project id for adding a member |
role | string Role for member being added |
targetEmail | string Email id of the member |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectId": "17734567",
- "role": "admin",
- "targetEmail": "[email protected]"
}
{- "status": "OK",
- "message": "Project Member Successfully added",
- "data": { }
}
jwt | string User jwt token for Authentication |
projectId | string Selected project id for updating Member |
role | string Role to be modified for member |
targetId | string Member id |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectId": "17734567",
- "role": "admin",
- "targetId": "2343"
}
{- "status": "OK"
}
jwt required | string Example: jwt=ImF1dGSZQOAINZRpdHNX1dG9S User Validation Token |
projectId required | string Example: projectId=17734567 Project id user to be deleted |
targetId required | string Example: targetId=2343 Id of the member for removing from the project |
curl --request DELETE \ --url 'https://api.elest.io/api/projects/deleteMember?jwt=ImF1dGSZQOAINZRpdHNX1dG9S&projectId=17734567&targetId=2343'
{- "string": "OK"
}
jwt required | string Example: jwt=ImF1dGSZQOAINZRpdHNX1dG9S User Authentication Token |
projectId required | string Example: projectId=17734567 Id of project which user wants to leave |
curl --request DELETE \ --url 'https://api.elest.io/api/projects/leaveProject?jwt=ImF1dGSZQOAINZRpdHNX1dG9S&projectId=17734567'
{- "status": "OK"
}
jwt required | string Example: jwt=ImF1dGSZQOAINZRpdHNX1dG9S User Authentication token |
projectId required | string Example: projectId=17734567 Project id for getting all members |
curl --request GET \ --url 'https://api.elest.io/api/projects/getMembersList?jwt=ImF1dGSZQOAINZRpdHNX1dG9S&projectId=17734567'
{- "status": "OK",
- "data": {
- "projectMembers": [
- {
- "id": 118,
- "project_name": "default-project",
- "owner_id": 121,
- "creation_date": "2022-02-28T10:04:09.000Z",
- "networkCIDR": "127.17.71.0",
- "projectID": 112,
- "role": "Admin",
- "userID": 121,
- "email": "[email protected]"
}
]
}
}
jwt | string User jwt token for Authentication |
projectID | string Selected service project id |
action | string Action to be perform for SSH keys |
{- "action": "SSHGlobalPubKeysAdd",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": 123,
- "name": "key",
- "key": "dfdlnfdofbdflndf"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
projectID | string Selected project Id for getting all volumes |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "123"
}
{- "status": "OK",
- "data": [
- {
- "id": 11,
- "status": "Running",
- "serverID": "12345",
- "providerServerID": "12345678",
- "userID": "123",
- "projectID": "123",
- "providerName": "hetzner",
- "providerRegion": "fsn1",
- "volumeID": "12345678",
- "volumeName": "vol-xxxxxxxxxx",
- "volumeDescription": "",
- "volumeSizeInGB": "11.00",
- "isDeleted": 0,
- "isAttached": 1,
- "isProtected": 0,
- "pricePerHour": "0.0023",
- "nbHoursUsed": 1,
- "totalCost": "1.6500",
- "creationDate": "2022-03-08T17:23:54.000Z",
- "lastUpdate": "2022-03-08T17:24:22.000Z",
- "displayName": "xxxxxxxxxx"
}
]
}
jwt | string User jwt token for Authentication |
projectID | string Project Id which contains selected volume |
volumeID | string Volume id for get details |
isVolumeCreated | string |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "123",
- "volumeID": "123",
- "isVolumeCreated": true
}
{- "status": "OK",
- "data": [
- {
- "datacenter": "fsn1",
- "displayName": "ubuntu-0wqut-dav",
- "provider": "hetzner",
- "providerServerID": "20164273"
}
]
}
jwt | string User jwt token for Authentication |
projectID | string Project id which has user selected Volume |
providerName | string Provider of the Volume |
datacenter | string Location of datacenter |
volumeName | string Volume Name for creating volume |
price | string The Price of Volume |
selectedServerID | string User Selected Server ID |
isMoveData | string Do user wants to move data of the service to volume |
volume | string SSD volume sizes range from 10 to 1,024 GB, while HDD volumes range from 40 to 1,024 GB. |
blockStorageType | string Enum: "NVME" "HDD" Only vultr supports both HDD and SSD but only passes one, whereas the others only support SSD. |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "123",
- "providerName": "hetzner",
- "datacenter": "fsnl",
- "volumeName": "volumeName",
- "price": "20.0",
- "selectedServerID": "213",
- "isMoveData": false,
- "volume": 10,
- "blockStorageType": "NVME"
}
{- "status": "OK"
}
jwt | string User jwt token for Authentication |
projectID | string Selected Service Project Id |
action | string Enum: "manageVolumeProtection" "resizeVolume" "detachVolume" "deleteVolume" Volume actions User can perform |
volumeID | string Selected Volume Id |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "123",
- "action": "manageVolumeProtection",
- "isVolumeProtection": true,
- "providerServerID": "123456789",
- "volumeID": "1245678"
}
{- "status": "OK",
- "message": "Volume protection activated successfully"
}
Get existing CICD services for a project
jwt | string User jwt token for Authentication |
projectID | string Project id for the selected service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "17734567"
}
[- {
- "id": "1947",
- "serverName": "server1",
- "displayName": "serverProviderName",
- "pipelineID": "555",
- "providerServerID": "64564675"
}, - {
- "id": "2439",
- "serverName": "server2",
- "displayName": "serverProviderName",
- "pipelineID": "324",
- "providerServerID": "85634927"
}
]
Creates a new CICD pipeline in the selected existing CICD service
jwt | string User jwt token for Authentication |
projectID | string Project id for the selected service |
CICDMode | string Type of social provider like Github,Gitlab and Docker |
ports | array Proxy-ports for CICD pipeline |
variables | string Environment variables |
cluster | object Details of selected CICD service |
configData | object Configuration details for the pipeline |
gitData | object Details of the repository |
exposedPorts | array Exposedports for CICD pipeline |
gitVolumeConfig | array Volume configuration of the pipeline |
isNeedToCreateRepo | boolean To check whether the user needs to create repository or not |
gitUserFormData | object Details for creating a new repository |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "17734567",
- "CICDMode": "GITHUB",
- "ports": [
- {
- "protocol": "HTTPS",
- "targetProtocol": "HTTP",
- "listeningPort": "443",
- "targetPort": "8055",
- "public": true,
- "path": "/",
- "isAuth": false,
- "login": "",
- "password": ""
}
], - "variables": "ENV=production\n",
- "cluster": {
- "isCluster": false,
- "createNew": false,
- "target": {
- "displayName": "cicd-5crnj",
- "id": 1952,
- "serverName": "cicd-5crnj-u147.vm.appdrag.net",
- "vmID": "21540524"
}
}, - "configData": {
- "buildDir": "/",
- "rootDir": "/",
- "runTime": "NodeJs",
- "version": "16.15",
- "framework": "Directus-Postgres",
- "buildCmd": " ",
- "runCmd": "npm run start",
- "installCmd": "npm install"
}, - "gitData": {
- "projectName": "directustest",
- "branch": "main",
- "repoID": 657654883,
- "repo": "directus"
}, - "exposedPorts": [
- {
- "protocol": "HTTP",
- "hostPort": "8055",
- "containerPort": "8055",
- "interface": "172.17.0.1"
}
], - "gitVolumeConfig": [
- {
- "hostPath": "./data",
- "containerPath": "/var/lib/postgresql/data"
}
], - "isNeedToCreateRepo": false,
- "gitUserFormData": {
- "selectedUser": "userName",
- "searchGitUser": "directus",
- "selectedRepo": {
- "id": 504637156,
- "node_id": "R_kgDOHhQm5A",
- "name": "directus",
- "full_name": "userName/directus",
- "private": false
}, - "thirdPartyRepoInput": "",
- "gitScopesUsers": [ ],
- "thirdPartyRepoScopeName": "userName",
- "thirdPartyRepoName": "",
- "thirdPartyRepoPrivate": false
}
}
{- "status": "OK",
- "message": "CI/CD Pipeline created successfully",
- "providerServerID": "21540524",
- "serviceName": "cicd-5crnj"
}
Get the details of the deployed service pipelines
projectID | string Project id for the selected service |
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected service |
{- "projectID": "17734567",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789"
}
{- "status": "ok",
- "data": [
- {
- "id": "312",
- "pipelineName": "angular",
- "status": "deployed",
- "buildStatus": "success",
- "buildDir": "build",
- "branch": "main",
- "framework": "angular",
- "projectID": "45"
}, - {
- "id": "3456",
- "pipelineName": "django",
- "status": "deployed",
- "buildStatus": "success",
- "buildDir": "build",
- "branch": "master",
- "framework": "django",
- "projectID": "9564"
}
]
}
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected service |
projectID | string Project id for the selected service |
pipelineID | string Pipeline id of the selected pipeline |
action | string Enum: "reSyncPipeline" "deletePipeline" "restartAppStack" "pipelineRunningLogs" "getHistory" "updateBuildConfig" "SSLDomainsList" "SSLDomainsAdd" "SSLDomainsRemove" "stopAppStack" "moveExistTargetPipeline" Action to be executed |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "21570146",
- "projectID": "94",
- "pipelineID": 362
}
{- "reSyncPipeline": {
- "value": {
- "status": "OK",
- "message": "Your request to resync pipeline has been successfully processed"
}
}, - "deletePipeline": {
- "value": {
- "status": "OK",
- "message": "Your request to delete pipeline has been successfully processed"
}
}, - "restartAppStack": {
}, - "pipelineRunningLogs": {
}, - "getHistory": {
- "value": {
- "status": "OK",
- "data": [
- {
- "path": "2022-06-23-12.42.01.log",
- "status": "sucess",
- "endTime": "2022-06-23-12.42.02",
- "startTime": "2022-06-23-12.42.01"
}
]
}
}, - "updateBuildConfig": {
- "value": {
- "status": "OK",
- "message": "Your request to update pipeline build config has been successfully processed",
- "providerServerID": 21570146,
- "serviceName": "cicd-ttkgu"
}
}, - "SSLDomainsList": {
- "value": {
- "status": "OK"
}
}, - "SSLDomainsAdd": {
- "value": {
- "status": "OK"
}
}, - "SSLDomainsRemove": {
- "value": {
- "status": "OK"
}
}, - "stopAppStack": {
}, - "moveExistTargetPipeline": {
- "value": {
- "status": "OK",
- "message": "Your request to move pipeline has been successfully processed",
- "selectedProviderID": 357635,
- "selectedServerName": "cicd-5crn"
}
}
}
Get the details of the deployed pipeline
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected service |
projectID | string Project id for the selected service |
pipelineID | number Pipeline id of the selected pipeline |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "projectID": "17734567",
- "pipelineID": 83839200
}
{- "status": "ok",
- "data": [
- {
- "id": "312",
- "pipelineName": "angular",
- "status": "deployed",
- "buildStatus": "sucess",
- "buildDir": "build",
- "branch": "main",
- "framework": "angular",
- "projectID": "45"
}
]
}
Get the list of deployed pipelines
jwt | string User jwt token for Authentication |
projectID | string Project id for the selected service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "17734567"
}
[- {
- "pipelineName": "name1"
}, - {
- "pipelineName": "name2"
}, - {
- "pipelineName": "name3"
}, - {
- "pipelineName": "name4"
}, - "..."
]
Get details of the project pipelines
projectID | string Project id for the selected service |
jwt | string User jwt token for Authentication |
{- "projectID": "17734567",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S"
}
{- "status": "ok",
- "data": [
- {
- "id": "312",
- "pipelineName": "angular",
- "status": "deployed",
- "buildStatus": "success"
}, - {
- "id": "3456",
- "pipelineName": "django",
- "status": "deployed",
- "buildStatus": "success"
}, - "..."
]
}
Get details of the project pipelines
jwt | string User jwt token for Authentication |
vmID | string Virtual machine id of selected service |
projectID | string Project id for the selected service |
pipelineID | string Pipeline id of the selected pipeline |
filepath | string Name of the log file |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "vmID": "123456789",
- "projectID": "17734567",
- "pipelineID": 83839200,
- "filepath": "2022-06-23-12.42.01.log"
}
{- "mode": "iframe"
}
identityName | string Identity for login |
jwt | string User jwt token for Authentication |
password | string Password/Access_Token for Docker account |
projectID | string Project id for the selected service |
url | string Docker repository |
username | string Docker user name |
{- "identityName": "repositoryLogin",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "password": "******",
- "projectID": "17734567",
- "url": "username/repository",
- "username": "john123"
}
{- "identityName": "john123",
- "login": "userName",
- "registryURL": "userName/gridsome"
}
identityName | string Identity for login |
password | string Password/Access_Token for Docker account |
repo | string Docker repository |
username | string Docker user name |
{- "identityName": "repositoryLogin",
- "password": "******",
- "repo": "repository",
- "username": "john123"
}
{- "status": "ok"
}
jwt | string User jwt token for Authentication |
projectID | string Project id for the selected service |
{- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
- "projectID": "17734567"
}
[- {
- "id": 7,
- "identityName": "private1"
}, - {
- "id": 10,
- "identityName": "gridsomeImage"
}
]
List domains
projectID | string Project id for the selected project |
jwt | string User jwt token for Authentication |
{- "projectID": "17734567",
- "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S"
}
{- "status": "ok",
- "data": [
- {
- "userID": "00",
- "projectID": "00",
- "domainName": "elestio.com",
- "privacyEnabled": 0,
- "locked": 1,
- "autorenewEnabled": 0,
- "createDate": "2024-09-13T14:16:33Z",
- "expireDate": "2025-09-13T14:16:33Z",
- "status": "Completed",
- "expireDays": 0
}, - "..."
]
}