Admin Centre API

The Admin Centre API is everything an organisation's admins can do in the Admin Centre: people, groups, roles and licences; sign-in security; single sign-on apps; branding and domains; guests and portal users; the audit log; and each app's admin settings. All of it lives in BRM-API under /api/v1/admin/... and works with an API key belonging to an admin.

Address
https://<your-org>.brambleit.cloud/api
Sign-in
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Address
https://<your-org>.brambleit.cloud/admin
Sign-in
Signed-in browser session (the sso_session / session_id cookies from Bramble sign-in).
Endpoints
297
OpenAPI
admin.json
Guides
How Admin Centre works

Who can call these. Each area checks its own role or permission: a Global Administrator can use all of them; app admin roles (PSA Admin, HR Admin, RMM Admin…) unlock their own app's settings; the audit log needs audit.view. A person without the right role gets 403.

Partners. An MSP acting for a customer (delegated admin, from the Partner portal) can call most of these for that customer. Partnership, support-access and deletion endpoints always refuse delegated calls.

Changes are audited. Every change made here is written to the audit log with who made it and the before/after values.

Resources

Organisation

The organisation itself: its record, name and type (MSP or company), whether Bramble support may access it, and what the signed-in admin is allowed to manage.

MethodPathSummary
GET/v1/admin/isadminCan the caller use the Admin Centre?
GET/v1/admin/tenant/infoGet the organisation
PATCH/v1/admin/tenant/support-accessAllow or stop Bramble support access
PATCH/v1/admin/tenant/nameRename the organisation
GET/v1/admin/tenant/monitoring/summaryHealth summary for the Admin Centre home page
PATCH/v1/admin/tenant/org-typeSet the organisation type

People

Staff accounts: create, edit, turn off and delete people; their username and email aliases, mailbox, groups, roles and licences; reset passwords and two-step sign-in; sign someone out everywhere. A person's username is their email address on one of the organisation's verified domains.

MethodPathSummary
GET/v1/admin/tenant/usersList people
POST/v1/admin/tenant/users/:id/revoke-sessionsSign a person out everywhere
GET/v1/admin/tenant/subjects/usersFind people (for pickers)
GET/v1/admin/tenant/subjects/groupsFind groups (for pickers)
POST/v1/admin/user/check-emailIs this address free?
POST/v1/admin/userCreate a person
POST/v1/admin/tenant/userGet a person
PUT/v1/admin/tenant/users/:id/pictureSet a person's photo
DELETE/v1/admin/tenant/users/:id/pictureRemove a person's photo
PATCH/v1/admin/tenant/userChange one field on a person
PATCH/v1/admin/user/profileUpdate a person's name details
PATCH/v1/admin/user/accountUpdate a person's account
GET/v1/admin/user/addressesA person's username and aliases
PATCH/v1/admin/user/usernameChange a person's username
POST/v1/admin/user/aliasesAdd an email alias
DELETE/v1/admin/user/aliases/:idRemove an email alias
PATCH/v1/admin/user/mailboxChange a person's mailbox
PATCH/v1/admin/user/groupsSet a person's groups
PATCH/v1/admin/user/rolesSet a person's roles
PATCH/v1/admin/user/licensesSet a person's licences
PATCH/v1/admin/user/securityReset a person's password
POST/v1/admin/user/mfa/resetReset a person's two-step sign-in
DELETE/v1/admin/userDelete a person

Groups

Groups of people. Groups are used to give access (apps, sites, PSA queues, single sign-on apps, security policies) to many people at once.

MethodPathSummary
GET/v1/admin/tenant/groupsList the tenant's groups with member counts
GET/v1/admin/tenant/groups/:idGet a group and its members
POST/v1/admin/tenant/groupsCreate a group. Requires the GLOBAL_ADMIN role
PATCH/v1/admin/tenant/groups/:idRename a group. Requires the GLOBAL_ADMIN role
DELETE/v1/admin/tenant/groups/:idDelete a group. Requires the GLOBAL_ADMIN role
POST/v1/admin/tenant/groups/:id/membersAdd a user to a group
DELETE/v1/admin/tenant/groups/:id/members/:userIdRemove a user from a group

