---
title: モニターを検証する
description: "リクエストで提供されたモニターを検証します。 注: ログモニターには、スコープ外の App Key と logs_read_data 権限が必要です。"
breadcrumbs: ドキュメント > API > モニターを検証する
---

> For the complete documentation index, see [llms.txt](https://dnd37xeb23o8n.cloudfront.net/jen.gilbert/astro-base/llms.txt).

# モニターを検証する

## v1 (latest)

| Datadog site      | API endpoint                                               |
| ----------------- | ---------------------------------------------------------- |
| app.datadoghq.com | POST https://api.datadoghq.com/api/v1/monitor/validate     |
| us3.datadoghq.com | POST https://api.us3.datadoghq.com/api/v1/monitor/validate |
| us5.datadoghq.com | POST https://api.us5.datadoghq.com/api/v1/monitor/validate |
| app.datadoghq.eu  | POST https://api.datadoghq.eu/api/v1/monitor/validate      |
| ap1.datadoghq.com | POST https://api.ap1.datadoghq.com/api/v1/monitor/validate |
| ap2.datadoghq.com | POST https://api.ap2.datadoghq.com/api/v1/monitor/validate |
| uk1.datadoghq.com | POST https://api.uk1.datadoghq.com/api/v1/monitor/validate |
| app.ddog-gov.com  | POST https://api.ddog-gov.com/api/v1/monitor/validate      |
| us2.ddog-gov.com  | POST https://api.us2.ddog-gov.com/api/v1/monitor/validate  |

### Overview

リクエストで提供されたモニターを検証します。

**注**: ログモニターには、スコープ外の App Key と `logs_read_data` 権限が必要です。

This endpoint requires the `monitors_read` permission.

OAuth apps require the `monitors_read` authorization [scope](https://dnd37xeb23o8n.cloudfront.net/jen.gilbert/astro-base/ja/api/latest/scopes.md#monitors) to access this endpoint.

### Request

#### Body Data (required)

モニターリクエストオブジェクト

{% tabs %}
{% tab label="Model" %}
| Parent field                  | Field                          | Type      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------------------- | ------------------------------ | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|                               | assets                         | [object]  | モニターを記述するオブジェクト。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| assets                        | category [*required*]          | enum      | Indicates the type of asset this entity represents on a monitor. Allowed enum values: `runbook`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| assets                        | name [*required*]              | string    | Name for the monitor asset                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| assets                        | resource_key                   | string    | Represents the identifier of the internal Datadog resource that this asset represents. IDs in this field should be passed in as strings.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| assets                        | resource_type                  | enum      | Type of internal Datadog resource associated with a monitor asset. Allowed enum values: `notebook`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| assets                        | url [*required*]               | string    | URL link for the asset. For links with an internal resource type set, this should be the relative path to where the Datadog domain is appended internally. For external links, this should be the full URL path.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|                               | draft_status                   | enum      | Indicates whether the monitor is in a draft or published state. `draft`: The monitor appears as Draft and does not send notifications. `published`: The monitor is active and evaluates conditions and notify as configured. This field is in preview. The draft value is only available to customers with the feature enabled. Allowed enum values: `draft`, `published`. Default: `published`.                                                                                                                                                                                                                                                                                                                                                |
|                               | matching_downtimes             | [object]  | A list of active v1 downtimes that match this monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| matching_downtimes            | end                            | int64     | POSIX timestamp to end the downtime.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| matching_downtimes            | scope                          | [string]  | The scope(s) to which the downtime applies. Must be in `key:value` format. For example, `host:app2`. Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`).                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| matching_downtimes            | start                          | int64     | POSIX timestamp to start the downtime.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|                               | message                        | string    | A message to include with notifications for this monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|                               | name                           | string    | The monitor name.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|                               | options                        | object    | List of options associated with your monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| options                       | enable_logs_sample             | boolean   | Whether or not to send a log sample when the log monitor triggers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| options                       | enable_samples                 | boolean   | Whether or not to send a list of samples when the monitor triggers. This is only used by CI Test and Pipeline monitors.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| options                       | escalation_message             | string    | We recommend using the [is_renotify](https://docs.datadoghq.com/monitors/notify.md?tab=is_alert#renotify), block in the original message instead. A message to include with a re-notification. Supports the `@username` notification we allow elsewhere. Not applicable if `renotify_interval` is `None`.                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| options                       | evaluation_delay               | int64     | Time (in seconds) to delay evaluation, as a non-negative integer. For example, if the value is set to `300` (5min), the timeframe is set to `last_5m` and the time is 7:00, the monitor evaluates data from 6:50 to 6:55. This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor always has data during evaluation.                                                                                                                                                                                                                                                                                                                                                                                               |
| options                       | group_retention_duration       | string    | The time span after which groups with missing data are dropped from the monitor state. The minimum value is one hour, and the maximum value is 72 hours. Example values are: "60m", "1h", and "2d". This option is only available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors.                                                                                                                                                                                                                                                                                                                                                                                                                      |
| options                       | groupby_simple_monitor         | boolean   | **DEPRECATED**: Whether the log alert monitor triggers a single alert or multiple alerts when any group breaches a threshold. Use `notify_by` instead.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| options                       | include_tags                   | boolean   | A Boolean indicating whether notifications from this monitor automatically inserts its triggering tags into the title. **Examples** - If `True`, `[Triggered on {host:h1}] Monitor Title` - If `False`, `[Triggered] Monitor Title` Default: `true`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| options                       | locked                         | boolean   | **DEPRECATED**: Whether or not the monitor is locked (only editable by creator and admins). Use `restricted_roles` instead.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| options                       | min_failure_duration           | int64     | How long the test should be in failure before alerting (integer, number of seconds, max 7200). Default: `0`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| options                       | min_location_failed            | int64     | The minimum number of locations in failure at the same time during at least one moment in the `min_failure_duration` period (`min_location_failed` and `min_failure_duration` are part of the advanced alerting rules - integer, >= 1). Default: `1`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| options                       | new_group_delay                | int64     | Time (in seconds) to skip evaluations for new groups. For example, this option can be used to skip evaluations for new hosts while they initialize. Must be a non negative integer.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| options                       | new_host_delay                 | int64     | **DEPRECATED**: Time (in seconds) to allow a host to boot and applications to fully start before starting the evaluation of monitor results. Should be a non negative integer. Use new_group_delay instead. Default: `300`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| options                       | no_data_timeframe              | int64     | The number of minutes before a monitor notifies after data stops reporting. Datadog recommends at least 2x the monitor timeframe for query alerts or 2 minutes for service checks. If omitted, 2x the evaluation timeframe is used for query alerts, and 24 hours is used for service checks.                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| options                       | notification_preset_name       | enum      | Toggles the display of additional content sent in the monitor notification. Allowed enum values: `show_all`, `hide_query`, `hide_handles`, `hide_all`, `hide_query_and_handles`, `show_only_snapshot`, `hide_handles_and_footer`. Default: `show_all`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| options                       | notify_audit                   | boolean   | A Boolean indicating whether tagged users is notified on changes to this monitor. Default: `false`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| options                       | notify_by                      | [string]  | Controls what granularity a monitor alerts on. Only available for monitors with groupings. For instance, a monitor grouped by `cluster`, `namespace`, and `pod` can be configured to only notify on each new `cluster` violating the alert conditions by setting `notify_by` to `["cluster"]`. Tags mentioned in `notify_by` must be a subset of the grouping tags in the query. For example, a query grouped by `cluster` and `namespace` cannot notify on `region`. Setting `notify_by` to `["*"]` configures the monitor to notify as a simple-alert.                                                                                                                                                                                        |
| options                       | notify_no_data                 | boolean   | A Boolean indicating whether this monitor notifies when data stops reporting. Defaults to `false`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| options                       | on_missing_data                | enum      | Controls how groups or monitors are treated if an evaluation does not return any data points. The default option results in different behavior depending on the monitor query type. For monitors using Count queries, an empty monitor evaluation is treated as 0 and is compared to the threshold conditions. For monitors using any query type other than Count, for example Gauge, Measure, or Rate, the monitor shows the last known status. This option is available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors. It is also required for metric monitors that use `scheduling_options.custom_schedule`. Allowed enum values: `default`, `show_no_data`, `show_and_notify_no_data`, `resolve`. |
| options                       | renotify_interval              | int64     | The number of minutes after the last notification before a monitor re-notifies on the current status. It only re-notifies if it’s not resolved. Default: `null`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| options                       | renotify_occurrences           | int64     | The number of times re-notification messages should be sent on the current status at the provided re-notification interval.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| options                       | renotify_statuses              | [string]  | The types of monitor statuses for which re-notification messages are sent. Default: **null** if `renotify_interval` is **null**. If `renotify_interval` is set, defaults to renotify on `Alert` and `No Data`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| options                       | require_full_window            | boolean   | A Boolean indicating whether this monitor needs a full window of data before it’s evaluated. We highly recommend you set this to `false` for sparse metrics, otherwise some evaluations are skipped. Default is false. This setting only applies to metric monitors.                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| options                       | scheduling_options             | object    | Configuration options for scheduling.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| scheduling_options            | custom_schedule                | object    | Configuration options for the custom schedule. **This feature is in private beta.**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| custom_schedule               | recurrences                    | [object]  | Array of custom schedule recurrences.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| recurrences                   | rrule                          | string    | Defines the recurrence rule (RRULE) for a given schedule.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| recurrences                   | start                          | string    | Defines the start date and time of the recurring schedule.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| recurrences                   | timezone                       | string    | Defines the timezone the schedule runs on.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| scheduling_options            | evaluation_window              | object    | Configuration options for the evaluation window. If `hour_starts` is set, no other fields may be set. Otherwise, `day_starts` and `month_starts` must be set together.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| evaluation_window             | day_starts                     | string    | The time of the day at which a one day cumulative evaluation window starts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| evaluation_window             | hour_starts                    | int32     | The minute of the hour at which a one hour cumulative evaluation window starts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| evaluation_window             | month_starts                   | int32     | The day of the month at which a one month cumulative evaluation window starts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| evaluation_window             | timezone                       | string    | The timezone of the time of the day of the cumulative evaluation window start.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| options                       | silenced                       | object    | **DEPRECATED**: Information about the downtime applied to the monitor. Only shows v1 downtimes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| additionalProperties          | <any-key>                      | int64     | UTC epoch timestamp in seconds when the downtime for the group expires.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| options                       | synthetics_check_id            | string    | **DEPRECATED**: ID of the corresponding Synthetic check.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| options                       | threshold_windows              | object    | Alerting time window options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| threshold_windows             | recovery_window                | string    | Describes how long an anomalous metric must be normal before the alert recovers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| threshold_windows             | trigger_window                 | string    | Describes how long a metric must be anomalous before an alert triggers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| options                       | thresholds                     | object    | List of the different monitor threshold available.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| thresholds                    | critical                       | double    | The monitor `CRITICAL` threshold.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| thresholds                    | critical_query                 | string    | Query evaluated as a dynamic `CRITICAL` threshold. Only supported on metric monitors with a formula query and options['variables']. Cannot be combined with static thresholds. This field is in preview.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| thresholds                    | critical_recovery              | double    | The monitor `CRITICAL` recovery threshold.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| thresholds                    | critical_recovery_query        | string    | Query evaluated as a dynamic `CRITICAL` recovery threshold. Only supported on metric monitors with a formula query and options['variables']. Cannot be combined with static thresholds. This field is in preview.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| thresholds                    | ok                             | double    | The monitor `OK` threshold.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| thresholds                    | unknown                        | double    | The monitor UNKNOWN threshold.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| thresholds                    | warning                        | double    | The monitor `WARNING` threshold.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| thresholds                    | warning_recovery               | double    | The monitor `WARNING` recovery threshold.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| options                       | timeout_h                      | int64     | The number of hours of the monitor not reporting data before it automatically resolves from a triggered state. The minimum allowed value is 0 hours. The maximum allowed value is 24 hours. Default: `null`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| options                       | variables                      | [<oneOf>] | List of requests that can be used in the monitor query. **This feature is currently in beta.**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| variables                     | Object 1                       | object    | A formula and functions events query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Object 1                      | compute [*required*]           | object    | Compute options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | data_source [*required*]       | enum      | Data source for event platform-based queries. Allowed enum values: `rum`, `ci_pipelines`, `ci_tests`, `audit`, `events`, `logs`, `spans`, `database_queries`, `network`, `network_path`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Object 1                      | group_by                       | [object]  | Group by options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | indexes                        | [string]  | An array of index names to query in the stream. Omit or use `[]` to query all indexes at once.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 1                      | search                         | object    | Search options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| search                        | query [*required*]             | string    | Events search string.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| variables                     | Object 2                       | object    | A formula and functions cost query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Object 2                      | aggregator                     | enum      | Aggregation methods for metric queries. Allowed enum values: `avg`, `sum`, `max`, `min`, `last`, `area`, `l2norm`, `percentile`, `stddev`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Object 2                      | data_source [*required*]       | enum      | Data source for cost queries. Allowed enum values: `metrics`, `cloud_cost`, `datadog_usage`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Object 2                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 2                      | query [*required*]             | string    | The monitor query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| variables                     | Object 3                       | object    | A formula and functions data quality query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Object 3                      | data_source [*required*]       | enum      | Data source for data quality queries. Allowed enum values: `data_quality_metrics`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Object 3                      | filter [*required*]            | string    | Filter expression used to match on data entities. Uses Aastra query syntax.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Object 3                      | group_by                       | [string]  | Optional grouping fields for aggregation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Object 3                      | measure [*required*]           | string    | The data quality measure to query. Common values include: `bytes`, `cardinality`, `custom`, `freshness`, `max`, `mean`, `min`, `nullness`, `percent_negative`, `percent_zero`, `row_count`, `stddev`, `sum`, `uniqueness`. Additional values may be supported.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 3                      | monitor_options                | object    | Monitor configuration options for data quality queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| monitor_options               | crontab_override               | string    | Crontab expression to override the default schedule.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| monitor_options               | custom_sql                     | string    | Custom SQL query for the monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| monitor_options               | custom_where                   | string    | Custom WHERE clause for the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| monitor_options               | group_by_columns               | [string]  | Columns to group results by.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| monitor_options               | model_configuration            | object    | Tuning options for the anomaly detection model used by the monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| model_configuration           | auto_resolve_days              | int32     | Number of days after which an open alert is automatically resolved. When unset, alerts stay open until the measure returns within bounds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| model_configuration           | enable_flatline_detection      | boolean   | Whether to alert when the measure stops changing entirely. Defaults to `true`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| model_configuration           | function                       | enum      | Function applied to the measure before it is compared against the predicted bounds. Allowed enum values: `DIFF`, `DIFF_PERCENT`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| model_configuration           | min_lower_bound_size           | double    | Minimum distance between the predicted value and the lower bound. Widening the lower bound to at least this size suppresses alerts on small downward deviations. When unset, no minimum is enforced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| model_configuration           | min_upper_bound_size           | double    | Minimum distance between the predicted value and the upper bound. Widening the upper bound to at least this size suppresses alerts on small upward deviations. When unset, no minimum is enforced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| model_configuration           | model_bounds_override          | enum      | Restricts which predicted bound the monitor alerts on. `UPPER_ONLY` alerts only when the measure rises above the upper bound, `LOWER_ONLY` only when it falls below the lower bound. When unset, the monitor alerts on both. Allowed enum values: `UPPER_ONLY`, `LOWER_ONLY`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| monitor_options               | model_type_override            | enum      | Override for the model type used in anomaly detection. Allowed enum values: `freshness`, `percentage`, `any`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| monitor_options               | sensitivity                    | double    | Sensitivity of the anomaly detection model, expressed as a multiplier on the width of the predicted bounds. Higher values widen the bounds and produce fewer alerts; lower values tighten them and produce more alerts. Defaults to `3.0`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| monitor_options               | source_to_target_config        | object    | Configuration for a source to target monitor, which compares the same measure across two data entities and alerts on the difference between them.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| source_to_target_config       | diff_type [*required*]         | enum      | How the difference between the source and target measures is computed. `absolute` subtracts the two values, `diff_percent` expresses the difference as a percentage of the source value. Allowed enum values: `absolute`, `diff_percent`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| source_to_target_config       | entity_type [*required*]       | string    | Type of the data entities being compared.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| source_to_target_config       | source [*required*]            | object    | Measure configuration for one side of a source to target comparison.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| source                        | custom_sql                     | string    | Custom SQL query used to compute the measure for this entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| source                        | custom_where                   | string    | Custom WHERE clause applied when computing the measure for this entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| source                        | entity_id [*required*]         | string    | Identifier of the data entity to measure.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| source                        | entity_type [*required*]       | string    | Type of the data entity to measure.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| source                        | group_by_columns               | [string]  | Columns to group results by when computing the measure for this entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| source_to_target_config       | target [*required*]            | object    | Measure configuration for one side of a source to target comparison.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| target                        | custom_sql                     | string    | Custom SQL query used to compute the measure for this entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| target                        | custom_where                   | string    | Custom WHERE clause applied when computing the measure for this entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| target                        | entity_id [*required*]         | string    | Identifier of the data entity to measure.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| target                        | entity_type [*required*]       | string    | Type of the data entity to measure.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| target                        | group_by_columns               | [string]  | Columns to group results by when computing the measure for this entity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Object 3                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 3                      | schema_version                 | string    | Schema version for the data quality query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Object 3                      | scope                          | string    | Optional scoping expression to further filter metrics. Uses metrics filter syntax. This is useful when an entity has been configured to emit metrics with additional tags.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| variables                     | Object 4                       | object    | A formula and functions data jobs query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Object 4                      | job_type [*required*]          | string    | The type of job being monitored. Valid values include: `databricks.job`, `spark.application`, `airflow.dag`, `dbt.job`, `dbt.model`, `dbt.test`, `glue.job`. Custom job types are supported with the `custom.ol.` prefix.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Object 4                      | jobs_query [*required*]        | string    | Filter expression used to select the jobs to monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Object 4                      | name [*required*]              | string    | Name of the query for use in formulas. Must be `run_query`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Object 4                      | query_dialect [*required*]     | string    | Query dialect for data jobs queries. Currently only `metric` is supported.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| variables                     | Object 5                       | object    | A formula and functions aggregate augmented query. Used to enrich base query results with data from a reference table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 5                      | augment_query [*required*]     | <oneOf>   | Augment query for aggregate augmented queries. Can be an events query or a reference table query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| augment_query                 | Object 1                       | object    | A formula and functions events query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Object 1                      | compute [*required*]           | object    | Compute options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | data_source [*required*]       | enum      | Data source for event platform-based queries. Allowed enum values: `rum`, `ci_pipelines`, `ci_tests`, `audit`, `events`, `logs`, `spans`, `database_queries`, `network`, `network_path`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Object 1                      | group_by                       | [object]  | Group by options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | indexes                        | [string]  | An array of index names to query in the stream. Omit or use `[]` to query all indexes at once.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 1                      | search                         | object    | Search options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| search                        | query [*required*]             | string    | Events search string.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| augment_query                 | <data_source=reference_table>  | object    | A reference table query for use in aggregate queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| <data_source=reference_table> | columns                        | [object]  | List of columns to retrieve from the reference table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| columns                       | alias                          | string    | Optional alias for the column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| columns                       | name [*required*]              | string    | Name of the column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| <data_source=reference_table> | data_source [*required*]       | enum      | Data source for reference table queries. Allowed enum values: `reference_table`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| <data_source=reference_table> | name                           | string    | Name of the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| <data_source=reference_table> | query_filter                   | string    | Optional filter expression for the reference table query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| <data_source=reference_table> | table_name [*required*]        | string    | Name of the reference table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Object 5                      | base_query [*required*]        | <oneOf>   | Base query for aggregate queries. Can be an events query or a metrics query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| base_query                    | Object 1                       | object    | A formula and functions events query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Object 1                      | compute [*required*]           | object    | Compute options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | data_source [*required*]       | enum      | Data source for event platform-based queries. Allowed enum values: `rum`, `ci_pipelines`, `ci_tests`, `audit`, `events`, `logs`, `spans`, `database_queries`, `network`, `network_path`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Object 1                      | group_by                       | [object]  | Group by options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | indexes                        | [string]  | An array of index names to query in the stream. Omit or use `[]` to query all indexes at once.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 1                      | search                         | object    | Search options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| search                        | query [*required*]             | string    | Events search string.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| base_query                    | Object 2                       | object    | A formula and functions metrics query for use in aggregate queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Object 2                      | aggregator                     | enum      | Aggregator for metrics queries. Allowed enum values: `avg`, `min`, `max`, `sum`, `last`, `mean`, `area`, `l2norm`, `percentile`, `stddev`, `count_unique`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Object 2                      | data_source [*required*]       | enum      | Data source for metrics queries. Allowed enum values: `metrics`, `cloud_cost`, `datadog_usage`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Object 2                      | name                           | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 2                      | query [*required*]             | string    | The metrics query definition.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Object 5                      | compute [*required*]           | [object]  | Compute options for the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 5                      | data_source [*required*]       | enum      | Data source for aggregate augmented queries. Allowed enum values: `aggregate_augmented_query`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 5                      | group_by [*required*]          | [object]  | Group by options for the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 5                      | join_condition [*required*]    | object    | Join condition for aggregate augmented queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| join_condition                | augment_attribute [*required*] | string    | Attribute from the augment query to join on.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| join_condition                | base_attribute [*required*]    | string    | Attribute from the base query to join on.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| join_condition                | join_type [*required*]         | enum      | Join type for aggregate query join conditions. Allowed enum values: `inner`, `left`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| Object 5                      | name                           | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| variables                     | Object 6                       | object    | A formula and functions aggregate filtered query. Used to filter base query results using data from another source.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Object 6                      | base_query [*required*]        | <oneOf>   | Base query for aggregate queries. Can be an events query or a metrics query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| base_query                    | Object 1                       | object    | A formula and functions events query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Object 1                      | compute [*required*]           | object    | Compute options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | data_source [*required*]       | enum      | Data source for event platform-based queries. Allowed enum values: `rum`, `ci_pipelines`, `ci_tests`, `audit`, `events`, `logs`, `spans`, `database_queries`, `network`, `network_path`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Object 1                      | group_by                       | [object]  | Group by options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | indexes                        | [string]  | An array of index names to query in the stream. Omit or use `[]` to query all indexes at once.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 1                      | search                         | object    | Search options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| search                        | query [*required*]             | string    | Events search string.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| base_query                    | Object 2                       | object    | A formula and functions metrics query for use in aggregate queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Object 2                      | aggregator                     | enum      | Aggregator for metrics queries. Allowed enum values: `avg`, `min`, `max`, `sum`, `last`, `mean`, `area`, `l2norm`, `percentile`, `stddev`, `count_unique`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Object 2                      | data_source [*required*]       | enum      | Data source for metrics queries. Allowed enum values: `metrics`, `cloud_cost`, `datadog_usage`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Object 2                      | name                           | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 2                      | query [*required*]             | string    | The metrics query definition.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Object 6                      | compute                        | [object]  | Compute options for the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 6                      | data_source [*required*]       | enum      | Data source for aggregate filtered queries. Allowed enum values: `aggregate_filtered_query`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Object 6                      | filter_query [*required*]      | <oneOf>   | Filter query for aggregate filtered queries. Can be an events query or a reference table query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| filter_query                  | Object 1                       | object    | A formula and functions events query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Object 1                      | compute [*required*]           | object    | Compute options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | interval                       | int64     | A time interval in milliseconds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | metric                         | string    | Measurable attribute to compute.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| compute                       | name                           | string    | The name assigned to this aggregation, when multiple aggregations are defined for a query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| compute                       | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | data_source [*required*]       | enum      | Data source for event platform-based queries. Allowed enum values: `rum`, `ci_pipelines`, `ci_tests`, `audit`, `events`, `logs`, `spans`, `database_queries`, `network`, `network_path`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Object 1                      | group_by                       | [object]  | Group by options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | indexes                        | [string]  | An array of index names to query in the stream. Omit or use `[]` to query all indexes at once.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 1                      | name [*required*]              | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Object 1                      | search                         | object    | Search options.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| search                        | query [*required*]             | string    | Events search string.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| filter_query                  | <data_source=reference_table>  | object    | A reference table query for use in aggregate queries.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| <data_source=reference_table> | columns                        | [object]  | List of columns to retrieve from the reference table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| columns                       | alias                          | string    | Optional alias for the column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| columns                       | name [*required*]              | string    | Name of the column.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| <data_source=reference_table> | data_source [*required*]       | enum      | Data source for reference table queries. Allowed enum values: `reference_table`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| <data_source=reference_table> | name                           | string    | Name of the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| <data_source=reference_table> | query_filter                   | string    | Optional filter expression for the reference table query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| <data_source=reference_table> | table_name [*required*]        | string    | Name of the reference table.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Object 6                      | filters [*required*]           | [object]  | Filter conditions for the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| filters                       | base_attribute [*required*]    | string    | Attribute from the base query to filter on.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| filters                       | exclude                        | boolean   | Whether to exclude matching records instead of including them. Default: `false`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| filters                       | filter_attribute [*required*]  | string    | Attribute from the filter query to match against.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Object 6                      | group_by                       | [object]  | Group by options for the query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| group_by                      | facet [*required*]             | string    | Event facet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| group_by                      | limit                          | int64     | Number of groups to return.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| group_by                      | sort                           | object    | Options for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| sort                          | aggregation [*required*]       | enum      | Aggregation methods for event platform queries. Allowed enum values: `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| sort                          | metric                         | string    | Metric used for sorting group by results.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| sort                          | order                          | enum      | Direction of sort. Allowed enum values: `asc`, `desc`. Default: `desc`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| group_by                      | source                         | string    | Source reference for composite query payloads.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Object 6                      | name                           | string    | Name of the query for use in formulas.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|                               | priority                       | int64     | Integer from 1 (high) to 5 (low) indicating alert severity.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|                               | query [*required*]             | string    | The monitor query.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|                               | restricted_roles               | [string]  | A list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles.md#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies.md) to manage write authorization for individual monitors by teams and users, in addition to roles.                                                                                                                          |
|                               | tags                           | [string]  | Tags associated to your monitor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|                               | type [*required*]              | enum      | The type of the monitor. For more information about `type`, see the [monitor options](https://docs.datadoghq.com/monitors/guide/monitor_api_options.md) docs. Allowed enum values: `composite`, `event alert`, `log alert`, `metric alert`, `process alert`, `query alert`, `rum alert`, `service check`, `synthetics alert`, `trace-analytics alert`, `slo alert`, `event-v2 alert`, `audit alert`, `ci-pipelines alert`, `ci-tests alert`, `error-tracking alert`, `database-monitoring alert`, `network-performance alert`, `cost alert`, `data-quality alert`, `network-path alert`, `data-jobs alert`, `llm-observability alert`.                                                                                                          |
{% /tab %}

{% tab label="Example" %}
**Validate a monitor returns "OK" response**

```json
{
  "name": "Example-Monitor",
  "type": "log alert",
  "query": "logs(\"service:foo AND type:error\").index(\"main\").rollup(\"count\").by(\"source\").last(\"5m\") > 2",
  "message": "some message Notify: @hipchat-channel",
  "tags": [
    "test:examplemonitor",
    "env:ci"
  ],
  "priority": 3,
  "options": {
    "enable_logs_sample": true,
    "escalation_message": "the situation has escalated",
    "evaluation_delay": 700,
    "include_tags": true,
    "locked": false,
    "new_host_delay": 600,
    "no_data_timeframe": null,
    "notify_audit": false,
    "notify_no_data": false,
    "on_missing_data": "show_and_notify_no_data",
    "notification_preset_name": "hide_handles",
    "renotify_interval": 60,
    "require_full_window": true,
    "timeout_h": 24,
    "thresholds": {
      "critical": 2,
      "warning": 1
    }
  }
}
```

**Validate a multi-alert monitor returns "OK" response**

```json
{
  "name": "Example-Monitor",
  "type": "log alert",
  "query": "logs(\"service:foo AND type:error\").index(\"main\").rollup(\"count\").by(\"source,status\").last(\"5m\") > 2",
  "message": "some message Notify: @hipchat-channel",
  "tags": [
    "test:examplemonitor",
    "env:ci"
  ],
  "priority": 3,
  "options": {
    "enable_logs_sample": true,
    "escalation_message": "the situation has escalated",
    "evaluation_delay": 700,
    "group_retention_duration": "2d",
    "include_tags": true,
    "locked": false,
    "new_host_delay": 600,
    "no_data_timeframe": null,
    "notify_audit": false,
    "notify_by": [
      "status"
    ],
    "notify_no_data": false,
    "on_missing_data": "show_and_notify_no_data",
    "renotify_interval": 60,
    "require_full_window": true,
    "timeout_h": 24,
    "thresholds": {
      "critical": 2,
      "warning": 1
    }
  }
}
```
{% /tab %}
{% /tabs %}

### Response

{% tabs %}
{% tab label="200" %}
OK

{% tabs %}
{% tab label="Model" %}
| Field | Type | Description |
| ----- | ---- | ----------- |
{% /tab %}

{% tab label="Example" %}
```json
{}
```
{% /tab %}
{% /tabs %}
{% /tab %}

{% tab label="400" %}
Invalid JSON

{% tabs %}
{% tab label="Model" %}
Error response object.

| Field               | Type     | Description                          |
| ------------------- | -------- | ------------------------------------ |
| errors [*required*] | [string] | Array of errors returned by the API. |
{% /tab %}

{% tab label="Example" %}
```json
{
  "errors": [
    "Bad Request"
  ]
}
```
{% /tab %}
{% /tabs %}
{% /tab %}

{% tab label="403" %}
Forbidden

{% tabs %}
{% tab label="Model" %}
Error response object.

| Field               | Type     | Description                          |
| ------------------- | -------- | ------------------------------------ |
| errors [*required*] | [string] | Array of errors returned by the API. |
{% /tab %}

{% tab label="Example" %}
```json
{
  "errors": [
    "Bad Request"
  ]
}
```
{% /tab %}
{% /tabs %}
{% /tab %}

{% tab label="429" %}
Too many requests

{% tabs %}
{% tab label="Model" %}
Error response object.

| Field               | Type     | Description                          |
| ------------------- | -------- | ------------------------------------ |
| errors [*required*] | [string] | Array of errors returned by the API. |
{% /tab %}

{% tab label="Example" %}
```json
{
  "errors": [
    "Bad Request"
  ]
}
```
{% /tab %}
{% /tabs %}
{% /tab %}
{% /tabs %}

### Code Example

{% tabs %}
{% tab label="Curl" %}
```bash
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com" # Or us3.datadoghq.com, us5.datadoghq.com, datadoghq.eu, ap1.datadoghq.com, ap2.datadoghq.com, uk1.datadoghq.com, ddog-gov.com, us2.ddog-gov.com
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v1/monitor/validate" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "name": "Example-Monitor",
  "type": "log alert",
  "query": "logs(\"service:foo AND type:error\").index(\"main\").rollup(\"count\").by(\"source\").last(\"5m\") > 2",
  "message": "some message Notify: @hipchat-channel",
  "tags": [
    "test:examplemonitor",
    "env:ci"
  ],
  "priority": 3,
  "options": {
    "enable_logs_sample": true,
    "escalation_message": "the situation has escalated",
    "evaluation_delay": 700,
    "include_tags": true,
    "locked": false,
    "new_host_delay": 600,
    "no_data_timeframe": null,
    "notify_audit": false,
    "notify_no_data": false,
    "on_missing_data": "show_and_notify_no_data",
    "notification_preset_name": "hide_handles",
    "renotify_interval": 60,
    "require_full_window": true,
    "timeout_h": 24,
    "thresholds": {
      "critical": 2,
      "warning": 1
    }
  }
}
EOF
```

```bash
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com" # Or us3.datadoghq.com, us5.datadoghq.com, datadoghq.eu, ap1.datadoghq.com, ap2.datadoghq.com, uk1.datadoghq.com, ddog-gov.com, us2.ddog-gov.com
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"

curl -X POST "https://api.${DD_SITE}/api/v1/monitor/validate" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
  "name": "Example-Monitor",
  "type": "log alert",
  "query": "logs(\"service:foo AND type:error\").index(\"main\").rollup(\"count\").by(\"source,status\").last(\"5m\") > 2",
  "message": "some message Notify: @hipchat-channel",
  "tags": [
    "test:examplemonitor",
    "env:ci"
  ],
  "priority": 3,
  "options": {
    "enable_logs_sample": true,
    "escalation_message": "the situation has escalated",
    "evaluation_delay": 700,
    "group_retention_duration": "2d",
    "include_tags": true,
    "locked": false,
    "new_host_delay": 600,
    "no_data_timeframe": null,
    "notify_audit": false,
    "notify_by": [
      "status"
    ],
    "notify_no_data": false,
    "on_missing_data": "show_and_notify_no_data",
    "renotify_interval": 60,
    "require_full_window": true,
    "timeout_h": 24,
    "thresholds": {
      "critical": 2,
      "warning": 1
    }
  }
}
EOF
```
{% /tab %}

{% tab label="Go" %}
```go
// Validate a monitor returns "OK" response

package main

import (
	"context"
	"encoding/json"
	"fmt"
	"os"

	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV1"
)

func main() {
	body := datadogV1.Monitor{
		Name:    datadog.PtrString("Example-Monitor"),
		Type:    datadogV1.MONITORTYPE_LOG_ALERT,
		Query:   `logs("service:foo AND type:error").index("main").rollup("count").by("source").last("5m") > 2`,
		Message: datadog.PtrString("some message Notify: @hipchat-channel"),
		Tags: []string{
			"test:examplemonitor",
			"env:ci",
		},
		Priority: *datadog.NewNullableInt64(datadog.PtrInt64(3)),
		Options: &datadogV1.MonitorOptions{
			EnableLogsSample:       datadog.PtrBool(true),
			EscalationMessage:      datadog.PtrString("the situation has escalated"),
			EvaluationDelay:        *datadog.NewNullableInt64(datadog.PtrInt64(700)),
			IncludeTags:            datadog.PtrBool(true),
			Locked:                 datadog.PtrBool(false),
			NewHostDelay:           *datadog.NewNullableInt64(datadog.PtrInt64(600)),
			NoDataTimeframe:        *datadog.NewNullableInt64(nil),
			NotifyAudit:            datadog.PtrBool(false),
			NotifyNoData:           datadog.PtrBool(false),
			OnMissingData:          datadogV1.ONMISSINGDATAOPTION_SHOW_AND_NOTIFY_NO_DATA.Ptr(),
			NotificationPresetName: datadogV1.MONITOROPTIONSNOTIFICATIONPRESETS_HIDE_HANDLES.Ptr(),
			RenotifyInterval:       *datadog.NewNullableInt64(datadog.PtrInt64(60)),
			RequireFullWindow:      datadog.PtrBool(true),
			TimeoutH:               *datadog.NewNullableInt64(datadog.PtrInt64(24)),
			Thresholds: &datadogV1.MonitorThresholds{
				Critical: datadog.PtrFloat64(2),
				Warning:  *datadog.NewNullableFloat64(datadog.PtrFloat64(1)),
			},
		},
	}
	ctx := datadog.NewDefaultContext(context.Background())
	ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV1.NewMonitorsApi(apiClient)
	resp, r, err := api.ValidateMonitor(ctx, body)

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `MonitorsApi.ValidateMonitor`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `MonitorsApi.ValidateMonitor`:\n%s\n", responseContent)
}
```

```go
// Validate a multi-alert monitor returns "OK" response

package main

import (
	"context"
	"encoding/json"
	"fmt"
	"os"

	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV1"
)

func main() {
	body := datadogV1.Monitor{
		Name:    datadog.PtrString("Example-Monitor"),
		Type:    datadogV1.MONITORTYPE_LOG_ALERT,
		Query:   `logs("service:foo AND type:error").index("main").rollup("count").by("source,status").last("5m") > 2`,
		Message: datadog.PtrString("some message Notify: @hipchat-channel"),
		Tags: []string{
			"test:examplemonitor",
			"env:ci",
		},
		Priority: *datadog.NewNullableInt64(datadog.PtrInt64(3)),
		Options: &datadogV1.MonitorOptions{
			EnableLogsSample:       datadog.PtrBool(true),
			EscalationMessage:      datadog.PtrString("the situation has escalated"),
			EvaluationDelay:        *datadog.NewNullableInt64(datadog.PtrInt64(700)),
			GroupRetentionDuration: datadog.PtrString("2d"),
			IncludeTags:            datadog.PtrBool(true),
			Locked:                 datadog.PtrBool(false),
			NewHostDelay:           *datadog.NewNullableInt64(datadog.PtrInt64(600)),
			NoDataTimeframe:        *datadog.NewNullableInt64(nil),
			NotifyAudit:            datadog.PtrBool(false),
			NotifyBy: []string{
				"status",
			},
			NotifyNoData:      datadog.PtrBool(false),
			OnMissingData:     datadogV1.ONMISSINGDATAOPTION_SHOW_AND_NOTIFY_NO_DATA.Ptr(),
			RenotifyInterval:  *datadog.NewNullableInt64(datadog.PtrInt64(60)),
			RequireFullWindow: datadog.PtrBool(true),
			TimeoutH:          *datadog.NewNullableInt64(datadog.PtrInt64(24)),
			Thresholds: &datadogV1.MonitorThresholds{
				Critical: datadog.PtrFloat64(2),
				Warning:  *datadog.NewNullableFloat64(datadog.PtrFloat64(1)),
			},
		},
	}
	ctx := datadog.NewDefaultContext(context.Background())
	ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV1.NewMonitorsApi(apiClient)
	resp, r, err := api.ValidateMonitor(ctx, body)

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `MonitorsApi.ValidateMonitor`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `MonitorsApi.ValidateMonitor`:\n%s\n", responseContent)
}
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=go) and then save the example to `main.go` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"
```
{% /tab %}

{% tab label="Java" %}
```java
// Validate a monitor returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.MonitorsApi;
import com.datadog.api.client.v1.model.Monitor;
import com.datadog.api.client.v1.model.MonitorOptions;
import com.datadog.api.client.v1.model.MonitorOptionsNotificationPresets;
import com.datadog.api.client.v1.model.MonitorThresholds;
import com.datadog.api.client.v1.model.MonitorType;
import com.datadog.api.client.v1.model.OnMissingDataOption;
import java.util.Arrays;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
    MonitorsApi apiInstance = new MonitorsApi(defaultClient);

    Monitor body =
        new Monitor()
            .name("Example-Monitor")
            .type(MonitorType.LOG_ALERT)
            .query(
                """
logs("service:foo AND type:error").index("main").rollup("count").by("source").last("5m") > 2
""")
            .message("some message Notify: @hipchat-channel")
            .tags(Arrays.asList("test:examplemonitor", "env:ci"))
            .priority(3L)
            .options(
                new MonitorOptions()
                    .enableLogsSample(true)
                    .escalationMessage("the situation has escalated")
                    .evaluationDelay(700L)
                    .includeTags(true)
                    .locked(false)
                    .newHostDelay(600L)
                    .noDataTimeframe(null)
                    .notifyAudit(false)
                    .notifyNoData(false)
                    .onMissingData(OnMissingDataOption.SHOW_AND_NOTIFY_NO_DATA)
                    .notificationPresetName(MonitorOptionsNotificationPresets.HIDE_HANDLES)
                    .renotifyInterval(60L)
                    .requireFullWindow(true)
                    .timeoutH(24L)
                    .thresholds(new MonitorThresholds().critical(2.0).warning(1.0)));

    try {
      apiInstance.validateMonitor(body);
    } catch (ApiException e) {
      System.err.println("Exception when calling MonitorsApi#validateMonitor");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}
```

```java
// Validate a multi-alert monitor returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.MonitorsApi;
import com.datadog.api.client.v1.model.Monitor;
import com.datadog.api.client.v1.model.MonitorOptions;
import com.datadog.api.client.v1.model.MonitorThresholds;
import com.datadog.api.client.v1.model.MonitorType;
import com.datadog.api.client.v1.model.OnMissingDataOption;
import java.util.Arrays;
import java.util.Collections;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
    MonitorsApi apiInstance = new MonitorsApi(defaultClient);

    Monitor body =
        new Monitor()
            .name("Example-Monitor")
            .type(MonitorType.LOG_ALERT)
            .query(
                """
logs("service:foo AND type:error").index("main").rollup("count").by("source,status").last("5m") > 2
""")
            .message("some message Notify: @hipchat-channel")
            .tags(Arrays.asList("test:examplemonitor", "env:ci"))
            .priority(3L)
            .options(
                new MonitorOptions()
                    .enableLogsSample(true)
                    .escalationMessage("the situation has escalated")
                    .evaluationDelay(700L)
                    .groupRetentionDuration("2d")
                    .includeTags(true)
                    .locked(false)
                    .newHostDelay(600L)
                    .noDataTimeframe(null)
                    .notifyAudit(false)
                    .notifyBy(Collections.singletonList("status"))
                    .notifyNoData(false)
                    .onMissingData(OnMissingDataOption.SHOW_AND_NOTIFY_NO_DATA)
                    .renotifyInterval(60L)
                    .requireFullWindow(true)
                    .timeoutH(24L)
                    .thresholds(new MonitorThresholds().critical(2.0).warning(1.0)));

    try {
      apiInstance.validateMonitor(body);
    } catch (ApiException e) {
      System.err.println("Exception when calling MonitorsApi#validateMonitor");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=java) and then save the example to `Example.java` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"
```
{% /tab %}

{% tab label="Python" %}
```python
"""
Validate a monitor returns "OK" response
"""

from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.monitors_api import MonitorsApi
from datadog_api_client.v1.model.monitor import Monitor
from datadog_api_client.v1.model.monitor_options import MonitorOptions
from datadog_api_client.v1.model.monitor_options_notification_presets import MonitorOptionsNotificationPresets
from datadog_api_client.v1.model.monitor_thresholds import MonitorThresholds
from datadog_api_client.v1.model.monitor_type import MonitorType
from datadog_api_client.v1.model.on_missing_data_option import OnMissingDataOption

body = Monitor(
    name="Example-Monitor",
    type=MonitorType.LOG_ALERT,
    query='logs("service:foo AND type:error").index("main").rollup("count").by("source").last("5m") > 2',
    message="some message Notify: @hipchat-channel",
    tags=[
        "test:examplemonitor",
        "env:ci",
    ],
    priority=3,
    options=MonitorOptions(
        enable_logs_sample=True,
        escalation_message="the situation has escalated",
        evaluation_delay=700,
        include_tags=True,
        locked=False,
        new_host_delay=600,
        no_data_timeframe=None,
        notify_audit=False,
        notify_no_data=False,
        on_missing_data=OnMissingDataOption.SHOW_AND_NOTIFY_NO_DATA,
        notification_preset_name=MonitorOptionsNotificationPresets.HIDE_HANDLES,
        renotify_interval=60,
        require_full_window=True,
        timeout_h=24,
        thresholds=MonitorThresholds(
            critical=2.0,
            warning=1.0,
        ),
    ),
)

configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
    api_instance = MonitorsApi(api_client)
    response = api_instance.validate_monitor(body=body)

    print(response)
```

```python
"""
Validate a multi-alert monitor returns "OK" response
"""

from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.monitors_api import MonitorsApi
from datadog_api_client.v1.model.monitor import Monitor
from datadog_api_client.v1.model.monitor_options import MonitorOptions
from datadog_api_client.v1.model.monitor_thresholds import MonitorThresholds
from datadog_api_client.v1.model.monitor_type import MonitorType
from datadog_api_client.v1.model.on_missing_data_option import OnMissingDataOption

body = Monitor(
    name="Example-Monitor",
    type=MonitorType.LOG_ALERT,
    query='logs("service:foo AND type:error").index("main").rollup("count").by("source,status").last("5m") > 2',
    message="some message Notify: @hipchat-channel",
    tags=[
        "test:examplemonitor",
        "env:ci",
    ],
    priority=3,
    options=MonitorOptions(
        enable_logs_sample=True,
        escalation_message="the situation has escalated",
        evaluation_delay=700,
        group_retention_duration="2d",
        include_tags=True,
        locked=False,
        new_host_delay=600,
        no_data_timeframe=None,
        notify_audit=False,
        notify_by=[
            "status",
        ],
        notify_no_data=False,
        on_missing_data=OnMissingDataOption.SHOW_AND_NOTIFY_NO_DATA,
        renotify_interval=60,
        require_full_window=True,
        timeout_h=24,
        thresholds=MonitorThresholds(
            critical=2.0,
            warning=1.0,
        ),
    ),
)

configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
    api_instance = MonitorsApi(api_client)
    response = api_instance.validate_monitor(body=body)

    print(response)
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=python) and then save the example to `example.py` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"
```
{% /tab %}

{% tab label="Ruby" %}
```ruby
# Validate a monitor returns "OK" response

require "datadog_api_client"
DatadogAPIClient.configure do |config|
  config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V1::MonitorsAPI.new

body = DatadogAPIClient::V1::Monitor.new({
  name: "Example-Monitor",
  type: DatadogAPIClient::V1::MonitorType::LOG_ALERT,
  query: 'logs("service:foo AND type:error").index("main").rollup("count").by("source").last("5m") > 2',
  message: "some message Notify: @hipchat-channel",
  tags: [
    "test:examplemonitor",
    "env:ci",
  ],
  priority: 3,
  options: DatadogAPIClient::V1::MonitorOptions.new({
    enable_logs_sample: true,
    escalation_message: "the situation has escalated",
    evaluation_delay: 700,
    include_tags: true,
    locked: false,
    new_host_delay: 600,
    no_data_timeframe: nil,
    notify_audit: false,
    notify_no_data: false,
    on_missing_data: DatadogAPIClient::V1::OnMissingDataOption::SHOW_AND_NOTIFY_NO_DATA,
    notification_preset_name: DatadogAPIClient::V1::MonitorOptionsNotificationPresets::HIDE_HANDLES,
    renotify_interval: 60,
    require_full_window: true,
    timeout_h: 24,
    thresholds: DatadogAPIClient::V1::MonitorThresholds.new({
      critical: 2,
      warning: 1,
    }),
  }),
})
p api_instance.validate_monitor(body)
```

```ruby
# Validate a multi-alert monitor returns "OK" response

require "datadog_api_client"
DatadogAPIClient.configure do |config|
  config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V1::MonitorsAPI.new

body = DatadogAPIClient::V1::Monitor.new({
  name: "Example-Monitor",
  type: DatadogAPIClient::V1::MonitorType::LOG_ALERT,
  query: 'logs("service:foo AND type:error").index("main").rollup("count").by("source,status").last("5m") > 2',
  message: "some message Notify: @hipchat-channel",
  tags: [
    "test:examplemonitor",
    "env:ci",
  ],
  priority: 3,
  options: DatadogAPIClient::V1::MonitorOptions.new({
    enable_logs_sample: true,
    escalation_message: "the situation has escalated",
    evaluation_delay: 700,
    group_retention_duration: "2d",
    include_tags: true,
    locked: false,
    new_host_delay: 600,
    no_data_timeframe: nil,
    notify_audit: false,
    notify_by: [
      "status",
    ],
    notify_no_data: false,
    on_missing_data: DatadogAPIClient::V1::OnMissingDataOption::SHOW_AND_NOTIFY_NO_DATA,
    renotify_interval: 60,
    require_full_window: true,
    timeout_h: 24,
    thresholds: DatadogAPIClient::V1::MonitorThresholds.new({
      critical: 2,
      warning: 1,
    }),
  }),
})
p api_instance.validate_monitor(body)
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=ruby) and then save the example to `example.rb` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"
```
{% /tab %}

{% tab label="Rust" %}
```rust
// Validate a monitor returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_monitors::MonitorsAPI;
use datadog_api_client::datadogV1::model::Monitor;
use datadog_api_client::datadogV1::model::MonitorOptions;
use datadog_api_client::datadogV1::model::MonitorOptionsNotificationPresets;
use datadog_api_client::datadogV1::model::MonitorThresholds;
use datadog_api_client::datadogV1::model::MonitorType;
use datadog_api_client::datadogV1::model::OnMissingDataOption;

#[tokio::main]
async fn main() {
    let body =
        Monitor::new(
            r#"logs("service:foo AND type:error").index("main").rollup("count").by("source").last("5m") > 2"#.to_string(),
            MonitorType::LOG_ALERT,
        )
            .message("some message Notify: @hipchat-channel".to_string())
            .name("Example-Monitor".to_string())
            .options(
                MonitorOptions::new()
                    .enable_logs_sample(true)
                    .escalation_message("the situation has escalated".to_string())
                    .evaluation_delay(Some(700))
                    .include_tags(true)
                    .locked(false)
                    .new_host_delay(Some(600))
                    .no_data_timeframe(None)
                    .notification_preset_name(MonitorOptionsNotificationPresets::HIDE_HANDLES)
                    .notify_audit(false)
                    .notify_no_data(false)
                    .on_missing_data(OnMissingDataOption::SHOW_AND_NOTIFY_NO_DATA)
                    .renotify_interval(Some(60))
                    .require_full_window(true)
                    .thresholds(MonitorThresholds::new().critical(2.0 as f64).warning(Some(1.0 as f64)))
                    .timeout_h(Some(24)),
            )
            .priority(Some(3))
            .tags(vec!["test:examplemonitor".to_string(), "env:ci".to_string()]);
    let configuration = datadog::Configuration::new();
    let api = MonitorsAPI::with_config(configuration);
    let resp = api.validate_monitor(body).await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}
```

```rust
// Validate a multi-alert monitor returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_monitors::MonitorsAPI;
use datadog_api_client::datadogV1::model::Monitor;
use datadog_api_client::datadogV1::model::MonitorOptions;
use datadog_api_client::datadogV1::model::MonitorThresholds;
use datadog_api_client::datadogV1::model::MonitorType;
use datadog_api_client::datadogV1::model::OnMissingDataOption;

#[tokio::main]
async fn main() {
    let body =
        Monitor::new(
            r#"logs("service:foo AND type:error").index("main").rollup("count").by("source,status").last("5m") > 2"#.to_string(),
            MonitorType::LOG_ALERT,
        )
            .message("some message Notify: @hipchat-channel".to_string())
            .name("Example-Monitor".to_string())
            .options(
                MonitorOptions::new()
                    .enable_logs_sample(true)
                    .escalation_message("the situation has escalated".to_string())
                    .evaluation_delay(Some(700))
                    .group_retention_duration("2d".to_string())
                    .include_tags(true)
                    .locked(false)
                    .new_host_delay(Some(600))
                    .no_data_timeframe(None)
                    .notify_audit(false)
                    .notify_by(vec!["status".to_string()])
                    .notify_no_data(false)
                    .on_missing_data(OnMissingDataOption::SHOW_AND_NOTIFY_NO_DATA)
                    .renotify_interval(Some(60))
                    .require_full_window(true)
                    .thresholds(MonitorThresholds::new().critical(2.0 as f64).warning(Some(1.0 as f64)))
                    .timeout_h(Some(24)),
            )
            .priority(Some(3))
            .tags(vec!["test:examplemonitor".to_string(), "env:ci".to_string()]);
    let configuration = datadog::Configuration::new();
    let api = MonitorsAPI::with_config(configuration);
    let resp = api.validate_monitor(body).await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=rust) and then save the example to `src/main.rs` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
```
{% /tab %}

{% tab label="TypeScript" %}
```typescript
/**
 * Validate a monitor returns "OK" response
 */

import { client, v1 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration({
  authMethods: {
    AuthZ: {
      accessToken: process.env.DD_BEARER_TOKEN as string,
    },
  },
});
const apiInstance = new v1.MonitorsApi(configuration);

const params: v1.MonitorsApiValidateMonitorRequest = {
  body: {
    name: "Example-Monitor",
    type: "log alert",
    query: `logs("service:foo AND type:error").index("main").rollup("count").by("source").last("5m") > 2`,
    message: "some message Notify: @hipchat-channel",
    tags: ["test:examplemonitor", "env:ci"],
    priority: 3,
    options: {
      enableLogsSample: true,
      escalationMessage: "the situation has escalated",
      evaluationDelay: 700,
      includeTags: true,
      locked: false,
      newHostDelay: 600,
      noDataTimeframe: undefined,
      notifyAudit: false,
      notifyNoData: false,
      onMissingData: "show_and_notify_no_data",
      notificationPresetName: "hide_handles",
      renotifyInterval: 60,
      requireFullWindow: true,
      timeoutH: 24,
      thresholds: {
        critical: 2,
        warning: 1,
      },
    },
  },
};

apiInstance
  .validateMonitor(params)
  .then((data: any) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));
```

```typescript
/**
 * Validate a multi-alert monitor returns "OK" response
 */

import { client, v1 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration({
  authMethods: {
    AuthZ: {
      accessToken: process.env.DD_BEARER_TOKEN as string,
    },
  },
});
const apiInstance = new v1.MonitorsApi(configuration);

const params: v1.MonitorsApiValidateMonitorRequest = {
  body: {
    name: "Example-Monitor",
    type: "log alert",
    query: `logs("service:foo AND type:error").index("main").rollup("count").by("source,status").last("5m") > 2`,
    message: "some message Notify: @hipchat-channel",
    tags: ["test:examplemonitor", "env:ci"],
    priority: 3,
    options: {
      enableLogsSample: true,
      escalationMessage: "the situation has escalated",
      evaluationDelay: 700,
      groupRetentionDuration: "2d",
      includeTags: true,
      locked: false,
      newHostDelay: 600,
      noDataTimeframe: undefined,
      notifyAudit: false,
      notifyBy: ["status"],
      notifyNoData: false,
      onMissingData: "show_and_notify_no_data",
      renotifyInterval: 60,
      requireFullWindow: true,
      timeoutH: 24,
      thresholds: {
        critical: 2,
        warning: 1,
      },
    },
  },
};

apiInstance
  .validateMonitor(params)
  .then((data: any) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=typescript) and then save the example to `example.ts` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"
```
{% /tab %}

{% tab label="Python [legacy]" %}
```python
from datadog import initialize, api

options = {
    "api_key": "<DATADOG_API_KEY>",
    "app_key": "<DATADOG_APPLICATION_KEY>"
}

initialize(**options)

monitor_type = "query alert"
query = "avg(last_1h):sum:system.net.bytes_rcvd{host:host0} > 200"
monitor_options = {"thresholds": {"critical": 90.0}}

# Validate a monitor's definition
api.Monitor.validate(
    type=monitor_type,
    query=query,
    options=monitor_options,
)
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=python-legacy) and then save the example to `example.py` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python "example.py"
```
{% /tab %}

{% tab label="Ruby [legacy]" %}
```ruby
require 'dogapi'

api_key = '<DATADOG_API_KEY>'
app_key = '<DATADOG_APPLICATION_KEY>'

dog = Dogapi::Client.new(api_key, app_key)

type = 'query alert'
query = 'THIS IS A BAD QUERY'
parameters = {
  name: 'Bytes received on host0',
  message: 'We may need to add web hosts if this is consistently high.',
  tags: ['app:webserver', 'frontend'],
  options: {
    notify_no_data: true,
    no_data_timeframe: 20,
    thresholds: { critical: 90.0 }
  }
}

# Validate a monitor definition
dog.validate_monitor(type, query, parameters)
```

#### Instructions

First [install the library and its dependencies](https://dnd37xeb23o8n.cloudfront.net/api/latest.md?code-lang=ruby-legacy) and then save the example to `example.rb` and run following commands:

```bash
DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
```
{% /tab %}
{% /tabs %}
