Simplempod.ai API (latest)

Download OpenAPI specification:Download

REST API

Overview

The API is based on REST principles. It supports GET, POST, PUT, PATCH and DELETE requests.

Base URI

All URLs referenced in the documentation have the following base: https://api.simplepod.ai

Postman Collection

You can fork postman collection to your workspace and test the API via this link:

Run In Postman

Authentication

apiKey

To call api methods you must provide api key.
The api key is listed in Account Settings on Subaccouts tab.
Each api key is assigned to subaccount and its permissions.

Security Scheme Type: API Key
Header parameter name: X-AUTH-TOKEN

Find Instances

Instances list

List instances for rent

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

order[gpuCount]
string
Enum: "asc" "desc"
Example: order[gpuCount]=desc

Order by GPUs

order[sla]
string
Enum: "asc" "desc"
Example: order[sla]=desc

Order by availability

order[pricePerGpu]
string
Enum: "asc" "desc"
Example: order[pricePerGpu]=desc

Order by price

order[sysDlp]
string
Enum: "asc" "desc"
Example: order[sysDlp]=desc

Order by DLPerf

order[pricePerDlp]
string
Enum: "asc" "desc"
Example: order[pricePerDlp]=desc

Order by DLPerf/$/h

order[gpuTFlops]
string
Enum: "asc" "desc"
Example: order[gpuTFlops]=desc

Order by TFLOPs

order[pricePerTFlops]
string
Enum: "asc" "desc"
Example: order[pricePerTFlops]=desc

Order by TFLOPs/$/h

region
string
Enum: "World" "Asia" "Europe" "North America" "Oceania" "South America" "Poland"
Example: region=World

Filter by region

downloadSpeedtest[gte]
integer
Example: downloadSpeedtest[gte]=1

Filter by download speedtest (greater or equal than): value from 1 to 16384

downloadSpeedtest[lte]
integer
Example: downloadSpeedtest[lte]=16384

Filter by download speedtest (lower or equals than): value from 1 to 16384

uploadSpeedtest[gte]
integer
Example: uploadSpeedtest[gte]=1

Filter by upload speedtest (greater or equal than): value from 1 to 16384

uploadSpeedtest[lte]
integer
Example: uploadSpeedtest[lte]=16384

Filter by upload speedtest (lower or equals than): value from 1 to 16384

diskSize[gte]
integer
Example: diskSize[gte]=32

Filter by disk space GB (greater or equal than): value from 32 to 65536

diskSize[lte]
integer
Example: diskSize[lte]=65536

Filter by disk space GB (lower or equals than): value from 32 to 65536

cpuCoreCount[gte]
integer
Example: cpuCoreCount[gte]=1

Filter by CPU cores (greater or equal than): value from 1 to 512

cpuCoreCount[lte]
integer
Example: cpuCoreCount[lte]=512

Filter by CPU cores (lower or equals than): value from 1 to 512

systemMemory[gte]
integer
Example: systemMemory[gte]=4096

Filter by system memory MB (greater or equal than): value from 4096 to 8388608

systemMemory[lte]
integer
Example: systemMemory[lte]=8388608

Filter by system memory MB (lower or equals than): value from 4096 to 8388608

diskSpeedWrite[gte]
integer
Example: diskSpeedWrite[gte]=1

Filter by disk speed MB/s (greater or equal than): value from 1 to 131072

diskSpeedWrite[lte]
integer
Example: diskSpeedWrite[lte]=131072

Filter by disk speed MB/s (lower or equals than): value from 1 to 131072

gpuModel
string
Enum: "Any" "RTX 4090"
Example: gpuModel=Any

Filter by GPU Model

gpuCount[gte]
integer
Example: gpuCount[gte]=1

Filter by GPU count (greater or equal than): value from 1 to 16

gpuCount[lte]
integer
Example: gpuCount[lte]=16

Filter by GPU count (lower or equals than): value from 1 to 16

gpuTFlops[gte]
integer
Example: gpuTFlops[gte]=1

Filter by TFLOPS total (greater or equal than): value from 1 to 256

gpuTFlops[lte]
integer
Example: gpuTFlops[lte]=256

Filter by TFLOPS total (lower or equals than): value from 1 to 256

gpuMemorySize[gte]
integer
Example: gpuMemorySize[gte]=8192

Filter by GPU Memory size MB (greater or equal than): value from 8192 to 524288

gpuMemorySize[lte]
integer
Example: gpuMemorySize[lte]=524288

Filter by GPU Memory size MB (lower or equals than): value from 8192 to 524288

gpuPcieBandwidth[gte]
integer
Example: gpuPcieBandwidth[gte]=1

