---
title: "Retrieve a view"
method: GET
path: "/v1/views/{view_id}"
tags: ["Views"]
---

# Retrieve a view

`GET /v1/views/{view_id}`

## Path parameters

- `view_id` string, required

## Headers

- `Notion-Version` '2026-03-11', required

## Response `200`

- union
  - PartialDataSourceViewObjectResponse
    - `object` 'view', required — The object type name.
    - `id` string, uuid, required
    - `parent` DatabaseParentResponse, required
      - `type` 'database_id', required — The parent type.
      - `database_id` string, uuid, required
    - `type` 'table' | 'board' | 'list' | 'calendar' | 'timeline' | 'gallery' | 'form' | 'chart' | 'map' | 'dashboard', required — The view type.
  - DataSourceViewObjectResponse
    - `object` 'view', required — The object type name.
    - `id` string, uuid, required
    - `parent` DatabaseParentResponse, required
      - `type` 'database_id', required — The parent type.
      - `database_id` string, uuid, required
    - `name` string, required — The name of the view.
    - `type` 'table' | 'board' | 'list' | 'calendar' | 'timeline' | 'gallery' | 'form' | 'chart' | 'map' | 'dashboard', required — The view type.
    - `created_time` string, date-time, required — The time when the view was created.
    - `last_edited_time` string, date-time, required — The time when the view was last edited.
    - `url` string, required — Canonical deep link to the view in Notion.
    - `data_source_id` string, nullable — The ID of the data source this view is scoped to, or null for dashboard views.
    - `created_by` PartialUserObjectResponse
      - `id` string, uuid, required
      - `object` 'user', required — Always `user`
    - `last_edited_by` PartialUserObjectResponse
      - `id` string, uuid, required
      - `object` 'user', required — Always `user`
    - `filter` union — Filter for the view. Can be a property filter (filter by property value), timestamp filter (filter by created_time or last_edited_time), or compound filter (combine filters with and/or logic). Compound filters support up to 2 levels of nesting.
      - object — A filter condition on a specific property. The property field specifies which property to filter, and an additional field specifies the filter type and condition (e.g., title, rich_text, number, checkbox, select, multi_select, date, people, files, relation, formula, rollup, etc.).
        - `property` string, required — The name or ID of the property to filter on.
      - object — A filter condition on a timestamp (created_time or last_edited_time). The timestamp field specifies which timestamp, and a matching field contains the date filter condition.
        - `timestamp` 'created_time' | 'last_edited_time', required — The timestamp to filter on.
      - object — A compound filter that combines multiple filters with AND or OR logic. Supports up to 2 levels of nesting.
        - `or` union[] — Filters combined with OR logic.
          - union — A filter that can be a property filter, timestamp filter, or nested compound filter.
            - object — A filter condition on a specific property. The property field specifies which property to filter, and an additional field specifies the filter type and condition (e.g., title, rich_text, number, checkbox, select, multi_select, date, people, files, relation, formula, rollup, etc.).
              - …
            - object — A filter condition on a timestamp (created_time or last_edited_time). The timestamp field specifies which timestamp, and a matching field contains the date filter condition.
              - …
            - object — A compound filter at the deepest nesting level. Can only contain property or timestamp filters (no further nesting).
              - …
        - `and` union[] — Filters combined with AND logic.
          - union — A filter that can be a property filter, timestamp filter, or nested compound filter.
            - object — A filter condition on a specific property. The property field specifies which property to filter, and an additional field specifies the filter type and condition (e.g., title, rich_text, number, checkbox, select, multi_select, date, people, files, relation, formula, rollup, etc.).
              - …
            - object — A filter condition on a timestamp (created_time or last_edited_time). The timestamp field specifies which timestamp, and a matching field contains the date filter condition.
              - …
            - object — A compound filter at the deepest nesting level. Can only contain property or timestamp filters (no further nesting).
              - …
    - `sorts` ViewSortResponse[], nullable — The sorts applied to this view (same shape as data source query sorts).
      - union — Sort for the view. Can sort by property or timestamp.
        - PropertySortResponse
          - `property` string, required — The name or ID of the property to sort by.
          - `direction` 'ascending' | 'descending', required — Sort direction.
        - TimestampSortResponse
          - `timestamp` 'created_time' | 'last_edited_time', required — The timestamp to sort by.
          - `direction` 'ascending' | 'descending', required — Sort direction.
    - `quick_filters` object, nullable — Quick filters pinned to the view's filter bar. Keys are property IDs. Values are filter conditions (same shape as a property filter without the property field). Null when no quick filters are set.
    - `configuration` union — View configuration, typed by view type (table, board, calendar, etc.).
      - TableViewConfigResponse
        - `type` 'table', required — The view configuration type.
        - `properties` ViewPropertyConfigResponse[] — Columns/properties visible in the table view.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
        - `group_by` union — Group-by configuration based on property type.
          - SelectGroupByConfigResponse
            - `type` 'select' | 'multi_select', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - StatusGroupByConfigResponse
            - `type` 'status', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'group' | 'option', required — How to group status values. "group" groups by status group (To Do/In Progress/Done), "option" groups by individual option.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - PersonGroupByConfigResponse
            - `type` 'person' | 'created_by' | 'last_edited_by', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - RelationGroupByConfigResponse
            - `type` 'relation', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - DateGroupByConfigResponse
            - `type` 'date' | 'created_time' | 'last_edited_time', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'relative' | 'day' | 'week' | 'month' | 'year', required — Granularity for date grouping.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `start_day_of_week` 0 | 1 — Start day of week for week grouping (0 = Sunday, 1 = Monday).
          - TextGroupByConfigResponse
            - `type` 'text' | 'title' | 'url' | 'email' | 'phone_number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'exact' | 'alphabet_prefix', required — How to group text values. "exact" = exact match, "alphabet_prefix" = first letter.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - NumberGroupByConfigResponse
            - `type` 'number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `range_start` integer — Start of the range for number grouping buckets.
            - `range_end` integer — End of the range for number grouping buckets.
            - `range_size` integer — Size of each bucket in number grouping.
          - CheckboxGroupByConfigResponse
            - `type` 'checkbox', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - FormulaGroupByConfigResponse
            - `type` 'formula', required — The property type for grouping.
            - `property_id` string, required — Property ID of the formula to group by.
            - `group_by` union, required — Sub-group-by configuration for formula properties based on result type.
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
        - `subtasks` SubtaskConfigResponse
          - `property_id` string — Relation property ID used for parent-child nesting.
          - `display_mode` 'show' | 'hidden' | 'flattened' | 'disabled' — How sub-items are displayed. "show" renders hierarchically with toggles, "hidden" shows parents with a count, "flattened" shows sub-items with a parent indicator, "disabled" turns off sub-item rendering.
          - `filter_scope` 'parents' | 'parents_and_subitems' | 'subitems' — Which items are included when filtering. "parents" includes parent items only, "parents_and_subitems" includes both, "subitems" includes sub-items only.
          - `toggle_column_id` string — Property ID of the column showing the sub-item expand/collapse toggle.
        - `wrap_cells` boolean — Whether to wrap cell content by default.
        - `frozen_column_index` integer — Index of the last frozen column. Columns up to and including this index are frozen.
        - `show_vertical_lines` boolean — Whether to show vertical lines between columns.
      - BoardViewConfigResponse
        - `type` 'board', required — The view configuration type.
        - `group_by` union, required — Group-by configuration based on property type.
          - SelectGroupByConfigResponse
            - `type` 'select' | 'multi_select', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - StatusGroupByConfigResponse
            - `type` 'status', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'group' | 'option', required — How to group status values. "group" groups by status group (To Do/In Progress/Done), "option" groups by individual option.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - PersonGroupByConfigResponse
            - `type` 'person' | 'created_by' | 'last_edited_by', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - RelationGroupByConfigResponse
            - `type` 'relation', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - DateGroupByConfigResponse
            - `type` 'date' | 'created_time' | 'last_edited_time', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'relative' | 'day' | 'week' | 'month' | 'year', required — Granularity for date grouping.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `start_day_of_week` 0 | 1 — Start day of week for week grouping (0 = Sunday, 1 = Monday).
          - TextGroupByConfigResponse
            - `type` 'text' | 'title' | 'url' | 'email' | 'phone_number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'exact' | 'alphabet_prefix', required — How to group text values. "exact" = exact match, "alphabet_prefix" = first letter.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - NumberGroupByConfigResponse
            - `type` 'number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `range_start` integer — Start of the range for number grouping buckets.
            - `range_end` integer — End of the range for number grouping buckets.
            - `range_size` integer — Size of each bucket in number grouping.
          - CheckboxGroupByConfigResponse
            - `type` 'checkbox', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - FormulaGroupByConfigResponse
            - `type` 'formula', required — The property type for grouping.
            - `property_id` string, required — Property ID of the formula to group by.
            - `group_by` union, required — Sub-group-by configuration for formula properties based on result type.
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
        - `sub_group_by` union — Group-by configuration based on property type.
          - SelectGroupByConfigResponse
            - `type` 'select' | 'multi_select', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - StatusGroupByConfigResponse
            - `type` 'status', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'group' | 'option', required — How to group status values. "group" groups by status group (To Do/In Progress/Done), "option" groups by individual option.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - PersonGroupByConfigResponse
            - `type` 'person' | 'created_by' | 'last_edited_by', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - RelationGroupByConfigResponse
            - `type` 'relation', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - DateGroupByConfigResponse
            - `type` 'date' | 'created_time' | 'last_edited_time', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'relative' | 'day' | 'week' | 'month' | 'year', required — Granularity for date grouping.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `start_day_of_week` 0 | 1 — Start day of week for week grouping (0 = Sunday, 1 = Monday).
          - TextGroupByConfigResponse
            - `type` 'text' | 'title' | 'url' | 'email' | 'phone_number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'exact' | 'alphabet_prefix', required — How to group text values. "exact" = exact match, "alphabet_prefix" = first letter.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - NumberGroupByConfigResponse
            - `type` 'number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `range_start` integer — Start of the range for number grouping buckets.
            - `range_end` integer — End of the range for number grouping buckets.
            - `range_size` integer — Size of each bucket in number grouping.
          - CheckboxGroupByConfigResponse
            - `type` 'checkbox', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - FormulaGroupByConfigResponse
            - `type` 'formula', required — The property type for grouping.
            - `property_id` string, required — Property ID of the formula to group by.
            - `group_by` union, required — Sub-group-by configuration for formula properties based on result type.
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
        - `properties` ViewPropertyConfigResponse[] — Properties to display on each card.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
        - `cover` CoverConfigResponse
          - `type` 'page_cover' | 'page_content' | 'page_content_first' | 'property', required — Source of the cover image.
          - `property_id` string — Property ID when type is "property".
        - `cover_size` 'small' | 'medium' | 'large' — Cover image size.
        - `cover_aspect` 'contain' | 'cover' — Cover image aspect ratio.
        - `card_layout` 'list' | 'compact' — Card layout mode (list shows all properties, compact shows inline).
      - CalendarViewConfigResponse
        - `type` 'calendar', required — The view configuration type.
        - `date_property_id` string, required — Date property used to position items on the calendar - required.
        - `date_property_name` string — Date property name (convenience field).
        - `properties` ViewPropertyConfigResponse[] — Properties to display on calendar event cards.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
        - `view_range` 'week' | 'month' — Calendar view range.
        - `show_weekends` boolean — Whether to show weekend days.
      - TimelineViewConfigResponse
        - `type` 'timeline', required — The view configuration type.
        - `date_property_id` string, required — Start date property - required.
        - `date_property_name` string — Start date property name (convenience field).
        - `end_date_property_id` string — End date property (optional, for items that span a range).
        - `end_date_property_name` string — End date property name (convenience field).
        - `properties` ViewPropertyConfigResponse[] — Properties to display on timeline items.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
        - `show_table` boolean — Whether to show the table panel alongside the timeline.
        - `table_properties` ViewPropertyConfigResponse[] — Properties to display in the table panel (when show_table is true).
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
        - `preference` TimelinePreferenceResponse
          - `zoom_level` 'hours' | 'day' | 'week' | 'bi_week' | 'month' | 'quarter' | 'year' | '5_years', required — Zoom level for the timeline.
          - `center_timestamp` integer — Center timestamp for the timeline view (Unix timestamp in ms).
        - `arrows_by` TimelineArrowsByResponse
          - `property_id` string, nullable — Relation property ID used for dependency arrows.
        - `color_by` boolean — Whether to color-code items by property.
      - GalleryViewConfigResponse
        - `type` 'gallery', required — The view configuration type.
        - `properties` ViewPropertyConfigResponse[] — Properties to display on gallery cards.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
        - `cover` CoverConfigResponse
          - `type` 'page_cover' | 'page_content' | 'page_content_first' | 'property', required — Source of the cover image.
          - `property_id` string — Property ID when type is "property".
        - `cover_size` 'small' | 'medium' | 'large' — Cover image size.
        - `cover_aspect` 'contain' | 'cover' — Cover image aspect ratio.
        - `card_layout` 'list' | 'compact' — Card layout mode (list shows all properties, compact shows inline).
      - ListViewConfigResponse
        - `type` 'list', required — The view configuration type.
        - `properties` ViewPropertyConfigResponse[] — Properties to display in list items.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
      - MapViewConfigResponse
        - `type` 'map', required — The view configuration type.
        - `height` 'small' | 'medium' | 'large' | 'extra_large' — Map display height.
        - `map_by` string — Property ID of the location property used to position items on the map.
        - `map_by_property_name` string — Map-by property name (convenience field).
        - `properties` ViewPropertyConfigResponse[] — Properties to display on map pin cards.
          - `property_id` string, required — Property ID (stable identifier).
          - `property_name` string — Property name (convenience field, not stable across renames).
          - `visible` boolean — Whether this property is visible in the view.
          - `width` integer — Width of the property column in pixels (table view only).
          - `wrap` boolean — Whether to wrap content in this property cell/card.
          - `status_show_as` 'select' | 'checkbox' — How to display status properties (as select dropdown or checkbox).
          - `card_property_width_mode` 'full_line' | 'inline' — Property width mode in compact card layouts (board/gallery).
          - `date_format` 'full' | 'short' | 'month_day_year' | 'day_month_year' | 'year_month_day' | 'relative' — Date display format (date properties only). "full" = localized full date, "short" = month and day, "month_day_year" = MM/DD/YYYY, "day_month_year" = DD/MM/YYYY, "year_month_day" = YYYY/MM/DD, "relative" = relative dates.
          - `time_format` '12_hour' | '24_hour' | 'hidden' — Time display format (date properties only). "12_hour" = 12-hour clock with AM/PM, "24_hour" = 24-hour clock, "hidden" = hide time.
      - FormViewConfigResponse
        - `type` 'form', required — The view configuration type.
        - `is_form_closed` boolean — Whether the form is closed for submissions.
        - `anonymous_submissions` boolean — Whether anonymous (non-logged-in) submissions are allowed.
        - `submission_permissions` 'none' | 'comment_only' | 'reader' | 'read_and_write' | 'editor' — Permission level granted to the submitter on the created page after form submission.
      - ChartViewConfigResponse
        - `type` 'chart', required — The view configuration type.
        - `chart_type` 'column' | 'bar' | 'line' | 'donut' | 'number', required — The chart type: column (vertical bars), bar (horizontal bars), line, donut, or number (single value display).
        - `x_axis` union — Group-by configuration based on property type.
          - SelectGroupByConfigResponse
            - `type` 'select' | 'multi_select', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - StatusGroupByConfigResponse
            - `type` 'status', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'group' | 'option', required — How to group status values. "group" groups by status group (To Do/In Progress/Done), "option" groups by individual option.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - PersonGroupByConfigResponse
            - `type` 'person' | 'created_by' | 'last_edited_by', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - RelationGroupByConfigResponse
            - `type` 'relation', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - DateGroupByConfigResponse
            - `type` 'date' | 'created_time' | 'last_edited_time', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'relative' | 'day' | 'week' | 'month' | 'year', required — Granularity for date grouping.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `start_day_of_week` 0 | 1 — Start day of week for week grouping (0 = Sunday, 1 = Monday).
          - TextGroupByConfigResponse
            - `type` 'text' | 'title' | 'url' | 'email' | 'phone_number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'exact' | 'alphabet_prefix', required — How to group text values. "exact" = exact match, "alphabet_prefix" = first letter.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - NumberGroupByConfigResponse
            - `type` 'number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `range_start` integer — Start of the range for number grouping buckets.
            - `range_end` integer — End of the range for number grouping buckets.
            - `range_size` integer — Size of each bucket in number grouping.
          - CheckboxGroupByConfigResponse
            - `type` 'checkbox', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - FormulaGroupByConfigResponse
            - `type` 'formula', required — The property type for grouping.
            - `property_id` string, required — Property ID of the formula to group by.
            - `group_by` union, required — Sub-group-by configuration for formula properties based on result type.
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
        - `y_axis` ChartAggregationResponse
          - `aggregator` 'count' | 'count_values' | 'sum' | 'average' | 'median' | 'min' | 'max' | 'range' | 'unique' | 'empty' | 'not_empty' | 'percent_empty' | 'percent_not_empty' | 'checked' | 'unchecked' | 'percent_checked' | 'percent_unchecked' | 'earliest_date' | 'latest_date' | 'date_range', required — The aggregation operator. "count" counts all rows and does not require a property_id. All other operators require a property_id.
          - `property_id` string — The property to aggregate on. Required for all operators except "count".
        - `x_axis_property_id` string — Property ID for the x-axis name values when using results (raw property values) mode.
        - `y_axis_property_id` string — Property ID for the y-axis numeric values when using results (raw property values) mode.
        - `value` ChartAggregationResponse
          - `aggregator` 'count' | 'count_values' | 'sum' | 'average' | 'median' | 'min' | 'max' | 'range' | 'unique' | 'empty' | 'not_empty' | 'percent_empty' | 'percent_not_empty' | 'checked' | 'unchecked' | 'percent_checked' | 'percent_unchecked' | 'earliest_date' | 'latest_date' | 'date_range', required — The aggregation operator. "count" counts all rows and does not require a property_id. All other operators require a property_id.
          - `property_id` string — The property to aggregate on. Required for all operators except "count".
        - `sort` 'manual' | 'x_ascending' | 'x_descending' | 'y_ascending' | 'y_descending' — Sort order for chart data.
        - `color_theme` 'gray' | 'blue' | 'yellow' | 'green' | 'purple' | 'teal' | 'orange' | 'pink' | 'red' | 'auto' | 'colorful' — Color theme for the chart.
        - `height` 'small' | 'medium' | 'large' | 'extra_large' — Chart height.
        - `hide_empty_groups` boolean — Whether to hide groups with no data on the x-axis.
        - `legend_position` 'off' | 'bottom' | 'side' — Legend display position. "off" hides the legend.
        - `show_data_labels` boolean — Whether to show data value labels on chart elements.
        - `axis_labels` 'none' | 'x_axis' | 'y_axis' | 'both' — Which axis labels to display.
        - `grid_lines` 'none' | 'horizontal' | 'vertical' | 'both' — Which grid lines to display.
        - `cumulative` boolean — Whether to show cumulative values (line charts only).
        - `smooth_line` boolean — Whether to use smooth curves (line charts only).
        - `hide_line_fill_area` boolean — Whether to hide the shaded area under the line (line charts only).
        - `group_style` 'normal' | 'percent' | 'side_by_side' — How grouped/stacked bars are displayed. "normal" stacks values, "percent" normalizes to 100%, "side_by_side" places bars next to each other.
        - `y_axis_min` number, nullable — Custom minimum value for the y-axis. Null clears the override.
        - `y_axis_max` number, nullable — Custom maximum value for the y-axis. Null clears the override.
        - `donut_labels` 'none' | 'value' | 'name' | 'name_and_value' — What to display on donut chart slices.
        - `hide_title` boolean — Whether to hide the title label (number charts only).
        - `stack_by` union — Group-by configuration based on property type.
          - SelectGroupByConfigResponse
            - `type` 'select' | 'multi_select', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - StatusGroupByConfigResponse
            - `type` 'status', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'group' | 'option', required — How to group status values. "group" groups by status group (To Do/In Progress/Done), "option" groups by individual option.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - PersonGroupByConfigResponse
            - `type` 'person' | 'created_by' | 'last_edited_by', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - RelationGroupByConfigResponse
            - `type` 'relation', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - DateGroupByConfigResponse
            - `type` 'date' | 'created_time' | 'last_edited_time', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'relative' | 'day' | 'week' | 'month' | 'year', required — Granularity for date grouping.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `start_day_of_week` 0 | 1 — Start day of week for week grouping (0 = Sunday, 1 = Monday).
          - TextGroupByConfigResponse
            - `type` 'text' | 'title' | 'url' | 'email' | 'phone_number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `group_by` 'exact' | 'alphabet_prefix', required — How to group text values. "exact" = exact match, "alphabet_prefix" = first letter.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - NumberGroupByConfigResponse
            - `type` 'number', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
            - `range_start` integer — Start of the range for number grouping buckets.
            - `range_end` integer — End of the range for number grouping buckets.
            - `range_size` integer — Size of each bucket in number grouping.
          - CheckboxGroupByConfigResponse
            - `type` 'checkbox', required — The property type for grouping.
            - `property_id` string, required — Property ID to group by.
            - `sort` GroupSortResponse, required
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
          - FormulaGroupByConfigResponse
            - `type` 'formula', required — The property type for grouping.
            - `property_id` string, required — Property ID of the formula to group by.
            - `group_by` union, required — Sub-group-by configuration for formula properties based on result type.
              - …
            - `property_name` string — Property name (convenience field).
            - `hide_empty_groups` boolean — Whether to hide groups that have no items.
        - `reference_lines` ChartReferenceLineResponse[], nullable — Reference lines drawn on the chart. Null when no reference lines are configured.
          - `id` string, required — Unique identifier for the reference line.
          - `value` number, required — The y-axis value where the reference line is drawn.
          - `label` string, required — Label displayed alongside the reference line.
          - `color` 'gray' | 'lightgray' | 'brown' | 'yellow' | 'orange' | 'green' | 'blue' | 'purple' | 'pink' | 'red', required — Color of the reference line.
          - `dash_style` 'solid' | 'dash', required — Line style: "solid" for a continuous line, "dash" for a dashed line.
        - `caption` string, nullable — Text caption displayed below the chart. Null when no caption is shown.
        - `color_by_value` boolean — Whether chart elements are colored by their numeric value (gradient coloring).
      - DashboardViewConfigResponse
        - `type` 'dashboard', required — The view configuration type.
        - `rows` DashboardRowResponse[], required — The rows that make up the dashboard layout. Each row contains one or more widget modules.
          - `id` string, required — The ID of this row module.
          - `widgets` DashboardWidgetResponse[], required — The widget modules within this row.
            - `id` string, required — The ID of this widget module.
            - `view_id` string, required — The ID of the collection view rendered by this widget.
            - `width` integer — Width of the widget in a 12-column grid (1-12). 12 means full width.
            - `row_index` integer — The 0-based index of the row this widget belongs to. Widgets in the same row share the same row_index.
          - `height` integer — Fixed height of the row in pixels.
    - `dashboard_view_id` string — For dashboard widget views, the ID of the parent dashboard view. Only present when this view is a widget inside a dashboard.

## Other responses

- `400`
- `401`
- `403`
- `404`
- `406`
- `409`
- `429`
- `500`
- `503`
- `504`
- `529`

---

[API](https://skmtc.net/notion/apis/notion-api.md) · [All operations](https://skmtc.net/notion/apis/notion-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/notion/notion-api/versions/551da43bb186/schema)
