With AlertSite Management API, you can create HTTP and HTTPS website monitors.
HTTP website
To create a new website monitor for an http://
URL, send a POST request to /monitors/website
with a JSON body containing the monitor configuration.
HTTPS website
To create a new website monitor for an https://
URL, send a POST request to /monitors/website-ssl
with a JSON body containing the monitor configuration.
Request URL
HTTP website
POST https://api.alertsite.com/api/v3/monitors/website
HTTPS website
POST https://api.alertsite.com/api/v3/monitors/website-ssl
Authentication
The request must include the Authorization
header containing a user’s access token:
Authorization: Bearer ACCESS_TOKEN
See Authentication for more information.
The authenticating user must have permissions to create monitors.
Request body
The request body is a JSON object containing the monitor configuration parameters. The required data fields for a website monitor are:
-
billing_plancode
-
name
-
url
For the full list and description of available fields, see Single URL monitor fields.
Parameters that are not specified in the request body will take the values specified in AlertSite defaults and your account defaults. For example, if you do not specify locations for the monitor, it will use your account's default monitoring locations.
Below is the minimal example of single URL website monitor parameters:
HTTP website
{
"billing_plancode":"UBM - A/A",
"name":"SmartStore",
"url":"http://services.smartbear.com/samples/TestComplete14/smartstore/"
}
HTTPS website
{
"billing_plancode":"UBM - A/A",
"name":"Home Page",
"url":"https://smartbear.com/"
}
Response body
On success, the operation returns the ID of the created monitor.
{
"id": "123456"
}
Error responses have a non-200 status code and contain the errors
list, such as:
{
"errors": [
{
"code": 400,
"message": "invalid_request - User authentication failed."
}
]
}
Try it out
HTTP website
Click here to test this operation in AlertSite’s interactive API console.
HTTPS website
Click here to test this operation in AlertSite’s interactive API console.
Code examples
HTTP website
This code creates a 15-minute monitor for http://services.smartbear.com/samples/TestComplete14/smartstore/.
cURL (Windows)
curl -X POST https://api.alertsite.com/api/v3/monitors/website
-H "Authorization: Bearer ACCESS_TOKEN"
-H "Content-Type: application/json"
-d '{\"billing_plancode\":\"UBM - A/A\", \"name\":\"SmartStore\", \"url\":\"http://services.smartbear.com/samples/TestComplete14/smartstore/\", \"interval\":15, \"enabled\":true}'
Note: New lines are added for readability.
The actual command should be one continuous line.
cURL (bash)
curl -X POST https://api.alertsite.com/api/v3/monitors/website \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-type: application/json" \
-d '{"billing_plancode":"UBM - A/A", "name":"SmartStore", "url":"http://services.smartbear.com/samples/TestComplete14/smartstore/", "interval":15, "enabled":true}'
Python
import requests # Requests library http://docs.python-requests.org
import json
baseUrl = 'https://api.alertsite.com/api/v3'
username = '[email protected]' # Replace with your AlertSite login email
password = 'pa55w0rd' # Replace with your AlertSite password
monitor_params = {
'billing_plancode': 'UBM - A/A',
'name': 'SmartStore',
'url': 'http://services.smartbear.com/samples/TestComplete14/smartstore/',
'interval': 15,
'enabled': True
}
# Login
payload = {'username': username, 'password': password}
r = requests.post(baseUrl+'/access-tokens', data=json.dumps(payload), headers={'Content-Type': 'application/json'})
token = r.json()['access_token']
# Create the monitor
headers = {
'Authorization': 'Bearer ' + token,
'Content-Type': 'application/json'
}
r = requests.post(baseUrl+'/monitors/website', data=json.dumps(monitor_params), headers=headers)
result = r.json()
if r.status_code == requests.codes.ok:
monitor_id = result['id']
print('Successfully created the monitor. ID:{}'.format(monitor_id))
else:
print('Could not create a monitor. The following error(s) occurred:', *result['errors'], sep='\n')
HTTPS website
This code creates a 15-minute monitor for https://smartbear.com.
cURL (Windows)
curl -X POST https://api.alertsite.com/api/v3/monitors/website-ssl
-H "Authorization: Bearer ACCESS_TOKEN"
-H "Content-Type: application/json"
-d '{\"billing_plancode\":\"UBM - A/A\", \"name\":\"Home Page\", \"url\":\"https://smartbear.com\", \"interval\":15, \"enabled\":true}'
Note: New lines are added for readability.
The actual command should be one continuous line.
cURL (bash)
curl -X POST https://api.alertsite.com/api/v3/monitors/website-ssl \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-type: application/json" \
-d '{"billing_plancode":"UBM - A/A", "name":"Home Page", "url":"https://smartbear.com", "interval":15, "enabled":true}'
Python
import requests # Requests library http://docs.python-requests.org
import json
baseUrl = 'https://api.alertsite.com/api/v3'
username = '[email protected]' # Replace with your AlertSite login email
password = 'pa55w0rd' # Replace with your AlertSite password
monitor_params = {
'billing_plancode': 'UBM - A/A',
'name': 'Home Page',
'url': 'https://smartbear.com',
'interval': 15,
'enabled': True
}
# Login
payload = {'username': username, 'password': password}
r = requests.post(baseUrl+'/access-tokens', data=json.dumps(payload), headers={'Content-Type': 'application/json'})
token = r.json()['access_token']
# Create the monitor
headers = {
'Authorization': 'Bearer ' + token,
'Content-Type': 'application/json'
}
r = requests.post(baseUrl+'/monitors/website-ssl', data=json.dumps(monitor_params), headers=headers)
result = r.json()
if r.status_code == requests.codes.ok:
monitor_id = result['id']
print('Successfully created the monitor. ID:{}'.format(monitor_id))
else:
print('Could not create a monitor. The following error(s) occurred:', *result['errors'], sep='\n')