RMM: agent updates
Automatic agent updates, how long RMM history is kept (utilisation, commands, logs), and hypervisor summaries.
| Method | Path | Summary |
|---|---|---|
| GET | /v1/admin/rmm/hypervisor-scope-summary | Hypervisors in a site or group |
| GET | /v1/admin/rmm/agent-updates | Agent update policy and devices behind |
| PUT | /v1/admin/rmm/agent-updates | Turn automatic agent updates on or off |
| GET | /v1/admin/rmm/history | History retention and usage |
| PUT | /v1/admin/rmm/history | Set how long RMM history is kept |
#Hypervisors in a site or group
GET
/v1/admin/rmm/hypervisor-scope-summary- Address
https://<your-org>.brambleit.cloud/api/v1/admin/rmm/hypervisor-scope-summary- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):RMM_ANY.
Query parameters
| Name | Type | Description |
|---|---|---|
scope_typerequired | string | site or group. |
scope_idrequired | integer | The site's or group's id. |
Response 200
| Field | Type | Description |
|---|---|---|
docker_hosts | number | |
proxmox_hosts | number | |
pbs_hosts | number | |
total_devices | number |
Example response
JSON
{
"docker_hosts": 12.5,
"proxmox_hosts": 12.5,
"pbs_hosts": 12.5,
"total_devices": 12.5
}Errors
| Status | Message |
|---|---|
| 400 | scope_type and scope_id are required |
| 400 | Invalid scope_type |
Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/hypervisor-scope-summary?scope_type=string&scope_id=7' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v1/admin/rmm/hypervisor-scope-summary?scope_type=string&scope_id=7', {
method: 'GET',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY },
});
const data = await res.json();Python
import os, requests
r = requests.get(
"https://<your-org>.brambleit.cloud/api/v1/admin/rmm/hypervisor-scope-summary?scope_type=string&scope_id=7",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
Invoke-RestMethod -Method GET -Uri 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/hypervisor-scope-summary?scope_type=string&scope_id=7' -Headers $headers#Agent update policy and devices behind
GET
/v1/admin/rmm/agent-updates- Address
https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):RMM_ANY.
Response 200
| Field | Type | Description |
|---|---|---|
policy | object | |
policy.tenant_id | integer | |
policy.enabled | boolean | |
policy.update_rmm | boolean | |
policy.update_remote | boolean | |
policy.schedule_days | string | |
policy.window_start | string (time) | |
policy.window_minutes | integer | |
policy.timezone | string | |
policy.max_parallel | integer | |
policy.excluded_devices | object, or null | |
policy.updated_by | string, or null | |
policy.updated_at | string (date-time), or null | |
devices | integer | |
rmm_behind | integer | |
remote_behind | integer |
Example response
JSON
{
"policy": {
"tenant_id": 1,
"enabled": true,
"update_rmm": false,
"update_remote": false,
"schedule_days": "string",
"window_start": "09:30:00",
"window_minutes": 1,
"timezone": "string",
"max_parallel": 1,
"excluded_devices": {},
"updated_by": "string",
"updated_at": "2026-11-12T09:30:00.000Z"
},
"devices": 1,
"rmm_behind": 1,
"remote_behind": 1
}Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates', {
method: 'GET',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY },
});
const data = await res.json();Python
import os, requests
r = requests.get(
"https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
Invoke-RestMethod -Method GET -Uri 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates' -Headers $headers#Turn automatic agent updates on or off
PUT
/v1/admin/rmm/agent-updatesOnly the switch is edited here; the rest of the policy keeps its values (or the defaults, the first time).
- Address
https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.enrollment.manage.
Request body JSON
| Name | Type | Description |
|---|---|---|
enabled | boolean |
Response 200
| Field | Type | Description |
|---|---|---|
enabled | boolean |
Example response
JSON
{
"enabled": true
}Example request
Bash
curl -X PUT 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates' \
-H "X-API-Key: $BRAMBLE_KEY" \
-H "Content-Type: application/json" \
-d '{"enabled":true}'JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates', {
method: 'PUT',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({"enabled":true}),
});
const data = await res.json();Python
import os, requests
r = requests.put(
"https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
json={"enabled":True},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
$body = '{"enabled":true}'
Invoke-RestMethod -Method PUT -Uri 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/agent-updates' -Headers $headers -ContentType 'application/json' -Body $body#History retention and usage
GET
/v1/admin/rmm/history- Address
https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.logs.manage.
Response 200
| Field | Type | Description |
|---|---|---|
settings | any | |
summary | any | |
logs | object | |
logs.settings | any | |
logs.total | integer |
Example response
JSON
{
"settings": null,
"summary": null,
"logs": {
"settings": null,
"total": 3
}
}Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history', {
method: 'GET',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY },
});
const data = await res.json();Python
import os, requests
r = requests.get(
"https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
Invoke-RestMethod -Method GET -Uri 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history' -Headers $headers#Set how long RMM history is kept
PUT
/v1/admin/rmm/history- Address
https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.logs.manage.
Request body JSON
| Name | Type | Description |
|---|---|---|
utilization_days | integer | Days of CPU, memory and disk history. |
command_days | integer | Days of command and script output. |
logs_days | integer | Days of collected logs. |
Response 200
| Field | Type | Description |
|---|---|---|
settings | any |
Example response
JSON
{
"settings": null
}Example request
Bash
curl -X PUT 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history' \
-H "X-API-Key: $BRAMBLE_KEY" \
-H "Content-Type: application/json" \
-d '{"utilization_days":1,"command_days":1,"logs_days":1}'JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history', {
method: 'PUT',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({"utilization_days":1,"command_days":1,"logs_days":1}),
});
const data = await res.json();Python
import os, requests
r = requests.put(
"https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
json={"utilization_days":1,"command_days":1,"logs_days":1},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
$body = '{"utilization_days":1,"command_days":1,"logs_days":1}'
Invoke-RestMethod -Method PUT -Uri 'https://<your-org>.brambleit.cloud/api/v1/admin/rmm/history' -Headers $headers -ContentType 'application/json' -Body $bodyWas this page helpful?
Thanks for your feedback.