Getkuma REST API.
Getkuma has an easy-to-use API. Responses are provided as XML, JSON or JSON-P. It lets you get the details of your monitors, logs, create / edit / delete monitors, alert contacts and maintenance windows. That’s all.
Authentication
HTTP Basic Access Authentication is used for verifying accounts.
There are 3 types of api_keys for reaching the data:
- account-specific api_key which allows using all the API methods on all the monitors of an account
- monitor-specific api_keys which allows using only the
getMonitors
method for the given monitor - read-only api_key which allows fetching data with all the get* API endpoints
Which api_key type to use?
account-specific api_key is good for pulling data for more than 1 monitors (like listing the stats of all monitors) and/or adding-editing-deleting monitors.
monitor-specific api_keys are good for pulling data for a single monitor without revealing your main api_key (account-specific api_key). For ex: you can use monitor-specific api_keys in client websites (so you’ll still be able to pull data and the client will only be able to see the monitor-specific api_key).
read-only api_key is good for pulling data for listing. If you are not going to use create, update or delete methods, you can use read-only api-key.
Where to find the api_keys?
They are found under “My Settings” page.
While making a request, you must send the api_key in your request’s body. API key as a query parameter is only allowed for getMonitors
endpoint:
https://api.uptimerobot.com/v2/getMonitors?api_key=YOUR_API_KEY_HERE
Rate Limits
We are trying to prevent abusive use of our API. We have rate limits based on user plan.
FREE plan : 10 req/min
PRO plan : monitor limit * 2 req/min ( with maximum value 5000 req/min )
We will return 429 HTTP status code in the response from API, when you hit the rate limits. Also we will return common rate limit response headers in the response :
X-RateLimit-Limit - your current rate limit
X-RateLimit-Remaining - number of calls left in current duration
X-RateLimit-Reset - time since epoch in seconds at which
the rate limiting period will end (or already ended)
Retry-After - Number of second after you should retry the call
CORS
CORS headers are sent only for get* API endpoints with monitor-specific and read-only API keys.
Formats
Responses can either be XML or JSON. Just mention the preferred format as:
https://api.uptimerobot.com/v2/methodName?format=xml
orhttps://api.uptimerobot.com/v2/methodName?format=json
In order to get a JSON-P response, the requests need to be sent with a parameter named callback
like callback=jsonpUptimeRobot
and the response will return as:
jsonpUptimeRobot({...});
Methods
- POST getAccountDetails
- POST getMonitors
- POST newMonitor
- POST editMonitor
- POST deleteMonitor
- POST resetMonitor
- POST getAlertContacts
- POST newAlertContact
- POST editAlertContact
- POST deleteAlertContact
- POST getMWindows
- POST newMWindow
- POST editMWindow
- POST deleteMWindow
- POST getPSPs
- POST newPSP
- POST editPSP
- POST deletePSP