Roles & permissions

Roles bundle permissions. Built-in roles (Global Administrator, RMM Technician, PSA Admin…) can't be changed; organisations can create custom roles from the permission catalogue and give them to people.

MethodPathSummary
GET/v1/admin/tenant/applicationsList the platform-wide application catalog
GET/v1/admin/tenant/permissionsList the full platform permission catalog
GET/v1/admin/tenant/rolesList all roles with their application and assigned-user count
GET/v1/admin/tenant/roles/:idGet a role with its full permission checklist
GET/v1/admin/tenant/roles/:id/membersList the users in this tenant who hold a role
POST/v1/admin/tenant/roles/:id/membersGive a user in this tenant a role
DELETE/v1/admin/tenant/roles/:id/members/:userIdTake a role away from a user in this tenant
POST/v1/admin/tenant/rolesCreate a custom role
PATCH/v1/admin/tenant/roles/:idUpdate a custom role's description and permissions
DELETE/v1/admin/tenant/roles/:idDelete a custom role

Licences

The licence packages the organisation has, how many seats are used, and which licensed apps the organisation actually uses (which decides what shows in the launcher). Assign a licence to a person with PATCH /v1/admin/user/licenses.

MethodPathSummary
GET/v1/admin/tenant/licensesList licence packages and seats
GET/v1/admin/tenant/apps-in-useWhich licensed apps are in use
PATCH/v1/admin/tenant/apps-in-use/:applicationIdMark an app as used or not
POST/v1/admin/tenant/licenseGet a licence package

Domains

Email domains. A domain is added, then verified by publishing a DNS TXT record; only verified domains can be used for usernames and mailboxes. Bramble checks verified domains again later and marks them "verification lost" if the record disappears.

MethodPathSummary
GET/v1/admin/tenant/domainsList the tenant's verified/pending domains
POST/v1/admin/tenant/domains/verifyCheck a domain's verification record
POST/v1/admin/tenant/domains/addAdd a domain
POST/v1/admin/domains/viewGet a domain
DELETE/v1/admin/tenant/domainsRemove a domain

Security policies

Conditional access. A policy either requires two-step sign-in or blocks sign-in, for everyone or for chosen people and groups, optionally only from (or except from) named locations — lists of countries and IP ranges. Also the session length (how long people stay signed in).

MethodPathSummary
PATCH/v1/admin/tenant/session-policySet how long people stay signed in
GET/v1/admin/tenant/security-policiesList the tenant's Conditional Access-style security policies
POST/v1/admin/tenant/security-policiesCreate a security policy
PATCH/v1/admin/tenant/security-policies/:idUpdate a security policy
DELETE/v1/admin/tenant/security-policies/:idDelete a security policy
POST/v1/admin/tenant/security-policies/:id/subjectsAdd an include/exclude subject (user or group) to a security policy
DELETE/v1/admin/tenant/security-policies/:id/subjects/:subjectRowIdRemove a subject entry from a security policy
POST/v1/admin/tenant/security-policies/:id/locationsAdd an include/exclude named-location condition to a security policy
DELETE/v1/admin/tenant/security-policies/:id/locations/:locationRowIdRemove a location condition from a security policy
GET/v1/admin/tenant/named-locationsList the tenant's named locations
POST/v1/admin/tenant/named-locationsCreate a named location
PATCH/v1/admin/tenant/named-locations/:idRename/update a named location
DELETE/v1/admin/tenant/named-locations/:idDelete a named location
POST/v1/admin/tenant/named-locations/:id/entriesAdd a country or CIDR match entry to a named location
DELETE/v1/admin/tenant/named-locations/:id/entries/:entryIdRemove a match entry from a named location

Sign-ins & sessions

