---
title: "Update Chart"
method: PATCH
path: "/api/v1/charts/{chart_id}"
tags: ["charts"]
---

# Update Chart

`PATCH /api/v1/charts/{chart_id}`

Update a chart.

## Path parameters

- `chart_id` string, uuid, required

## Request body

- CustomChartUpdate
  - `title` union
    - string
    - Missing
      - `__missing__` '__missing__', required
  - `description` union
    - string
    - Missing
      - `__missing__` '__missing__', required
  - `index` union
    - integer
    - object
      - `__missing__` '__missing__', required
  - `chart_type` union
    - 'line' | 'bar' — Enum for custom chart types.
    - Missing
      - `__missing__` '__missing__', required
  - `series` union
    - CustomChartSeriesUpdate[]
      - `name` string, required
      - `filters` CustomChartSeriesFilters
        - `filter` string, nullable
        - `trace_filter` string, nullable
        - `tree_filter` string, nullable
        - `session` string[], nullable
      - `metric` 'run_count' | 'latency_p50' | 'latency_p99' | 'latency_avg' | 'first_token_p50' | 'first_token_p99' | 'total_tokens' | 'prompt_tokens' | 'completion_tokens' | 'median_tokens' | 'completion_tokens_p50' | 'prompt_tokens_p50' | 'tokens_p99' | 'completion_tokens_p99' | 'prompt_tokens_p99' | 'feedback' | 'feedback_score_avg' | 'feedback_values' | 'total_cost' | 'prompt_cost' | 'completion_cost' | 'error_rate' | 'streaming_rate' | 'cost_p50' | 'cost_p99', required — Metrics you can chart. Feedback metrics are not available for organization-scoped charts.
      - `feedback_key` string, nullable
      - `workspace_id` string, uuid, nullable
      - `project_metric` 'memory_usage' | 'cpu_usage' | 'disk_usage' | 'restart_count' | 'replica_count' | 'worker_count' | 'lg_run_count' | 'responses_per_second' | 'error_responses_per_second' | 'p95_latency' — LGP Metrics you can chart.
      - `group_by` RunStatsGroupBy — Group by param for run stats.
        - `attribute` 'name' | 'run_type' | 'tag' | 'metadata', required
        - `path` string, nullable
        - `max_groups` integer
      - `id` string, uuid, nullable
    - Missing
      - `__missing__` '__missing__', required
  - `section_id` union
    - string, uuid
    - Missing
      - `__missing__` '__missing__', required
  - `metadata` union
    - object
    - Missing
      - `__missing__` '__missing__', required
  - `common_filters` union
    - CustomChartSeriesFilters
      - `filter` string, nullable
      - `trace_filter` string, nullable
      - `tree_filter` string, nullable
      - `session` string[], nullable
    - Missing
      - `__missing__` '__missing__', required

## Response `200`

Successful Response

- CustomChartResponse
  - `id` string, uuid, required
  - `title` string, required
  - `description` string, nullable
  - `index` integer, required
  - `chart_type` 'line' | 'bar', required — Enum for custom chart types.
  - `section_id` string, uuid, required
  - `metadata` object, nullable
  - `series` CustomChartSeries[], nullable, required
    - `name` string, required
    - `filters` CustomChartSeriesFilters
      - `filter` string, nullable
      - `trace_filter` string, nullable
      - `tree_filter` string, nullable
      - `session` string[], nullable
    - `metric` 'run_count' | 'latency_p50' | 'latency_p99' | 'latency_avg' | 'first_token_p50' | 'first_token_p99' | 'total_tokens' | 'prompt_tokens' | 'completion_tokens' | 'median_tokens' | 'completion_tokens_p50' | 'prompt_tokens_p50' | 'tokens_p99' | 'completion_tokens_p99' | 'prompt_tokens_p99' | 'feedback' | 'feedback_score_avg' | 'feedback_values' | 'total_cost' | 'prompt_cost' | 'completion_cost' | 'error_rate' | 'streaming_rate' | 'cost_p50' | 'cost_p99', required — Metrics you can chart. Feedback metrics are not available for organization-scoped charts.
    - `feedback_key` string, nullable
    - `workspace_id` string, uuid, nullable
    - `project_metric` 'memory_usage' | 'cpu_usage' | 'disk_usage' | 'restart_count' | 'replica_count' | 'worker_count' | 'lg_run_count' | 'responses_per_second' | 'error_responses_per_second' | 'p95_latency' — LGP Metrics you can chart.
    - `id` union, required
      - string, uuid
      - string
    - `group_by` RunStatsGroupBySeriesResponse — Include additional information about where the group_by param was set.
      - `attribute` 'name' | 'run_type' | 'tag' | 'metadata', required
      - `path` string, nullable
      - `max_groups` integer
      - `set_by` 'section' | 'series', nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/langchain-ai/apis/langsmith.md) · [All operations](https://skmtc.net/langchain-ai/apis/langsmith/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/langchain-ai/langsmith/revisions/a0acb3a6a101/schema)
