---
title: "List monitors"
method: GET
path: "/v2/monitors"
tags: ["Monitors"]
---

# List monitors

`GET /v2/monitors`

List monitors the caller can read, with filtering and cursor-based
pagination. Results are ordered by creation time, newest first.
Deleted and draft monitors are excluded.

The shape of each returned monitor varies by `type` (`DATA_QUALITY`,
`PERFORMANCE`, `DRIFT`, `CUSTOM_METRIC`, `TRACING`).

All filters are optional and compose with AND semantics (a monitor
must match every provided filter). When a filter is omitted, no
filtering is applied for that field. Filters that cannot be satisfied
together — a metric filter from one family combined with a `type` from
another, or two metric filters from different families — are valid
input and return a `200` with an empty `monitors` array, as does any
other combination that simply matches nothing.

The four name filters do not all match the same way. `name` and
`space_name` are case-insensitive substring searches, so `name=prod`
matches "production". `project_name` and `dimension_name` are exact,
case-sensitive matches, so they need the full name as stored — for
`dimension_name`, the value copied verbatim from a returned monitor's
`dimension.name`.

An identifier that is not a well-formed ID of the expected kind
returns a `400`. A well-formed `space_id`, `project_id`, or
`custom_metric_id` that either does not exist or is not readable by
the caller returns the same `404` in both cases, so the response never
reveals whether the referenced resource exists.

A caller whose credentials grant monitor read access in no space at
all receives a `403`.

