curl --request POST \
--url https://api.storiza.store/apps/{id}/reinstall \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"templateId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({templateId: '3c90c3cc-0d44-4b50-8888-8dd25736052a', version: '<string>'})
};
fetch('https://api.storiza.store/apps/{id}/reinstall', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.storiza.store/apps/{id}/reinstall"
payload = {
"templateId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"message": "App reinstalled",
"data": {
"id": "00000000-0000-4000-8000-000000000000",
"name": "Survival",
"hostname": "mc-survival",
"type": "game_server",
"owner": {
"id": "00000000-0000-4000-8000-000000000000"
},
"subscription": {
"id": "00000000-0000-4000-8000-000000000000"
},
"node": {
"id": "00000000-0000-4000-8000-000000000000"
},
"template": {
"id": "00000000-0000-4000-8000-000000000000"
},
"version": "latest",
"plan": {
"id": "00000000-0000-4000-8000-000000000000"
},
"group": null,
"state": "running",
"sftpUsername": "app-mc-survival",
"createdAt": "2026-10-09T14:57:33.884Z"
}
}Reinstall onto another template or version
Move the app onto a different template or version.
This is a reinstall, not an edit: the image changes, so the container is destroyed and rebuilt. It is the same operation either way, which is why picking a new version lives here rather than beside a rename.
The volume survives — that is the contract for every stop and start — and it is also the risk: the new image inherits the old one’s files and nothing guarantees it understands them. Take a backup first if the data matters.
A template of a different type is refused: the plan was sold against the type, so letting a game server become a database would move the app onto resources nobody priced. The environment is re-validated against the new template, so a value it does not accept fails before anything is rebuilt.
Required API key permission: apps:write
curl --request POST \
--url https://api.storiza.store/apps/{id}/reinstall \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"templateId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({templateId: '3c90c3cc-0d44-4b50-8888-8dd25736052a', version: '<string>'})
};
fetch('https://api.storiza.store/apps/{id}/reinstall', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.storiza.store/apps/{id}/reinstall"
payload = {
"templateId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"message": "App reinstalled",
"data": {
"id": "00000000-0000-4000-8000-000000000000",
"name": "Survival",
"hostname": "mc-survival",
"type": "game_server",
"owner": {
"id": "00000000-0000-4000-8000-000000000000"
},
"subscription": {
"id": "00000000-0000-4000-8000-000000000000"
},
"node": {
"id": "00000000-0000-4000-8000-000000000000"
},
"template": {
"id": "00000000-0000-4000-8000-000000000000"
},
"version": "latest",
"plan": {
"id": "00000000-0000-4000-8000-000000000000"
},
"group": null,
"state": "running",
"sftpUsername": "app-mc-survival",
"createdAt": "2026-10-09T14:57:33.884Z"
}
}Authorizations
An API key from the Storiza dashboard (API & Integrations), sent as Authorization: Bearer stz_….
Path Parameters
Response
App reinstalled
true App reinstalled Schema for App model
Show child attributes
Show child attributes
{
"id": "00000000-0000-4000-8000-000000000000",
"name": "Survival",
"hostname": "mc-survival",
"type": "game_server",
"owner": {
"id": "00000000-0000-4000-8000-000000000000"
},
"subscription": {
"id": "00000000-0000-4000-8000-000000000000"
},
"node": {
"id": "00000000-0000-4000-8000-000000000000"
},
"template": {
"id": "00000000-0000-4000-8000-000000000000"
},
"version": "latest",
"plan": {
"id": "00000000-0000-4000-8000-000000000000"
},
"group": null,
"state": "running",
"sftpUsername": "app-mc-survival",
"createdAt": "2026-10-09T14:57:33.884Z"
}
Was this page helpful?