{
  "service": "uptimerobot",
  "displayName": "UptimeRobot",
  "categories": [
    "Developer Tools"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "uptimerobot_api_key",
      "description": "UptimeRobot main or read-only API key sent in the legacy API request body. Create it from Integrations & API in your UptimeRobot dashboard.",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://uptimerobot.com",
  "actions": [
    {
      "id": "uptimerobot.create_monitor",
      "service": "uptimerobot",
      "name": "create_monitor",
      "description": "Create a new monitor in the connected UptimeRobot account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "friendly_name": {
            "type": "string",
            "minLength": 1,
            "description": "The friendly name of the monitor."
          },
          "url": {
            "type": "string",
            "minLength": 1,
            "description": "The URL, hostname, or IP address that UptimeRobot should monitor."
          },
          "type": {
            "type": "integer",
            "minimum": 1,
            "maximum": 6,
            "description": "The UptimeRobot monitor type code. Known values are 1=HTTP(s), 2=Keyword, 3=Ping, 4=Port, 5=Heartbeat, and 6=SSL."
          },
          "sub_type": {
            "type": "integer",
            "minimum": 1,
            "description": "The subtype code used for port monitors. Known values are 1=HTTP, 2=HTTPS, 3=FTP, 4=SMTP, 5=POP3, 6=IMAP, and 99=Custom."
          },
          "port": {
            "type": "integer",
            "minimum": 1,
            "maximum": 65535,
            "description": "The destination port used for custom port monitors."
          },
          "interval": {
            "type": "integer",
            "minimum": 1,
            "description": "The monitor interval in seconds accepted by UptimeRobot."
          },
          "timeout": {
            "type": "integer",
            "minimum": 1,
            "maximum": 60,
            "description": "The timeout in seconds before UptimeRobot treats the check as failed."
          },
          "keyword_type": {
            "anyOf": [
              {
                "const": 1,
                "type": "number"
              },
              {
                "const": 2,
                "type": "number"
              }
            ],
            "description": "The keyword matching mode. Use 1 when the keyword must exist, or 2 when it must not exist."
          },
          "keyword_value": {
            "type": "string",
            "minLength": 1,
            "description": "The keyword value used by keyword monitors."
          },
          "http_username": {
            "type": "string",
            "minLength": 1,
            "description": "The HTTP authentication username used by the monitor."
          },
          "http_password": {
            "type": "string",
            "minLength": 1,
            "description": "The HTTP authentication password used by the monitor."
          },
          "ssl": {
            "type": "boolean",
            "description": "Whether SSL validation should stay enabled for HTTPS-based monitors."
          },
          "alert_contacts": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "description": "The official alert_contacts string, such as 12345_0_0-67890_5_2."
              },
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "minimum": 1,
                      "description": "The numeric ID of the UptimeRobot alert contact."
                    },
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "integer",
                          "minimum": 1,
                          "description": "The numeric ID of the UptimeRobot alert contact."
                        },
                        "threshold": {
                          "type": "integer",
                          "minimum": 0,
                          "description": "How many minutes UptimeRobot should wait before notifying this alert contact."
                        },
                        "recurrence": {
                          "type": "integer",
                          "minimum": 0,
                          "description": "How many times UptimeRobot should repeat the notification for this alert contact."
                        }
                      },
                      "additionalProperties": false,
                      "description": "A structured alert contact assignment."
                    }
                  ]
                },
                "description": "A list of alert contacts to encode into the official alert_contacts parameter.",
                "minItems": 1
              }
            ],
            "description": "Either the official alert_contacts string or a list of structured alert contact assignments."
          }
        },
        "additionalProperties": false,
        "required": [
          "friendly_name",
          "url",
          "type"
        ],
        "description": "The input payload for creating a UptimeRobot monitor."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "monitor": {
            "type": "object",
            "properties": {
              "id": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "friendly_name": {
                "type": "string",
                "description": "The friendly name configured for the monitor."
              },
              "url": {
                "type": "string",
                "description": "The monitored URL, hostname, or IP address."
              },
              "type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "status": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "sub_type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "interval": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "timeout": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "keyword_type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "keyword_value": {
                "type": "string",
                "description": "The keyword value configured for keyword monitors, when present."
              },
              "http_username": {
                "type": "string",
                "description": "The HTTP authentication username configured for the monitor, when present."
              },
              "http_password": {
                "type": "string",
                "description": "The HTTP authentication password configured for the monitor, when present."
              },
              "alert_contacts": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "friendly_name": {
                      "type": "string",
                      "description": "The friendly name of the alert contact."
                    },
                    "type": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "value": {
                      "type": "string",
                      "description": "The destination value configured for the alert contact."
                    }
                  },
                  "additionalProperties": true,
                  "description": "An alert contact returned by the UptimeRobot API."
                },
                "description": "The alert contacts returned for the monitor, when requested."
              },
              "logs": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "datetime": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "duration": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "reason": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The nested reason object returned by UptimeRobot, when present."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A monitor log entry returned by UptimeRobot."
                },
                "description": "The monitor logs returned by UptimeRobot, when requested."
              },
              "create_datetime": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              }
            },
            "additionalProperties": true,
            "description": "A monitor returned by the UptimeRobot API."
          }
        },
        "additionalProperties": false,
        "description": "The newly created UptimeRobot monitor."
      }
    },
    {
      "id": "uptimerobot.delete_monitor",
      "service": "uptimerobot",
      "name": "delete_monitor",
      "description": "Delete a monitor from the connected UptimeRobot account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "monitor_id": {
            "type": "integer",
            "minimum": 1,
            "description": "The numeric ID of the UptimeRobot monitor."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for deleting a UptimeRobot monitor."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "type": "boolean",
            "description": "Whether the monitor was deleted successfully."
          }
        },
        "additionalProperties": false,
        "description": "The monitor deletion acknowledgement returned by the UptimeRobot provider."
      }
    },
    {
      "id": "uptimerobot.get_account_details",
      "service": "uptimerobot",
      "name": "get_account_details",
      "description": "Get account-level monitor usage and profile details from the connected UptimeRobot account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "The input payload for getting UptimeRobot account details."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "account": {
            "type": "object",
            "properties": {
              "email": {
                "type": "string",
                "description": "The email address of the connected UptimeRobot account."
              },
              "user_id": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "monitor_limit": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "monitor_interval": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "up_monitors": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "down_monitors": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "paused_monitors": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "firstname": {
                "type": "string",
                "description": "The first name of the account owner, when present."
              },
              "registered_at": {
                "type": "string",
                "description": "The account registration timestamp returned by UptimeRobot, when present."
              }
            },
            "additionalProperties": true,
            "description": "The account details returned by the UptimeRobot API."
          }
        },
        "additionalProperties": false,
        "description": "The UptimeRobot account details lookup result."
      }
    },
    {
      "id": "uptimerobot.get_monitor",
      "service": "uptimerobot",
      "name": "get_monitor",
      "description": "Get the full configuration and current status of a single UptimeRobot monitor.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "monitor_id": {
            "type": "integer",
            "minimum": 1,
            "description": "The numeric ID of the UptimeRobot monitor."
          },
          "logs": {
            "type": "boolean",
            "description": "Whether monitor logs should be included in the UptimeRobot response."
          },
          "alert_contacts": {
            "type": "boolean",
            "description": "Whether alert contacts should be included in the UptimeRobot response."
          }
        },
        "additionalProperties": false,
        "required": [
          "monitor_id"
        ],
        "description": "The input payload for fetching a single UptimeRobot monitor."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "monitor": {
            "type": "object",
            "properties": {
              "id": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "friendly_name": {
                "type": "string",
                "description": "The friendly name configured for the monitor."
              },
              "url": {
                "type": "string",
                "description": "The monitored URL, hostname, or IP address."
              },
              "type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "status": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "sub_type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "interval": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "timeout": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "keyword_type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "keyword_value": {
                "type": "string",
                "description": "The keyword value configured for keyword monitors, when present."
              },
              "http_username": {
                "type": "string",
                "description": "The HTTP authentication username configured for the monitor, when present."
              },
              "http_password": {
                "type": "string",
                "description": "The HTTP authentication password configured for the monitor, when present."
              },
              "alert_contacts": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "friendly_name": {
                      "type": "string",
                      "description": "The friendly name of the alert contact."
                    },
                    "type": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "value": {
                      "type": "string",
                      "description": "The destination value configured for the alert contact."
                    }
                  },
                  "additionalProperties": true,
                  "description": "An alert contact returned by the UptimeRobot API."
                },
                "description": "The alert contacts returned for the monitor, when requested."
              },
              "logs": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "datetime": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "duration": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "reason": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The nested reason object returned by UptimeRobot, when present."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A monitor log entry returned by UptimeRobot."
                },
                "description": "The monitor logs returned by UptimeRobot, when requested."
              },
              "create_datetime": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              }
            },
            "additionalProperties": true,
            "description": "A monitor returned by the UptimeRobot API."
          }
        },
        "additionalProperties": false,
        "description": "The single-monitor lookup result returned by UptimeRobot."
      }
    },
    {
      "id": "uptimerobot.list_alert_contacts",
      "service": "uptimerobot",
      "name": "list_alert_contacts",
      "description": "List the alert contacts configured in the connected UptimeRobot account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "The input payload for listing UptimeRobot alert contacts."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "alert_contacts": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "friendly_name": {
                  "type": "string",
                  "description": "The friendly name of the alert contact."
                },
                "type": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "status": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "value": {
                  "type": "string",
                  "description": "The destination value configured for the alert contact."
                }
              },
              "additionalProperties": true,
              "description": "An alert contact returned by the UptimeRobot API."
            },
            "description": "The alert contacts returned by UptimeRobot."
          },
          "pagination": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "offset": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "An integer numeric value."
                      },
                      {
                        "type": "string",
                        "description": "A string numeric value."
                      }
                    ],
                    "description": "A numeric value returned by the UptimeRobot API."
                  },
                  "limit": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "An integer numeric value."
                      },
                      {
                        "type": "string",
                        "description": "A string numeric value."
                      }
                    ],
                    "description": "A numeric value returned by the UptimeRobot API."
                  },
                  "total": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "An integer numeric value."
                      },
                      {
                        "type": "string",
                        "description": "A string numeric value."
                      }
                    ],
                    "description": "A numeric value returned by the UptimeRobot API."
                  }
                },
                "additionalProperties": true,
                "description": "The pagination summary returned by UptimeRobot."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The alert contact list returned by UptimeRobot."
      }
    },
    {
      "id": "uptimerobot.list_monitors",
      "service": "uptimerobot",
      "name": "list_monitors",
      "description": "List monitors available in the connected UptimeRobot account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "The zero-based pagination offset to request from UptimeRobot."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "The maximum number of monitors to return from UptimeRobot."
          },
          "search": {
            "type": "string",
            "minLength": 1,
            "description": "A search term applied to monitor friendly names, URLs, and types."
          },
          "sort": {
            "type": "string",
            "enum": [
              "friendly_name",
              "url",
              "status",
              "type"
            ],
            "description": "The field used by UptimeRobot to sort the monitor list."
          },
          "monitor_ids": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1,
              "description": "The numeric ID of the UptimeRobot monitor."
            },
            "description": "A list of monitor IDs encoded into the official monitors filter.",
            "minItems": 1
          },
          "types": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 1,
              "maximum": 6,
              "description": "The UptimeRobot monitor type code. Known values are 1=HTTP(s), 2=Keyword, 3=Ping, 4=Port, 5=Heartbeat, and 6=SSL."
            },
            "description": "A list of monitor type codes encoded into the official types filter.",
            "minItems": 1
          },
          "statuses": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 0,
              "description": "A UptimeRobot monitor status code."
            },
            "description": "A list of monitor status codes encoded into the official statuses filter.",
            "minItems": 1
          },
          "logs": {
            "type": "boolean",
            "description": "Whether monitor logs should be included in each monitor result."
          },
          "alert_contacts": {
            "type": "boolean",
            "description": "Whether alert contacts should be included in each monitor result."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for listing monitors from the UptimeRobot account."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "monitors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "friendly_name": {
                  "type": "string",
                  "description": "The friendly name configured for the monitor."
                },
                "url": {
                  "type": "string",
                  "description": "The monitored URL, hostname, or IP address."
                },
                "type": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "status": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "sub_type": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "interval": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "timeout": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "keyword_type": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                },
                "keyword_value": {
                  "type": "string",
                  "description": "The keyword value configured for keyword monitors, when present."
                },
                "http_username": {
                  "type": "string",
                  "description": "The HTTP authentication username configured for the monitor, when present."
                },
                "http_password": {
                  "type": "string",
                  "description": "The HTTP authentication password configured for the monitor, when present."
                },
                "alert_contacts": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "description": "An integer numeric value."
                          },
                          {
                            "type": "string",
                            "description": "A string numeric value."
                          }
                        ],
                        "description": "A numeric value returned by the UptimeRobot API."
                      },
                      "friendly_name": {
                        "type": "string",
                        "description": "The friendly name of the alert contact."
                      },
                      "type": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "description": "An integer numeric value."
                          },
                          {
                            "type": "string",
                            "description": "A string numeric value."
                          }
                        ],
                        "description": "A numeric value returned by the UptimeRobot API."
                      },
                      "status": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "description": "An integer numeric value."
                          },
                          {
                            "type": "string",
                            "description": "A string numeric value."
                          }
                        ],
                        "description": "A numeric value returned by the UptimeRobot API."
                      },
                      "value": {
                        "type": "string",
                        "description": "The destination value configured for the alert contact."
                      }
                    },
                    "additionalProperties": true,
                    "description": "An alert contact returned by the UptimeRobot API."
                  },
                  "description": "The alert contacts returned for the monitor, when requested."
                },
                "logs": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "type": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "description": "An integer numeric value."
                          },
                          {
                            "type": "string",
                            "description": "A string numeric value."
                          }
                        ],
                        "description": "A numeric value returned by the UptimeRobot API."
                      },
                      "datetime": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "description": "An integer numeric value."
                          },
                          {
                            "type": "string",
                            "description": "A string numeric value."
                          }
                        ],
                        "description": "A numeric value returned by the UptimeRobot API."
                      },
                      "duration": {
                        "anyOf": [
                          {
                            "type": "integer",
                            "description": "An integer numeric value."
                          },
                          {
                            "type": "string",
                            "description": "A string numeric value."
                          }
                        ],
                        "description": "A numeric value returned by the UptimeRobot API."
                      },
                      "reason": {
                        "type": "object",
                        "properties": {},
                        "additionalProperties": true,
                        "description": "The nested reason object returned by UptimeRobot, when present."
                      }
                    },
                    "additionalProperties": true,
                    "description": "A monitor log entry returned by UptimeRobot."
                  },
                  "description": "The monitor logs returned by UptimeRobot, when requested."
                },
                "create_datetime": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "description": "An integer numeric value."
                    },
                    {
                      "type": "string",
                      "description": "A string numeric value."
                    }
                  ],
                  "description": "A numeric value returned by the UptimeRobot API."
                }
              },
              "additionalProperties": true,
              "description": "A monitor returned by the UptimeRobot API."
            },
            "description": "The monitors returned by UptimeRobot."
          },
          "pagination": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "offset": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "An integer numeric value."
                      },
                      {
                        "type": "string",
                        "description": "A string numeric value."
                      }
                    ],
                    "description": "A numeric value returned by the UptimeRobot API."
                  },
                  "limit": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "An integer numeric value."
                      },
                      {
                        "type": "string",
                        "description": "A string numeric value."
                      }
                    ],
                    "description": "A numeric value returned by the UptimeRobot API."
                  },
                  "total": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "An integer numeric value."
                      },
                      {
                        "type": "string",
                        "description": "A string numeric value."
                      }
                    ],
                    "description": "A numeric value returned by the UptimeRobot API."
                  }
                },
                "additionalProperties": true,
                "description": "The pagination summary returned by UptimeRobot."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The UptimeRobot monitor list."
      }
    },
    {
      "id": "uptimerobot.update_monitor",
      "service": "uptimerobot",
      "name": "update_monitor",
      "description": "Update an existing monitor in the connected UptimeRobot account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "monitor_id": {
            "type": "integer",
            "minimum": 1,
            "description": "The numeric ID of the UptimeRobot monitor."
          },
          "friendly_name": {
            "type": "string",
            "minLength": 1,
            "description": "The friendly name of the monitor."
          },
          "url": {
            "type": "string",
            "minLength": 1,
            "description": "The URL, hostname, or IP address that UptimeRobot should monitor."
          },
          "type": {
            "type": "integer",
            "minimum": 1,
            "maximum": 6,
            "description": "The UptimeRobot monitor type code. Known values are 1=HTTP(s), 2=Keyword, 3=Ping, 4=Port, 5=Heartbeat, and 6=SSL."
          },
          "sub_type": {
            "type": "integer",
            "minimum": 1,
            "description": "The subtype code used for port monitors. Known values are 1=HTTP, 2=HTTPS, 3=FTP, 4=SMTP, 5=POP3, 6=IMAP, and 99=Custom."
          },
          "port": {
            "type": "integer",
            "minimum": 1,
            "maximum": 65535,
            "description": "The destination port used for custom port monitors."
          },
          "interval": {
            "type": "integer",
            "minimum": 1,
            "description": "The monitor interval in seconds accepted by UptimeRobot."
          },
          "timeout": {
            "type": "integer",
            "minimum": 1,
            "maximum": 60,
            "description": "The timeout in seconds before UptimeRobot treats the check as failed."
          },
          "keyword_type": {
            "anyOf": [
              {
                "const": 1,
                "type": "number"
              },
              {
                "const": 2,
                "type": "number"
              }
            ],
            "description": "The keyword matching mode. Use 1 when the keyword must exist, or 2 when it must not exist."
          },
          "keyword_value": {
            "type": "string",
            "minLength": 1,
            "description": "The keyword value used by keyword monitors."
          },
          "http_username": {
            "type": "string",
            "minLength": 1,
            "description": "The HTTP authentication username used by the monitor."
          },
          "http_password": {
            "type": "string",
            "minLength": 1,
            "description": "The HTTP authentication password used by the monitor."
          },
          "ssl": {
            "type": "boolean",
            "description": "Whether SSL validation should stay enabled for HTTPS-based monitors."
          },
          "alert_contacts": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "description": "The official alert_contacts string, such as 12345_0_0-67890_5_2."
              },
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "minimum": 1,
                      "description": "The numeric ID of the UptimeRobot alert contact."
                    },
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "integer",
                          "minimum": 1,
                          "description": "The numeric ID of the UptimeRobot alert contact."
                        },
                        "threshold": {
                          "type": "integer",
                          "minimum": 0,
                          "description": "How many minutes UptimeRobot should wait before notifying this alert contact."
                        },
                        "recurrence": {
                          "type": "integer",
                          "minimum": 0,
                          "description": "How many times UptimeRobot should repeat the notification for this alert contact."
                        }
                      },
                      "additionalProperties": false,
                      "description": "A structured alert contact assignment."
                    }
                  ]
                },
                "description": "A list of alert contacts to encode into the official alert_contacts parameter.",
                "minItems": 1
              }
            ],
            "description": "Either the official alert_contacts string or a list of structured alert contact assignments."
          }
        },
        "additionalProperties": false,
        "required": [
          "monitor_id"
        ],
        "description": "The input payload for updating an existing UptimeRobot monitor."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "monitor": {
            "type": "object",
            "properties": {
              "id": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "friendly_name": {
                "type": "string",
                "description": "The friendly name configured for the monitor."
              },
              "url": {
                "type": "string",
                "description": "The monitored URL, hostname, or IP address."
              },
              "type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "status": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "sub_type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "interval": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "timeout": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "keyword_type": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              },
              "keyword_value": {
                "type": "string",
                "description": "The keyword value configured for keyword monitors, when present."
              },
              "http_username": {
                "type": "string",
                "description": "The HTTP authentication username configured for the monitor, when present."
              },
              "http_password": {
                "type": "string",
                "description": "The HTTP authentication password configured for the monitor, when present."
              },
              "alert_contacts": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "friendly_name": {
                      "type": "string",
                      "description": "The friendly name of the alert contact."
                    },
                    "type": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "status": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "value": {
                      "type": "string",
                      "description": "The destination value configured for the alert contact."
                    }
                  },
                  "additionalProperties": true,
                  "description": "An alert contact returned by the UptimeRobot API."
                },
                "description": "The alert contacts returned for the monitor, when requested."
              },
              "logs": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "datetime": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "duration": {
                      "anyOf": [
                        {
                          "type": "integer",
                          "description": "An integer numeric value."
                        },
                        {
                          "type": "string",
                          "description": "A string numeric value."
                        }
                      ],
                      "description": "A numeric value returned by the UptimeRobot API."
                    },
                    "reason": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The nested reason object returned by UptimeRobot, when present."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A monitor log entry returned by UptimeRobot."
                },
                "description": "The monitor logs returned by UptimeRobot, when requested."
              },
              "create_datetime": {
                "anyOf": [
                  {
                    "type": "integer",
                    "description": "An integer numeric value."
                  },
                  {
                    "type": "string",
                    "description": "A string numeric value."
                  }
                ],
                "description": "A numeric value returned by the UptimeRobot API."
              }
            },
            "additionalProperties": true,
            "description": "A monitor returned by the UptimeRobot API."
          }
        },
        "additionalProperties": false,
        "description": "The updated UptimeRobot monitor."
      }
    }
  ]
}