<Warning>This endpoint is in alpha, read more [here](https://arize.com/docs/ax/rest-reference#api-version-stages).</Warning>

## Query parameters

- `space_id` string — A universally unique identifier (base64-encoded opaque string).
- `space_name` string
- `name` string
- `project_id` string — A universally unique identifier (base64-encoded opaque string).
- `project_name` string
- `type` 'DATA_QUALITY' | 'PERFORMANCE' | 'DRIFT' | 'CUSTOM_METRIC' | 'TRACING' — The kind of monitor. Determines which type-specific fields apply. - `DATA_QUALITY` - Monitors a data quality metric (e.g. percent empty, CARDINALITY). - `PERFORMANCE` - Monitors a model performance metric (e.g. ACCURACY, RMSE). - `DRIFT` - Monitors distributional drift of a feature/output. - `CUSTOM_METRIC` - Monitors a user-defined custom metric. - `TRACING` - Monitors a span/trace-derived metric (e.g. span attributes, evals).
- `status` 'TRIGGERED' | 'CLEARED' | 'NO_DATA' — The monitor's current state from its most recent evaluation. - `TRIGGERED` - The metric breached the threshold. - `CLEARED` - The metric is within healthy bounds. - `NO_DATA` - No data was available to evaluate.
- `notifications_enabled` boolean
- `dimension_category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS' — The category of dimension the metric is evaluated over.
- `dimension_name` string
- `data_quality_metric` 'COUNT' | 'PERCENT_EMPTY' | 'CARDINALITY' | 'NEW_VALUES' | 'MISSING_VALUES' | 'AVG' | 'SUM' | 'STANDARD_DEVIATION' | 'P50' | 'P95' | 'P99' | 'P99_9' | 'AVERAGE_STRING_LIST_LENGTH' — The data quality metric computed over the selected dimension.
- `performance_metric` 'ACCURACY' | 'CALIBRATION' | 'F_1' | 'FALSE_NEGATIVE_DENSITY' | 'FALSE_NEGATIVE_RATE' | 'FALSE_POSITIVE_RATE' | 'PRECISION' | 'RECALL' | 'SENSITIVITY' | 'SPECIFICITY' | 'MICRO_AVERAGED_PRECISION' | 'MACRO_AVERAGED_PRECISION' | 'MULTI_CLASS_PRECISION' | 'MICRO_AVERAGED_RECALL' | 'MACRO_AVERAGED_RECALL' | 'MULTI_CLASS_RECALL' | 'ACTUALS_AVERAGE' | 'MAE' | 'MAPE' | 'MEAN_ERROR' | 'MSE' | 'PREDICTION_AVERAGE' | 'RMSE' | 'R_SQUARED' | 'SMAPE' | 'WAPE' | 'MASE' | 'AUC' | 'LOG_LOSS' | 'NDCG' | 'PR_AUC' | 'GROUP_AUC' | 'MRR' | 'RANKING_MAP' | 'RANKING_RECALL' | 'RANKING_PRECISION' | 'DISPARATE_IMPACT' | 'FALSE_POSITIVE_RATE_PARITY' | 'RECALL_PARITY' — The model performance metric.
- `drift_metric` 'PSI' | 'KL' | 'JS' | 'KS' | 'EUCLIDEAN_DISTANCE' | 'COSINE_SIMILARITY' — The statistical drift metric. `PSI`/`KL`/`JS`/`KS` apply to structured data; `EUCLIDEAN_DISTANCE`/`COSINE_SIMILARITY` apply to unstructured (embedding) data.
- `custom_metric_id` string — A universally unique identifier (base64-encoded opaque string).
- `limit` integer
- `cursor` string

## Response `200`

Returns a list of monitor objects

- ListMonitorsResponse
  - `monitors` Monitor[], required — A list of monitors.
    - union — A monitor. The `type` field discriminates which variant (and therefore which type-specific fields) applies.
      - DataQualityMonitor
        - `id` string, required — Unique identifier for the monitor (base64 global ID).
        - `name` string, required — Human-readable name of the monitor.
        - `type` 'DATA_QUALITY', required — Required on create. Immutable after creation.
        - `project_id` string, required — The project that the monitor belongs to (base64 global ID).
        - `uri` string, required — The UI deep link to the monitor.
        - `status` 'TRIGGERED' | 'CLEARED' | 'NO_DATA', required — The monitor's current state from its most recent evaluation. - `TRIGGERED` - The metric breached the threshold. - `CLEARED` - The metric is within healthy bounds. - `NO_DATA` - No data was available to evaluate.
        - `threshold` union, required — The monitor's threshold. The `type` field discriminates whether the threshold is manual or dynamic, and single or a bounded range.
          - ManualSingleThreshold
            - `type` 'MANUAL_SINGLE', required
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `value` number, required — The threshold value the computed metric is compared against.
          - DynamicSingleThreshold
            - `type` 'DYNAMIC_SINGLE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `multiplier` number, required — The multiplier applied to the calculation (e.g. number of standard deviations) to derive the threshold.
          - ManualRangeThreshold
            - `type` 'MANUAL_RANGE', required
            - `lower` ManualThresholdBound, required
              - …
            - `upper` ManualThresholdBound, required
              - …
          - DynamicRangeThreshold
            - `type` 'DYNAMIC_RANGE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `lower` DynamicThresholdBound, required
              - …
            - `upper` DynamicThresholdBound, required
              - …
        - `notifications_enabled` boolean, required — Whether notifications fire on a triggered transition.
        - `manual_evaluation_enabled` boolean, required — Whether the monitor is evaluated manually rather than on the automatic cadence.
        - `created_by_user_id` string, required — The user who created the monitor (base64 global ID).
        - `filters` MonitorFilter[] — Data filters applied to the monitor's metric. Omitted when the metric is computed over all data.
          - `dimension` Dimension, required
            - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
            - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
          - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS' | 'TOP_N' | 'CONTAINS' | 'CONTAINS_STRING' | 'SIMILAR_TO', required — Operators used by a monitor's data filters. Includes string operators as well as numeric ones.
          - `values` string[], required — The values compared against by the operator.
        - `notification_configs` NotificationConfig[] — Notification channels (email / integration / webhook) notified on a triggered transition. Omitted when no channels are configured.
          - union
            - EmailNotificationConfig
              - …
            - IntegrationNotificationConfig
              - …
            - WebhookNotificationConfig
              - …
        - `created_at` string, date-time, required — When the monitor was created.
        - `updated_at` string, date-time, required — When the monitor was last updated.
        - `downtime` DowntimeConfig
          - `start` string, date-time, required — When the downtime window begins.
          - `duration_seconds` integer, required — How long each downtime window lasts, in seconds.
          - `frequency_days` integer, required — How often the downtime window repeats, in days.
        - `scheduled_runtime` ScheduledRuntimeConfig
          - `enabled` boolean, required — Whether the monitor runs on a schedule. `false` means automatic scheduled evaluation is disabled.
          - `cadence_seconds` integer — How often the monitor evaluates, in seconds.
          - `days_of_week` integer[] — Days of the week the monitor runs on (`0` = Sunday … `6` = Saturday).
        - `evaluation_window_length_seconds` integer — The length of the evaluation window in seconds. Omitted when unset.
        - `delay_seconds` integer — The delay applied before evaluating a window, in seconds. Omitted when unset.
        - `evaluated_at` string, date-time — The last time the metric was computed. Omitted if it has never been evaluated.
        - `latest_computed_value` number — The most recently computed metric value. Omitted if it has never been evaluated.
        - `notes` string — Free-form notes attached to the monitor. Omitted when unset.
        - `metric` 'COUNT' | 'PERCENT_EMPTY' | 'CARDINALITY' | 'NEW_VALUES' | 'MISSING_VALUES' | 'AVG' | 'SUM' | 'STANDARD_DEVIATION' | 'P50' | 'P95' | 'P99' | 'P99_9' | 'AVERAGE_STRING_LIST_LENGTH', required — The data quality metric computed over the selected dimension.
        - `dimension` Dimension, required
          - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
          - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
        - `model_versions` string[], required — The model versions the metric is scoped to. An empty array means all model versions.
        - `baseline_config` union — The comparison dataset configuration used by drift and comparison-based data quality monitors. The `type` field determines whether the comparison dataset uses the model's primary baseline or a custom fixed or moving window.
          - ModelBaselineConfig — Uses the model's primary baseline as the comparison dataset.
            - `type` 'MODEL_BASELINE', required
            - `filters` MonitorFilter[], required — Filters applied to the comparison dataset. An empty array means no comparison dataset filters are configured.
              - …
          - CustomBaselineConfig — Uses a custom fixed or moving window as the comparison dataset.
            - `type` 'CUSTOM_BASELINE', required
            - `filters` MonitorFilter[], required — Filters applied to the comparison dataset. An empty array means no comparison dataset filters are configured.
              - …
            - `model_versions` string[], required — Model versions included in the comparison dataset. An empty array means all model versions.
            - `window` union, required — The custom comparison window. The `type` field determines whether the window is fixed or moving.
              - …
      - PerformanceMonitor
        - `id` string, required — Unique identifier for the monitor (base64 global ID).
        - `name` string, required — Human-readable name of the monitor.
        - `type` 'PERFORMANCE', required — Required on create. Immutable after creation.
        - `project_id` string, required — The project that the monitor belongs to (base64 global ID).
        - `uri` string, required — The UI deep link to the monitor.
        - `status` 'TRIGGERED' | 'CLEARED' | 'NO_DATA', required — The monitor's current state from its most recent evaluation. - `TRIGGERED` - The metric breached the threshold. - `CLEARED` - The metric is within healthy bounds. - `NO_DATA` - No data was available to evaluate.
        - `threshold` union, required — The monitor's threshold. The `type` field discriminates whether the threshold is manual or dynamic, and single or a bounded range.
          - ManualSingleThreshold
            - `type` 'MANUAL_SINGLE', required
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `value` number, required — The threshold value the computed metric is compared against.
          - DynamicSingleThreshold
            - `type` 'DYNAMIC_SINGLE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `multiplier` number, required — The multiplier applied to the calculation (e.g. number of standard deviations) to derive the threshold.
          - ManualRangeThreshold
            - `type` 'MANUAL_RANGE', required
            - `lower` ManualThresholdBound, required
              - …
            - `upper` ManualThresholdBound, required
              - …
          - DynamicRangeThreshold
            - `type` 'DYNAMIC_RANGE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `lower` DynamicThresholdBound, required
              - …
            - `upper` DynamicThresholdBound, required
              - …
        - `notifications_enabled` boolean, required — Whether notifications fire on a triggered transition.
        - `manual_evaluation_enabled` boolean, required — Whether the monitor is evaluated manually rather than on the automatic cadence.
        - `created_by_user_id` string, required — The user who created the monitor (base64 global ID).
        - `filters` MonitorFilter[] — Data filters applied to the monitor's metric. Omitted when the metric is computed over all data.
          - `dimension` Dimension, required
            - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
            - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
          - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS' | 'TOP_N' | 'CONTAINS' | 'CONTAINS_STRING' | 'SIMILAR_TO', required — Operators used by a monitor's data filters. Includes string operators as well as numeric ones.
          - `values` string[], required — The values compared against by the operator.
        - `notification_configs` NotificationConfig[] — Notification channels (email / integration / webhook) notified on a triggered transition. Omitted when no channels are configured.
          - union
            - EmailNotificationConfig
              - …
            - IntegrationNotificationConfig
              - …
            - WebhookNotificationConfig
              - …
        - `created_at` string, date-time, required — When the monitor was created.
        - `updated_at` string, date-time, required — When the monitor was last updated.
        - `downtime` DowntimeConfig
          - `start` string, date-time, required — When the downtime window begins.
          - `duration_seconds` integer, required — How long each downtime window lasts, in seconds.
          - `frequency_days` integer, required — How often the downtime window repeats, in days.
        - `scheduled_runtime` ScheduledRuntimeConfig
          - `enabled` boolean, required — Whether the monitor runs on a schedule. `false` means automatic scheduled evaluation is disabled.
          - `cadence_seconds` integer — How often the monitor evaluates, in seconds.
          - `days_of_week` integer[] — Days of the week the monitor runs on (`0` = Sunday … `6` = Saturday).
        - `evaluation_window_length_seconds` integer — The length of the evaluation window in seconds. Omitted when unset.
        - `delay_seconds` integer — The delay applied before evaluating a window, in seconds. Omitted when unset.
        - `evaluated_at` string, date-time — The last time the metric was computed. Omitted if it has never been evaluated.
        - `latest_computed_value` number — The most recently computed metric value. Omitted if it has never been evaluated.
        - `notes` string — Free-form notes attached to the monitor. Omitted when unset.
        - `metric` 'ACCURACY' | 'CALIBRATION' | 'F_1' | 'FALSE_NEGATIVE_DENSITY' | 'FALSE_NEGATIVE_RATE' | 'FALSE_POSITIVE_RATE' | 'PRECISION' | 'RECALL' | 'SENSITIVITY' | 'SPECIFICITY' | 'MICRO_AVERAGED_PRECISION' | 'MACRO_AVERAGED_PRECISION' | 'MULTI_CLASS_PRECISION' | 'MICRO_AVERAGED_RECALL' | 'MACRO_AVERAGED_RECALL' | 'MULTI_CLASS_RECALL' | 'ACTUALS_AVERAGE' | 'MAE' | 'MAPE' | 'MEAN_ERROR' | 'MSE' | 'PREDICTION_AVERAGE' | 'RMSE' | 'R_SQUARED' | 'SMAPE' | 'WAPE' | 'MASE' | 'AUC' | 'LOG_LOSS' | 'NDCG' | 'PR_AUC' | 'GROUP_AUC' | 'MRR' | 'RANKING_MAP' | 'RANKING_RECALL' | 'RANKING_PRECISION' | 'DISPARATE_IMPACT' | 'FALSE_POSITIVE_RATE_PARITY' | 'RECALL_PARITY', required — The model performance metric.
        - `model_versions` string[], required — The model versions the metric is scoped to. An empty array means all model versions.
        - `positive_class_value` string — The positive class used for classification metrics. Omitted when unset.
        - `metric_at_ranking_k_value` integer — The `k` cutoff for ranking metrics (e.g. NDCG@k). Omitted when unset.
      - DriftMonitor
        - `id` string, required — Unique identifier for the monitor (base64 global ID).
        - `name` string, required — Human-readable name of the monitor.
        - `type` 'DRIFT', required — Required on create. Immutable after creation.
        - `project_id` string, required — The project that the monitor belongs to (base64 global ID).
        - `uri` string, required — The UI deep link to the monitor.
        - `status` 'TRIGGERED' | 'CLEARED' | 'NO_DATA', required — The monitor's current state from its most recent evaluation. - `TRIGGERED` - The metric breached the threshold. - `CLEARED` - The metric is within healthy bounds. - `NO_DATA` - No data was available to evaluate.
        - `threshold` union, required — The monitor's threshold. The `type` field discriminates whether the threshold is manual or dynamic, and single or a bounded range.
          - ManualSingleThreshold
            - `type` 'MANUAL_SINGLE', required
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `value` number, required — The threshold value the computed metric is compared against.
          - DynamicSingleThreshold
            - `type` 'DYNAMIC_SINGLE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `multiplier` number, required — The multiplier applied to the calculation (e.g. number of standard deviations) to derive the threshold.
          - ManualRangeThreshold
            - `type` 'MANUAL_RANGE', required
            - `lower` ManualThresholdBound, required
              - …
            - `upper` ManualThresholdBound, required
              - …
          - DynamicRangeThreshold
            - `type` 'DYNAMIC_RANGE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `lower` DynamicThresholdBound, required
              - …
            - `upper` DynamicThresholdBound, required
              - …
        - `notifications_enabled` boolean, required — Whether notifications fire on a triggered transition.
        - `manual_evaluation_enabled` boolean, required — Whether the monitor is evaluated manually rather than on the automatic cadence.
        - `created_by_user_id` string, required — The user who created the monitor (base64 global ID).
        - `filters` MonitorFilter[] — Data filters applied to the monitor's metric. Omitted when the metric is computed over all data.
          - `dimension` Dimension, required
            - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
            - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
          - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS' | 'TOP_N' | 'CONTAINS' | 'CONTAINS_STRING' | 'SIMILAR_TO', required — Operators used by a monitor's data filters. Includes string operators as well as numeric ones.
          - `values` string[], required — The values compared against by the operator.
        - `notification_configs` NotificationConfig[] — Notification channels (email / integration / webhook) notified on a triggered transition. Omitted when no channels are configured.
          - union
            - EmailNotificationConfig
              - …
            - IntegrationNotificationConfig
              - …
            - WebhookNotificationConfig
              - …
        - `created_at` string, date-time, required — When the monitor was created.
        - `updated_at` string, date-time, required — When the monitor was last updated.
        - `downtime` DowntimeConfig
          - `start` string, date-time, required — When the downtime window begins.
          - `duration_seconds` integer, required — How long each downtime window lasts, in seconds.
          - `frequency_days` integer, required — How often the downtime window repeats, in days.
        - `scheduled_runtime` ScheduledRuntimeConfig
          - `enabled` boolean, required — Whether the monitor runs on a schedule. `false` means automatic scheduled evaluation is disabled.
          - `cadence_seconds` integer — How often the monitor evaluates, in seconds.
          - `days_of_week` integer[] — Days of the week the monitor runs on (`0` = Sunday … `6` = Saturday).
        - `evaluation_window_length_seconds` integer — The length of the evaluation window in seconds. Omitted when unset.
        - `delay_seconds` integer — The delay applied before evaluating a window, in seconds. Omitted when unset.
        - `evaluated_at` string, date-time — The last time the metric was computed. Omitted if it has never been evaluated.
        - `latest_computed_value` number — The most recently computed metric value. Omitted if it has never been evaluated.
        - `notes` string — Free-form notes attached to the monitor. Omitted when unset.
        - `metric` 'PSI' | 'KL' | 'JS' | 'KS' | 'EUCLIDEAN_DISTANCE' | 'COSINE_SIMILARITY', required — The statistical drift metric. `PSI`/`KL`/`JS`/`KS` apply to structured data; `EUCLIDEAN_DISTANCE`/`COSINE_SIMILARITY` apply to unstructured (embedding) data.
        - `dimension` Dimension, required
          - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
          - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
        - `baseline_config` union, required — The comparison dataset configuration used by drift and comparison-based data quality monitors. The `type` field determines whether the comparison dataset uses the model's primary baseline or a custom fixed or moving window.
          - ModelBaselineConfig — Uses the model's primary baseline as the comparison dataset.
            - `type` 'MODEL_BASELINE', required
            - `filters` MonitorFilter[], required — Filters applied to the comparison dataset. An empty array means no comparison dataset filters are configured.
              - …
          - CustomBaselineConfig — Uses a custom fixed or moving window as the comparison dataset.
            - `type` 'CUSTOM_BASELINE', required
            - `filters` MonitorFilter[], required — Filters applied to the comparison dataset. An empty array means no comparison dataset filters are configured.
              - …
            - `model_versions` string[], required — Model versions included in the comparison dataset. An empty array means all model versions.
            - `window` union, required — The custom comparison window. The `type` field determines whether the window is fixed or moving.
              - …
        - `model_versions` string[], required — The model versions the metric is scoped to. An empty array means all model versions.
      - CustomMetricMonitor
        - `id` string, required — Unique identifier for the monitor (base64 global ID).
        - `name` string, required — Human-readable name of the monitor.
        - `type` 'CUSTOM_METRIC', required — Required on create. Immutable after creation.
        - `project_id` string, required — The project that the monitor belongs to (base64 global ID).
        - `uri` string, required — The UI deep link to the monitor.
        - `status` 'TRIGGERED' | 'CLEARED' | 'NO_DATA', required — The monitor's current state from its most recent evaluation. - `TRIGGERED` - The metric breached the threshold. - `CLEARED` - The metric is within healthy bounds. - `NO_DATA` - No data was available to evaluate.
        - `threshold` union, required — The monitor's threshold. The `type` field discriminates whether the threshold is manual or dynamic, and single or a bounded range.
          - ManualSingleThreshold
            - `type` 'MANUAL_SINGLE', required
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `value` number, required — The threshold value the computed metric is compared against.
          - DynamicSingleThreshold
            - `type` 'DYNAMIC_SINGLE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `multiplier` number, required — The multiplier applied to the calculation (e.g. number of standard deviations) to derive the threshold.
          - ManualRangeThreshold
            - `type` 'MANUAL_RANGE', required
            - `lower` ManualThresholdBound, required
              - …
            - `upper` ManualThresholdBound, required
              - …
          - DynamicRangeThreshold
            - `type` 'DYNAMIC_RANGE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `lower` DynamicThresholdBound, required
              - …
            - `upper` DynamicThresholdBound, required
              - …
        - `notifications_enabled` boolean, required — Whether notifications fire on a triggered transition.
        - `manual_evaluation_enabled` boolean, required — Whether the monitor is evaluated manually rather than on the automatic cadence.
        - `created_by_user_id` string, required — The user who created the monitor (base64 global ID).
        - `filters` MonitorFilter[] — Data filters applied to the monitor's metric. Omitted when the metric is computed over all data.
          - `dimension` Dimension, required
            - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
            - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
          - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS' | 'TOP_N' | 'CONTAINS' | 'CONTAINS_STRING' | 'SIMILAR_TO', required — Operators used by a monitor's data filters. Includes string operators as well as numeric ones.
          - `values` string[], required — The values compared against by the operator.
        - `notification_configs` NotificationConfig[] — Notification channels (email / integration / webhook) notified on a triggered transition. Omitted when no channels are configured.
          - union
            - EmailNotificationConfig
              - …
            - IntegrationNotificationConfig
              - …
            - WebhookNotificationConfig
              - …
        - `created_at` string, date-time, required — When the monitor was created.
        - `updated_at` string, date-time, required — When the monitor was last updated.
        - `downtime` DowntimeConfig
          - `start` string, date-time, required — When the downtime window begins.
          - `duration_seconds` integer, required — How long each downtime window lasts, in seconds.
          - `frequency_days` integer, required — How often the downtime window repeats, in days.
        - `scheduled_runtime` ScheduledRuntimeConfig
          - `enabled` boolean, required — Whether the monitor runs on a schedule. `false` means automatic scheduled evaluation is disabled.
          - `cadence_seconds` integer — How often the monitor evaluates, in seconds.
          - `days_of_week` integer[] — Days of the week the monitor runs on (`0` = Sunday … `6` = Saturday).
        - `evaluation_window_length_seconds` integer — The length of the evaluation window in seconds. Omitted when unset.
        - `delay_seconds` integer — The delay applied before evaluating a window, in seconds. Omitted when unset.
        - `evaluated_at` string, date-time — The last time the metric was computed. Omitted if it has never been evaluated.
        - `latest_computed_value` number — The most recently computed metric value. Omitted if it has never been evaluated.
        - `notes` string — Free-form notes attached to the monitor. Omitted when unset.
        - `custom_metric_id` string, required — The custom metric this monitor evaluates (base64 global ID).
        - `model_versions` string[], required — The model versions the metric is scoped to. An empty array means all model versions.
      - TracingMonitor
        - `id` string, required — Unique identifier for the monitor (base64 global ID).
        - `name` string, required — Human-readable name of the monitor.
        - `type` 'TRACING', required — Required on create. Immutable after creation.
        - `project_id` string, required — The project that the monitor belongs to (base64 global ID).
        - `uri` string, required — The UI deep link to the monitor.
        - `status` 'TRIGGERED' | 'CLEARED' | 'NO_DATA', required — The monitor's current state from its most recent evaluation. - `TRIGGERED` - The metric breached the threshold. - `CLEARED` - The metric is within healthy bounds. - `NO_DATA` - No data was available to evaluate.
        - `threshold` union, required — The monitor's threshold. The `type` field discriminates whether the threshold is manual or dynamic, and single or a bounded range.
          - ManualSingleThreshold
            - `type` 'MANUAL_SINGLE', required
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `value` number, required — The threshold value the computed metric is compared against.
          - DynamicSingleThreshold
            - `type` 'DYNAMIC_SINGLE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS', required — Numeric comparison operators used when evaluating a computed metric value against a threshold.
            - `multiplier` number, required — The multiplier applied to the calculation (e.g. number of standard deviations) to derive the threshold.
          - ManualRangeThreshold
            - `type` 'MANUAL_RANGE', required
            - `lower` ManualThresholdBound, required
              - …
            - `upper` ManualThresholdBound, required
              - …
          - DynamicRangeThreshold
            - `type` 'DYNAMIC_RANGE', required
            - `calculation` 'STDEV' | 'MAD', required — The statistical calculation used to derive a dynamic threshold. - `STDEV` - standard deviation of the metric over the baseline. - `MAD` - median absolute deviation of the metric over the baseline.
            - `lower` DynamicThresholdBound, required
              - …
            - `upper` DynamicThresholdBound, required
              - …
        - `notifications_enabled` boolean, required — Whether notifications fire on a triggered transition.
        - `manual_evaluation_enabled` boolean, required — Whether the monitor is evaluated manually rather than on the automatic cadence.
        - `created_by_user_id` string, required — The user who created the monitor (base64 global ID).
        - `filters` MonitorFilter[] — Data filters applied to the monitor's metric. Omitted when the metric is computed over all data.
          - `dimension` Dimension, required
            - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
            - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
          - `operator` 'GREATER_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN' | 'LESS_THAN_OR_EQUAL' | 'EQUALS' | 'NOT_EQUALS' | 'TOP_N' | 'CONTAINS' | 'CONTAINS_STRING' | 'SIMILAR_TO', required — Operators used by a monitor's data filters. Includes string operators as well as numeric ones.
          - `values` string[], required — The values compared against by the operator.
        - `notification_configs` NotificationConfig[] — Notification channels (email / integration / webhook) notified on a triggered transition. Omitted when no channels are configured.
          - union
            - EmailNotificationConfig
              - …
            - IntegrationNotificationConfig
              - …
            - WebhookNotificationConfig
              - …
        - `created_at` string, date-time, required — When the monitor was created.
        - `updated_at` string, date-time, required — When the monitor was last updated.
        - `downtime` DowntimeConfig
          - `start` string, date-time, required — When the downtime window begins.
          - `duration_seconds` integer, required — How long each downtime window lasts, in seconds.
          - `frequency_days` integer, required — How often the downtime window repeats, in days.
        - `scheduled_runtime` ScheduledRuntimeConfig
          - `enabled` boolean, required — Whether the monitor runs on a schedule. `false` means automatic scheduled evaluation is disabled.
          - `cadence_seconds` integer — How often the monitor evaluates, in seconds.
          - `days_of_week` integer[] — Days of the week the monitor runs on (`0` = Sunday … `6` = Saturday).
        - `evaluation_window_length_seconds` integer — The length of the evaluation window in seconds. Omitted when unset.
        - `delay_seconds` integer — The delay applied before evaluating a window, in seconds. Omitted when unset.
        - `evaluated_at` string, date-time — The last time the metric was computed. Omitted if it has never been evaluated.
        - `latest_computed_value` number — The most recently computed metric value. Omitted if it has never been evaluated.
        - `notes` string — Free-form notes attached to the monitor. Omitted when unset.
        - `metric` 'COUNT' | 'PERCENT_EMPTY' | 'CARDINALITY' | 'AVG' | 'SUM' | 'STANDARD_DEVIATION' | 'P50' | 'P95' | 'P99' | 'P99_9', required — The data quality metrics computed by a tracing monitor. Numeric span attributes support aggregations such as `SUM` and `AVG`; categorical attributes support `COUNT`, `PERCENT_EMPTY`, and `CARDINALITY`. Comparison metrics (`NEW_VALUES`, `MISSING_VALUES`) are not supported.
        - `dimension` Dimension, required
          - `category` 'FEATURE_LABEL' | 'TAG' | 'MODEL_VERSION' | 'BATCH_ID' | 'SPAN_ATTRIBUTE' | 'LLM_EVAL' | 'USER_ANNOTATION' | 'ACTUALS' | 'ACTUALS_SCORE' | 'ACTUALS_CLASS' | 'PREDICTIONS' | 'PREDICTIONS_SCORE' | 'PREDICTIONS_CLASS', required — The category of dimension the metric is evaluated over.
          - `name` string — Name of the monitored field. Omitted when the category has no concrete field name.
  - `pagination` PaginationMetadata, required — Cursor-based pagination metadata. Use `next_cursor` in the subsequent request's `cursor` query parameter.
    - `next_cursor` string — Opaque cursor for fetching the next page. Treat as an unreadable token. Present when `has_more` is true; omitted when `has_more` is false.
    - `has_more` boolean, required — True if another page of results is available.

## Other responses

- `400` — Invalid request
- `401` — Authentication is required
- `403` — Insufficient permissions to access this resource
- `404` — Not found
- `429` — Rate limit exceeded

---

[API](https://skmtc.net/arize-ai/apis/arize-rest-api.md) · [All operations](https://skmtc.net/arize-ai/apis/arize-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/arize-ai/arize-rest-api/revisions/8ff78ca601af/schema)
