Elestio (1.0.0)

Download OpenAPI specification:Download

Introduction

Elestio provide fully managed open-source services for a large catalog of 350+ softwares on a dedicated instance in less than 3 minutes. You can relax knowing that we are taking care of installation, configuration, encryption, backups, software & OS updates, live monitoring…and more! on scalable cloud infrastructure.

Elestio is available on 6 cloud providers, 80 regions, 25 countries and also on-premise or your own cloud provider.

No more DevOps. Deploy on any cloud or on-premise. Scalable & Secure. CI/CD Pipelines.

If you do not have an account yet, sign up now at Elestio.

Description

The Elestio REST API provides access to elest.io services. All requests and responses are in JSON format


AUTHENTICATION

checkAPIToken

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.

Request Body schema: application/json
email
string

User email address

token
string

User token generated for Authentication

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "status": "OK",
  • "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S"
}

SERVICES

Create a new service

Request Body schema: application/json
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.

Responses

Request samples

Content type
application/json
{
  • "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
  • "templateID": "38",
  • "serverType": "SMALL-1C-2G",
  • "datacenter": "fsnl",
  • "serverName": "ubuntu-3dfd",
  • "appid": "Cloudxx",
  • "data": "data",
  • "support": "level1",
  • "projectId": "17734567",
  • "version": "1",
  • "adminEmail": "[email protected]",
  • "deploymentServiceType": "normal",
  • "serviceType": "Service"
}

Response samples

Content type
application/json
{
  • "action": {
    },
  • "providerServerID": 12345678
}

List of services in a project

Request Body schema: application/json
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

Responses

Request samples

Content type
application/json
{
  • "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
  • "appid": "Cloudxx",
  • "projectId": "17734567",
  • "isActiveService": "true"
}

Response samples

Content type
application/json
[
  • {
    }
]

Get service information

Request Body schema: application/json
jwt
string

User jwt token for Authentication

vmID
string

Virtual machine id of selected service

projectID
string

Project id of selected service

Responses

Request samples

Content type
application/json
{
  • "jwt": "ImF1dGSZQOAINZRpdHNX1dG9S",
  • "vmID": "123456789",
  • "projectID": "123"
}

Response samples

Content type
application/json
{
  • "serviceInfos": [
    ]
}

List of softwares

Responses

Request samples

curl --request GET \
  --url https://api.elest.io/api/servers/getTemplates

Response samples

Content type
application/json
{
  • "instances": [
    ]
}

List of servers

Responses

Request samples

curl --request GET \
  --url https://api.elest.io/api/servers/getServerSizes

Response samples

Content type
application/json
{
  • "instances": [