Reinstall the OS
curl --request POST \
--url https://my.server.express/api/v1/cloud/{id}/reinstall \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"os": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({os: '<string>'})
};
fetch('https://my.server.express/api/v1/cloud/{id}/reinstall', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://my.server.express/api/v1/cloud/{id}/reinstall"
payload = { "os": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"data": {
"taskId": "<string>",
"os": "<string>",
"osName": "<string>"
}
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>",
"data": {
"taskId": "<string>",
"limit": 123,
"used": 123
}
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}Cloud
Reinstall the OS
Wipes the VM and redeploys it from the chosen OS template. The old VM is destroyed and a fresh clone made; the reserved IP is kept and a new root password is set. Returns 202 with a task id straight away — the rebuild takes minutes, and every other control on the server is refused until it lands. Needs the operate role. Only ACTIVE services can be reinstalled (409 otherwise), and 409 if another task is already running on the server.
POST
/
v1
/
cloud
/
{id}
/
reinstall
Reinstall the OS
curl --request POST \
--url https://my.server.express/api/v1/cloud/{id}/reinstall \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"os": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({os: '<string>'})
};
fetch('https://my.server.express/api/v1/cloud/{id}/reinstall', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://my.server.express/api/v1/cloud/{id}/reinstall"
payload = { "os": "<string>" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"data": {
"taskId": "<string>",
"os": "<string>",
"osName": "<string>"
}
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>",
"data": {
"taskId": "<string>",
"limit": 123,
"used": 123
}
}{
"success": false,
"error": "<string>"
}{
"success": false,
"error": "<string>"
}Authorizations
bearerAuthapiToken
Session access token (JWT) from POST /v1/auth/login or /v1/auth/refresh. A session satisfies every API scope.
Path Parameters
Service id of the cloud server.
Body
application/json
Template slug from GET /v1/cloud/templates.
Minimum string length:
1