Measurement Definitions
The definitions array contains one or more measurement definition objects. Each describes what you want to measure.
Required Fields
Every definition needs at minimum:
description— a name for this measurementtype— the measurement type (see below)af— address family:4(IPv4) or6(IPv6)target— what to measure against (required for all types except DNS, which usesquery_argumentinstead)
Measurement Types
ping— ICMP echo requests to a target. Configure packet count, size, and interval.traceroute— Trace the path to a target hop by hop. Supports UDP, ICMP, and TCP protocols, with options like Paris traceroute and first/max hop control.dns— DNS queries against a resolver or the probe's local resolver. Specify the query name, record type, class, and various DNS flags (RD, CD, DO, NSID).sslcert— Retrieve the TLS/SSL certificate from a target. Useful for monitoring certificate validity and chain.http— Make an HTTP request to a target. Configure path, method, port, and HTTP version.ntp— Query an NTP server to check time synchronisation.
Each type has its own set of optional fields for fine-tuning behaviour. For the complete list of fields, defaults, and constraints for each type, see the REST API Reference.
Common Optional Fields
Beyond the type-specific fields, all definitions share some common options:
is_oneoff— run the measurement once (true) or on a recurring schedule (false, the default)interval— seconds between measurements per probe (for recurring measurements)is_public— whether results are publicly visible (default:true)resolve_on_probe— resolve the target hostname on the probe rather than centrallytags— an array of strings to organize and label measurements
See Global Fields for fields like start_time, stop_time, and bill_to that can be set at the request level.
WARNING
For DNS measurements with use_probe_resolver set to true, set_rd_bit is silently enabled for privacy reasons.
Multiple Definitions
You can submit multiple definitions in a single request. Each can have a different type and configuration. The response returns one measurement ID per definition, in the same order.
json
{
"definitions": [
{"target": "ripe.net", "description": "Ping", "type": "ping", "af": 4},
{"target": "ripe.net", "description": "Trace", "type": "traceroute", "af": 4}
],
"probes": [{"requested": 5, "type": "region", "value": "europe"}]
}