Join or leave a group
curl --request PUT \
--url https://api.storiza.store/apps/{id}/group \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({groupId: '3c90c3cc-0d44-4b50-8888-8dd25736052a'})
};
fetch('https://api.storiza.store/apps/{id}/group', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.storiza.store/apps/{id}/group"
payload = { "groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text){
"success": true,
"message": "Group updated",
"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"
}
}App groups
Join or leave a group
Join a group, move between groups, or leave one by sending groupId: null.
A group is a shared Docker network on one node, so a group can only be joined by apps already on that node — joining one that lives elsewhere is refused rather than silently moving the app. The app’s hostname must also be free inside the group, because that is the name its peers resolve it by.
Takes effect on the next start. The container joins its networks when it is created, so a running app keeps the membership it started with — restart it to apply.
Required API key permission: apps:write
PUT
/
apps
/
{id}
/
group
Join or leave a group
curl --request PUT \
--url https://api.storiza.store/apps/{id}/group \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({groupId: '3c90c3cc-0d44-4b50-8888-8dd25736052a'})
};
fetch('https://api.storiza.store/apps/{id}/group', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.storiza.store/apps/{id}/group"
payload = { "groupId": "3c90c3cc-0d44-4b50-8888-8dd25736052a" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text){
"success": true,
"message": "Group updated",
"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
Body
application/json
Response
Group updated
Available options:
true Available options:
Group updated Schema for App model
Show child attributes
Show child attributes
Example:
{
"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?