## Delete Evaluation Dashboard

`evaluation_dashboards.archive(strdashboard_id)  -> EvaluationDashboard`

**delete** `/v5/evaluation-dashboards/{dashboard_id}`

Soft-delete a dashboard by setting its archived timestamp.

The dashboard row is retained and marked archived rather than physically removed, so
it stops appearing in default listings but can still be fetched with
`include_archived=true`; the archived dashboard is returned by this call. Associated
widgets and widget results are not deleted or detached. Returns a not-found error if
the dashboard does not exist in the caller's account.

### Parameters

- `dashboard_id: str`

### Returns

- `class EvaluationDashboard: …`

  - `id: str`

    Unique identifier of the dashboard

  - `account_id: str`

    Account that owns this dashboard

  - `created_at: datetime`

    When the dashboard was created

  - `created_by: Identity`

    The identity that created the entity.

    - `id: str`

    - `type: Literal["user", "service_account"]`

      - `"user"`

      - `"service_account"`

    - `object: Optional[Literal["identity"]]`

      - `"identity"`

  - `name: str`

    Dashboard name

  - `tags: Optional[List[str]]`

    The tags associated with the entity

  - `updated_at: datetime`

    When the dashboard was last updated

  - `archived_at: Optional[datetime]`

    When the dashboard was archived (soft-deleted)

  - `description: Optional[str]`

    Dashboard description

  - `error_message: Optional[str]`

    Error message if computation failed

  - `evaluation_group_id: Optional[str]`

    Evaluation group ID

  - `evaluation_id: Optional[str]`

    Evaluation ID

  - `object: Optional[Literal["evaluation_dashboard"]]`

    - `"evaluation_dashboard"`

  - `widget_order: Optional[List[str]]`

    Ordered array of widget IDs

  - `widget_results: Optional[List[EvaluationDashboardWidgetResult]]`

    Widget results for this dashboard. Populated with 'widget_results' view.

    - `id: str`

      Unique identifier of the widget result

    - `account_id: str`

      Account that owns this widget result

    - `computation_status: Literal["pending", "completed", "failed"]`

      Status of the computation

      - `"pending"`

      - `"completed"`

      - `"failed"`

    - `created_at: datetime`

      When the widget result was created

    - `widget_id: str`

      Unique identifier of the widget

    - `computation_job_id: Optional[str]`

      Temporal workflow ID or job ID for async computation tracking

    - `computed_at: Optional[datetime]`

      Timestamp when computation completed successfully

    - `computed_result: Optional[Dict[str, object]]`

      Cached computation results

    - `error_message: Optional[str]`

      Error message if computation failed

    - `evaluation_group_id: Optional[str]`

      FK to evaluation_groups. Null if result is for a single evaluation.

    - `evaluation_id: Optional[str]`

      FK to evaluations. Null if result is for an evaluation group.

    - `object: Optional[Literal["evaluation_dashboard_widget_result"]]`

      - `"evaluation_dashboard_widget_result"`

    - `widget: Optional[EvaluationDashboardWidget]`

      Widget that this result is for

      - `id: str`

        Unique identifier of the widget

      - `account_id: str`

        Account that owns this widget

      - `created_at: datetime`

        When the widget was created

      - `title: str`

        Widget title

      - `type: EvaluationWidgetTypeEnum`

        Widget type

        - `"bar"`

        - `"histogram"`

        - `"donut"`

        - `"scatter"`

        - `"metric"`

        - `"table"`

        - `"markdown"`

        - `"heading"`

        - `"timeseries"`

      - `archived_at: Optional[datetime]`

        When the widget was archived (soft-deleted)

      - `config: Optional[Dict[str, object]]`

        Chart-specific display configuration

      - `object: Optional[Literal["evaluation_dashboard_widget"]]`

        - `"evaluation_dashboard_widget"`

      - `query: Optional[Query]`

        Structured query AST for metric computation (SeriesQuery or MetricQuery)

        - `class SeriesQuery: …`

          Query that returns a series of records (used for table/bar/histogram/donut/scatter widgets).

          Used for widget types: table, bar, histogram, donut, scatter.
          Returns: {"type": "series", "data": [...]}

          Example SQL equivalent:
          SELECT category, AVG(score) as avg_score, COUNT(*) as count
          FROM evaluation_items
          WHERE score > 0.5 AND category = 'test'
          GROUP BY category
          ORDER BY avg_score DESC
          LIMIT 100

          - `select: List[SelectItem]`

            - `expression: Expression`

              Reference to a column from evaluation_items.data

              Example:
              {"type": "COLUMN", "column": "category"}

              - `class ExpressionColumn: …`

                Reference to a column from evaluation_items.data

                Example:
                {"type": "COLUMN", "column": "category"}

                - `column: str`

                  Column name from evaluation_items.data

                - `source: Optional[str]`

                  Column source: 'data' or 'task_result_cache'

                - `type: Optional[Literal["COLUMN"]]`

                  - `"COLUMN"`

              - `class ExpressionAggregation: …`

                Aggregation function to apply

                Examples:
                {"type": "AGGREGATION", "function": "AVG", "column": "score"}
                {"type": "AGGREGATION", "function": "COUNT", "column": "*"}
                {"type": "AGGREGATION", "function": "PERCENTILE", "column": "score", "params": {"percentile": 95}}

                - `column: str`

                  Column to aggregate, or '*' for COUNT(*)

                - `function: Literal["COUNT", "SUM", "AVG", 7 more]`

                  Supported aggregation functions

                  - `"COUNT"`

                  - `"SUM"`

                  - `"AVG"`

                  - `"MIN"`

                  - `"MAX"`

                  - `"STDDEV"`

                  - `"VARIANCE"`

                  - `"PERCENTILE"`

                  - `"COUNT_DISTINCT"`

                  - `"PERCENTAGE"`

                - `evaluation_ids: Optional[List[str]]`

                  Optional subset of evaluation IDs for per-aggregation filtering in evaluation group dashboards.

                - `params: Optional[Dict[str, object]]`

                  Function parameters (e.g., {'percentile': 95} for PERCENTILE, {'percentage_filters': Filter} for PERCENTAGE)

                - `source: Optional[str]`

                  Column source: 'data' or 'task_result_cache'

                - `type: Optional[Literal["AGGREGATION"]]`

                  - `"AGGREGATION"`

            - `alias: Optional[str]`

              Optional alias for the selected item

          - `evaluation_ids: Optional[List[str]]`

            Optional subset of evaluation IDs to compute on. Only applicable for evaluation group dashboards. If omitted, computes on all evaluations in the group.

          - `filter: Optional[Filter]`

            Filter conditions (WHERE clause)

            - `conditions: List[Condition]`

              - `column: str`

                Column name to filter on

              - `operator: Literal["=", "!=", ">", 9 more]`

                Comparison operator

                - `"="`

                - `"!="`

                - `">"`

                - `"<"`

                - `">="`

                - `"<="`

                - `"IN"`

                - `"NOT IN"`

                - `"LIKE"`

                - `"NOT LIKE"`

                - `"IS NULL"`

                - `"IS NOT NULL"`

              - `source: Optional[str]`

                Column source: 'data' or 'task_result_cache'

              - `value: Optional[Union[str, float, bool, 2 more]]`

                Value to compare against. Not required for IS NULL / IS NOT NULL operators.

                - `str`

                - `float`

                - `bool`

                - `List[object]`

            - `logical_operators: Optional[List[Literal["AND", "OR"]]]`

              Logical operators connecting conditions. Length must be len(conditions) - 1

              - `"AND"`

              - `"OR"`

          - `group_by: Optional[List[str]]`

            Columns to group by

          - `latest_only: Optional[bool]`

            When True, the widget computes against rows from only the most recent active evaluation in the group (by EvaluationORM.created_at). Only applicable for evaluation group dashboards. Composes with evaluation_ids (latest within the subset). Cannot be combined with per-aggregation evaluation_ids; the use case enforces these rules.

          - `limit: Optional[int]`

            Max rows to return

          - `order_by: Optional[List[OrderBy]]`

            Sort order

            - `column: str`

              Column name to sort by

            - `direction: Optional[Literal["ASC", "DESC"]]`

              Sort direction

              - `"ASC"`

              - `"DESC"`

            - `source: Optional[str]`

              Column source: 'data' or 'task_result_cache'

        - `class MetricQuery: …`

          Query that returns a single metric value (used for metric widgets).

          Used for widget type: metric.
          Enforces exactly 1 aggregation in select.
          Returns: {"type": "metric", "data": ...}

          Example SQL equivalent:
          SELECT AVG(score) as average_score
          FROM evaluation_items

          - `select: List[SelectItem]`

            - `expression: Expression`

              Reference to a column from evaluation_items.data

              Example:
              {"type": "COLUMN", "column": "category"}

            - `alias: Optional[str]`

              Optional alias for the selected item

          - `evaluation_ids: Optional[List[str]]`

            Optional subset of evaluation IDs to compute on. Only applicable for evaluation group dashboards. If omitted, computes on all evaluations in the group.

          - `filter: Optional[Filter]`

            Filter conditions (WHERE clause)

          - `latest_only: Optional[bool]`

            When True, the widget computes against rows from only the most recent active evaluation in the group (by EvaluationORM.created_at). Only applicable for evaluation group dashboards. Composes with evaluation_ids (latest within the subset). Cannot be combined with per-aggregation evaluation_ids; the use case enforces these rules.

  - `widgets: Optional[List[EvaluationDashboardWidget]]`

    Widgets associated with this dashboard. Populated with 'widgets' view.

    - `id: str`

      Unique identifier of the widget

    - `account_id: str`

      Account that owns this widget

    - `created_at: datetime`

      When the widget was created

    - `title: str`

      Widget title

    - `type: EvaluationWidgetTypeEnum`

      Widget type

    - `archived_at: Optional[datetime]`

      When the widget was archived (soft-deleted)

    - `config: Optional[Dict[str, object]]`

      Chart-specific display configuration

    - `object: Optional[Literal["evaluation_dashboard_widget"]]`

    - `query: Optional[Query]`

      Structured query AST for metric computation (SeriesQuery or MetricQuery)

