Synthetic NAM API v2 - Create synthetic monitor definition

Creates a new synthetic network availability monitor. For more details about network availability monitor creation, see Create a NAM monitor.

The request consumes and produces an application/json payload.

POSTSaaShttps://{your-environment-id}.live.dynatrace.com/api/v2/synthetic/monitors
Environment ActiveGateCluster ActiveGatehttps://{your-activegate-domain}:9999/e/{your-environment-id}/api/v2/synthetic/monitors

Authentication

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.

Parameter

To find all model variations that depend on the type of the model, see JSON models.

ParameterTypeDescriptionInRequired
bodySyntheticMultiProtocolMonitorUpdateDto

The JSON body of the request. Contains the parameters of the monitor.

bodyoptional

Request body objects

The SyntheticMultiProtocolMonitorUpdateDto object

Network availability monitor.

ElementTypeDescriptionRequired
descriptionstring

Monitor description

optional
enabledboolean

If true, the monitor is enabled.

optional
frequencyMininteger

The frequency of the monitor, in minutes.

optional
locationsstring[]

The locations to which the monitor is assigned.

required
namestring

The name of the monitor.

required
performanceThresholdsSyntheticMonitorPerformanceThresholdsDto

Performance thresholds configuration.

optional
stepsSyntheticMultiProtocolMonitorStepDto[]

The steps of the monitor.

required
syntheticMonitorOutageHandlingSettingsSyntheticMonitorOutageHandlingSettingsDto

Outage handling configuration.

optional
tagsSyntheticTagWithSourceDto[]

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 SyntheticTagWithSourceDto model.

optional
typestring

Monitor type.

  • MULTI_PROTOCOL
required

The SyntheticMonitorPerformanceThresholdsDto object

Performance thresholds configuration.

ElementTypeDescriptionRequired
enabledboolean

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

optional
thresholdsSyntheticMonitorPerformanceThresholdDto[]

The list of performance threshold rules.

optional

The SyntheticMonitorPerformanceThresholdDto object

The performance threshold rule.

ElementTypeDescriptionRequired
aggregationstring

Aggregation type

  • AVG
  • MAX
  • MIN
optional
dealertingSamplesinteger

Number of most recent non-violating request executions that closes the problem

optional
samplesinteger

Number of request executions in analyzed sliding window (sliding window size)

optional
stepIndexinteger

Specify the step's index to which a threshold applies.

optional
thresholdinteger

Notify if monitor request takes longer than X milliseconds to execute.

optional
violatingSamplesinteger

Number of violating request executions in analyzed sliding window

optional

The SyntheticMultiProtocolMonitorStepDto object

The step of a network availability monitor.

ElementTypeDescriptionRequired
constraintsSyntheticMultiProtocolMonitorConstraintDto[]

The list of constraints which apply to all requests in the step.

required
namestring

Step name.

required
propertiesobject

The properties which apply to all requests in the step.

required
requestConfigurationsSyntheticMultiProtocolRequestConfigurationDto[]

Request configurations.

required
requestTypestring

Request type.

  • ICMP
  • TCP
  • DNS
required
targetFilterstring

Target filter.

optional
targetListstring[]

Target list.

required

The SyntheticMultiProtocolMonitorConstraintDto object

The network availability monitor constraint.

ElementTypeDescriptionRequired
propertiesobject

The properties of the constraint.

required
typestring

Constraint type.

required

The SyntheticMultiProtocolRequestConfigurationDto object

The configuration of a network availability monitor request.

ElementTypeDescriptionRequired
constraintsSyntheticMultiProtocolMonitorConstraintDto[]

Request constraints.

required

The SyntheticMonitorOutageHandlingSettingsDto object

Outage handling configuration.

ElementTypeDescriptionRequired
globalConsecutiveOutageCountThresholdinteger

Number of consecutive failures for all locations.

optional
globalOutagesboolean

Generate a problem and send an alert when the monitor is unavailable at all configured locations.

optional
localConsecutiveOutageCountThresholdinteger

Number of consecutive failures.

optional
localLocationOutageCountThresholdinteger

Number of failing locations.

optional
localOutagesboolean

Generate a problem and send an alert when the monitor is unavailable for one or more consecutive runs at any location.

optional

The SyntheticTagWithSourceDto object

The tag with source of a monitored entity.

ElementTypeDescriptionRequired
contextstring

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

Custom tags use the CONTEXTLESS value.

optional
keystring

The key of the tag.

required
sourcestring

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

  • AUTO
  • RULE_BASED
  • USER
optional
valuestring

The value of the tag.

optional

Request body JSON model

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"
}
]
},
"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"
}

Response

Response codes

CodeTypeDescription
200MonitorEntityIdDto

Success

4XXErrorEnvelope

Client side error.

5XXErrorEnvelope

Server side error.

Response body objects

The MonitorEntityIdDto object

A DTO for monitor entity ID.

ElementTypeDescription
entityIdstring

Monitor entity ID.

Response body JSON model

{
"entityId": "MULTIPROTOCOL_MONITOR-63653CB579F573D1"
}