Uptimerobot

Learn how to use Uptimerobot with Composio

Overview

SLUG: UPTIMEROBOT

Description

UptimeRobot is a service that monitors the uptime and performance of websites, applications, and services, providing real-time alerts and detailed logs.

Authentication Details

generic_api_key
stringRequired

Connecting to Uptimerobot

Create an auth config

Use the dashboard to create an auth config for the Uptimerobot toolkit. This allows you to connect multiple Uptimerobot accounts to Composio for agents to use.

1

Select App

Navigate to Uptimerobot.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Uptimerobot Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4uptimerobot_auth_config_id = "ac_YOUR_UPTIMEROBOT_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Uptimerobot for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, uptimerobot_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Uptimerobot toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["UPTIMEROBOT"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Add Monitor

Description

Tool to create a new monitor. use when you need to start monitoring a url or service; call after obtaining a valid api key.

Action Parameters

alert_contacts
string
friendly_name
stringRequired
http_password
string
http_username
string
interval
integer
keyword_type
integer
keyword_value
string
mwindows
string
port
integer
ssl
integer
subtype
integer
timeout
integer
type
integerRequired
url
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Monitor

Description

Tool to delete a monitor. use when you need to remove an existing monitor by its id; use after confirming the monitor id.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Edit Maintenance Window

Description

Tool to edit an existing maintenance window. use when you need to update its name, timing, recurrence, or duration after confirming the window id.

Action Parameters

duration
integerRequired
friendly_name
string
id
integerRequired
start_time
stringRequired
type
integerRequired
value
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Edit Monitor

Description

Tool to edit an existing monitor. use after confirming the monitor id exists.

Action Parameters

alert_contacts
string
custom_http_headers
object
friendly_name
string
http_method
string
http_password
string
http_username
string
id
integerRequired
ignore_ssl
integer
interval
integer
keyword_type
integer
keyword_value
string
maintenance_windows
string
port
integer
post_type
integer
post_value
string
ssl
integer
subtype
integer
timeout
integer
type
integer
up_uptime_threshold
integer
url
string
verify_ssl
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Edit Public Status Page

Description

Tool to edit an existing public status page. use after confirming the page id. updates friendly name, monitor set, domain, and status options in one call.

Action Parameters

custom_domain
string
friendly_name
string
hide_url_links
boolean
id
integerRequired
monitors
string
password
string
sort
integer
status
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Account Details

Description

Tool to retrieve account details. use after authenticating with a valid api key to fetch account metrics.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Maintenance Windows

Description

Tool to retrieve maintenance windows. use after confirming a valid api key.

Action Parameters

limit
integer
mwindows
string
offset
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitor Authentication Type

Description

Tool to get authentication type for specified monitors. use after providing monitor ids to check http basic auth status.

Action Parameters

monitor_ids
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitor Custom HTTP Headers

Description

Tool to retrieve custom http headers for specified monitors. use when you need to inspect the headers set on your monitors.

Action Parameters

monitors
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitor Custom HTTP Statuses

Description

Tool to retrieve custom http statuses for specified monitors. use when you need to view user-defined up/down http codes after confirming monitor ids.

Action Parameters

monitors
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitor Response Times

Description

Tool to fetch historical response times for specified monitors. use when you need performance trends over time after retrieving monitor ids.

Action Parameters

average
integer
limit
integer
monitor_ids
arrayRequired
offset
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitors

Description

Tool to fetch monitor details and status. use after confirming account connection.

Action Parameters

alert_contacts
integerDefaults to 1
all_time_uptime_durations
string
custom_uptime_ranges
string
custom_uptime_ratios
string
limit
integer
logs
integerDefaults to 1
monitors
string
offset
integer
response_times
integer
response_times_end_date
integer
response_times_limit
integer
response_times_start_date
integer
search
string
sort
string
statuses
string
types
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitor SSL Certificate Info

Description

Tool to retrieve ssl certificate information for specified monitors. use when you need ssl details after confirming monitor ids.

Action Parameters

monitors
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Monitor Timezone

Description

Tool to retrieve timezone for specified monitors. use after providing monitor ids to get monitor timezones.

Action Parameters

monitor_ids
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Public Status Pages

Description

Tool to retrieve public status pages. use after confirming api credentials to list all public status pages for an account. supports pagination.

Action Parameters

limit
integer
offset
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Uptime Ratios

Description

Tool to retrieve uptime ratios for monitors. use after obtaining monitor ids to analyze sla performance over custom periods.

Action Parameters

custom_uptime_ratios
stringRequired
monitors
string
response_times_average
integer
response_times_end_date
integer
response_times_start_date
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: New Maintenance Window

Description

Tool to create a new maintenance window. use after confirming window parameters.

Action Parameters

day
integer
friendly_name
stringRequired
monitors
string
start_time
integerRequired
type
integerRequired
value
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: New Public Status Page

Description

Tool to create a new public status page. use when you want to publish a public status page for selected monitors after specifying a friendly name.

Action Parameters

custom_domains
string
custom_url
string
friendly_name
stringRequired
hide_url_links
integer
monitors
stringRequired
password
string
sort
integer
status
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired