RMM API Best Practices
When designing integrations with the RMM API, follow these recommendations:
- Use fleet-wide endpoints whenever possible. They return data for all managed devices and are more efficient than querying each device individually.
- Reserve per-device endpoints for diagnostics and drill-down operations.
- Poll the API according to the data refresh schedule:
- Alerts: every 10 minutes
- All other data: every 60 minutes
- All other data: every 60 minutes
- Use the device hid as the unique identifier when synchronizing data with external systems.
Data published by the RMM API is refreshed on two different schedules.
Understanding Data Polling Intervals
| Data | Refresh interval | Recommended polling interval |
|---|---|---|
| Alert data | Every 10 minutes | No more frequently than once every 10 minutes |
| All other statistics | Every 60 minutes | No more frequently than once every 60 minutes |
Polling more frequently than the refresh interval does not return newer data and unnecessarily increases the number of API requests.
The summary/latest endpoint contains both alert information and general system statistics. If your integration requires near real-time alerts, polling this endpoint every 10 minutes is acceptable—the non-alert fields simply remain unchanged until the next hourly refresh.
Understanding Update Data
The update endpoints report operating system and system update status only.
Third-party application updates are not included.
To monitor third-party software updates:
- Windows — use the Software Inventory endpoint to inspect applications managed through Winget.
- macOS — use the Software Inventory endpoint to inspect applications managed through Homebrew.
Applications with an available update expose the availableVersion property in the software inventory response.