---
title: "Get Notebook Cost Overview"
method: GET
path: "/query/v2/notebooks/cost-overview"
tags: ["QUERIES_V2"]
---

# Get Notebook Cost Overview

`GET /query/v2/notebooks/cost-overview`

## Request

- Base URL: `https://api.myaltimate.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.myaltimate.com/query/v2/notebooks/cost-overview`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer
- TypeScript: <https://skmtc.dev/myaltimate/apis/myaltimate-api/docs/query/v2/notebooks/cost-overview/get.ts> (a function with typed inputs; its response is checked against the schema)

Full-scope daily warehouse query and missing-ID runtime estimates.

## Query parameters

- `start_date` string, date, required
- `end_date` string, date, required
- `instance_id` integer, nullable
- `instance_ids` integer[], nullable
- `account` string, nullable

## Headers

- `x-tenant` string, required
- `x-user-group-id` string, nullable

## Response `200`

Successful Response

- NotebookCostsOverview
  - `chart` ChartEnvelope, required: A chart query response: its descriptor plus a chart-shaped result. `columns` is `list[ChartColumn]`, not `list[ColumnDescriptor]` — a chart plots values, it never renders a table, so it does not carry the table-only affordances (`sortable`/`filterable`/`edit`/`link`/...) a `ColumnDescriptor` has. `meta` is `ChartMeta`, not `DatasetMeta`, for the same reason: see that class's docstring for why pagination and `dataset` fields do not belong here.
    - `chart` ChartDescriptor, required
      - `name` string, required
      - `label` string, required
      - `dataset` string, required
      - `chart_type` string, required
      - `x` string, required
      - `series` string[], required
      - `stacked` boolean, required
      - `filters` FilterDescriptor[], required
        - `key` string, required
        - `label` string, required
        - `listable` boolean, required
        - `options` OptionDescriptor[], nullable
          - `value` string, required
          - `label` string, nullable
        - `required` boolean
        - `comparison` boolean
        - `comparison_default` string
      - `related` RelatedDescriptor, required: Wire form of `apps.catalog.relations.RelatedNames` — the symmetrised page-affinity edges of one dataset/chart/summary, split by kind. This module owns no catalog lookups (see the module docstring's import rules), so nothing here builds a `RelatedDescriptor` from a `RelatedNames` — that projection lives in `apps.api.serializers`, the layer that already resolves `apps.catalog.RELATIONS`.
        - `datasets` string[], required
        - `charts` string[], required
        - `summaries` string[], required
      - `reference` ReferenceLineDescriptor, required
        - `of` string, nullable, required
        - `percentile` number, nullable, required
        - `label` string, required
        - `color` PaletteColorDescriptor, required: Wire form of `apps.specs.palette.PaletteColor` — a color stepped per surface. Colors live ONLY in descriptors; the frontend never hardcodes a chart color.
          - `light` string, required
          - `dark` string, required
        - `value` number, nullable
      - `series_colors` object, required
      - `series_from` string, nullable
      - `show_change` boolean
      - `show_total` boolean
      - `show_zero` boolean
      - `caption` string, nullable
      - `stack_offset` string
      - `secondary_axis_series` string[]
      - `estimate_pairs` EstimatePairDescriptor[]
        - `actual` string, required
        - `estimate` string, required
      - `tooltip_series` string[]
      - `tooltip_estimate_pairs` EstimatePairDescriptor[]
        - `actual` string, required
        - `estimate` string, required
      - `tooltip_decomposes` string, nullable
    - `columns` ChartColumn[], required
      - `key` string, required
      - `label` string, required
      - `type` string, required
      - `unit` string, nullable
      - `order` integer, required
    - `rows` object[], required
    - `meta` ChartMeta, required: Metadata for a `ChartEnvelope` (`apps.api.serializers`). No pagination fields (`total`/`page`/`size`/`pages`): `apps.catalog .registry.validate_charts_against_datasets` refuses a chart declared over a `paginated=True` dataset (a chart needs the dataset's ENTIRE requested window in one response to render a full series), so those four could never be non-`None` here — carrying them anyway would only invite a client to write pagination-handling code for a response that can never paginate. No `dataset` field: the `ChartDescriptor` already embedded in the same `ChartEnvelope` (`ChartEnvelope.chart.dataset`) already names it.
      - `row_count` integer, required
      - `reference` ReferenceValue: A resolved `apps.specs.charts.ReferenceLine`, computed by `resolve_reference` — from one chart query's rows in percentile mode, or directly from the declaration in fixed-value mode (see that function's docstring). `of` is `None` in fixed-value mode: there is no column the value was computed over.
        - `label` string, required
        - `of` string, nullable, required
        - `value` number, required
      - `last_event_time` string, date-time, nullable
  - `summary` SummaryEnvelope, required: A summary response: just its metrics. No `meta`: every field on `DatasetMeta` is a TABLE concept. `row_count` is always 1, and `total`/`page`/`size`/`pages`/`prev`/`next` are always `null` — a summary has no pagination to describe, because there is nothing to page through. Emitting them invited a client to write pagination handling for an endpoint that can never have any. The dataset name is already known to the caller: it is in the URL they requested.
    - `metrics` object, required
    - `last_event_time` string, date-time, nullable
  - `sources` object, required
  - `comparison` NotebookCostComparison, required
    - `eligible` boolean, required
    - `currency` string, nullable
    - `reason` string, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-11-10** `f1a58aabf8ae`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/myaltimate/apis/myaltimate-api/changes/query/v2/notebooks/cost-overview/get.md)

---

[API](https://skmtc.dev/myaltimate/apis/myaltimate-api.md) - [All operations](https://skmtc.dev/myaltimate/apis/myaltimate-api/llms.txt) - [OpenAPI document](https://skmtc.dev/myaltimate/apis/myaltimate-api/revisions/7cd2e082b098?raw)
