Creates a new Synthetic monitor.
The request consumes and produces an application/json payload.
| POST | SaaS | https://{your-environment-id}.live.dynatrace.com/api/v2/synthetic/monitors |
| POST | Environment ActiveGateCluster ActiveGate | https://{your-activegate-domain}:9999/e/{your-environment-id}/api/v2/synthetic/monitors |
To execute this request, you need an access token with settings.write scope.
To learn how to obtain and use it, see Tokens and authentication.
To find all model variations that depend on the type of the model, see JSON models.
| Parameter | Type | Description | In | Required |
|---|---|---|---|---|
| body | Synthetic | The JSON body of the request. Contains the parameters of the monitor. | body | Required |
SyntheticMultiProtocolMonitorRequest objectNetwork availability monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| description | string | Monitor description | Optional |
| enabled | boolean | If true, the monitor is enabled. | Optional |
| frequencyMin | integer | The frequency of the monitor, in minutes. Default value depends on the monitor type (1 minute for MULTI_PROTOCOL and HTTP, 15 minutes for BROWSER). | Optional |
| locations | string[] | The locations to which the monitor is assigned. | Required |
| name | string | The name of the monitor. | Required |
| performanceThresholds | Synthetic | Performance thresholds configuration. | Optional |
| primaryGrailTags | Synthetic | Primary Grail tags as a list of key-value pairs. Up to 10 tags. Those fields are only available for SaaS and not for Managed. | Optional |
| securityContext | string[] | [FEATURE DISABLED] Security context as a list of strings. Up to 10 values, max 200 characters per value. Those fields are only available for SaaS and not for Managed. | Optional |
| steps | Synthetic | The steps of the monitor. | Required |
| syntheticMonitorOutageHandlingSettings | Synthetic | Outage handling configuration. | Optional |
| tags | Synthetic | A set of tags assigned to the monitor. You can specify only the value of the tag here and the | Optional |
| type | string | Monitor type. The element can hold these values
| Required |
SyntheticMonitorPerformanceThresholdsDto objectPerformance thresholds configuration.
| Element | Type | Description | Required |
|---|---|---|---|
| enabled | boolean | Performance threshold is enabled ( | Required |
| thresholds | Synthetic | The list of performance threshold rules. | Optional |
SyntheticMonitorPerformanceThresholdDto objectThe performance threshold rule.
| Element | Type | Description | Required |
|---|---|---|---|
| aggregation | string | Aggregation type The element can hold these values
| Optional |
| dealertingSamples | integer | Number of most recent non-violating request executions that closes the problem. | Optional |
| samples | integer | Number of request executions in analyzed sliding window (sliding window size). | Optional |
| stepIndex | integer | Specify the step's index to which a threshold applies. If threshold is monitor-level, no index is needed. | Optional |
| threshold | number | Notify if monitor request takes longer than X time units to execute. For network availability monitors the time unit is milliseconds, for browser and HTTP monitors - seconds. | Required |
| type | string | Type of performance threshold. The element can hold these values
| Optional |
| violatingSamples | integer | Number of violating request executions in analyzed sliding window. | Optional |
SyntheticMonitorPrimaryGrailTagDto objectPrimary grail tag key-value pair.
| Element | Type | Description | Required |
|---|---|---|---|
| key | string | Tag key. | Required |
| value | string | Tag value. | Required |
SyntheticMultiProtocolMonitorStepDto objectThe step of a network availability monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| constraints | Synthetic | The list of constraints which apply to all requests in the step. | Required |
| name | string | Step name. | Required |
| properties | object | The properties which apply to all requests in the step. | Required |
| requestConfigurations | Synthetic | Request configurations. | Required |
| requestType | string | Request type. The element can hold these values
| Required |
| targetFilter | string | Target filter. | Optional |
| targetList | string[] | Target list. | Optional |
SyntheticMonitorConstraintDto objectSynthetic monitor constraint. The allowed type and properties depend on the monitor and step/request context.
| Element | Type | Description | Required |
|---|---|---|---|
| properties | object | Constraint properties. Most constraint types use operator and value keys. Some protocol-specific constraints may use additional keys, for example DNS_STATUS_CODE can use status. | Required |
| type | string | Constraint type. Allowed values depend on monitor type and step/request context. HTTP monitor step constraints: HTTP_STATUSES, HTTP_RESPONSE_PATTERN, HTTP_RESPONSE_REGEX. Network availability monitor(MULTI_PROTOCOL) step constraints: SUCCESS_RATE_PERCENT. Network availability monitor(MULTI_PROTOCOL) request configuration constraints are request-type specific, for example ICMP_SUCCESS_RATE_PERCENT (ICMP) and DNS_STATUS_CODE (DNS). | Required |
SyntheticMultiProtocolRequestConfigurationDto objectThe configuration of a network availability monitor request.
| Element | Type | Description | Required |
|---|---|---|---|
| constraints | Synthetic | Request constraints. | Required |
SyntheticMonitorOutageHandlingSettingsDto objectOutage handling configuration.
| Element | Type | Description | Required |
|---|---|---|---|
| globalConsecutiveOutageCountThreshold | integer | Number of consecutive failures for all locations. | Optional |
| globalOutages | boolean | Generate a problem and send an alert when the monitor is unavailable at all configured locations. | Required |
| localConsecutiveOutageCountThreshold | integer | Number of consecutive failures. | Optional |
| localLocationOutageCountThreshold | integer | Number of failing locations. | Optional |
| localOutages | boolean | Generate a problem and send an alert when the monitor is unavailable for one or more consecutive runs at any location. | Required |
| origin | string | Indicates the origin of these settings. The element can hold these values
| Optional |
| retryOnError | boolean | Only Browser Monitor property. If set to true, execution retry will take place in case the monitor fails. | Optional |
SyntheticTagWithSourceDto objectThe tag with source of a monitored entity.
| Element | Type | Description | Required |
|---|---|---|---|
| context | string | The origin of the tag, such as AWS or Cloud Foundry. Custom tags use the | Optional |
| key | string | The key of the tag. | Required |
| source | string | The source of the tag, such as USER, RULE_BASED or AUTO. The element can hold these values
| Optional |
| value | string | The value of the tag. | Optional |
SyntheticBrowserMonitorRequest objectBrowser monitor update.
| Element | Type | Description | Required |
|---|---|---|---|
| configuration | Synthetic | Browser Monitor configuration. | Required |
| description | string | Monitor description | Optional |
| enabled | boolean | If true, the monitor is enabled. | Optional |
| frequencyMin | integer | The frequency of the monitor, in minutes. Default value depends on the monitor type (1 minute for MULTI_PROTOCOL and HTTP, 15 minutes for BROWSER). | Optional |
| keyPerformanceMetrics | Key | The key performance metrics configuration. | Optional |
| locations | string[] | The locations to which the monitor is assigned. | Required |
| manuallyAssignedEntities | string[] | Manually assigned entities. | Optional |
| name | string | The name of the monitor. | Required |
| performanceThresholds | Synthetic | Performance thresholds configuration. | Optional |
| primaryGrailTags | Synthetic | Primary Grail tags as a list of key-value pairs. Up to 10 tags. Those fields are only available for SaaS and not for Managed. | Optional |
| securityContext | string[] | [FEATURE DISABLED] Security context as a list of strings. Up to 10 values, max 200 characters per value. Those fields are only available for SaaS and not for Managed. | Optional |
| steps | Synthetic | The steps of the monitor. | Required |
| syntheticMonitorOutageHandlingSettings | Synthetic | Outage handling configuration. | Optional |
| tags | Synthetic | A set of tags assigned to the monitor. You can specify only the value of the tag here and the | Optional |
| type | string | Monitor type. The element can hold these values
| Required |
SyntheticBrowserMonitorConfigurationDto objectBrowser Monitor configuration.
| Element | Type | Description | Required |
|---|---|---|---|
| blockedRequests | string[] | All requests matching the specified patterns will be blocked during the execution of the monitor. | Optional |
| browserPermissions | Browser | Permissions settings for browser. | Optional |
| bypassCSP | boolean | Bypass ContentSecurity Policy for monitored pages. If not defined in request, it will be set to false by default. | Optional |
| chromiumStartupFlags | Chromium | Chromium startup flags of a Browser Monitor. | Optional |
| clientCertificates | Client | Identifier of stored client's certificate. | Optional |
| cookies | Synthetic | Cookies list. | Optional |
| device | Test | Test device of a Browser Monitor. | Required |
| enablement | Enablement | Browser monitor enablement settings. | Optional |
| experimentalProperties | Monitor | Experimental properties list. | Optional |
| filteredRequests | Filtered | Filtered requests of a Browser Monitor. | Optional |
| ignoredErrorCodes | Ignored | Ignored Error Codes of a Browser Monitor. | Optional |
| javaScriptSettings | Java | JavaScript Agent Settings. | Optional |
| monitorFrames | boolean | Capture performance metrics for pages loaded in frames. If not defined in request, it will be set to false by default. | Optional |
| networkThrottling | Network | Network throttling of a Browser Monitor. | Optional |
| proxy | Proxy | Browser Monitor proxy. | Optional |
| requestHeaderOptions | Request | Header Options of a Browser Monitor. | Optional |
| useIESupportedAgent | boolean | useIESupportedAgent flag. If not defined in request, it will be set to false by default. | Optional |
| userAgent | string | User agent | Optional |
BrowserPermissionsDto objectPermissions settings for browser.
| Element | Type | Description | Required |
|---|---|---|---|
| camera | boolean | Camera permission. If not defined in request, it will be set to false by default. | Optional |
| location | boolean | Location permission. If not defined in request, it will be set to false by default. | Optional |
| microphone | boolean | Microphone permission. If not defined in request, it will be set to false by default. | Optional |
| notifications | boolean | Notifications permission. If not defined in request, it will be set to false by default. | Optional |
ChromiumStartupFlagsDto objectChromium startup flags of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| autoplay-policy | string | autoplay-policy type. The element can hold these values
| Optional |
| disable-features | object | disable-features map | Optional |
| disable-site-isolation-trials | boolean | disable-site-isolation-trials flag. | Optional |
| disable-web-security | boolean | disable-web-security flag. If no value is passed, it will be set to false by default. | Optional |
| host-resolver-rules | string | host-resolver-rules. | Optional |
| ignore-certificate-errors | boolean | ignore-certificate-errors flag. | Optional |
| ssl-version-max | string | ssl-version-max. | Optional |
| ssl-version-min | string | ssl-version-min. | Optional |
| test-type | boolean | test-type flag. | Optional |
ClientCertificateDto objectClient certificate.
| Element | Type | Description | Required |
|---|---|---|---|
| credentialId | string | Certificate CV id. | Required |
| domain | string | Domain certificate will be applied to. | Required |
SyntheticMonitorCookieDto objectCookie dto for Synthetic Monitor step.
| Element | Type | Description | Required |
|---|---|---|---|
| domain | string | Cookie domain. | Required |
| name | string | Cookie name. | Required |
| path | string | Cookie path. | Optional |
| value | string | Cookie value. | Required |
TestDeviceDto objectTest device of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| height | integer | Device height in px. | Required |
| mobile | boolean | Device is mobile. If not defined in request, it will be set to false by default. | Optional |
| name | string | Device name. | Required |
| touchEnabled | boolean | Device is touch enabled. If not defined in request, it will be set to false by default. | Optional |
| width | integer | Device width in px. | Required |
EnablementDto objectBrowser monitor enablement settings.
| Element | Type | Description | Required |
|---|---|---|---|
| enableOnGrail | boolean | Enable 3rd gen JS agent reporting. Relevant only for grail-enabled SaaS environments. | Required |
| origin | string | Indicates the origin of these settings. The element can hold these values
| Optional |
MonitorPropertyDto objectProperty of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| name | string | Property name. | Required |
| value | string | Property value. | Required |
FilteredRequestsDto objectFiltered requests of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| mode | string | Filter mode for filtered requests. The element can hold these values
| Required |
| requests | Request | Requests to be filtered. | Required |
RequestFilterDto objectRequest filter for Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| matchingPattern | string | Regex for request that filter will be applied to. | Required |
| type | string | Filter type. The element can hold these values
| Required |
IgnoredErrorCodesDto objectIgnored Error Codes of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| matchingDocumentRequests | string | Ignoring status codes will be applied to requests matching pattern. | Optional |
| statusCodes | string | Status codes to be ignored. | Optional |
JavaScriptAgentSettingsDto objectJavaScript Agent Settings.
| Element | Type | Description | Required |
|---|---|---|---|
| customProperties | string | Custom configuration properties | Optional |
| experimentalValues | boolean | Experimental values support. If not defined in request, it will be set to false by default. | Optional |
| fetchRequests | boolean | Capture fetch() requests. If not defined in request, it will be set to true by default. | Optional |
| javaScriptErrors | boolean | Enable this setting to monitor JavaScript errors. The window.onError handler is used for capturing JavaScript errors. If not defined in request, it will be set to true by default. | Optional |
| javaScriptFrameworkSupport | Framework | JS framework options of a JS Agent. | Optional |
| timedActions | boolean | Within JavaScript frameworks, XHRs are often sent via setTimeout methods. Enable this setting to detect actions that trigger such XHRs. If not defined in request, it will be set to true by default. | Optional |
| timeoutSettings | Timeout | Timeout settings of a Browser Monitor. | Optional |
| visuallyCompleteOptions | Visually | Visually Complete Options of a Browser Monitor. | Optional |
| xmlHttpRequests | boolean | Capture xml Http requests (XHR). If not defined in request, it will be set to true by default. | Optional |
FrameworkOptionsDto objectJS framework options of a JS Agent.
| Element | Type | Description | Required |
|---|---|---|---|
| activeXObject | boolean | activeXObject support. If not defined in request, it will be set to false by default. | Optional |
| angular | boolean | Angular support. If not defined in request, it will be set to false by default. | Optional |
| dojo | boolean | Dojo support. If not defined in request, it will be set to false by default. | Optional |
| extJs | boolean | extJs support. If not defined in request, it will be set to false by default. | Optional |
| icefaces | boolean | icefaces support. If not defined in request, it will be set to false by default. | Optional |
| jQuery | boolean | jquery support. If not defined in request, it will be set to false by default. | Optional |
| mooTools | boolean | mooTools support. If not defined in request, it will be set to false by default. | Optional |
| prototype | boolean | prototype support. If not defined in request, it will be set to false by default. | Optional |
TimeoutSettingsDto objectTimeout settings of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| temporaryActionLimit | integer | Cascading setTimeout calls number limit. If not defined in request, it will be set to 1 by default. | Optional |
| temporaryActionTotalTimeout | integer | No additional timeout actions will be created once this time limit is reached. Value must be higher than 0 ms. If not defined in request, it will be set to 100 by default. | Optional |
VisuallyCompleteOptionsDto objectVisually Complete Options of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| excludedElements | string[] | Query CSS selectors to specify mutation nodes (elements that change) to ignore in Visually complete and Speed index calculation. | Optional |
| excludedUrls | string[] | Use regular expressions to define URLs for images and iFrames to exclude from detection by the Visually complete module. | Optional |
| imageSizeThreshold | integer | Use this setting to define the minimum visible area per element (in pixels) for an element to be counted towards Visually complete and Speed index. If not defined in request, it will be set to 50 by default. | Optional |
| inactivityTimeout | integer | The time the Visually complete module waits for inactivity and no further mutations on the page after the load action. If not defined in request, it will be set to 1000 by default. | Optional |
| mutationTimeout | integer | The time the Visually complete module waits after an XHR or custom action closes to start the calculation. If not defined in request, it will be set to 50 by default. | Optional |
NetworkThrottlingDto objectNetwork throttling of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| download | integer | Download throughput. If not defined in request, it will be set to -1 by default. | Optional |
| latency | integer | Latency. If not defined in request, it will be set to 0 by default. | Optional |
| name | string | Predefined network type. If not defined in request, it will be set to "" by default. | Optional |
| upload | integer | Upload throughput. If not defined in request, it will be set to -1 by default. | Optional |
ProxyDto objectBrowser Monitor proxy.
| Element | Type | Description | Required |
|---|---|---|---|
| pacUrl | string | pacUrl | Required |
RequestHeaderOptionsDto objectHeader Options of a Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| matchingPatterns | string[] | Apply headers to requests matching pattern. | Required |
| requestHeaders | Monitor | Request headers list. | Required |
MonitorRequestHeader objectA header of the Http request
| Element | Type | Description | Required |
|---|---|---|---|
| name | string | Header's name. | Required |
| value | string | Header's value. | Required |
KeyPerformanceMetrics objectThe key performance metrics configuration.
| Element | Type | Description | Required |
|---|---|---|---|
| loadActionKpm | string | Load action key performance metric. The element can hold these values
| Optional |
| xhrActionKpm | string | XHR action key performance metric. The element can hold these values
| Optional |
SyntheticBrowserMonitorStepDto objectBase step of Browser Monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| entityId | string | Entity Id. | Optional |
| name | string | The name of Browser Monitor step. | Required |
| type | string | Defines the actual set of fields depending on the value. See one of the following objects:
The element can hold these values
| Required |
SyntheticHttpMonitorRequest objectHttp monitor's settings.
| Element | Type | Description | Required |
|---|---|---|---|
| advancedSettings | Synthetic | Http monitor's settings. | Optional |
| cookies | Synthetic | The cookies of the monitor. | Optional |
| description | string | Monitor description | Optional |
| enabled | boolean | If true, the monitor is enabled. | Optional |
| frequencyMin | integer | The frequency of the monitor, in minutes. Default value depends on the monitor type (1 minute for MULTI_PROTOCOL and HTTP, 15 minutes for BROWSER). | Optional |
| locations | string[] | The locations to which the monitor is assigned. | Required |
| manuallyAssignedEntities | string[] | Manually assigned entities. | Optional |
| name | string | The name of the monitor. | Required |
| performanceThresholds | Synthetic | Performance thresholds configuration. | Optional |
| primaryGrailTags | Synthetic | Primary Grail tags as a list of key-value pairs. Up to 10 tags. Those fields are only available for SaaS and not for Managed. | Optional |
| securityContext | string[] | [FEATURE DISABLED] Security context as a list of strings. Up to 10 values, max 200 characters per value. Those fields are only available for SaaS and not for Managed. | Optional |
| steps | Synthetic | The steps of the monitor. | Required |
| syntheticMonitorOutageHandlingSettings | Synthetic | Outage handling configuration. | Optional |
| tags | Synthetic | A set of tags assigned to the monitor. You can specify only the value of the tag here and the | Optional |
| type | string | Monitor type. The element can hold these values
| Required |
SyntheticHttpMonitorAdvancedDto objectHttp monitor's settings.
| Element | Type | Description | Required |
|---|---|---|---|
| connectTimeout | integer | Connect timeout per request in ms. | Optional |
| dnsQueryTimeout | integer | DNS query timeout in ms. | Optional |
| maxCustomScriptSize | integer | Maximum size of each pre- or post- execution script size in bytes. | Optional |
| maxHeaderSize | integer | Maximum size of each request header in bytes. | Optional |
| maxRequestBodySize | integer | Maximum request body size in bytes. | Optional |
| maxResponseBodyReadByScriptSize | integer | Maximum size of response body read by post-execution script in bytes. | Optional |
| maxResponseBodySize | integer | Maximum response body size in bytes. | Optional |
| monitorExecutionTimeout | integer | Monitor execution timeout in ms. | Optional |
| requestTimeout | integer | Request timeout in ms. | Optional |
| scriptExecutionTimeout | integer | Pre- or post- execution script timeout in ms. | Optional |
SyntheticHttpMonitorStepDto objectThe step of a Http monitor.
| Element | Type | Description | Required |
|---|---|---|---|
| authentication | Synthetic | The Http step's authentication. | Optional |
| configuration | Synthetic | The Http step's configuration. | Optional |
| constraints | Synthetic | The list of constraints. | Required |
| entityId | string | Entity Id. | Optional |
| methodType | string | Method type. The element can hold these values
| Required |
| name | string | Step name. | Required |
| postScript | string | PostScript. | Optional |
| preScript | string | PreScript. | Optional |
| requestBody | string | Request body. | Optional |
| requestTimeout | integer | Request timeout in s. | Optional |
| url | string | Step url. | Required |
SyntheticHttpAuthenticationDto objectThe Http step's authentication.
| Element | Type | Description | Required |
|---|---|---|---|
| credentials | string | Credential vault identifier. | Required |
| kdcIp | string | KDC IP in case KERBEROS auth type is selected. | Optional |
| realmName | string | Realm name in case KERBEROS type is selected. | Optional |
| type | string | Authentication type. The element can hold these values
| Required |
SyntheticHttpConfigurationDto objectThe Http step's configuration.
| Element | Type | Description | Required |
|---|---|---|---|
| acceptAnyCertificate | boolean | If true accept any certificate flag. | Optional |
| clientCertificateId | string | Identifier of stored client's certificate. | Optional |
| doNotPersistSensitiveData | boolean | If true the step's data aren't stored and displayed. | Optional |
| followRedirects | boolean | If true follow redirects. | Optional |
| headers | Monitor | The headers. | Optional |
| sslCertificateExpirationDaysToAlert | integer | Number of days within SSL certificate expires. | Optional |
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.
{"description": "My network availability monitor description","enabled": "true","frequencyMin": "60","locations": ["SYNTHETIC_LOCATION-D3A5BFD8676A4F19"],"name": "My network availability monitor","performanceThresholds": {"enabled": "true","thresholds": [{"aggregation": "AVG","dealertingSamples": "5","samples": "5","stepIndex": "0","threshold": "200","violatingSamples": "3"}]},"primaryGrailTags": [{"key": "sample key","value": "sample value"},{"key": "another sample key","value": "another sample value"}],"securityContext": ["sample security context","another security context"],"steps": [{"constraints": [{"properties": {"operator": ">=","value": "95"},"type": "SUCCESS_RATE_PERCENT"}],"name": "Step 1","properties": {"ICMP_IP_VERSION": "4","ICMP_NUMBER_OF_PACKETS": "8","ICMP_TIMEOUT_FOR_REPLY": "PT1S"},"requestConfigurations": [{"constraints": [{"properties": {"operator": "=","value": "100"},"type": "ICMP_SUCCESS_RATE_PERCENT"}]}],"requestType": "ICMP","targetFilter": "ipMask == 127.0.0.1/24","targetList": ["127.0.0.1","127.0.0.2"]}],"syntheticMonitorOutageHandlingSettings": {"globalConsecutiveOutageCountThreshold": "1","globalOutages": "true","localConsecutiveOutageCountThreshold": "3","localLocationOutageCountThreshold": "3","localOutages": "true"},"tags": [{"key": "sample key","value": "sample value"},{"key": "sample key"}],"type": "MULTI_PROTOCOL"}
| Code | Type | Description |
|---|---|---|
| 200 | Monitor | Success |
| 4XX | Error | Client side error. |
| 5XX | Error | Server side error. |
MonitorEntityIdDto objectA DTO for monitor entity ID.
| Element | Type | Description |
|---|---|---|
| entityId | string | Monitor entity ID. |
ErrorEnvelope object| Element | Type | Description |
|---|---|---|
| error | Error | - |
Error object| Element | Type | Description |
|---|---|---|
| code | integer | The HTTP status code |
| constraintViolations | Constraint | A list of constraint violations |
| message | string | The error message |
ConstraintViolation objectA list of constraint violations
| Element | Type | Description |
|---|---|---|
| location | string | - |
| message | string | - |
| parameterLocation | string | -The element can hold these values
|
| path | string | - |
{"entityId": "MULTIPROTOCOL_MONITOR-63653CB579F573D1"}
{"error": {"code": 1,"constraintViolations": [{"location": "string","message": "string","parameterLocation": "HEADER","path": "string"}],"message": "string"}}