• Home
  • Dynatrace API
  • Environment
  • Synthetic v1
  • Monitors
  • JSON models

Synthetic monitors API - JSON models

Some JSON models of the Synthetic monitors API vary depending on the type of the model. The JSON models for each variation are listed below.

Variations of the SyntheticMonitor object

BROWSER

BrowserSyntheticMonitor

The BrowserSyntheticMonitor object

The synthetic monitor.

The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.

ElementTypeDescription
keyPerformanceMetricsKeyPerformanceMetrics

The key performance metrics configuration.

eventsEventDto[]

A list of events for this monitor

The KeyPerformanceMetrics object

The key performance metrics configuration.

ElementTypeDescription
loadActionKpmstring

Defines the key performance metric for load actions.

The element can hold these values
  • VISUALLY_COMPLETE
  • SPEED_INDEX
  • USER_ACTION_DURATION
  • TIME_TO_FIRST_BYTE
  • HTML_DOWNLOADED
  • DOM_INTERACTIVE
  • LOAD_EVENT_START
  • LOAD_EVENT_END
xhrActionKpmstring

Defines the key performance metric for XHR actions.

The element can hold these values
  • VISUALLY_COMPLETE
  • USER_ACTION_DURATION
  • TIME_TO_FIRST_BYTE
  • RESPONSE_END

The EventDto object

ElementTypeDescription
entityIdstring

Event identifier

namestring

Event name

sequenceNumberinteger

Event sequence number

json
{ "entityId": "SYNTHETIC_TEST-790745B687BE4D0E", "name": "Browser monitor", "frequencyMin": 10, "enabled": true, "type": "BROWSER", "createdFrom": "GUI", "script": { "type": "clickpath", "version": "1.0", "configuration": { "device": { "mobile": false, "touchEnabled": false, "width": 1024, "height": 768, "scaleFactor": 1 } }, "events": [ { "type": "navigate", "description": "Loading of \"https://orf.at\"", "url": "https://orf.at", "wait": { "waitFor": "page_complete" } } ] }, "locations": [ "GEOLOCATION-0A41430434C388A9" ], "anomalyDetection": { "outageHandling": { "globalOutage": true, "localOutage": false, "localOutagePolicy": { "affectedLocations": 1, "consecutiveRuns": 3 } }, "loadingTimeThresholds": { "enabled": true, "thresholds": [ { "type": "TOTAL", "valueMs": 10000 } ] } }, "tags": [ { "context": "CONTEXTLESS", "key": "blabla" } ], "managementZones": [ { "id": "-7832237287622819191", "name": "!!allSynthetic" } ], "automaticallyAssignedApps": [ "APPLICATION-7ADA0EF404C7C545" ], "manuallyAssignedApps": [ "APPLICATION-4ADF0EF407C7C545" ], "keyPerformanceMetrics": { "loadActionKpm": "VISUALLY_COMPLETE", "xhrActionKpm": "VISUALLY_COMPLETE" }, "events": [ { "entityId": "SYNTHETIC_TEST_STEP-2E6FDA5B4BC39A27", "name": "Loading of \"https://orf.at\"", "sequenceNumber": 1 } ] }

HTTP

HttpSyntheticMonitor

The HttpSyntheticMonitor object

The synthetic monitor.

The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.

ElementTypeDescription
requestsRequestDto[]

A list of events for this monitor

The RequestDto object

ElementTypeDescription
entityIdstring

Request identifier

namestring

Request name

sequenceNumberinteger

Request sequence number

