Introduction
This documentation aims to provide all the information you need to work with our API.
Authenticating requests
To authenticate requests, include an Authorization
header with the value "Bearer {YOUR_AUTH_KEY}"
.
All authenticated endpoints are marked with a requires authentication
badge in the documentation below.
You can retrieve your token by visiting your dashboard and clicking Generate API token.
User profile
Get User details
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/user" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/user"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/user';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/user'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": 442,
"name": "Princess Abshire IV",
"email": "rosalee96@example.org",
"mobile": null,
"credit": 0,
"email_verified": true,
"mobile_verified": false
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Project management
APIs for managing user projects
Get list of all user projects
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": "3u3N8wrPRTp9uW1H",
"hash": "3u3N8wrPRTp9uW1H",
"name": "Belle Bins",
"created_at": "2023-12-30T04:09:55.000000Z",
"servers_count": 0,
"loadbalancers_count": 0
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new project
requires authentication
Example request:
curl --request POST \
"https://api.manageit.ir/api/v1/projects" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"zlzdupcseggwfgwtgxrplsqkwqcvt\"
}"
const url = new URL(
"https://api.manageit.ir/api/v1/projects"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "zlzdupcseggwfgwtgxrplsqkwqcvt"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'zlzdupcseggwfgwtgxrplsqkwqcvt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects'
payload = {
"name": "zlzdupcseggwfgwtgxrplsqkwqcvt"
}
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (201):
{
"data": {
"id": "w9c7MLQ9Tfcpgb9y",
"hash": "w9c7MLQ9Tfcpgb9y",
"name": "Dean Leannon",
"created_at": "2023-12-30T04:09:55.000000Z",
"servers_count": 0,
"loadbalancers_count": 0
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Show project details
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": "I4j9CD8G4xU8Hv3h",
"hash": "I4j9CD8G4xU8Hv3h",
"name": "Cary McLaughlin",
"created_at": "2023-12-30T04:09:55.000000Z",
"servers_count": 0,
"loadbalancers_count": 0
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update project details
requires authentication
Example request:
curl --request PUT \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"br\"
}"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "br"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f';
$response = $client->put(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'br',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f'
payload = {
"name": "br"
}
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"data": {
"id": "frI91udua1s6L1Fh",
"hash": "frI91udua1s6L1Fh",
"name": "Murray Borer",
"created_at": "2023-12-30T04:09:55.000000Z",
"servers_count": 0,
"loadbalancers_count": 0
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a project
requires authentication
Example request:
curl --request DELETE \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
Example response (200):
{success: true}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Server management
APIs for managing servers
Get List of all available locations
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/servers/locations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/servers/locations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/servers/locations';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/servers/locations'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"1": {
"id": 4,
"name": "پارسیان",
"icon": {
"id": 203,
"name": "Iran",
"type": "flags",
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg"
},
"is_default": false,
"visible": true
},
"2": {
"id": 3,
"name": "شتاب",
"icon": {
"id": 203,
"name": "Iran",
"type": "flags",
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg"
},
"is_default": true,
"visible": true
},
"3": {
"id": 2,
"name": "امید",
"icon": {
"id": 203,
"name": "Iran",
"type": "flags",
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg"
},
"is_default": false,
"visible": true
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get List of all available OS
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/servers/os_images" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/servers/os_images"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/servers/os_images';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/servers/os_images'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": [
{
"id": 9,
"name": "Mikrotik",
"icon": {
"id": 357,
"name": "Mikrotik",
"type": "os",
"url": "https://svgur.com/i/108b.svg"
},
"versions": [
{
"id": 23,
"version": "7.11.2",
"position": 0.485,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 24,
"version": "6.49.8",
"position": 0.97,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 0.99
},
{
"id": 1,
"name": "AlmaLinux",
"icon": {
"id": 90,
"name": "AlmaLinux",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/almalinux.svg"
},
"versions": [
{
"id": 5,
"version": "9.2",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 4,
"version": "9.1",
"position": 2,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 3,
"version": "9.0",
"position": 3,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 2,
"version": "8.7",
"position": 4,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 1,
"version": "8.4",
"position": 5,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 1
},
{
"id": 2,
"name": "AlpineLinux",
"icon": {
"id": 84,
"name": "Alpine",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/alpine.svg"
},
"versions": [
{
"id": 6,
"version": "3.15",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 2
},
{
"id": 3,
"name": "CentOS",
"icon": {
"id": 83,
"name": "CentOS",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/centos.svg"
},
"versions": [
{
"id": 10,
"version": "9 Stream",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 9,
"version": "8 Stream",
"position": 2,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 8,
"version": "8",
"position": 3,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 7,
"version": "7",
"position": 4,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 3
},
{
"id": 4,
"name": "Debian",
"icon": {
"id": 77,
"name": "Debian",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/debian.svg"
},
"versions": [
{
"id": 14,
"version": "12",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 13,
"version": "11",
"position": 2,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 12,
"version": "10",
"position": 3,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 11,
"version": "9",
"position": 4,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 4
},
{
"id": 5,
"name": "RockyLinux",
"icon": {
"id": 92,
"name": "RockyLinux",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/rocky-linux.svg"
},
"versions": [
{
"id": 15,
"version": "8.4",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 25,
"version": "9",
"position": 16385,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 5
},
{
"id": 6,
"name": "Ubuntu",
"icon": {
"id": 81,
"name": "Ubuntu",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/ubuntu.svg"
},
"versions": [
{
"id": 18,
"version": "22.04",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 17,
"version": "20.04",
"position": 2,
"is_ssh_keys_supported": true,
"is_visible": true
},
{
"id": 16,
"version": "18.04",
"position": 3,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": true,
"is_visible": true,
"position": 6
},
{
"id": 7,
"name": "windows",
"icon": {
"id": 69,
"name": "Windows",
"type": "application",
"url": "https://srv.manageit.ir/shared/icons/windows.svg"
},
"versions": [
{
"id": 20,
"version": "2022 Evaluation",
"position": 1,
"is_ssh_keys_supported": false,
"is_visible": true
},
{
"id": 19,
"version": "2019",
"position": 2,
"is_ssh_keys_supported": false,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 7
},
{
"id": 10,
"name": "Fedora",
"icon": {
"id": 78,
"name": "Fedora",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/fedora.svg"
},
"versions": [
{
"id": 26,
"version": "Latest",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 8
},
{
"id": 11,
"name": "OpenSUSE",
"icon": {
"id": 89,
"name": "Suse",
"type": "os",
"url": "https://srv.manageit.ir/shared/icons/suse.svg"
},
"versions": [
{
"id": 27,
"version": "Latest",
"position": 1,
"is_ssh_keys_supported": true,
"is_visible": true
}
],
"is_default": false,
"is_visible": true,
"position": 9
}
],
"links": {
"first": "https://srv.manageit.ir/api/v1/os_images?page=1",
"last": "https://srv.manageit.ir/api/v1/os_images?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "https://srv.manageit.ir/api/v1/os_images?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "https://srv.manageit.ir/api/v1/os_images",
"per_page": 50,
"to": 10,
"total": 10
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get List of all available plans for selected location
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/servers/plans/4" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/servers/plans/4"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/servers/plans/4';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/servers/plans/4'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"2": {
"id": 40,
"name": "GH-1",
"params": {
"vcpu": 1,
"ram": 1073741824,
"disk": 25
},
"price_per_month": 219000,
"price_per_hour": 305,
"visible": true
},
"3": {
"id": 41,
"name": "GH-2",
"params": {
"vcpu": 1,
"ram": 2147483648,
"disk": 50
},
"price_per_month": 370000,
"price_per_hour": 514,
"visible": true
},
"4": {
"id": 42,
"name": "GH-3",
"params": {
"vcpu": 2,
"ram": 2147483648,
"disk": 75
},
"price_per_month": 540000,
"price_per_hour": 760,
"visible": true
},
"5": {
"id": 43,
"name": "GH-4",
"params": {
"vcpu": 2,
"ram": 4294967296,
"disk": 75
},
"price_per_month": 650000,
"price_per_hour": 903,
"visible": true
},
"6": {
"id": 44,
"name": "GH-5",
"params": {
"vcpu": 4,
"ram": 4294967296,
"disk": 75
},
"price_per_month": 780000,
"price_per_hour": 1084,
"visible": true
},
"7": {
"id": 45,
"name": "GH-6",
"params": {
"vcpu": 4,
"ram": 8589934592,
"disk": 75
},
"price_per_month": 1000000,
"price_per_hour": 1389,
"visible": true
},
"8": {
"id": 46,
"name": "GH-7",
"params": {
"vcpu": 6,
"ram": 12884901888,
"disk": 150
},
"price_per_month": 1500000,
"price_per_hour": 2084,
"visible": true
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get List of all servers
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": "75z30WJRph9Yiiti",
"hash": "75z30WJRph9Yiiti",
"uuid": null,
"name": "localhost",
"username": "root",
"password": "123456",
"plan_name": "test",
"price": 720000,
"total_price_usage": 0,
"real_status": "started",
"status": "active",
"specifications": [],
"location": null,
"settings": [],
"payment_type": "hourly",
"created_at": "1 ثانیه پیش",
"traffic": 0,
"ips": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create new server
requires authentication
Example request:
curl --request POST \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"location\": 20,
\"plan\": 5,
\"os\": 17,
\"hostname\": \"nvnalokebvmrsatyzqwscq\",
\"password\": \"Dg.u!G_%XA+e3oNLzmp@\",
\"ssh_keys\": [
17
]
}"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"location": 20,
"plan": 5,
"os": 17,
"hostname": "nvnalokebvmrsatyzqwscq",
"password": "Dg.u!G_%XA+e3oNLzmp@",
"ssh_keys": [
17
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'location' => 20,
'plan' => 5,
'os' => 17,
'hostname' => 'nvnalokebvmrsatyzqwscq',
'password' => 'Dg.u!G_%XA+e3oNLzmp@',
'ssh_keys' => [
17,
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers'
payload = {
"location": 20,
"plan": 5,
"os": 17,
"hostname": "nvnalokebvmrsatyzqwscq",
"password": "Dg.u!G_%XA+e3oNLzmp@",
"ssh_keys": [
17
]
}
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"data": {
"id": "SsuFOk9MRIY5k33R",
"hash": "SsuFOk9MRIY5k33R",
"uuid": null,
"name": "localhost",
"username": "root",
"password": "123456",
"plan_name": "test",
"price": 720000,
"total_price_usage": 0,
"real_status": "started",
"status": "active",
"specifications": [],
"location": null,
"settings": [],
"payment_type": "hourly",
"created_at": "1 ثانیه پیش",
"traffic": 0,
"ips": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get server details
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": "8XuAXHsqwNIjSpxb",
"hash": "8XuAXHsqwNIjSpxb",
"uuid": "5b5ca1ce-b122-4f9a-bea9-31aab568fdcd",
"name": "electoral-pink",
"username": "root",
"password": "test-password",
"plan_name": "GH-1",
"price": 219000,
"total_price_usage": 0,
"real_status": "started",
"status": "active",
"specifications": {
"ram": 1073741824,
"disk": 25,
"vcpu": 1
},
"location": {
"id": 3,
"icon": {
"id": 203,
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg",
"name": "Iran",
"type": "flags"
},
"name": "شتاب",
"position": 0.98,
"is_default": true,
"is_visible": true,
"description": "دیتاسنتر شتاب"
},
"settings": {
"user": "root",
"os_image": {
"url": "https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img",
"icon": "https://srv.manageit.ir/shared/icons/ubuntu.svg",
"name": "Ubuntu 22.04",
"type": "os_image",
"cloud_init_version": "v2"
},
"disk_driver": "scsi",
"mac_address": "52:54:00:3b:bf:83",
"vnc_enabled": true,
"vnc_password": "2t8EsWnS",
"disk_cache_mode": "none",
"guest_agent_available": false,
"guest_tools_installed": true,
"application_login_link": []
},
"payment_type": "hourly",
"created_at": "15 ثانیه پیش",
"traffic": 0,
"ips": [
{
"ip": "2.189.242.222",
"range": null,
"type": "ipv4",
"is_primary": true,
"gateway": "2.189.242.129",
"created_at": "2023-12-30T00:45:58.000000Z"
},
{
"ip": "2a07:4282:11:377::116",
"range": "2a07:4282:11:377::116/128",
"type": "ipv6",
"is_primary": true,
"gateway": "2a07:4282:11:377::1",
"created_at": "2023-12-30T00:45:58.000000Z"
}
]
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a server
requires authentication
Example request:
curl --request DELETE \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/servers/Ov1AZGW13h4MTW5f'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
Example response (200):
{
"success": true
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
LoadBalancer management
APIs for managing LoadBalancers
Get List of all available locations
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/load_balancers/locations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/load_balancers/locations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/load_balancers/locations';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/load_balancers/locations'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"1": {
"id": 4,
"name": "پارسیان",
"icon": {
"id": 203,
"name": "Iran",
"type": "flags",
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg"
},
"is_default": false,
"visible": true
},
"2": {
"id": 3,
"name": "شتاب",
"icon": {
"id": 203,
"name": "Iran",
"type": "flags",
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg"
},
"is_default": true,
"visible": true
},
"3": {
"id": 2,
"name": "امید",
"icon": {
"id": 203,
"name": "Iran",
"type": "flags",
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg"
},
"is_default": false,
"visible": true
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get List of all available plans
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/load_balancers/plans" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/load_balancers/plans"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/load_balancers/plans';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/load_balancers/plans'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"1": {
"id": 31,
"plan": 31,
"name": "LB01",
"performance": 1,
"services": 5,
"targets": 25,
"price": 400000
},
"2": {
"id": 18,
"plan": 18,
"name": "LB02",
"performance": 2,
"services": 15,
"targets": 75,
"price": 900000
},
"3": {
"id": 19,
"plan": 19,
"name": "LB03",
"performance": 4,
"services": 30,
"targets": 150,
"price": 2500000
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create loadbalancer reports
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f/reports" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f/reports"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f/reports';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f/reports'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"bk_web_443": [
{
"svname": "eof7z1dhLS9VD4FD",
"status": "UP",
"mode": "tcp",
"server": "8.8.8.8",
"port": "443"
},
{
"svname": "LsQdG21uXIon3AYI",
"status": "UP",
"mode": "tcp",
"server": "4.2.2.4",
"port": "443"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Reinstall loadbalancer
requires authentication
Example request:
curl --request POST \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/13/reinstall" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/13/reinstall"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/13/reinstall';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/13/reinstall'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": "ze5k1MQ2uHz9JMQf",
"hash": "ze5k1MQ2uHz9JMQf",
"name": "ideological-olive",
"uuid": "d637c6d0-c8c7-40a5-92a7-b339c001e0aa",
"algorithm": "roundrobin",
"plan": 31,
"plan_name": "LB01",
"price": 400000,
"network_incoming": 0,
"network_outgoing": 0,
"real_status": "started",
"status": "active",
"location": {
"id": 3,
"icon": {
"id": 203,
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg",
"name": "Iran",
"type": "flags"
},
"name": "شتاب",
"position": 0.98,
"is_default": true,
"is_visible": true,
"description": "دیتاسنتر شتاب"
},
"created_at": "15 ثانیه پیش",
"services": [
{
"protocol": "tcp",
"source_port": 443,
"destination_port": 443,
"health_check": true,
"proxy": false,
"use_ssl": false,
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"targets": [
{
"name": "p2bNqiIPLZ8uvVkr",
"ip": "manageit.ir",
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"traffic": 0,
"total_price_usage": 0,
"payment_type": "hourly",
"ips": [
{
"ip": "2.189.255.210",
"range": null,
"type": "ipv4",
"is_primary": true,
"gateway": "2.189.255.129",
"created_at": "2023-12-30T00:56:21.000000Z"
},
{
"ip": "2a07:4282:11:377::16b",
"range": "2a07:4282:11:377::16b/128",
"type": "ipv6",
"is_primary": true,
"gateway": "2a07:4282:11:377::1",
"created_at": "2023-12-30T00:56:21.000000Z"
}
],
"domains": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get List of all loadbalancers
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": [
{
"id": "ze5k1MQ2uHz9JMQf",
"hash": "ze5k1MQ2uHz9JMQf",
"name": "ideological-olive",
"uuid": "d637c6d0-c8c7-40a5-92a7-b339c001e0aa",
"algorithm": "roundrobin",
"plan": 31,
"plan_name": "LB01",
"price": 400000,
"network_incoming": 0,
"network_outgoing": 0,
"real_status": "not exist",
"status": "active",
"location": {
"id": 3,
"icon": {
"id": 203,
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg",
"name": "Iran",
"type": "flags"
},
"name": "شتاب",
"position": 0.98,
"is_default": true,
"is_visible": true,
"description": "دیتاسنتر شتاب"
},
"created_at": "9 دقیقه پیش",
"services": [
{
"protocol": "tcp",
"source_port": 443,
"destination_port": 443,
"health_check": true,
"proxy": false,
"use_ssl": false,
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"targets": [
{
"name": "p2bNqiIPLZ8uvVkr",
"ip": "manageit.ir",
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"traffic": 0,
"total_price_usage": 0,
"payment_type": "hourly",
"ips": [
{
"ip": "2.189.255.210",
"range": null,
"type": "ipv4",
"is_primary": true,
"gateway": "2.189.255.129",
"created_at": "2023-12-30T00:56:21.000000Z"
},
{
"ip": "2a07:4282:11:377::16b",
"range": "2a07:4282:11:377::16b/128",
"type": "ipv6",
"is_primary": true,
"gateway": "2a07:4282:11:377::1",
"created_at": "2023-12-30T00:56:21.000000Z"
}
],
"domains": []
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create new loadbalancer
requires authentication
Example request:
curl --request POST \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"pieqaqjqhngzoopoxddbu\",
\"plan\": \"19\",
\"location\": 8,
\"algorithm\": \"roundrobin\",
\"targets\": [
{
\"ip\": \"odit\"
}
],
\"services\": [
{
\"source_port\": 1,
\"destination_port\": 1,
\"health_check\": false,
\"proxy\": false
}
]
}"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "pieqaqjqhngzoopoxddbu",
"plan": "19",
"location": 8,
"algorithm": "roundrobin",
"targets": [
{
"ip": "odit"
}
],
"services": [
{
"source_port": 1,
"destination_port": 1,
"health_check": false,
"proxy": false
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'pieqaqjqhngzoopoxddbu',
'plan' => '19',
'location' => 8,
'algorithm' => 'roundrobin',
'targets' => [
[
'ip' => 'odit',
],
],
'services' => [
[
'source_port' => 1,
'destination_port' => 1,
'health_check' => false,
'proxy' => false,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers'
payload = {
"name": "pieqaqjqhngzoopoxddbu",
"plan": "19",
"location": 8,
"algorithm": "roundrobin",
"targets": [
{
"ip": "odit"
}
],
"services": [
{
"source_port": 1,
"destination_port": 1,
"health_check": false,
"proxy": false
}
]
}
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"data": {
"id": "ze5k1MQ2uHz9JMQf",
"hash": "ze5k1MQ2uHz9JMQf",
"name": "ideological-olive",
"uuid": "d637c6d0-c8c7-40a5-92a7-b339c001e0aa",
"algorithm": "roundrobin",
"plan": 31,
"plan_name": "LB01",
"price": 400000,
"network_incoming": 0,
"network_outgoing": 0,
"real_status": "started",
"status": "active",
"location": {
"id": 3,
"icon": {
"id": 203,
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg",
"name": "Iran",
"type": "flags"
},
"name": "شتاب",
"position": 0.98,
"is_default": true,
"is_visible": true,
"description": "دیتاسنتر شتاب"
},
"created_at": "15 ثانیه پیش",
"services": [
{
"protocol": "tcp",
"source_port": 443,
"destination_port": 443,
"health_check": true,
"proxy": false,
"use_ssl": false,
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"targets": [
{
"name": "p2bNqiIPLZ8uvVkr",
"ip": "manageit.ir",
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"traffic": 0,
"total_price_usage": 0,
"payment_type": "hourly",
"ips": [
{
"ip": "2.189.255.210",
"range": null,
"type": "ipv4",
"is_primary": true,
"gateway": "2.189.255.129",
"created_at": "2023-12-30T00:56:21.000000Z"
},
{
"ip": "2a07:4282:11:377::16b",
"range": "2a07:4282:11:377::16b/128",
"type": "ipv6",
"is_primary": true,
"gateway": "2a07:4282:11:377::1",
"created_at": "2023-12-30T00:56:21.000000Z"
}
],
"domains": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get loadbalancer details
requires authentication
Example request:
curl --request GET \
--get "https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"data": {
"id": "ze5k1MQ2uHz9JMQf",
"hash": "ze5k1MQ2uHz9JMQf",
"name": "ideological-olive",
"uuid": "d637c6d0-c8c7-40a5-92a7-b339c001e0aa",
"algorithm": "roundrobin",
"plan": 31,
"plan_name": "LB01",
"price": 400000,
"network_incoming": 0,
"network_outgoing": 0,
"real_status": "started",
"status": "active",
"location": {
"id": 3,
"icon": {
"id": 203,
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg",
"name": "Iran",
"type": "flags"
},
"name": "شتاب",
"position": 0.98,
"is_default": true,
"is_visible": true,
"description": "دیتاسنتر شتاب"
},
"created_at": "15 ثانیه پیش",
"services": [
{
"protocol": "tcp",
"source_port": 443,
"destination_port": 443,
"health_check": true,
"proxy": false,
"use_ssl": false,
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"targets": [
{
"name": "p2bNqiIPLZ8uvVkr",
"ip": "manageit.ir",
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"traffic": 0,
"total_price_usage": 0,
"payment_type": "hourly",
"ips": [
{
"ip": "2.189.255.210",
"range": null,
"type": "ipv4",
"is_primary": true,
"gateway": "2.189.255.129",
"created_at": "2023-12-30T00:56:21.000000Z"
},
{
"ip": "2a07:4282:11:377::16b",
"range": "2a07:4282:11:377::16b/128",
"type": "ipv6",
"is_primary": true,
"gateway": "2a07:4282:11:377::1",
"created_at": "2023-12-30T00:56:21.000000Z"
}
],
"domains": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update loadbalancer
requires authentication
Example request:
curl --request PUT \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"mi\",
\"plan\": \"31\",
\"algorithm\": \"roundrobin\",
\"targets\": [
{
\"ip\": \"iure\"
}
],
\"services\": [
{
\"source_port\": 1,
\"destination_port\": 1,
\"health_check\": true,
\"use_ssl\": false,
\"proxy\": true
}
]
}"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "mi",
"plan": "31",
"algorithm": "roundrobin",
"targets": [
{
"ip": "iure"
}
],
"services": [
{
"source_port": 1,
"destination_port": 1,
"health_check": true,
"use_ssl": false,
"proxy": true
}
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f';
$response = $client->put(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'mi',
'plan' => '31',
'algorithm' => 'roundrobin',
'targets' => [
[
'ip' => 'iure',
],
],
'services' => [
[
'source_port' => 1,
'destination_port' => 1,
'health_check' => true,
'use_ssl' => false,
'proxy' => true,
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f'
payload = {
"name": "mi",
"plan": "31",
"algorithm": "roundrobin",
"targets": [
{
"ip": "iure"
}
],
"services": [
{
"source_port": 1,
"destination_port": 1,
"health_check": true,
"use_ssl": false,
"proxy": true
}
]
}
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"data": {
"id": "ze5k1MQ2uHz9JMQf",
"hash": "ze5k1MQ2uHz9JMQf",
"name": "ideological-olive",
"uuid": "d637c6d0-c8c7-40a5-92a7-b339c001e0aa",
"algorithm": "roundrobin",
"plan": 31,
"plan_name": "LB01",
"price": 400000,
"network_incoming": 0,
"network_outgoing": 0,
"real_status": "started",
"status": "active",
"location": {
"id": 3,
"icon": {
"id": 203,
"url": "https://srv.manageit.ir/shared/icons/flags/iran.svg",
"name": "Iran",
"type": "flags"
},
"name": "شتاب",
"position": 0.98,
"is_default": true,
"is_visible": true,
"description": "دیتاسنتر شتاب"
},
"created_at": "15 ثانیه پیش",
"services": [
{
"protocol": "tcp",
"source_port": 443,
"destination_port": 443,
"health_check": true,
"proxy": false,
"use_ssl": false,
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"targets": [
{
"name": "p2bNqiIPLZ8uvVkr",
"ip": "manageit.ir",
"created_at": "2023-12-30T00:56:21.000000Z",
"updated_at": "2023-12-30T00:56:21.000000Z"
}
],
"traffic": 0,
"total_price_usage": 0,
"payment_type": "hourly",
"ips": [
{
"ip": "2.189.255.210",
"range": null,
"type": "ipv4",
"is_primary": true,
"gateway": "2.189.255.129",
"created_at": "2023-12-30T00:56:21.000000Z"
},
{
"ip": "2a07:4282:11:377::16b",
"range": "2a07:4282:11:377::16b/128",
"type": "ipv6",
"is_primary": true,
"gateway": "2a07:4282:11:377::1",
"created_at": "2023-12-30T00:56:21.000000Z"
}
],
"domains": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete loadbalancer
requires authentication
Example request:
curl --request DELETE \
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://api.manageit.ir/api/v1/projects/Ov1AZGW13h4MTW5f/load_balancers/Ov1AZGW13h4MTW5f'
headers = {
'Authorization': 'Bearer {YOUR_AUTH_KEY}',
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
Example response (200):
{
"success": true
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.