### Example

```python
import os
from scale_gp_beta import SGPClient

client = SGPClient(
    api_key=os.environ.get("SGP_API_KEY"),  # This is the default and can be omitted
)
evaluation_dashboard = client.evaluation_dashboards.archive(
    "dashboard_id",
)
print(evaluation_dashboard.id)
```

#### Response

```json
{
  "id": "id",
  "account_id": "account_id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "created_by": {
    "id": "id",
    "type": "user",
    "object": "identity"
  },
  "name": "name",
  "tags": [
    "string"
  ],
  "updated_at": "2019-12-27T18:11:19.117Z",
  "archived_at": "2019-12-27T18:11:19.117Z",
  "description": "description",
  "error_message": "error_message",
  "evaluation_group_id": "evaluation_group_id",
  "evaluation_id": "evaluation_id",
  "object": "evaluation_dashboard",
  "widget_order": [
    "string"
  ],
  "widget_results": [
    {
      "id": "id",
      "account_id": "account_id",
      "computation_status": "pending",
      "created_at": "2019-12-27T18:11:19.117Z",
      "widget_id": "widget_id",
      "computation_job_id": "computation_job_id",
      "computed_at": "2019-12-27T18:11:19.117Z",
      "computed_result": {
        "foo": "bar"
      },
      "error_message": "error_message",
      "evaluation_group_id": "evaluation_group_id",
      "evaluation_id": "evaluation_id",
      "object": "evaluation_dashboard_widget_result",
      "widget": {
        "id": "id",
        "account_id": "account_id",
        "created_at": "2019-12-27T18:11:19.117Z",
        "title": "title",
        "type": "bar",
        "archived_at": "2019-12-27T18:11:19.117Z",
        "config": {
          "foo": "bar"
        },
        "object": "evaluation_dashboard_widget",
        "query": {
          "select": [
            {
              "expression": {
                "column": "column",
                "source": "source",
                "type": "COLUMN"
              },
              "alias": "alias"
            }
          ],
          "evaluation_ids": [
            "string"
          ],
          "filter": {
            "conditions": [
              {
                "column": "column",
                "operator": "=",
                "source": "source",
                "value": "string"
              }
            ],
            "logicalOperators": [
              "AND"
            ]
          },
          "groupBy": [
            "string"
          ],
          "latest_only": true,
          "limit": 1,
          "orderBy": [
            {
              "column": "column",
              "direction": "ASC",
              "source": "source"
            }
          ]
        }
      }
    }
  ],
  "widgets": [
    {
      "id": "id",
      "account_id": "account_id",
      "created_at": "2019-12-27T18:11:19.117Z",
      "title": "title",
      "type": "bar",
      "archived_at": "2019-12-27T18:11:19.117Z",
      "config": {
        "foo": "bar"
      },
      "object": "evaluation_dashboard_widget",
      "query": {
        "select": [
          {
            "expression": {
              "column": "column",
              "source": "source",
              "type": "COLUMN"
            },
            "alias": "alias"
          }
        ],
        "evaluation_ids": [
          "string"
        ],
        "filter": {
          "conditions": [
            {
              "column": "column",
              "operator": "=",
              "source": "source",
              "value": "string"
            }
          ],
          "logicalOperators": [
            "AND"
          ]
        },
        "groupBy": [
          "string"
        ],
        "latest_only": true,
        "limit": 1,
        "orderBy": [
          {
            "column": "column",
            "direction": "ASC",
            "source": "source"
          }
        ]
      }
    }
  ]
}
```
