---
title: "Run a metric definition"
method: POST
path: "/api/metrics/definitions/{id}/run"
tags: ["Metrics"]
---

# Run a metric definition

`POST /api/metrics/definitions/{id}/run`

## Path parameters

- `id` string, required

## Request body

- object
  - `variables` object

## Response `200`

Metric result

- object
  - `metric` Metric, required
    - `id` string, required
    - `agentId` string, required
    - `slug` string, required
    - `title` string, required
    - `description` string
    - `definition` MetricDefinition, required
      - `version` 1, required
      - `widgets` MetricWidget[], required
        - `id` string, required
        - `title` string, required
        - `description` string
        - `query` object, required
          - `sql` string, required
          - `params` union[]
            - union
              - …
          - `maxRows` integer
        - `viz` MetricVizConfig, required
          - `type` 'stat' | 'table' | 'bar' | 'line' | 'multi-bar' | 'multi-line', required
          - `x` string
          - `y` string
          - `series` string[]
          - `label` string
          - `value` string
          - `columns` object[]
            - `key` string, required
            - `label` string
            - `format` 'number' | 'integer' | 'currency' | 'percent' | 'duration'
          - `format` 'number' | 'integer' | 'currency' | 'percent' | 'duration'
        - `colSpan` integer
        - `rowSpan` integer
      - `variables` MetricVariable[]
        - `key` string, required
        - `label` string
        - `type` 'text' | 'number' | 'select'
        - `defaultValue` union
          - string
          - number
          - boolean
        - `options` object[]
          - `label` string, required
          - `value` union, required
            - string
            - number
            - boolean
        - `optionsQuery` object
          - `sql` string, required
          - `valueKey` string, required
          - `labelKey` string
      - `layout` object
        - `columns` integer
      - `refreshSeconds` integer
    - `createdAt` string, required
    - `updatedAt` string, required
  - `variables` object, required
  - `widgets` object[], required
    - `widget` MetricWidget, required
      - `id` string, required
      - `title` string, required
      - `description` string
      - `query` object, required
        - `sql` string, required
        - `params` union[]
          - union
            - string
            - number
            - boolean
        - `maxRows` integer
      - `viz` MetricVizConfig, required
        - `type` 'stat' | 'table' | 'bar' | 'line' | 'multi-bar' | 'multi-line', required
        - `x` string
        - `y` string
        - `series` string[]
        - `label` string
        - `value` string
        - `columns` object[]
          - `key` string, required
          - `label` string
          - `format` 'number' | 'integer' | 'currency' | 'percent' | 'duration'
        - `format` 'number' | 'integer' | 'currency' | 'percent' | 'duration'
      - `colSpan` integer
      - `rowSpan` integer
    - `result` object, required
      - `columns` string[], required
      - `rows` object[], required
      - `elapsed` number, required
      - `total` number, required
      - `truncated` boolean, required
      - `maxRows` number, required
  - `result` object
    - `columns` string[], required
    - `rows` object[], required
    - `elapsed` number, required
    - `total` number, required
    - `truncated` boolean, required
    - `maxRows` number, required

## Other responses

- `400` — Invalid or disallowed query
- `404` — Metric not found

---

[API](https://skmtc.net/desplega-ai/apis/agent-swarm-api.md) · [All operations](https://skmtc.net/desplega-ai/apis/agent-swarm-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/desplega-ai/agent-swarm-api/versions/101e7a060651/schema)