json
{ "entityId": "HTTP_CHECK-B58DA1B8B892A05C", "name": "HTTP monitor", "frequencyMin": 1, "enabled": true, "type": "HTTP", "createdFrom": "GUI", "script": { "version": "1.0", "requests": [ { "description": "orf.at", "url": "https://orf.at", "method": "GET", "requestBody": "", "configuration": { "acceptAnyCertificate": true, "followRedirects": true }, "preProcessingScript": "", "postProcessingScript": "" } ] }, "locations": [ "SYNTHETIC_LOCATION-61F43EECF5FB8345" ], "anomalyDetection": { "outageHandling": { "globalOutage": true, "localOutage": false, "localOutagePolicy": { "affectedLocations": 1, "consecutiveRuns": 3 } }, "loadingTimeThresholds": { "enabled": false, "thresholds": [ { "type": "TOTAL", "valueMs": 10000 } ] } }, "tags": [], "managementZones": [ { "id": "-7832237287622819191", "name": "!!allSynthetic" } ], "automaticallyAssignedApps": [ "APPLICATION-4ADF0EF407C7C545" ], "manuallyAssignedApps": [ "APPLICATION-7ADA0EF404C7C545" ], "requests": [ { "entityId": "HTTP_CHECK_STEP-E9208469D53BAF38", "name": "orf.at", "sequenceNumber": 1 } ] }

Variations of the SyntheticMonitorUpdate object

BROWSER

BrowserSyntheticMonitorUpdate

The BrowserSyntheticMonitorUpdate object

The synthetic monitor update.

The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.

ElementTypeDescription
keyPerformanceMetricsKeyPerformanceMetrics

The key performance metrics configuration.

The KeyPerformanceMetrics object

The key performance metrics configuration.

ElementTypeDescription
loadActionKpmstring

Defines the key performance metric for load actions.

The element can hold these values
  • VISUALLY_COMPLETE
  • SPEED_INDEX
  • USER_ACTION_DURATION
  • TIME_TO_FIRST_BYTE
  • HTML_DOWNLOADED
  • DOM_INTERACTIVE
  • LOAD_EVENT_START
  • LOAD_EVENT_END
xhrActionKpmstring

Defines the key performance metric for XHR actions.

The element can hold these values
  • VISUALLY_COMPLETE
  • USER_ACTION_DURATION
  • TIME_TO_FIRST_BYTE
  • RESPONSE_END
json
{ "name": "Browser monitor", "frequencyMin": 10, "enabled": true, "type": "BROWSER", "script": { "type": "clickpath", "version": "1.0", "configuration": { "device": { "mobile": false, "touchEnabled": false, "width": 1024, "height": 768, "scaleFactor": 1 } }, "events": [ { "type": "navigate", "description": "Loading of \"https://orf.at\"", "url": "https://orf.at", "wait": { "waitFor": "page_complete" } } ] }, "locations": [ "GEOLOCATION-0A41430434C388A9" ], "anomalyDetection": { "outageHandling": { "globalOutage": true, "localOutage": false, "localOutagePolicy": { "affectedLocations": 1, "consecutiveRuns": 3 } }, "loadingTimeThresholds": { "enabled": true, "thresholds": [ { "type": "TOTAL", "valueMs": 10000 } ] } }, "tags": [ { "context": "CONTEXTLESS", "key": "blabla" } ], "manuallyAssignedApps": [ "APPLICATION-4ADF0EF407C7C545" ], "keyPerformanceMetrics": { "loadActionKpm": "VISUALLY_COMPLETE", "xhrActionKpm": "VISUALLY_COMPLETE" } }

HTTP

HttpSyntheticMonitorUpdate

The HttpSyntheticMonitorUpdate object

The synthetic monitor update.

The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.

ElementTypeDescription
frequencyMininteger

The frequency of the monitor, in minutes.

You can use one of the following values: 5, 10, 15, 30, and 60.

anomalyDetectionAnomalyDetection

The anomaly detection configuration.

typestring

Defines the actual set of fields depending on the value. See one of the following objects:

  • BROWSER -> BrowserSyntheticMonitorUpdate
  • HTTP -> HttpSyntheticMonitorUpdate
The element can hold these values
  • BROWSER
  • HTTP
namestring

The name of the monitor.

locationsstring[]

A list of locations from which the monitor is executed.

To specify a location, use its entity ID.

enabledboolean

The monitor is enabled (true) or disabled (false).

scriptobject

The script of a browser or HTTP monitor.

tagsTagWithSourceInfo[]

A set of tags assigned to the monitor.

You can specify only the value of the tag here and the CONTEXTLESS context and source 'USER' will be added automatically. But preferred option is usage of TagWithSourceDto model.

