Skip to content
GET/os-server-groups

List server groups

Returns a list of server groups in the current project.

Parameters

NameInTypeDescription
X-OpenStack-Nova-MicroversionheaderstringRequest a specific Nova microversion. Defaults to 2.1. Maximum supported on Rumble Cloud: **2.95**.
Example: 2.95

Responses

200List of server groups
server_groupsarray[object]
401Unauthorized
curl -X GET "https://nova.YOUR_REGION.rumble.cloud/v2.1/YOUR_PROJECT_ID/os-server-groups" \
  -H "X-Auth-Token: $TOKEN" \
  -H "X-OpenStack-Nova-Microversion: YOUR_X-OPENSTACK-NOVA-MICROVERSION"
POST/os-server-groups

Create server group

Creates a server group with a placement policy. To use the group when creating a server, pass `{"group": "server_group_uuid"}` in the `os:scheduler_hints` request body field. **Policies:** - `anti-affinity` — instances run on **different** compute hosts - `affinity` — instances run on the **same** compute host - `soft-anti-affinity` / `soft-affinity` — best-effort equivalents

Parameters

NameInTypeDescription
X-OpenStack-Nova-MicroversionheaderstringRequest a specific Nova microversion. Defaults to 2.1. Maximum supported on Rumble Cloud: **2.95**.
Example: 2.95

Request Bodyrequired

application/json
server_group*object

Responses

200Server group created
server_groupobjectA server group for placement policy enforcement
400Bad request
401Unauthorized
403Forbidden — quota exceeded
curl -X POST "https://nova.YOUR_REGION.rumble.cloud/v2.1/YOUR_PROJECT_ID/os-server-groups" \
  -H "X-Auth-Token: $TOKEN" \
  -H "X-OpenStack-Nova-Microversion: YOUR_X-OPENSTACK-NOVA-MICROVERSION" \
  -H "Content-Type: application/json" \
  -d '{
  "server_group": {
    "name": "web-tier-anti-affinity",
    "policies": [
      "anti-affinity"
    ]
  }
}'
GET/os-server-groups/{server_group_id}

Show server group

Returns details for a specific server group, including its current member servers.

Parameters

NameInTypeDescription
server_group_id*pathstringThe UUID of the server group
X-OpenStack-Nova-MicroversionheaderstringRequest a specific Nova microversion. Defaults to 2.1. Maximum supported on Rumble Cloud: **2.95**.
Example: 2.95

Responses

200Server group detail
server_groupobjectA server group for placement policy enforcement
401Unauthorized
404Server group not found
curl -X GET "https://nova.YOUR_REGION.rumble.cloud/v2.1/YOUR_PROJECT_ID/os-server-groups/YOUR_SERVER_GROUP_ID" \
  -H "X-Auth-Token: $TOKEN" \
  -H "X-OpenStack-Nova-Microversion: YOUR_X-OPENSTACK-NOVA-MICROVERSION"
DELETE/os-server-groups/{server_group_id}

Delete server group

Deletes a server group. Member servers are not affected — they remain running, but future server creation will no longer enforce the group's policy.

Parameters

NameInTypeDescription
server_group_id*pathstringThe UUID of the server group
X-OpenStack-Nova-MicroversionheaderstringRequest a specific Nova microversion. Defaults to 2.1. Maximum supported on Rumble Cloud: **2.95**.
Example: 2.95

Responses

204Server group deleted (no content)
401Unauthorized
404Server group not found
curl -X DELETE "https://nova.YOUR_REGION.rumble.cloud/v2.1/YOUR_PROJECT_ID/os-server-groups/YOUR_SERVER_GROUP_ID" \
  -H "X-Auth-Token: $TOKEN" \
  -H "X-OpenStack-Nova-Microversion: YOUR_X-OPENSTACK-NOVA-MICROVERSION"