Every sign-in attempt (success, failure, interrupted for two-step sign-in) with where it came from, and the sessions currently signed in. Revoke a session to sign that device out.

MethodPathSummary
GET/v1/admin/tenant/sign-insSearch the tenant's sign-in logs
GET/v1/admin/tenant/sign-ins/facetsFilter options for the sign-in log report
GET/v1/admin/tenant/sign-ins/exportExport sign-in logs as CSV
GET/v1/admin/tenant/sign-ins/:idGet a single sign-in, with the activities done in that session
GET/v1/admin/tenant/sessionsList active Bramble Cloud sessions in this tenant
DELETE/v1/admin/tenant/sessions/:idRevoke (sign out) one session

Audit log

Who changed what, when. audit-events is the detailed trail (each change with its modified properties, before and after) with filters and CSV export; audit-log is the older request log.

MethodPathSummary
GET/v1/admin/tenant/audit-logSearch/list the tenant's audit log
GET/v1/admin/tenant/audit-log/:idGet a single audit log entry
GET/v1/admin/tenant/audit-eventsSearch the tenant's activity audit trail
GET/v1/admin/tenant/audit-events/facetsFilter options for the audit trail report
GET/v1/admin/tenant/audit-events/exportExport the audit trail as CSV
GET/v1/admin/tenant/audit-events/:idGet a single audit event, with modified properties

Single sign-on apps

"Sign in with Bramble" for other applications (OpenID Connect). Register an app to get its client ID and secret, choose who may use it, and optionally show it in the app launcher. Bramble's own platform apps can be switched on or off for the organisation.

MethodPathSummary
GET/v1/admin/tenant/oidcGet OIDC SSO status and the tenant's registered OIDC clients
POST/v1/admin/tenant/oidc/enableEnable or disable OIDC SSO for the tenant
POST/v1/admin/tenant/oidc/clientsRegister a single sign-on app
PATCH/v1/admin/tenant/oidc/clients/:idUpdate an OIDC client's settings
POST/v1/admin/tenant/oidc/clients/:id/rotate-secretRotate an OIDC client's secret
DELETE/v1/admin/tenant/oidc/clients/:idDelete an OIDC client
GET/v1/admin/tenant/oidc/clients/:id/accessGet an OIDC client's access-restriction settings and allow-listed subjects
POST/v1/admin/tenant/oidc/clients/:id/access/toggleToggle whether an OIDC client's access is restricted to an allow-list
POST/v1/admin/tenant/oidc/clients/:id/accessAdd a user or group to an OIDC client's access allow-list
DELETE/v1/admin/tenant/oidc/clients/:id/access/:accessIdRemove a subject from an OIDC client's access allow-list
GET/v1/admin/tenant/oidc/platform-appsList Bramble's own platform apps
POST/v1/admin/tenant/oidc/platform-apps/:clientId/enableOpt the tenant into a platform OIDC app
POST/v1/admin/tenant/oidc/platform-apps/:clientId/disableOpt the tenant out of a platform OIDC app
POST/v1/admin/tenant/oidc/clients/:id/iconUpload a drawer/rail icon for an OIDC client
DELETE/v1/admin/tenant/oidc/clients/:id/iconRemove an OIDC client's uploaded icon
GET/v1/admin/tenant/oidc/icons/:idServe an uploaded OIDC client icon

Branding & launcher

The organisation's colours, logo, sign-in page background and wording, and custom links added to everyone's app launcher.

MethodPathSummary
GET/v1/admin/tenant/custom-linksList launcher links
POST/v1/admin/tenant/custom-linksAdd a launcher link
PATCH/v1/admin/tenant/custom-links/:idChange a launcher link
DELETE/v1/admin/tenant/custom-links/:idRemove a launcher link
GET/v1/admin/tenant/brandingGet the tenant's branding settings
PUT/v1/admin/tenant/brandingSet colours and sign-in wording
POST/v1/admin/tenant/branding/logoUpload the tenant's branding logo
POST/v1/admin/tenant/branding/backgroundUpload the tenant's branding background image
DELETE/v1/admin/tenant/branding/logoRemove the tenant's branding logo
DELETE/v1/admin/tenant/branding/backgroundRemove the tenant's branding background image
GET/v1/admin/tenant/branding/image/:idServe a tenant branding image (logo or background)