Filter by PCI-E bandwidth GBit/s (greater or equal than): value from 1 to 128

gpuPcieBandwidth[lte]
integer
Example: gpuPcieBandwidth[lte]=128

Filter by PCI-E bandwidth GBit/s (lower or equals than): value from 1 to 128

gpuDriverVer
string
Example: gpuDriverVer=1

Filter by Driver version

gpuDriverVerOperator
string
Enum: "=" "<=" ">="
Example: gpuDriverVerOperator==

Filter by Driver version - comparison method

gpuCudaVer
string
Example: gpuCudaVer=1

Filter by CUDA version

gpuCudaVerOperator
string
Enum: "=" "<=" ">="
Example: gpuCudaVerOperator==

Filter by CUDA version - comparison method

rentalStatus
string
Enum: "Any" "active" "inactive"
Example: rentalStatus=Any

Filter by Rental status:
Any
active - Available for rent
inactive - Rented

sla[gte]
integer
Example: sla[gte]=1

Filter by uptime % (greater or equal than): value from 1 to 100

sla[lte]
integer
Example: sla[lte]=100

Filter by uptime % (lower or equals than): value from 1 to 100

rentalTimeMin[gte]
integer
Example: rentalTimeMin[gte]=1

Filter by min duration h (greater or equal than): value from 1 to 8600

rentalTimeMin[lte]
integer
Example: rentalTimeMin[lte]=8600

Filter by min duration h (lower or equals than): value from 1 to 8600

pricePerGpu[gte]
integer

Filter by price $/hour (greater or equal than): value from 0 to 5

pricePerGpu[lte]
integer
Example: pricePerGpu[lte]=5

Filter by price $/hour (lower or equals than): value from 0 to 5

pricePerTFlops[gte]
integer

Filter by price TFLOPS/$/hour (greater or equal than): value from 0 to 200

pricePerTFlops[lte]
integer
Example: pricePerTFlops[lte]=200

Filter by price TFLOPS/$/hour (lower or equals than): value from 0 to 200

pricePerDlp[gte]
integer

Filter by price DLP/$/hour (greater or equal than): value from 0 to 200

pricePerDlp[lte]
integer
Example: pricePerDlp[lte]=200

Filter by price DLP/$/hour (lower or equals than): value from 0 to 200

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/market/list?rentalStatus=active' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]

Global templates

List of global templates

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

search
string
Example: search=ubuntu

Filter by search phrase

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/global-templates/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]

Global template details

Get global template details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Template ID

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/global-templates/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{
  • "id": 0,
  • "imageName": "string",
  • "categoryName": "string",
  • "defaultTag": "string",
  • "diskSize": 0,
  • "exposePorts": "string",
  • "startScript": "string",
  • "argOptions": [
    ],
  • "envVariables": [
    ],
  • "notes": "string",
  • "host": "string",
  • "username": "string",
  • "password": "string",
  • "isPublic": true,
  • "isPasswordProtected": true,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

My Template Groups

List of my template groups

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

search
string
Example: search=ubuntu

Filter by search phrase

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/templates/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]

My Template Group details