manuallyAssignedAppsstring[]

A set of manually assigned applications.

The AnomalyDetection object

The anomaly detection configuration.

ElementTypeDescription
outageHandlingOutageHandlingPolicy

Outage handling configuration.

loadingTimeThresholdsLoadingTimeThresholdsPolicyDto

Performance thresholds configuration.

The OutageHandlingPolicy object

Outage handling configuration.

ElementTypeDescription
globalOutageboolean

When enabled (true), generate a problem and send an alert when the monitor is unavailable at all configured locations.

globalOutagePolicyGlobalOutagePolicy

Global outage handling configuration.

localOutageboolean

When enabled (true), generate a problem and send an alert when the monitor is unavailable for one or more consecutive runs at any location.

localOutagePolicyLocalOutagePolicy

Local outage handling configuration.

Alert if affectedLocations of locations are unable to access the web application consecutiveRuns times consecutively.

retryOnErrorboolean

Schedule retry if browser monitor execution results in a fail. For HTTP monitors this property is ignored.

The GlobalOutagePolicy object

Global outage handling configuration.

ElementTypeDescription
consecutiveRunsinteger

Alert if all locations are unable to access the web application X times consecutively.

The LocalOutagePolicy object

Local outage handling configuration.

Alert if affectedLocations of locations are unable to access the web application consecutiveRuns times consecutively.

ElementTypeDescription
affectedLocationsinteger

The number of affected locations to trigger an alert.

consecutiveRunsinteger

The number of consecutive fails to trigger an alert.

The LoadingTimeThresholdsPolicyDto object

Performance thresholds configuration.

ElementTypeDescription
enabledboolean

Performance threshold is enabled (true) or disabled (false).

thresholdsLoadingTimeThreshold[]

The list of performance threshold rules.

The LoadingTimeThreshold object

The performance threshold rule.

ElementTypeDescription
typestring

The type of the threshold: total loading time or action loading time.

The element can hold these values
  • ACTION
  • TOTAL
valueMsinteger

Notify if monitor takes longer than X milliseconds to load.

requestIndexinteger

Specify the request to which an ACTION threshold applies.

eventIndexinteger

Specify the event to which an ACTION threshold applies.

The TagWithSourceInfo object

Tag with source of a Dynatrace entity.

ElementTypeDescription
sourcestring

The source of the tag, such as USER, RULE_BASED or AUTO

The element can hold these values
  • AUTO
  • RULE_BASED
  • USER
contextstring

The origin of the tag, such as AWS or Cloud Foundry.

Custom tags use the CONTEXTLESS value.

The element can hold these values
  • AWS
  • AWS_GENERIC
  • AZURE
  • CLOUD_FOUNDRY
  • CONTEXTLESS
  • ENVIRONMENT
  • GOOGLE_CLOUD
  • KUBERNETES
keystring

The key of the tag.

Custom tags have the tag value here.

valuestring

The value of the tag.

Not applicable to custom tags.

json
{ "name": "HTTP monitor", "frequencyMin": 1, "enabled": true, "type": "HTTP", "script": { "version": "1.0", "requests": [ { "description": "orf.at", "url": "https://orf.at", "method": "GET", "requestBody": "", "configuration": { "acceptAnyCertificate": true, "followRedirects": true }, "preProcessingScript": "", "postProcessingScript": "" } ] }, "locations": [ "SYNTHETIC_LOCATION-61F43EECF5FB8345" ], "anomalyDetection": { "outageHandling": { "globalOutage": true, "localOutage": false, "localOutagePolicy": { "affectedLocations": 1, "consecutiveRuns": 3 } }, "loadingTimeThresholds": { "enabled": false, "thresholds": [ { "type": "TOTAL", "valueMs": 10000 } ] } }, "tags": [], "manuallyAssignedApps": [ "APPLICATION-7ADA0EF404C7C545" ] }
Related topics
  • Synthetic Monitoring

    Learn about Synthetic Monitoring and how to create a single-URL browser monitor, a browser clickpath, or an HTTP monitor.