Try it free

Verify a query

  • Latest Dynatrace
  • Reference
  • Published Oct 13, 2026

Verify a DQL query in Dynatrace Query API without executing it, checking the query string and parameters for errors before submission.

POSTSaaShttps://{your-environment-id}.apps.dynatrace.com/platform/storage/query/v1/query:verify

Overview

For information about the required permissions see the Bucket and table permissions in Grail documentation.

Verifies the supplied query string and other query parameters for lack of any errors, but without actually submitting the query for execution.

Authentication

To execute this request, you need a platform token or OAuth access token with one of the following scopes:

  • storage:bizevents:read
  • storage:buckets:read
  • storage:entities:read
  • storage:events:read
  • storage:fieldsets:read
  • storage:logs:read
  • storage:metrics:read
  • storage:spans:read
  • storage:system:read

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

Parameters

ParameterTypeDescriptionInRequired
dt-client-contextstring

The dt-client-context header is an optional string parameter used for monitoring purposes. When included in a request, it helps retrieve information about the execution of the query. It shouldn't hold sensitive information.

headerOptional
bodyVerifyRequest

All parameters have to be passed via JSON in the POST body.

bodyRequired

Request body objects

The VerifyRequest object

ElementTypeDescriptionRequired
generateCanonicalQueryboolean-Optional
localestring

The query locale. If none specified, then a language/country neutral locale is chosen. The input values take the ISO-639 Language code with an optional ISO-3166 country code appended to it with an underscore. For instance, both values are valid 'en' or 'en_US'.

Optional
querystring

The full query string.

Required
queryOptionsQueryOptions

Query options enhance query functionality for Dynatrace internal services.

Optional
timezonestring

The query timezone. If none is specified, UTC is used as fallback. The list of valid input values matches that of the IANA Time Zone Database (TZDB). It accepts values in their canonical names like 'Europe/Paris', the abbreviated version like CET or the UTC offset format like '+01:00'

Optional

The QueryOptions object

Query options enhance query functionality for Dynatrace internal services.

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.

{
"generateCanonicalQuery": false,
"locale": "en_US",
"query": "fetch events \n| filter event.type == \"davis\" AND davis.status != \"CLOSED\" \n| fields timestamp, davis.title, davis.underMaintenance, davis.status \n| sort timestamp \n| limit 10",
"queryOptions": null,
"timezone": "UTC"
}

Response

Response codes

CodeTypeDescription
200VerifyResponse

Supplied query and parameters were verified.

400--
401--
403--
405--
415--
500--
503--
504--

Response body objects

The VerifyResponse object

Verify response.

ElementTypeDescription
canonicalQuerystring-
notificationsMetadataNotification[]

The notifications related to the supplied DQL query string.

validboolean

True if the supplied DQL query string is valid.

The MetadataNotification object

The message that provides additional information about the execution of the query.

ElementTypeDescription
argumentsstring[]

The arguments for the message format.

messagestring

The complete message of the notification.

messageFormatstring

The message format of the notification, string.format based

messageFormatSpecifierTypesstring[]

The corresponding DQL format specifier types for each format specifier used in the error message format.

notificationTypestring

The notification type, e.g. LIMIT_ADDED.

severitystring

The severity of the notification, currently: INFO, WARN, ERROR.

syntaxPositionTokenPosition

The position of a token in a query string used for errors and notification to map the message to a specific part of the query.

The TokenPosition object

The position of a token in a query string used for errors and notification to map the message to a specific part of the query.

ElementTypeDescription
endPositionInfo

The exact position in the query string.

startPositionInfo

The exact position in the query string.

The PositionInfo object

The exact position in the query string.

ElementTypeDescription
columninteger

Query position column zero based index.

indexinteger

Query position index.

lineinteger

Query position line zero based index.

Response body JSON models

{
"canonicalQuery": "string",
"notifications": [
{
"arguments": [
"string"
],
"message": "string",
"messageFormat": "string",
"messageFormatSpecifierTypes": [
"string"
],
"notificationType": "string",
"severity": "string",
"syntaxPosition": {
"end": {
"column": 1,
"index": 1,
"line": 1
},
"start": {}
}
}
],
"valid": true
}
Related tags
Platform APIDynatrace Platform