‘Probe’ refers to a periodic test of an internet-connected service. Today the supported Probe types include TCP port connections, ICMP, DNS, HTTP GET/POST and HTTPS GET/POST, REST, SSL.
‘Station’ refers to a location from which the tests are being generated.
Each of the API commands described here relate to retrieving, creating, editing and deleting one or more of your Probes.
Each probe is completely described by a Probe Hash, and each has a unique id referred to herein as a PROBE_ID.
The Probe Hash
An example JSON-encoded Probe Hash is shown below:
Index
Retrieve an array of all of your Probe Hashes.
CURL Command, and variations:
CURL Response:
Response is a JSON-encoded array of Probe Hashes.
Show
Retrieve a single Probe Hash, given its PROBE_ID.
Required parameters
PROBE_ID as part of the path.
CURL Command, and variations:
CURL Response:
Response is a single JSON-encoded Probe Hash.
Create
Create a new probe.
Required parameters:
probe_desc
Your short text description of the probe (string); e.g., “probe_desc”:”MyWebsite”.
Any characters allowed.
type
A string that may be GET, POST, PUT, DELETE, SSH, ICMP, DNS, TCP or SSL.
probe_dest
The URL or IP address to probe, formatted as a string; e.g., “probe_dest”:”http://mywebsite.com”
Optional parameters:
check_contents
A string parameter used to enable / disable GET content-checking and to specify the type of content check made.
check_contents may have one of three values:
null: no content check is made
“match”: true if the string in ‘contentmatch’ is found
“notmatch”: true if the string in ‘contentmatch’ is NOT found
contentmatch
The string used for comparison if ‘check_contents’ is not null.
frequency
Frequency of probing; if not specified, the default of 60 seconds will be used; may be set to 15, 60 or 300.
NOTE: ‘frequency’ is a misnomer … you are actually specifying the time between tests in seconds.
timeout
request time-out, in milliseconds; if not specified, will default to 10000 ms, or 10 seconds.
retries
Number of times to retry the operation; if not specified, defaults to 1.
tags
Tags to apply to this probe; null: no tags will be applied.
stations
Specify which stations will probe the destination URL; if not specified, all stations will probe.
username
Specify user name for basic authentication of REST probes (GET, POST, PUT, DELETE).
password
Specify password for basic authentication of REST probes. (Used in GET, POST, PUT, DELETE probes)
name_server
Specify name server to resolve probe destination specified. (Used in DNS probes)
Create Example 1: create a new probe using only the required parameters, to demonstrate defaults.
CURL Command, and variations:
CURL Response:
Response is the newly-created JSON-encoded Probe Hash:
Create Example 2: create a new probe which will be monitored every 15 seconds from London and Tokyo.
CURL Command, and variations:
CURL Response:
Response is the newly-created JSON-encoded Probe Hash:
Update
Update an existing Probe.
Required parameters
Same as described for Create
Optional parameters
Same as described for Create
Update Example: change the frequency of the probe created above to every 300 seconds.
CURL Command, and variations:
CURL Response:
Response is the newly-updated JSON-encoded Probe Hash: