-
Notifications
You must be signed in to change notification settings - Fork 0
Add UptimeRobot plugin #19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a new UptimeRobot plugin that surfaces monitor state, response times, and event logs into SquaredUp using the WebAPI base plugin. It defines the plugin metadata and UI, data streams and scripts for UptimeRobot’s API, import definitions, default scopes, and out-of-the-box dashboards.
Changes:
- Introduces the
UptimeRobotplugin metadata, UI configuration, and icon, wired to the WebAPI base plugin with API key-based access. - Adds data streams and associated transform scripts for monitors, latest states, response times, and event logs, plus an import definition for monitors.
- Provides default scopes and two dashboards (account overview and monitor perspective) to visualize monitor properties, states, downtime, and response times.
Reviewed changes
Copilot reviewed 15 out of 16 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
plugins/UptimeRobot/v2/ui.json |
Defines the plugin configuration UI to capture the UptimeRobot API key. |
plugins/UptimeRobot/v2/metadata.json |
Declares plugin metadata, WebAPI base configuration, links, keywords, and object types for UptimeRobot. |
plugins/UptimeRobot/v2/importDefinitions/default.json |
Configures the default object import step that maps UptimeRobot monitors into SquaredUp objects. |
plugins/UptimeRobot/v2/icon.svg |
Adds the square SVG icon used for the UptimeRobot plugin. |
plugins/UptimeRobot/v2/docs/README.md |
Provides setup documentation for obtaining and supplying the UptimeRobot read-only API key. |
plugins/UptimeRobot/v2/defaultContent/scopes.json |
Defines scopes for UptimeRobot monitors and the corresponding selection variable used by dashboards. |
plugins/UptimeRobot/v2/defaultContent/accountOverview.dash.json |
Adds the “Account Overview” dashboard summarizing monitor counts, states, and down monitors. |
plugins/UptimeRobot/v2/defaultContent/Perspectives/monitor.dash.json |
Adds the “Monitor” perspective dashboard showing latest state, properties, downtime, and response time history for a selected monitor. |
plugins/UptimeRobot/v2/dataStreams/scripts/responseTimes.js |
Flattens UptimeRobot monitor response_times into a row-per-sample data set with monitor labels. |
plugins/UptimeRobot/v2/dataStreams/scripts/monitors.js |
Transforms UptimeRobot monitor data into SquaredUp object rows with links, monitor URL, IDs, and typed source information. |
plugins/UptimeRobot/v2/dataStreams/scripts/latestStates.js |
Maps UptimeRobot monitor status codes to human-readable status/state values and adds dashboard links. |
plugins/UptimeRobot/v2/dataStreams/scripts/eventLogs.js |
Flattens and time-filters UptimeRobot monitor event logs and annotates them with monitor names. |
plugins/UptimeRobot/v2/dataStreams/responseTimes.json |
Configures the scoped HTTP data stream for monitor response times with paging and metadata. |
plugins/UptimeRobot/v2/dataStreams/monitors.json |
Configures the unscoped HTTP data stream for basic monitor discovery and object import. |
plugins/UptimeRobot/v2/dataStreams/latestStates.json |
Configures the scoped HTTP data stream for latest monitor states and their display metadata. |
plugins/UptimeRobot/v2/dataStreams/eventLogs.json |
Configures the scoped HTTP data stream for monitor event logs, including duration, reason code, and details. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 16 out of 17 changed files in this pull request and generated 1 comment.
| "type": "password", | ||
| "name": "apiKey", | ||
| "label": "API key", | ||
| "help": "Provide an API key for your UptimeRobot account", |
Copilot
AI
Feb 4, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The help text here is both redundant with the field label and uses conversational wording (including "your"), which goes against the UI text guidelines for plugin configuration fields. Consider rephrasing this to a short, neutral description that adds extra value (for example, noting that a read‑only key is preferred or linking to generation docs) and avoid using "you"/"your" phrasing.
| "help": "Provide an API key for your UptimeRobot account", | |
| "help": "Read-only UptimeRobot API key (recommended)", |
🔌 Plugin overview
🖼️ Plugin screenshots
Plugin configuration
Default dashboards
🧪 Testing
N/A
N/A
📚 Checklist