Get my template template group details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Template ID

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/templates/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{
  • "id": 0,
  • "imageName": "string",
  • "categoryName": "string",
  • "defaultTag": "string",
  • "diskSize": 0,
  • "exposePorts": "string",
  • "startScript": "string",
  • "argOptions": [
    ],
  • "envVariables": [
    ],
  • "notes": "string",
  • "host": "string",
  • "username": "string",
  • "password": "string",
  • "isPublic": true,
  • "isPasswordProtected": true,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

Update Template Group

Change Template Group details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/json
host
string

Host of private docker hub

username
string

Username of private docker hub

password
string

password of private docker hub

name
string

Name of template

imageName
string

Name of image

categoryName
number

Category of image

defaultTag
number

Tag of image

diskSize
integer

Size of instances created with this template

exposePorts
string

Provide comma separated port numbers

startScript
number

Autostart bash script

argOptions
string

Docker image ARG

envVariables
Array of any

ENV variables

notes
string

Notes

isPasswordProtected
boolean

Custom repository server

isRunSshServerOn
boolean

SSH server

isRunJupyterOn
boolean

Jupyter Notebook

Responses

Request samples

Content type
application/json
{
  • "username": "simplemining",
  • "password": "password",
  • "name": "ubuntu",
  • "imageName": "ubuntu",
  • "categoryName": "ubuntu",
  • "defaultTag": "latest",
  • "diskSize": 32,
  • "exposePorts": "22,80,443",
  • "startScript": 0,
  • "argOptions": "string",
  • "envVariables": "[ { \"name\": \"ENV1\", \"value\": \"VALUE1\" } ]",
  • "notes": "string",
  • "isPasswordProtected": false,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

Response samples

Content type
application/json
{ }

Add Template Group

Add Template Group

Authorizations:
apiKey
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/json
host
string

Host of private docker hub

username
string

Username of private docker hub

password
string

password of private docker hub

name
string

Name of template

imageName
string

Name of image

categoryName
number

Category of image

defaultTag
number

Tag of image

diskSize
integer

Size of instances created with this template

exposePorts
string

Provide comma separated port numbers

startScript
number

Autostart bash script

argOptions
string

Docker image ARG

envVariables
Array of any

ENV variables

notes
string

Notes

isPasswordProtected
boolean

Custom repository server

isRunSshServerOn
boolean

SSH server

isRunJupyterOn
boolean

Jupyter Notebook

Responses

Request samples

Content type
application/json
{
  • "username": "simplemining",
  • "password": "password",
  • "name": "ubuntu",
  • "imageName": "ubuntu",
  • "categoryName": "ubuntu",
  • "defaultTag": "latest",
  • "diskSize": 32,
  • "exposePorts": "22,80,443",
  • "startScript": 0,
  • "argOptions": "string",
  • "envVariables": "[ { \"name\": \"ENV1\", \"value\": \"VALUE1\" } ]",
  • "notes": "string",
  • "isPasswordProtected": false,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

Response samples

Content type
application/json
{ }

My Instances

My Instances list

List of my instances

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

search
string
Example: search=ubuntu

Filter by search phrase

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]

Execute Reboot

Execute Reboot on Instances by IDs

Authorizations:
apiKey
header Parameters
Content-Type
required
string
Example: application/merge-patch+json
Request Body schema: application/merge-patch+json
instanceIds
Array of any

Provide Instance IDs

Responses

Request samples

Content type
application/merge-patch+json
{
  • "instanceIds": [
    ]
}

Response samples

Content type
application/json
{ }

My instance details

Get my instance details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Instance ID

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{
  • "id": 0,
  • "hashId": "string",
  • "name": "string",
  • "notes": "string",
  • "gpuModel": "string",
  • "gpuMemorySize": 0,
  • "gpuCount": 0,
  • "cpuCoreCount": 0,
  • "systemMemory": 0,
  • "diskSize": 0,
  • "diskSizeMax": 0,
  • "status": "active",
  • "duration": 0,
  • "rentalType": "demand",
  • "pricePerGpu": 0,
  • "pricePerDiskSize": 0,
  • "priceAutoRenewMax": 0,
  • "expiresAt": "2025-05-10T13:59:01+02:00",
  • "autoRenewAt": "2025-05-10T13:59:01+02:00",
  • "isAutoRenewOn": true,
  • "instanceTemplate": {
    },
  • "ports": {
    },
  • "cpuUsage": 0,
  • "memUsage": 0,
  • "diskUsage": 0,
  • "processUptime": 0,
  • "console": "string",
  • "consoleSystem": "string"
}

Update Instance

Change Instance details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/json
isAutoRenewOn
boolean

Set Allow Auto Renew

priceAutoRenewMax
number

Set max price for auto renew

notes
string

Set notes

instanceTemplate
string

IRI of template

name
string

Set name of instance

envVariables
Array of any

ENV variables

Responses

Request samples

Content type
application/json
{
  • "isAutoRenewOn": true,
  • "priceAutoRenewMax": 1,
  • "notes": "notes here",
  • "instanceTemplate": "/instances/templates/29",
  • "name": "sensible_pangolin",
  • "envVariables": [
    ]
}

Response samples

Content type
application/json
{ }

Delete My Instance

Delete Instance by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Instance ID

Responses

Request samples

curl --location --request DELETE 'https://api.simplemining.net/instances/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{}

Rent Instance

Rent instance

Authorizations:
apiKey
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/json
gpuCount
integer

Number of GPUs

instanceMarket
number

IRI of instance market

instanceTemplate
string

IRI of template group

envVariables
Array of any

ENV variables

Responses

Request samples

Content type
application/json
{
  • "gpuCount": 1,
  • "instanceMarket": "/instances/market/1",
  • "instanceTemplate": "/instances/templates/29",
  • "envVariables": "[ { \"name\": \"ENV1\", \"value\": \"VALUE1\" } ]"
}

Response samples

Content type
application/json
{ }

Templates

Global templates

List of global templates

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

search
string
Example: search=ubuntu

Filter by search phrase

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/global-templates/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]

Global template details

Get global template details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Template ID

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/global-templates/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{
  • "id": 0,
  • "imageName": "string",
  • "categoryName": "string",
  • "defaultTag": "string",
  • "diskSize": 0,
  • "exposePorts": "string",
  • "startScript": "string",
  • "argOptions": [
    ],
  • "envVariables": [
    ],
  • "notes": "string",
  • "host": "string",
  • "username": "string",
  • "password": "string",
  • "isPublic": true,
  • "isPasswordProtected": true,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

My Template Groups

List of my template groups

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

search
string
Example: search=ubuntu

Filter by search phrase

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/templates/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]

My Template Group details

Get my template template group details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Template ID

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/templates/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{
  • "id": 0,
  • "imageName": "string",
  • "categoryName": "string",
  • "defaultTag": "string",
  • "diskSize": 0,
  • "exposePorts": "string",
  • "startScript": "string",
  • "argOptions": [
    ],
  • "envVariables": [
    ],
  • "notes": "string",
  • "host": "string",
  • "username": "string",
  • "password": "string",
  • "isPublic": true,
  • "isPasswordProtected": true,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

Update Template Group

Change Template Group details by ID

Authorizations:
apiKey
path Parameters
id
required
integer
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/json
host
string

Host of private docker hub

username
string

Username of private docker hub

password
string

password of private docker hub

name
string

Name of template

imageName
string

Name of image

categoryName
number

Category of image

defaultTag
number

Tag of image

diskSize
integer

Size of instances created with this template

exposePorts
string

Provide comma separated port numbers

startScript
number

Autostart bash script

argOptions
string

Docker image ARG

envVariables
Array of any

ENV variables

notes
string

Notes

isPasswordProtected
boolean

Custom repository server

isRunSshServerOn
boolean

SSH server

isRunJupyterOn
boolean

Jupyter Notebook

Responses

Request samples

Content type
application/json
{
  • "username": "simplemining",
  • "password": "password",
  • "name": "ubuntu",
  • "imageName": "ubuntu",
  • "categoryName": "ubuntu",
  • "defaultTag": "latest",
  • "diskSize": 32,
  • "exposePorts": "22,80,443",
  • "startScript": 0,
  • "argOptions": "string",
  • "envVariables": "[ { \"name\": \"ENV1\", \"value\": \"VALUE1\" } ]",
  • "notes": "string",
  • "isPasswordProtected": false,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

Response samples

Content type
application/json
{ }

Delete Template Group

Delete Instance by ID

Authorizations:
apiKey
path Parameters
id
required
integer
Example: 1

Instance ID

Responses

Request samples

curl --location --request DELETE 'https://api.simplemining.net/instances/templates/1' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{}

Add Template Group

Add Template Group

Authorizations:
apiKey
header Parameters
Content-Type
required
string
Example: application/json
Request Body schema: application/json
host
string

Host of private docker hub

username
string

Username of private docker hub

password
string

password of private docker hub

name
string

Name of template

imageName
string

Name of image

categoryName
number

Category of image

defaultTag
number

Tag of image

diskSize
integer

Size of instances created with this template

exposePorts
string

Provide comma separated port numbers

startScript
number

Autostart bash script

argOptions
string

Docker image ARG

envVariables
Array of any

ENV variables

notes
string

Notes

isPasswordProtected
boolean

Custom repository server

isRunSshServerOn
boolean

SSH server

isRunJupyterOn
boolean

Jupyter Notebook

Responses

Request samples

Content type
application/json
{
  • "username": "simplemining",
  • "password": "password",
  • "name": "ubuntu",
  • "imageName": "ubuntu",
  • "categoryName": "ubuntu",
  • "defaultTag": "latest",
  • "diskSize": 32,
  • "exposePorts": "22,80,443",
  • "startScript": 0,
  • "argOptions": "string",
  • "envVariables": "[ { \"name\": \"ENV1\", \"value\": \"VALUE1\" } ]",
  • "notes": "string",
  • "isPasswordProtected": false,
  • "isRunSshServerOn": true,
  • "isRunJupyterOn": true
}

Response samples

Content type
application/json
{ }

Billing

List of usage

List of usage

Authorizations:
apiKey
query Parameters
instanceId
integer
Example: instanceId=1

Instance ID

itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/billing/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
{ }

Deposits

List of your deposits

Authorizations:
apiKey
query Parameters
itemsPerPage
integer
Example: itemsPerPage=100

Number of items returned

page
integer
Example: page=1

Number of page

Responses

Request samples

curl --location --request GET 'https://api.simplemining.net/instances/deposit/list' \
--header 'X-AUTH-TOKEN: apiKey'

Response samples

Content type
application/json
[
  • {
    }
]