Guests & portal users

Guests are people from outside the organisation invited by email (for example to a site or a shared file). Portal users are PSA contacts given a client-portal sign-in.

MethodPathSummary
POST/v1/admin/portal/contacts/:contactId/inviteInvite a PSA contact as a client-portal user
GET/v1/admin/portal/contactsList every client-portal login in the tenant
POST/v1/admin/portal/contacts/:userId/revokeRevoke a client-portal user's access
POST/v1/admin/guests/inviteInvite a guest user by email
GET/v1/admin/guestsList the tenant's guest users
POST/v1/admin/guests/:guestId/resendResend a guest's set-password invite link
POST/v1/admin/guests/:guestId/revokeRevoke a guest's access

Partners

MSP partnerships. A partner (MSP) asks to manage this organisation; the organisation approves it and chooses what the partner may do: devices.read (see devices in the partner's RMM), device_management.manage (manage device policies) and admin.full (delegated admin of the Admin Centre). Either side can end it.

MethodPathSummary
GET/v1/admin/partnersList partnerships
POST/v1/admin/partners/requestsAsk to manage a customer
POST/v1/admin/partners/:id/approveApprove a partner
POST/v1/admin/partners/:id/declineDecline a partner's request
PUT/v1/admin/partners/:id/permissionsChange what a partner may do
POST/v1/admin/partners/:id/endEnd a partnership
GET/v1/admin/partners/sitesYour RMM sites and the customers they're linked to
PUT/v1/admin/partners/sites/:siteIdLink an RMM site to a customer

Storage

The organisation's storage pool: how much each app and person uses, per-app limits, and Drive settings.

MethodPathSummary
GET/v1/admin/storage/overviewThe tenant's storage pool, where it comes from, and what each app uses
PUT/v1/admin/storage/apps/:app/quotaCap how much of the pool one app may use (quota_bytes null removes the cap)
GET/v1/admin/storage/usersStaff users with their storage use across apps and their Drive personal quota
PUT/v1/admin/storage/users/:userId/quotaSet one user's Drive personal quota (quota_bytes null = unlimited; use_default true = follow the tenant default)
GET/v1/admin/storage/largestThe biggest stored files across all apps (or one, with ?app=)
GET/v1/admin/storage/historyDaily storage use per app (?days=, default 90)
GET/v1/admin/storage/drive-settingsDrive rules for this tenant (personal quota, versions kept, bin retention, link sharing, quick shares)
PUT/v1/admin/storage/drive-settingsUpdate the drive settings

Delete the organisation

Permanently deleting the organisation is a three-step process: request (type the organisation's name), confirm from the link emailed to the admin, then a grace period during which it can be cancelled. After the grace period every app's data is purged. The preview shows what would go.

MethodPathSummary
GET/v1/admin/tenant/delete-previewPreview what would be deleted if this tenant were purged
POST/v1/admin/tenant/delete-requestRequest permanent deletion of this tenant
GET/v1/admin/tenant/delete-confirmConfirm a pending tenant deletion via emailed token
POST/v1/admin/tenant/delete-cancelCancel a pending tenant deletion request
GET/v1/admin/tenant/delete-statusCheck for an active deletion request on this tenant

App settings: PSA

PSA administration: queues and their mailboxes, statuses, ticket types, categories, SLA policies, workflows, email templates, procedures and approvals.

MethodPathSummary
GET/v1/admin/psa/templatesList PSA email templates
POST/v1/admin/psa/templatesCreate a PSA email template
POST/v1/admin/psa/templates/:idUpdate a PSA email template
POST/v1/admin/psa/templates/:id/deleteDelete a PSA email template
GET/v1/admin/psa/statusesList PSA statuses with their behaviours and ticket counts
POST/v1/admin/psa/statusesAdd a PSA status. Requires the GLOBAL_ADMIN role
POST/v1/admin/psa/statuses/:idUpdate a PSA status. Requires the GLOBAL_ADMIN role
POST/v1/admin/psa/statuses/:id/deleteDelete a PSA status. Requires the GLOBAL_ADMIN role
GET/v1/admin/psa/workflowsList PSA workflow rules
POST/v1/admin/psa/workflowsCreate a PSA workflow rule
POST/v1/admin/psa/workflows/:idUpdate a PSA workflow rule
POST/v1/admin/psa/workflows/:id/deleteDelete a PSA workflow rule and its run log
POST/v1/admin/psa/workflow-testDry-run a PSA workflow rule against a ticket
GET/v1/admin/psa/workflow-runsRecent PSA workflow runs (last 30 days)
GET/v1/admin/psa/slaPSA business hours and SLA policies
POST/v1/admin/psa/sla/hoursAdd PSA business hours
POST/v1/admin/psa/sla/hours/:idUpdate PSA business hours
POST/v1/admin/psa/sla/hours/:id/deleteDelete PSA business hours
POST/v1/admin/psa/sla/policiesAdd a PSA SLA policy
POST/v1/admin/psa/sla/policies/:idUpdate a PSA SLA policy
POST/v1/admin/psa/sla/policies/:id/deleteDelete a PSA SLA policy
GET/v1/admin/psa/typesList PSA ticket types
POST/v1/admin/psa/typesAdd a PSA ticket type
POST/v1/admin/psa/types/:idRename, turn on/off or reorder a PSA ticket type
POST/v1/admin/psa/types/:id/deleteDelete a PSA ticket type

App settings: Forms

Every form in the organisation, with admin overrides for owners and collaborators.

MethodPathSummary
GET/v1/admin/formsList every form
GET/v1/admin/forms/:idGet a form with its questions
GET/v1/admin/forms/:id/collaboratorsList a form's collaborators
GET/v1/admin/forms/:id/collaborators/availablePeople who could be added as collaborators
POST/v1/admin/forms/:id/collaboratorsAdd a collaborator to a form
DELETE/v1/admin/forms/:id/collaborators/:collabIdRemove a collaborator from a form
PATCH/v1/admin/forms/:id/ownerGive a form a new owner

App settings: Sites

Every site in the organisation, its members, and who may create sites.

MethodPathSummary
GET/v1/admin/sites/settingsWho may create sites in this tenant
PUT/v1/admin/sites/settingsUpdate the settings
GET/v1/admin/sitesEvery site in the tenant with its owners, members, pages and library size
POST/v1/admin/sites/:id/ownersMake a tenant user an owner of a site (user_id; defaults to the calling admin)
GET/v1/admin/sites/:id/membersList members of a site
PUT/v1/admin/sites/:id/membersUpdate the members of a site
DELETE/v1/admin/sites/:id/members/:type/:pidDelete a member
DELETE/v1/admin/sites/:idDelete a site (its libraries' files are purged by Drive after the bin period)

App settings: Mail

Mail domains (set up and check DNS), every mailbox, shared mailboxes and their members (full access, send as, send on behalf), and app passwords for accounts that never sign in interactively (a scanner, Paper's intake).

MethodPathSummary
GET/v1/admin/mail/mailboxesList every mailbox
GET/v1/admin/mail/domainsList mail domains and their DNS
POST/v1/admin/mail/domains/:domain/setupSet up mail for a domain
POST/v1/admin/mail/domains/:domain/checkCheck a mail domain's DNS now
GET/v1/admin/mail/sharedList shared mailboxes
POST/v1/admin/mail/sharedCreate a shared mailbox
POST/v1/admin/mail/shared/existingTurn an existing mailbox into a shared one
PATCH/v1/admin/mail/shared/:idChange a shared mailbox
DELETE/v1/admin/mail/shared/:idStop sharing a mailbox
DELETE/v1/admin/mail/mailboxes/:domain/:boxIdDeletes a shared or unassigned mailbox and all its mail from the server
GET/v1/admin/mail/users/:userId/mailboxA person's mailbox, so "Remove user" can ask what happens to it
GET/v1/admin/mail/users/:userId/app-passwordsList a person's admin-made app passwords
POST/v1/admin/mail/users/:userId/app-passwordsMake an app password for a person
DELETE/v1/admin/mail/users/:userId/app-passwords/:idRevoke an app password
PUT/v1/admin/mail/shared/:id/members/:userIdSet a person's access to a shared mailbox

App settings: HR

HR policy (leave year, allowances, carry-over, half days), leave types, company closures, checklist templates, who is in HR, removed people, and each person's HR record including dated allowance changes.

MethodPathSummary
GET/v1/admin/hr/overviewHR policy, leave types, closures, templates and licence counts in one call
PUT/v1/admin/hr/settingsUpdate the leave policy (leave year start, allowance, bank holidays, carry-over, half days, privacy)
PUT/v1/admin/hr/people-scopeWho gets an HR record automatically — every staff account (scope all) or members of chosen groups (scope groups, groups = ids)
POST/v1/admin/hr/removed/:employeeId/restoreRestore a removed
POST/v1/admin/hr/typesAdd a leave type
PUT/v1/admin/hr/types/:idChange a leave type, or archive / restore it ({ archived })
POST/v1/admin/hr/closuresAdd company closure days (a date range)
PUT/v1/admin/hr/closures/:idSwitch one closure day between "extra day off" and "comes out of the allowance"
DELETE/v1/admin/hr/closures/:idDelete a closure
POST/v1/admin/hr/templatesAdd an onboarding or offboarding checklist template with its tasks
PUT/v1/admin/hr/templates/:idReplace a template's name, description and tasks (checklists already started keep their own copy)
DELETE/v1/admin/hr/templates/:idDelete a template
GET/v1/admin/hr/people/:userIdGet a people
PUT/v1/admin/hr/people/:userIdUpdate a people
POST/v1/admin/hr/people/:userId/allowance-changesChange a user's holiday allowance from a leave year on (kind set = days a year, extra = days on top of the policy)
DELETE/v1/admin/hr/people/:userId/allowance-changes/:idDelete an allowance change

App settings: SimpleBooks

Companies, who can access each company and with what role, and the receipts email address.

MethodPathSummary
GET/v1/admin/simplebooks/companiesEvery SimpleBooks company in the tenant, with modules, access and receipt counts
POST/v1/admin/simplebooks/companiesCreate a company
PUT/v1/admin/simplebooks/companies/:idRename, change business type, archive/unarchive, or switch modules on/off
GET/v1/admin/simplebooks/principalsTenant users (with whether each has a SimpleBooks licence) and groups, for the access picker
GET/v1/admin/simplebooks/companies/:id/accessWho can open this company, and with which role
POST/v1/admin/simplebooks/companies/:id/accessAccess a company
PUT/v1/admin/simplebooks/companies/:id/access/:accessIdUpdate an access
DELETE/v1/admin/simplebooks/companies/:id/access/:accessIdDelete an access
GET/v1/admin/simplebooks/emailThe SMTP account SimpleBooks emails invoices through (password never returned)
PUT/v1/admin/simplebooks/emailUpdate the email
POST/v1/admin/simplebooks/email/testSend a test email to the signed-in admin through the saved SMTP account

App settings: Warden

Warden administration: overview, network device integrations (UniFi), SIEM (Logs & auditing) collection, general settings, ticket and notification rules, and connectors.

MethodPathSummary
GET/v1/admin/warden/overviewWarden configuration status + headline numbers for the admin overview
GET/v1/admin/warden/networkDetection + PSA integration settings, and the site -> PSA customer map
PUT/v1/admin/warden/networkUpdate the network
GET/v1/admin/warden/siemGet the SIEM
PUT/v1/admin/warden/siemUpdate the SIEM
GET/v1/admin/warden/settingsGet the settings
PUT/v1/admin/warden/settingsUpdate the settings
GET/v1/admin/warden/lookupsRMM sites and PSA queues/customers for the settings dropdowns
GET/v1/admin/warden/ticket-rulesList ticket rules
POST/v1/admin/warden/ticket-rulesCreate a ticket rule
PUT/v1/admin/warden/ticket-rules/:idUpdate a ticket rule
DELETE/v1/admin/warden/ticket-rules/:idDelete a ticket rule
GET/v1/admin/warden/notify-channelsThe tenant's named notification channels Warden can deliver through (set up in Admin → RMM → Notification channels)
GET/v1/admin/warden/notify-rulesWarden notification rules, with each rule's last delivery
POST/v1/admin/warden/notify-rulesCreate a notify rule
PUT/v1/admin/warden/notify-rules/:idUpdate a notification rule
DELETE/v1/admin/warden/notify-rules/:idDelete a notify rule
POST/v1/admin/warden/notify-rules/:id/testQueue a test message for a rule (Warden sends it within ~15s; poll notify-rules for the result)
GET/v1/admin/warden/connectorsList connectors
POST/v1/admin/warden/connectorsCreate a connector
PUT/v1/admin/warden/connectors/:idUpdate a connector
POST/v1/admin/warden/connectors/:id/reset-pinAfter a controller is replaced or gets a new certificate
DELETE/v1/admin/warden/connectors/:idDelete a connector

RMM: checks & alerts

Checks watch devices and raise alerts: CPU, memory and disk, stopped services, offline devices, containers, Proxmox and backup health, HTTP/TCP/ping, network devices and interfaces, database and device backups. Each check has a severity, the devices it applies to (assignments), and actions to take when it fires (notify a channel).

MethodPathSummary
GET/v1/admin/rmm/checksList checks
GET/v1/admin/rmm/checks/:idGet a check with its actions and assignments
POST/v1/admin/rmm/checksCreate a check
PUT/v1/admin/rmm/checks/:idUpdate a check
POST/v1/admin/rmm/checks/:id/toggleTurn a check on or off
DELETE/v1/admin/rmm/checks/:idDelete a check
GET/v1/admin/rmm/alerts/statsAlert statistics
GET/v1/admin/rmm/alertsList alerts
POST/v1/admin/rmm/alerts/:id/resolveResolve an alert
GET/v1/admin/rmm/alerts/activeList active alerts

RMM: scripts

The script library and its categories. Scripts run on devices directly or as steps of a task.

MethodPathSummary
GET/v1/admin/rmm/scriptsList RMM scripts available to the tenant
GET/v1/admin/rmm/scripts/:idGet one RMM script's full record, including its body
POST/v1/admin/rmm/scriptsCreate an RMM script
PUT/v1/admin/rmm/scripts/:idUpdate an RMM script
DELETE/v1/admin/rmm/scripts/:idDelete an RMM script
GET/v1/admin/rmm/script-categoriesList the tenant's RMM script folders
POST/v1/admin/rmm/script-categoriesCreate an RMM script folder
PUT/v1/admin/rmm/script-categories/:idRename or re-parent an RMM script folder
DELETE/v1/admin/rmm/script-categories/:idDelete an RMM script folder and its subtree

RMM: scheduled tasks

Tasks run one or more scripts on a schedule (every N hours, daily, weekly, a day of the month, or the Nth weekday of the month) on the devices they're assigned to. Each run records a result per device and per step.

MethodPathSummary
GET/v1/admin/rmm/tasksList scheduled tasks
GET/v1/admin/rmm/tasks/:idGet a task with its steps and assignments
POST/v1/admin/rmm/tasksCreate a scheduled task
PUT/v1/admin/rmm/tasks/:idUpdate a scheduled task
POST/v1/admin/rmm/tasks/:id/toggleTurn a task on or off
DELETE/v1/admin/rmm/tasks/:idDelete a task
POST/v1/admin/rmm/tasks/:id/runRun a task now
GET/v1/admin/rmm/tasks/:id/runsA task's past runs
GET/v1/admin/rmm/runsRecent task runs
GET/v1/admin/rmm/runs/:runId/resultsPer-device rollup plus the full per-step timeline (client groups by device_id and orders by sort_order to render a mini step-by-step timeline per device)
POST/v1/admin/rmm/runs/:runId/cancelCancel a running task

RMM: sites, groups & enrolment

Sites and groups organise devices. Enrolment keys add devices: each key puts new devices into a site and group. Anyone holding a key can add a device, so keep keys private and delete unused ones.

MethodPathSummary
GET/v1/admin/rmm/overviewGet device/site/group/script counts for the tenant's RMM instance
GET/v1/admin/rmm/sitesList the tenant's RMM sites with group and device counts
GET/v1/admin/rmm/sites/:id/groupsGet an RMM site with its groups and per-group device counts
GET/v1/admin/rmm/groupsList all RMM groups across every site in the tenant, with device counts
POST/v1/admin/rmm/sitesCreate an RMM site. Requires the GLOBAL_ADMIN role
PUT/v1/admin/rmm/sites/:idUpdate an RMM site. Requires the GLOBAL_ADMIN role
DELETE/v1/admin/rmm/sites/:idDelete an RMM site. Requires the GLOBAL_ADMIN role
POST/v1/admin/rmm/groupsCreate an RMM device group within a site
PUT/v1/admin/rmm/groups/:idUpdate an RMM device group
DELETE/v1/admin/rmm/groups/:idDelete an RMM device group
GET/v1/admin/rmm/enrollment-keysList RMM device enrollment keys
POST/v1/admin/rmm/enrollment-keysCreate an RMM device enrollment key
PUT/v1/admin/rmm/enrollment-keys/:idRename an enrollment key
DELETE/v1/admin/rmm/enrollment-keys/:idRevoke an enrollment key

RMM: device management

Device management (MDM) for Linux devices: configuration profiles and baselines, and which devices, sites or groups they apply to. MSP technicians can manage a customer's policies with ?tenant=<id> when the partnership allows it.

MethodPathSummary
GET/v1/admin/rmm/${base}/sitesThis organisation's own RMM sites and who manages each one's devices (RMM2's site picker): the linked customer while its partnership lets us manage its devic…
GET/v1/admin/rmm/${base}/baselinesList baselines
POST/v1/admin/rmm/${base}/baselinesCreate a baseline
PUT/v1/admin/rmm/${base}/baselines/:idUpdate a baseline
DELETE/v1/admin/rmm/${base}/baselines/:idDelete a baseline
PUT/v1/admin/rmm/${base}/baselines/:id/targetsWhich organisations the baseline is deployed to (replaces the list)

RMM: agent updates

Automatic agent updates, how long RMM history is kept (utilisation, commands, logs), and hypervisor summaries.

MethodPathSummary
GET/v1/admin/rmm/hypervisor-scope-summaryHypervisors in a site or group
GET/v1/admin/rmm/agent-updatesAgent update policy and devices behind
PUT/v1/admin/rmm/agent-updatesTurn automatic agent updates on or off
GET/v1/admin/rmm/historyHistory retention and usage
PUT/v1/admin/rmm/historySet how long RMM history is kept

Web pages

These return pages for the browser rather than data.

  • GET /
  • GET /${view}
  • GET /rmm/:tab?
  • GET /kb/:tab?
  • GET /psa/:tab?
  • GET /warden/:tab?
  • GET /simplebooks/:tab?
  • GET /storage/:tab?
  • GET /sites/:tab?
  • GET /forms/:tab?
  • GET /hr/:tab?
  • GET /atlas/:tab?
  • GET /mail/:tab?
  • GET /project/:tab?