Service-level objectives API - POST an SLO

Creates a new service-level objective (SLO).

The request consumes an application/json payload.

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

Authentication

To execute this request, you need an access token with slo.write scope.

To learn how to obtain and use it, see Tokens and authentication.

Parameters

Parameter
Type
Description
In
Required
body

The JSON body of the request. Contains the parameters of the new SLO.

body
required

Request body objects

The SloConfigItemDtoImpl object

Element
Type
Description
Required
description
string

The description of the SLO.

optional
enabled
boolean

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

If not defined, the SLO is disabled by default.

optional
errorBudgetBurnRate

Error budget burn rate configuration of a service-level objective (SLO).

optional
evaluationType
string

The evaluation type of the SLO.

  • AGGREGATE
required
filter
string

The entity filter for the SLO evaluation. The total length of the entitySelector string in SLOs is limited to 1,000 characters. Use the syntax of entity selector.

optional
metricDenominator
string

DEPRECATED

The total count metric (the denominator in rate calculation).

Required when the useRateMetric is set to false.

optional
metricExpression
string

The percentage-based metric expression for the calculation of the SLO.

optional
metricName
string

The name that is used to create SLO func metrics keys. Once created, metric name cannot be changed.

optional
metricNumerator
string

DEPRECATED

The metric for the count of successes (the numerator in rate calculation).

Required when the useRateMetric is set to false.

optional
metricRate
string

DEPRECATED

The percentage-based metric for the calculation of the SLO.

Required when the useRateMetric is set to true.

optional
name
string

The name of the SLO.

required
target
number

The target value of the SLO.

required
timeframe
string

The timeframe for the SLO evaluation. Use the syntax of the global timeframe selector.

required
useRateMetric
boolean

DEPRECATED

The type of the metric to use for SLO calculation:

  • true: An existing percentage-based metric.
  • false: A ratio of two metrics.

For a list of available metrics, see Built-in metric page or try the GET metrics API call.

optional
warning
number

The warning value of the SLO.

At warning state the SLO is still fulfilled but is getting close to failure.

required

The SloBurnRateConfig object

Error budget burn rate configuration of a service-level objective (SLO).

Element
Type
Description
Required
burnRateVisualizationEnabled
boolean

The error budget burn rate calculation is enabled (true) or disabled (false).

In case of false, no calculated values will be present here.

If not defined, the error budget burn rate calculation is disabled by default.

optional
fastBurnThreshold
number

The threshold between a slow and a fast burn rate.

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": "Rate of successful payments per week",
"enabled": true,
"errorBudgetBurnRate": {
"burnRateVisualizationEnabled": true,
"fastBurnThreshold": 1.5
},
"evaluationType": "AGGREGATE",
"filter": "type(\"SERVICE\")",
"metricDenominator": "builtin:service.requestCount.server",
"metricExpression": "(100)*(builtin:service.errors.server.successCount:splitBy())/(builtin:service.requestCount.server:splitBy())",
"metricName": "payment_service_availability",
"metricNumerator": "builtin:service.errors.server.successCount",
"metricRate": "builtin:service.successes.server.rate",
"name": "Payment service availability",
"target": 95,
"timeframe": "-1d",
"useRateMetric": true,
"warning": 97.5
}

Response

Response codes

Code
Type
Description
201
-

Success. The new SLO has been created. Response doesn't have a body. The location response header contains the ID of the new SLO.

400

Failed. The input is invalid.

409

Failed. Conflicting resource.

500

Internal server error.

4XX

Client side error.

5XX

Server side error.