Databases
MySQL/MariaDB servers found on devices: overview, backup settings and backups, and opening a backup as a read-only copy to browse its tables.
| Method | Path | Summary |
|---|---|---|
| GET | /v2/app/rmm-databases | Database servers overview |
| GET | /v2/app/rmm-databases/devices/:id | A server's databases, backups and settings |
| PUT | /v2/app/rmm-databases/devices/:id/settings | Set a server's backup settings |
| POST | /v2/app/rmm-databases/devices/:id/backup | Back up databases now |
| POST | /v2/app/rmm-databases/devices/:id/refresh | Refresh a server's overview now |
| GET | /v2/app/rmm-databases/backups/:id/download | Download a database backup |
| DELETE | /v2/app/rmm-databases/backups/:id | Delete a database backup |
| POST | /v2/app/rmm-databases/backups/:id/open | Opening a backup to look at its data: like a download, it shows everything |
| DELETE | /v2/app/rmm-databases/mounts/:id | Close an opened backup |
| POST | /v2/app/rmm-databases/mounts/:id/query | Browse an opened backup |
| GET | /v2/app/rmm-databases/mounts/:id/queries/:qid | Result of a browse request |
#Database servers overview
GET
/v2/app/rmm-databases- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Response 200
| Field | Type | Description |
|---|---|---|
servers | array of any | |
min_agent | string |
Example response
JSON
{
"servers": [],
"min_agent": "string",
"…perms(req)": "…"
}Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases', {
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/v2/app/rmm-databases",
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/v2/app/rmm-databases' -Headers $headers#A server's databases, backups and settings
GET
/v2/app/rmm-databases/devices/:id- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/:id- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | integer |
Response 200
Example response
JSON
{
"…await dbs.deviceDetail(r": "…",
"…perms(req)": "…"
}Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42', {
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/v2/app/rmm-databases/devices/42",
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/v2/app/rmm-databases/devices/42' -Headers $headers#Set a server's backup settings
PUT
/v2/app/rmm-databases/devices/:id/settings- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/:id/settings- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.manage.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | integer |
Request body JSON
| Name | Type | Description |
|---|---|---|
schedule_time | any | Time of day, HH:MM. |
schedule_days | array of any | Days of the week. |
schedule_enabled | boolean | Back up on a schedule. |
include_system | boolean | Include system databases. |
databases | array of any | Which databases (empty for all). |
login_password | any | Its password. |
login_user | string | A MySQL login to use (stored encrypted). |
keep_daily | any | Days of daily backups to keep. |
keep_weekly | any | Weeks of weekly backups to keep. |
Response 200
| Field | Type | Description |
|---|---|---|
settings | any |
Example response
JSON
{
"settings": null
}Example request
Bash
curl -X PUT 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/settings' \
-H "X-API-Key: $BRAMBLE_KEY" \
-H "Content-Type: application/json" \
-d '{"schedule_time":"…","schedule_days":[],"schedule_enabled":true,"include_system":false,"databases":[],"login_password":"…","login_user":"string","keep_daily":"…","keep_weekly":"…"}'JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/settings', {
method: 'PUT',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({"schedule_time":"…","schedule_days":[],"schedule_enabled":true,"include_system":false,"databases":[],"login_password":"…","login_user":"string","keep_daily":"…","keep_weekly":"…"}),
});
const data = await res.json();Python
import os, requests
r = requests.put(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/settings",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
json={"schedule_time":"…","schedule_days":[],"schedule_enabled":True,"include_system":False,"databases":[],"login_password":"…","login_user":"string","keep_daily":"…","keep_weekly":"…"},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
$body = '{"schedule_time":"…","schedule_days":[],"schedule_enabled":true,"include_system":false,"databases":[],"login_password":"…","login_user":"string","keep_daily":"…","keep_weekly":"…"}'
Invoke-RestMethod -Method PUT -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/settings' -Headers $headers -ContentType 'application/json' -Body $body#Back up databases now
POST
/v2/app/rmm-databases/devices/:id/backup- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/:id/backup- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.manage.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | integer |
Request body JSON
| Name | Type | Description |
|---|---|---|
databases | array of any |
Response 200
Example request
Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/backup' \
-H "X-API-Key: $BRAMBLE_KEY" \
-H "Content-Type: application/json" \
-d '{"databases":[]}'JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/backup', {
method: 'POST',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({"databases":[]}),
});
const data = await res.json();Python
import os, requests
r = requests.post(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/backup",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
json={"databases":[]},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
$body = '{"databases":[]}'
Invoke-RestMethod -Method POST -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/backup' -Headers $headers -ContentType 'application/json' -Body $body#Refresh a server's overview now
POST
/v2/app/rmm-databases/devices/:id/refresh- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/:id/refresh- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | integer |
Response 200
| Field | Type | Description |
|---|---|---|
ok | boolean |
Example response
JSON
{
"ok": true
}Example request
Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/refresh' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/refresh', {
method: 'POST',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY },
});
const data = await res.json();Python
import os, requests
r = requests.post(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/refresh",
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 POST -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/devices/42/refresh' -Headers $headers#Download a database backup
GET
/v2/app/rmm-databases/backups/:id/downloadNeeds rmm.databases.download; audited.
- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/:id/download- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.download.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | number |
Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5/download' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5/download', {
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/v2/app/rmm-databases/backups/12.5/download",
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/v2/app/rmm-databases/backups/12.5/download' -Headers $headers#Delete a database backup
DELETE
/v2/app/rmm-databases/backups/:id- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/:id- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.manage.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | number |
Response 200
| Field | Type | Description |
|---|---|---|
ok | boolean |
Example response
JSON
{
"ok": true
}Example request
Bash
curl -X DELETE 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5', {
method: 'DELETE',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY },
});
const data = await res.json();Python
import os, requests
r = requests.delete(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5",
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 DELETE -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5' -Headers $headers#Opening a backup to look at its data: like a download, it shows everything
POST
/v2/app/rmm-databases/backups/:id/open- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/:id/open- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.download.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | number |
Request body JSON
| Name | Type | Description |
|---|---|---|
hours | array of any |
Response 200
| Field | Type | Description |
|---|---|---|
mount | any |
Example response
JSON
{
"mount": null
}Example request
Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5/open' \
-H "X-API-Key: $BRAMBLE_KEY" \
-H "Content-Type: application/json" \
-d '{"hours":[]}'JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5/open', {
method: 'POST',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({"hours":[]}),
});
const data = await res.json();Python
import os, requests
r = requests.post(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5/open",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
json={"hours":[]},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
$body = '{"hours":[]}'
Invoke-RestMethod -Method POST -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/backups/12.5/open' -Headers $headers -ContentType 'application/json' -Body $body#Close an opened backup
DELETE
/v2/app/rmm-databases/mounts/:id- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/:id- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.download.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | number |
Response 200
| Field | Type | Description |
|---|---|---|
mount | any |
Example response
JSON
{
"mount": null
}Example request
Bash
curl -X DELETE 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5', {
method: 'DELETE',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY },
});
const data = await res.json();Python
import os, requests
r = requests.delete(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5",
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 DELETE -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5' -Headers $headers#Browse an opened backup
POST
/v2/app/rmm-databases/mounts/:id/queryLists tables, or reads rows of one table (sort, filter, up to 10,000 rows for CSV). Read-only.
- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/:id/query- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.download.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | number |
Request body JSON
| Name | Type | Description |
|---|---|---|
op | string: "tables" | "rows" | |
table | string | |
offset | integer | |
limit | integer | |
sort | string | |
dir | string | |
filter_col | string | |
filter | string |
Response 200
Example request
Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5/query' \
-H "X-API-Key: $BRAMBLE_KEY" \
-H "Content-Type: application/json" \
-d '{"op":"tables","table":"string","offset":1,"limit":1,"sort":"string","dir":"string","filter_col":"string","filter":"string"}'JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5/query', {
method: 'POST',
headers: { 'X-API-Key': process.env.BRAMBLE_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({"op":"tables","table":"string","offset":1,"limit":1,"sort":"string","dir":"string","filter_col":"string","filter":"string"}),
});
const data = await res.json();Python
import os, requests
r = requests.post(
"https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5/query",
headers={"X-API-Key": os.environ["BRAMBLE_KEY"]},
json={"op":"tables","table":"string","offset":1,"limit":1,"sort":"string","dir":"string","filter_col":"string","filter":"string"},
)
r.raise_for_status()
data = r.json()PowerShell
$headers = @{ 'X-API-Key' = $env:BRAMBLE_KEY }
$body = '{"op":"tables","table":"string","offset":1,"limit":1,"sort":"string","dir":"string","filter_col":"string","filter":"string"}'
Invoke-RestMethod -Method POST -Uri 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5/query' -Headers $headers -ContentType 'application/json' -Body $body#Result of a browse request
GET
/v2/app/rmm-databases/mounts/:id/queries/:qid- Address
https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/:id/queries/:qid- Requires
- Signed-in session,
X-API-Key, or a Bramble app access token (Authorization: Bearer).
Permission (any of):rmm.databases.download.
Path parameters
| Name | Type | Description |
|---|---|---|
idrequired | number | |
qidrequired | number |
Response 200
Example request
Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5/queries/12.5' \
-H "X-API-Key: $BRAMBLE_KEY"JavaScript
const res = await fetch('https://<your-org>.brambleit.cloud/api/v2/app/rmm-databases/mounts/12.5/queries/12.5', {
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/v2/app/rmm-databases/mounts/12.5/queries/12.5",
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/v2/app/rmm-databases/mounts/12.5/queries/12.5' -Headers $headersWas this page helpful?
Thanks for your feedback.