Skip to content

Conversation

@kieranlangton
Copy link
Contributor

🔌 Plugin overview

  • Plugin name: UptimeRobot
  • Purpose / problem solved: Display response times, latest state and event logs for your UptimeRobot monitors
  • Primary audience (e.g. platform teams, SREs, product teams): SREs
  • Authentication method(s) (e.g. OAuth, Username/Password, API Key): API Key

🖼️ Plugin screenshots

Plugin configuration

Screenshot 2026-02-03 at 18 10 24

Default dashboards

Screenshot 2026-02-03 at 18 10 03

🧪 Testing

N/A


⚠️ Known limitations

N/A


📚 Checklist

  • Plugin, datastream and UI naming follow SquaredUp guidelines
  • Logo added
  • One or more dashboards added
  • README added including configuration guidance
  • No secrets or credentials included
  • I agree to the Code of Conduct

Copy link
Contributor

Copilot AI left a 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 UptimeRobot plugin 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.

@clarkd clarkd self-assigned this Feb 4, 2026
@clarkd clarkd added the new-plugin Used to PR newly added plugins label Feb 4, 2026
@clarkd clarkd requested a review from gdorward February 4, 2026 10:30
Copilot AI review requested due to automatic review settings February 4, 2026 11:17
Copy link
Contributor

Copilot AI left a 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",
Copy link

Copilot AI Feb 4, 2026

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.

Suggested change
"help": "Provide an API key for your UptimeRobot account",
"help": "Read-only UptimeRobot API key (recommended)",

Copilot uses AI. Check for mistakes.
@kieranlangton kieranlangton requested a review from clarkd February 4, 2026 12:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-plugin Used to PR newly added plugins

Development

Successfully merging this pull request may close these issues.

3 participants