To modify an API endpoint monitor, send a PATCH request to /monitors/website-api/{id} or /monitors/website-ssl-api/{id}, where {id} is the monitor ID. 
Request URL
PATCH https://api.alertsite.com/api/v3/monitors/website-api/{id}
-- or --
PATCH https://api.alertsite.com/api/v3/monitors/website-ssl-api/{id}
Authentication
The request must include the Authorization header containing a user’s access token:
Authorization: Bearer ACCESS_TOKEN
See Authentication for more information.
Request body
The request body is a JSON object containing the monitor configuration fields you want to update.
For example, enable full-page object alerts and keyword validation settings and change the SSL certificate version:
{  
  "check_fullpage_missing_objects":true,
  "check_fullpage_object_sizes":true,
  "fullpage_object_timeout":10,
  "keyword_match_invert":false,
  "keyword_match_type":"Plain Text",
  "keyword_string":"Featured products",
  "notify_on_fullpage_errors":false,
  "use_ssl_version":2
					}
Response body
On success, the operation returns the ID of the updated 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
You can test the operations in AlertSite’s interactive API console:
Code examples
This code updates the monitor with ID 123456, enables full-page object alerts, adds keyword validation, and changes the SSL certificate version.
cURL (Windows)
curl -X PATCH https://api.alertsite.com/api/v3/monitors/website-api/123456
  -H "Authorization: Bearer ACCESS_TOKEN"
  -H "Content-Type: application/json"
  -d '{\"check_fullpage_missing_objects\":true, \"check_fullpage_object_sizes\":true, \"fullpage_object_timeout\":10, \"keyword_match_invert\":false, \"keyword_match_type\":\"Plain Text\", \"keyword_string\":\"Featured products\", \"notify_on_fullpage_errors\":true, \"use_ssl_version\":2}'
							Note: New lines are added for readability.
The actual command should be one continuous line.
cURL (bash)
curl -X PATCH https://api.alertsite.com/api/v3/monitors/website-api/123456 \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-type: application/json" \
  -d '{"check_fullpage_missing_objects":true, "check_fullpage_object_sizes":true, "fullpage_object_timeout":10, "keyword_match_invert":false, "keyword_match_type":"Plain Text", "keyword_string":"Featured products", "notify_on_fullpage_errors":true, "use_ssl_version":2}'
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 = {
  'check_fullpage_missing_objects': True,
  'check_fullpage_object_sizes': True,
  'fullpage_object_timeout': 10,
  'keyword_match_invert': False,
  'keyword_match_type': 'Plain Text',
  'keyword_string': 'Featured products',
  'notify_on_fullpage_errors': False,
  'use_ssl_version': 2
							}
# 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']
# Update the monitor
							headers = {
  'Authorization': 'Bearer ' + token,
  'Content-Type': 'application/json'
							}
							r = requests.patch(baseUrl+'/monitors/website-api/123456', data=json.dumps(monitor_params), headers=headers)
							result = r.json()
if r.status_code == requests.codes.ok:
    monitor_id = result['id']
    print('Successfully updated the monitor. ID:{}'.format(monitor_id))
							else:
    print('Could not update the monitor. The following error(s) occurred:', *result['errors'], sep='\n')
See Also
Monitor Operations
Create a Website Monitor
Convert API Endpoint Monitors to SoapUI
Delete Monitor
