openapi: 3.0.0 info: title: Lightdash AiAgents Charts API version: 0.3156.1 description: 'Open API documentation for all public Lightdash API endpoints. # Authentication Before you get started, you might need to create a Personal Access Token to authenticate via the API. You can create a token by following this guide: https://docs.lightdash.com/references/personal_tokens ' license: name: MIT contact: name: Lightdash Support email: support@lightdash.com url: https://docs.lightdash.com/help-and-contact/contact/contact_info/ servers: - url: / tags: - name: Charts paths: /api/v1/saved/{chartUuid}/results: post: operationId: PostChartResults responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRunQueryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Deprecated — use the v2 Execute saved chart endpoint instead. This endpoint was deprecated on 20 March 2025 and is past its sunset date (30 April 2025) — it may be removed at any time. Migrate to the v2 async query flow: Execute saved chart, then Get results.' summary: Run chart query tags: - Charts deprecated: true security: [] parameters: - description: chartUuid for the chart to run in: path name: chartUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: invalidateCache: type: boolean type: object x-mint: content: ' **This endpoint is deprecated and past its sunset date (30 April 2025) — it may be removed at any time.** Migrate to the v2 async query flow: [Execute saved chart](https://docs.lightdash.com/api-reference/v2/execute-saved-chart) (`POST /api/v2/projects/{projectUuid}/query/chart`) to start the query, then [Get results](https://docs.lightdash.com/api-reference/v2/get-results) to fetch rows. See also [Cancel query](https://docs.lightdash.com/api-reference/v2/cancel-query) and [Download results](https://docs.lightdash.com/api-reference/v2/download-results). ' /api/v1/saved/{chartUuid}/chart-and-results: post: operationId: PostDashboardTile responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRunQueryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Deprecated — use the v2 Execute dashboard chart endpoint instead. This endpoint was deprecated on 20 March 2025 and is past its sunset date (20 June 2025) — it may be removed at any time. Migrate to the v2 async query flow: Execute dashboard chart, then Get results.' summary: Get chart and results tags: - Charts deprecated: true security: [] parameters: - in: path name: chartUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: autoRefresh: type: boolean dateZoom: $ref: '#/components/schemas/DateZoom' dashboardUuid: type: string dashboardSorts: items: $ref: '#/components/schemas/SortField' type: array invalidateCache: type: boolean dashboardFilters: $ref: '#/components/schemas/AnyType' required: - dashboardUuid - dashboardSorts - dashboardFilters type: object x-mint: content: ' **This endpoint is deprecated and past its sunset date (20 June 2025) — it may be removed at any time.** Migrate to the v2 async query flow: [Execute dashboard chart](https://docs.lightdash.com/api-reference/v2/execute-dashboard-chart) (`POST /api/v2/projects/{projectUuid}/query/dashboard-chart`) to start the query, then [Get results](https://docs.lightdash.com/api-reference/v2/get-results) to fetch rows. See also [Cancel query](https://docs.lightdash.com/api-reference/v2/cancel-query) and [Download results](https://docs.lightdash.com/api-reference/v2/download-results). ' /api/v1/saved/{chartUuid}/history: get: operationId: GetChartHistory responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetChartHistoryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get chart version history from last 30 days summary: Get chart version history tags: - Charts security: [] parameters: - description: chartUuid for the chart in: path name: chartUuid required: true schema: type: string /api/v1/saved/{chartUuid}/version/{versionUuid}: get: operationId: GetChartVersion responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiGetChartVersionResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get chart version summary: Get chart version tags: - Charts security: [] parameters: - description: chartUuid for the chart in: path name: chartUuid required: true schema: type: string - description: versionUuid for the chart version in: path name: versionUuid required: true schema: type: string /api/v1/saved/{chartUuid}/version/{versionUuid}/results: post: operationId: getChartVersionResults responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiRunQueryResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: 'Deprecated — use the v2 Execute saved chart endpoint instead. This endpoint was deprecated on 20 March 2025 and is past its sunset date (30 April 2025) — it may be removed at any time. Migrate to the v2 async query flow: Execute saved chart, then Get results.' summary: Get chart version results tags: - Charts deprecated: true security: [] parameters: - description: chartUuid for the chart to run in: path name: chartUuid required: true schema: type: string - description: versionUuid for the chart version in: path name: versionUuid required: true schema: type: string x-mint: content: ' **This endpoint is deprecated and past its sunset date (30 April 2025) — it may be removed at any time.** Migrate to the v2 async query flow: [Execute saved chart](https://docs.lightdash.com/api-reference/v2/execute-saved-chart) (`POST /api/v2/projects/{projectUuid}/query/chart`) to run the chart''s latest version, then [Get results](https://docs.lightdash.com/api-reference/v2/get-results) to fetch rows. Running a query for a specific chart version has no v2 equivalent. ' /api/v1/saved/{chartUuid}/rollback/{versionUuid}: post: operationId: postChartVersionRollback responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Rollback chart to version summary: Rollback chart to version tags: - Charts security: [] parameters: - description: chartUuid for the chart to run in: path name: chartUuid required: true schema: type: string - description: versionUuid for the chart version in: path name: versionUuid required: true schema: type: string /api/v1/saved/{chartUuid}/calculate-total: post: operationId: CalculateTotalFromSavedChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCalculateTotalResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Calculate metric totals from a saved chart summary: Calculate total from saved chart tags: - Charts deprecated: true security: [] parameters: - description: chartUuid for the chart to run in: path name: chartUuid required: true schema: type: string requestBody: required: true content: application/json: schema: properties: parameters: $ref: '#/components/schemas/ParametersValuesMap' invalidateCache: type: boolean dashboardFilters: $ref: '#/components/schemas/AnyType' type: object /api/v1/saved/{chartUuid}/promote: post: operationId: promoteChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiPromoteChartResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Promote chart to its upstream project summary: Promote chart tags: - Charts security: [] parameters: - description: chartUuid for the chart to run in: path name: chartUuid required: true schema: type: string /api/v1/saved/{chartUuid}/promoteDiff: get: operationId: promoteChartDiff responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiPromotionChangesResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get diff from chart to promote summary: Get chart promotion diff tags: - Charts security: [] parameters: - description: chartUuid for the chart to check diff in: path name: chartUuid required: true schema: type: string /api/v1/saved/{chartUuid}/schedulers: get: operationId: getSavedChartSchedulers responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSavedChartSchedulersResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get schedulers for a saved chart summary: List saved chart schedulers tags: - Charts deprecated: true security: [] parameters: - in: path name: chartUuid required: true schema: type: string post: operationId: createSavedChartScheduler responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiCreateSavedChartSchedulerResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Create a scheduler for a saved chart summary: Create saved chart scheduler tags: - Charts security: [] parameters: - in: path name: chartUuid required: true schema: type: string /api/v1/saved/{chartUuid}/export: post: operationId: exportSavedChartImage responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiExportChartImageResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Export a saved chart as a PNG image summary: Export chart image tags: - Charts security: [] parameters: - description: chartUuid for the chart to export in: path name: chartUuid required: true schema: type: string /api/v1/saved/{chartUuid}/verification: post: operationId: verifyChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiContentVerificationResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Verify a chart summary: Verify chart tags: - Charts security: [] parameters: - description: The uuid of the chart to verify in: path name: chartUuid required: true schema: type: string delete: operationId: unverifyChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiContentVerificationDeleteResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Remove verification from a chart summary: Unverify chart tags: - Charts security: [] parameters: - description: The uuid of the chart to unverify in: path name: chartUuid required: true schema: type: string /api/v2/saved/{chartUuid}/schedulers: get: operationId: getSavedChartSchedulers responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSavedChartPaginatedSchedulersResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get all schedulers for a saved chart summary: List chart schedulers tags: - Charts security: [] parameters: - description: The uuid of the chart in: path name: chartUuid required: true schema: type: string - description: number of items per page in: query name: pageSize required: false schema: format: double type: number - description: page number in: query name: page required: false schema: format: double type: number - description: filter schedulers by name in: query name: searchQuery required: false schema: type: string - description: comma-separated list of scheduler formats to include in: query name: formats required: false schema: type: string - description: include the most recent run for each scheduler in: query name: includeLatestRun required: false schema: type: boolean /api/v2/saved/{chartUuid}/schedulers/{schedulerUuid}/runs: get: operationId: getSavedChartSchedulerRuns responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSchedulerRunsResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get the run history of a single scheduler on a chart summary: List chart scheduler runs tags: - Charts security: [] parameters: - description: The uuid of the chart in: path name: chartUuid required: true schema: type: string - description: The uuid of the scheduler in: path name: schedulerUuid required: true schema: type: string - description: number of items per page in: query name: pageSize required: false schema: format: double type: number - description: page number in: query name: page required: false schema: format: double type: number - description: filter runs by scheduler name in: query name: searchQuery required: false schema: type: string - description: column to sort by (scheduledTime, createdAt) in: query name: sortBy required: false schema: type: string enum: - scheduledTime - createdAt - description: sort direction (asc or desc) in: query name: sortDirection required: false schema: type: string enum: - asc - desc - description: comma-separated list of run statuses to include in: query name: statuses required: false schema: type: string - description: comma-separated list of destination types to include in: query name: destinations required: false schema: type: string /api/v2/projects/{projectUuid}/saved/{chartUuidOrSlug}: get: operationId: getProjectSavedChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSavedChartResponse' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Get a saved chart by uuid or slug within a project summary: Get chart tags: - Charts security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: chartUuidOrSlug required: true schema: type: string delete: operationId: deleteProjectSavedChart responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ApiSuccessEmpty' default: description: Error content: application/json: schema: $ref: '#/components/schemas/ApiErrorPayload' description: Delete a saved chart by uuid or slug within a project summary: Delete chart tags: - Charts security: [] parameters: - in: path name: projectUuid required: true schema: type: string - in: path name: chartUuidOrSlug required: true schema: type: string components: schemas: ConditionalFormattingWithFilterOperator: anyOf: - $ref: '#/components/schemas/ConditionalFormattingWithValues_number-or-string_' - $ref: '#/components/schemas/ConditionalFormattingWithCompareTarget_number-or-string_' DateZoom: properties: xAxisFieldId: type: string granularity: anyOf: - $ref: '#/components/schemas/DateGranularity' - type: string type: object OrganizationMemberRole: enum: - member - viewer - interactive_viewer - editor - developer - admin type: string KnexPaginatedData_SchedulerAndTargets-Array_: properties: pagination: allOf: - $ref: '#/components/schemas/KnexPaginateArgs' - properties: totalResults: type: number format: double totalPageCount: type: number format: double required: - totalResults - totalPageCount type: object data: items: $ref: '#/components/schemas/SchedulerAndTargets' type: array required: - data type: object FieldUrl: properties: label: type: string url: type: string required: - label - url type: object DashboardTileTarget: anyOf: - $ref: '#/components/schemas/DashboardFieldTarget' - type: boolean enum: - false DateGranularity: enum: - Second - Minute - Hour - Day - Week - Month - Quarter - Year type: string ChartType.TABLE: enum: - table type: string ResolvedProjectColorPalette: properties: source: $ref: '#/components/schemas/ColorPaletteSource' paletteName: type: string nullable: true paletteUuid: type: string nullable: true darkColors: items: type: string type: array nullable: true colors: items: type: string type: array required: - source - paletteName - paletteUuid - darkColors - colors type: object Record_string.MapFieldConfig_: properties: {} additionalProperties: $ref: '#/components/schemas/MapFieldConfig' type: object description: Construct a type with a set of properties K of type T MapTileBackground: enum: - none - openstreetmap - light - dark - satellite - voyager type: string MapHexbinSizingMode: enum: - dynamic - fixed type: string MarkLine: properties: label: properties: formatter: type: string description: Label formatter type: object description: Label configuration lineStyle: properties: type: type: string description: Line type width: type: number format: double description: Line width color: type: string description: Line color required: - type - width - color type: object description: Line style configuration symbol: type: string description: Symbol at line endpoints data: items: $ref: '#/components/schemas/MarkLineData' type: array description: Reference line data points required: - data type: object Metric: properties: fieldType: $ref: '#/components/schemas/FieldType.METRIC' type: $ref: '#/components/schemas/MetricType' name: type: string label: type: string table: type: string tableLabel: type: string sql: type: string description: type: string source: $ref: '#/components/schemas/Source' hidden: type: boolean compact: $ref: '#/components/schemas/CompactOrAlias' round: type: number format: double format: anyOf: - $ref: '#/components/schemas/Format' - type: string separator: $ref: '#/components/schemas/NumberSeparator' description: 'Number separator style for grouping/decimal characters. Composes with `format` (including ECMA-376 expressions) and `formatOptions` — it only controls the separator characters, not the format shape.' groupLabel: type: string deprecated: true groups: items: type: string type: array urls: items: $ref: '#/components/schemas/FieldUrl' type: array index: type: number format: double tags: items: type: string type: array parameterReferences: items: type: string type: array showUnderlyingValues: items: type: string type: array filters: items: $ref: '#/components/schemas/MetricFilterRule' type: array percentile: type: number format: double distinctKeys: items: type: string type: array formatOptions: $ref: '#/components/schemas/CustomFormat' dimensionReference: type: string requiredAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' anyAttributes: $ref: '#/components/schemas/Record_string.string-or-string-Array_' defaultTimeDimension: $ref: '#/components/schemas/DefaultTimeDimension' spotlight: properties: owner: type: string defaultFilter: $ref: '#/components/schemas/MetricFilterRule' defaultSegment: type: string segmentBy: items: type: string type: array filterBy: items: type: string type: array categories: items: type: string type: array visibility: type: string enum: - show - hide required: - visibility type: object drivers: items: type: string type: array aiHint: anyOf: - type: string - items: type: string type: array richText: type: string required: - fieldType - type - name - label - table - tableLabel - sql - hidden type: object additionalProperties: true PreAggregateMissReason.NO_PRE_AGGREGATES_DEFINED: enum: - no_pre_aggregates_defined type: string ApiSuccess_KnexPaginatedData_SchedulerRun-Array__: properties: results: $ref: '#/components/schemas/KnexPaginatedData_SchedulerRun-Array_' status: type: string enum: - ok nullable: false required: - results - status type: object ApiRunQueryResponse: properties: results: properties: fields: $ref: '#/components/schemas/Record_string.Item-or-AdditionalMetric_' rows: items: $ref: '#/components/schemas/AnyType' type: array cacheMetadata: $ref: '#/components/schemas/CacheMetadata' metricQuery: $ref: '#/components/schemas/MetricQueryResponse' required: - rows - cacheMetadata - metricQuery type: object status: type: string enum: - ok nullable: false required: - results - status type: object FieldType.METRIC: enum: - metric type: string SpaceMemberRole: enum: - viewer - editor - admin type: string FilterGroup: anyOf: - $ref: '#/components/schemas/OrFilterGroup' - $ref: '#/components/schemas/AndFilterGroup' RowLimit: properties: count: type: number format: double description: Number of rows to show or hide direction: type: string enum: - first - last description: Whether to target the first or last N rows mode: type: string enum: - show - hide description: Whether to show or hide the selected rows required: - count - direction - mode type: object ApiErrorPayload: properties: error: properties: data: $ref: '#/components/schemas/AnyType' description: Optional data containing details of the error message: type: string description: A friendly message summarising the error name: type: string description: Unique name for the type of error statusCode: type: number format: integer description: HTTP status code required: - name - statusCode type: object status: type: string enum: - error nullable: false required: - error - status type: object description: 'The Error object is returned from the api any time there is an error. The message contains' CustomVis: properties: spec: $ref: '#/components/schemas/Record_string.unknown_' description: Custom visualization specification (Vega-Lite or other) type: object Pick_Metric.formatOptions_: properties: formatOptions: $ref: '#/components/schemas/CustomFormat' type: object description: From T, pick a set of properties whose keys are in the union K DashboardTileTypes.LOOM: enum: - loom type: string TreemapChartConfig: properties: config: $ref: '#/components/schemas/TreemapChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.TREEMAP' description: Type of chart visualization required: - type type: object PivotReference: properties: pivotValues: items: $ref: '#/components/schemas/PivotValue' type: array description: Pivot values for this reference (for pivoted data) field: type: string description: Field ID being referenced required: - field type: object Pick_Dimension.formatOptions_: properties: formatOptions: $ref: '#/components/schemas/CustomFormat' type: object description: From T, pick a set of properties whose keys are in the union K NotificationFrequency: enum: - always - once type: string OrFilterGroup: properties: or: items: $ref: '#/components/schemas/FilterGroupItem' type: array description: Array of filters or nested groups combined with OR logic id: type: string description: Unique identifier for the filter group required: - or - id type: object FixedWidthBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.FIXED_WIDTH' binWidth: type: number format: double required: - id - name - table - type - dimensionId - binType - binWidth type: object additionalProperties: true ApiGetChartVersionResponse: properties: results: $ref: '#/components/schemas/ChartVersion' status: type: string enum: - ok nullable: false required: - results - status type: object ChartVersion: properties: chart: $ref: '#/components/schemas/SavedChart' createdBy: allOf: - $ref: '#/components/schemas/Pick_LightdashUser.userUuid-or-firstName-or-lastName_' nullable: true createdAt: type: string format: date-time versionUuid: type: string chartUuid: type: string required: - chart - createdBy - createdAt - versionUuid - chartUuid type: object MapChart: properties: saveMapExtent: type: boolean description: Save the current map zoom/position fieldConfig: $ref: '#/components/schemas/Record_string.MapFieldConfig_' description: Field-specific configuration for tooltips noDataColor: type: string description: Color for regions with no data (hex code) backgroundColor: type: string description: Background color for the map (hex code) darkModeTileBackground: $ref: '#/components/schemas/MapTileBackground' description: Map tile background style for dark mode (uses dark default when undefined) tileBackground: $ref: '#/components/schemas/MapTileBackground' description: Map tile background style dataLayerOpacity: type: number format: double description: Data layer opacity (0.1 to 1) hexbinConfig: properties: emptyBinColor: type: string nullable: true description: 'Fill color for empty bins. Hex6 (#rrggbb) = solid fill, hex8 (#rrggbbaa) = fill with alpha, null/undefined = outline only.' showEmptyBins: type: boolean description: 'Render outlined empty cells across the visible map area, so the user can see "where there is no data" relative to the hex grid.' aggregation: $ref: '#/components/schemas/MapHexbinAggregation' description: Aggregation applied when valueBasis = FIELD. Defaults to SUM. valueBasis: $ref: '#/components/schemas/MapHexbinValueBasis' description: 'What drives cell color: count of points (default) or an aggregation over a chosen value field (controlled via the chart''s `valueFieldId`).' fixedResolution: type: number format: double description: H3 resolution (0-15) used when sizingMode is FIXED. Ignored otherwise. sizingMode: $ref: '#/components/schemas/MapHexbinSizingMode' description: How bin size is determined. Defaults to DYNAMIC if unset. opacity: type: number format: double description: Opacity of hex polygons (0.1 to 1) type: object description: Configuration for H3 hexagonal binning visualization heatmapConfig: properties: opacity: type: number format: double description: Opacity of the heatmap layer blur: type: number format: double description: Blur amount for heat points radius: type: number format: double description: Radius of heat points type: object description: Configuration for heatmap visualization sizeFieldId: type: string description: Field ID for bubble size (scatter maps) maxBubbleSize: type: number format: double description: Maximum bubble size for scatter maps minBubbleSize: type: number format: double description: Minimum bubble size for scatter maps defaultCenterLon: type: number format: double description: Default center longitude defaultCenterLat: type: number format: double description: Default center latitude defaultZoom: type: number format: double description: Default zoom level colorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Per-value color overrides for categorical color fields colorRange: items: type: string type: array description: Array of colors for the value gradient showLegend: type: boolean description: Show the map legend valueFieldId: type: string description: Field ID for the value to display geoJsonPropertyKey: type: string description: Property key in GeoJSON to match against data locationFieldId: type: string description: Field ID for location/region names (area maps) longitudeFieldId: type: string description: Field ID for longitude values latitudeFieldId: type: string description: Field ID for latitude values locationType: $ref: '#/components/schemas/MapChartType' description: How to display location data customGeoJsonUrl: type: string description: URL to custom GeoJSON file mapType: $ref: '#/components/schemas/MapChartLocation' description: Type of map to display type: object DashboardChartTileProperties: properties: properties: properties: chartSlug: type: string nullable: true lastVersionChartKind: allOf: - $ref: '#/components/schemas/ChartKind' nullable: true chartName: type: string nullable: true belongsToDashboard: type: boolean savedChartUuid: type: string nullable: true hideTitle: type: boolean title: type: string required: - savedChartUuid type: object type: $ref: '#/components/schemas/DashboardTileTypes.SAVED_CHART' required: - properties - type type: object PreAggregateMissReason.NON_ADDITIVE_METRIC: enum: - non_additive_metric type: string ChartType.PIE: enum: - pie type: string ApiCreateSavedChartSchedulerResponse: properties: results: $ref: '#/components/schemas/SchedulerAndTargets' status: type: string enum: - ok nullable: false required: - results - status type: object ProjectMemberRole: enum: - viewer - interactive_viewer - editor - developer - admin type: string DimensionOverrides: properties: {} additionalProperties: $ref: '#/components/schemas/Pick_Dimension.formatOptions_' type: object BinType.FIXED_NUMBER: enum: - fixed_number type: string DashboardLoomTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardLoomTileProperties' TreemapChart: properties: endColorThreshold: type: number format: double description: Value threshold for end color startColorThreshold: type: number format: double description: Value threshold for start color useDynamicColors: type: boolean description: Use dynamic color scaling based on values endColor: type: string description: End color for color gradient (hex code) startColor: type: string description: Start color for color gradient (hex code) colorMetricId: type: string description: Field ID for node color value sizeMetricId: type: string description: Field ID for node size groupFieldIds: items: type: string type: array description: Field IDs for hierarchical grouping leafDepth: type: number format: double description: Depth of leaf nodes to display visibleMin: type: number format: double description: Minimum size for visible nodes type: object Record_string.Partial_PieChartValueOptions__: properties: {} additionalProperties: $ref: '#/components/schemas/Partial_PieChartValueOptions_' type: object description: Construct a type with a set of properties K of type T DashboardDataAppTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardDataAppTileProperties' Record_string.DashboardTileTarget_: properties: {} additionalProperties: $ref: '#/components/schemas/DashboardTileTarget' type: object description: Construct a type with a set of properties K of type T TableCalculationTemplateType.PERCENT_OF_PREVIOUS_VALUE: enum: - percent_of_previous_value type: string CartesianSeriesType: enum: - line - bar - scatter - area type: string TableCalculationType: enum: - number - string - date - timestamp - boolean type: string CustomGroupBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.CUSTOM_GROUP' customGroups: items: $ref: '#/components/schemas/BinGroup' type: array required: - id - name - table - type - dimensionId - binType - customGroups type: object additionalProperties: true Record_string.unknown_: properties: {} additionalProperties: {} type: object description: Construct a type with a set of properties K of type T PreAggregateMissReason.EXPLORE_RESOLUTION_ERROR: enum: - explore_resolution_error type: string FrameBoundaryType: enum: - unbounded_preceding - preceding - current_row - following - unbounded_following type: string SankeyNodeLayout: type: string enum: - multi-step - merged - direct description: 'How nodes are laid out: - `multi-step`: depth-unrolled journeys (default) - `merged`: one node per label, journeys preserved (acyclic flows only) - `direct`: two-column source→target pairs, no chaining' SchedulerCsvOptions: properties: exportPivotedData: type: boolean asAttachment: type: boolean limit: anyOf: - type: number format: double - type: string enum: - table - all formatted: type: boolean required: - limit - formatted type: object SpaceAccess: properties: inheritedFrom: type: string enum: - organization - project - group - space_group - parent_space inheritedRole: anyOf: - $ref: '#/components/schemas/OrganizationMemberRole' - $ref: '#/components/schemas/ProjectMemberRole' projectRole: $ref: '#/components/schemas/ProjectMemberRole' hasDirectAccess: type: boolean role: $ref: '#/components/schemas/SpaceMemberRole' userUuid: type: string required: - hasDirectAccess - role - userUuid type: object Partial_PieChartValueOptions_: properties: valueLabel: type: string enum: - hidden - inside - outside showValue: type: boolean showPercentage: type: boolean type: object description: Make all properties in T optional DashboardLoomTileProperties: properties: properties: properties: url: type: string hideTitle: type: boolean title: type: string required: - url - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.LOOM' required: - properties - type type: object DashboardTab: properties: hidden: type: boolean order: type: number format: double minimum: 0 name: type: string minLength: 1 uuid: type: string required: - order - name - uuid type: object SpaceSummaryBase: allOf: - $ref: '#/components/schemas/Pick_Space.organizationUuid-or-projectUuid-or-uuid-or-name-or-inheritParentPermissions-or-projectMemberAccessRole-or-pinnedListUuid-or-pinnedListOrder-or-slug-or-parentSpaceUuid-or-path_' - properties: deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object deletedAt: type: string format: date-time appCount: type: number format: double childSpaceCount: type: number format: double dashboardCount: type: number format: double chartCount: type: number format: double required: - appCount - childSpaceCount - dashboardCount - chartCount type: object FormulaTableCalculation: allOf: - $ref: '#/components/schemas/TableCalculationBase' - properties: formula: type: string description: Spreadsheet-like formula compiled to SQL at query time required: - formula type: object DashboardSqlChartTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardSqlChartTileProperties' SchedulerResourceType: enum: - chart - dashboard - sqlChart - app type: string PreAggregateMissReason.METRIC_NOT_IN_PRE_AGGREGATE: enum: - metric_not_in_pre_aggregate type: string DashboardFilterRule: allOf: - $ref: '#/components/schemas/FilterRule_FilterOperator.DashboardFieldTarget.AnyType.AnyType_' - properties: lockedTabUuids: items: type: string type: array description: 'Tab UUIDs where this filter is locked. When the active tab is in this list, viewers see the filter but cannot change it, and URL / embed filter overrides targeting the same field are ignored on that tab. Empty or omitted means the filter is not locked anywhere.' singleValue: type: boolean label: type: string tileTargets: $ref: '#/components/schemas/Record_string.DashboardTileTarget_' type: object FrameType: enum: - rows - range type: string ApiGetChartHistoryResponse: properties: results: $ref: '#/components/schemas/ChartHistory' status: type: string enum: - ok nullable: false required: - results - status type: object FieldId: type: string XAxis: allOf: - $ref: '#/components/schemas/Axis' - properties: dataZoomItemCount: type: number format: double description: Number of items visible at once in the data-zoom window dataZoomAnchor: type: string enum: - start - end description: Where the initial data-zoom window anchors when data zoom is enabled enableDataZoom: type: boolean description: Enable data zoom slider for this axis sortType: $ref: '#/components/schemas/XAxisSortType' description: How to sort the X axis type: object ChartType.CUSTOM: enum: - custom type: string BigNumber: properties: comparisonField: type: string conditionalFormattings: items: $ref: '#/components/schemas/ConditionalFormattingConfig' type: array description: Conditional formatting rules comparisonLabel: type: string description: Custom label for the comparison value flipColors: type: boolean description: Flip positive/negative colors (red for increase, green for decrease) comparisonFormat: $ref: '#/components/schemas/ComparisonFormatTypes' description: Format for comparison value showComparison: type: boolean description: Show comparison with previous value showTableNamesInLabel: type: boolean description: Include table name in the label showBigNumberLabel: type: boolean description: Show the label above the number selectedField: type: string description: Field ID to display as the big number style: $ref: '#/components/schemas/CompactOrAlias' description: Number formatting style (compact notation) label: type: string description: Custom label for the big number type: object SchedulerRunStatus: enum: - completed - partial_failure - failed - running - scheduled type: string ChartType.MAP: enum: - map type: string CacheMetadata: properties: preAggregate: properties: reason: $ref: '#/components/schemas/PreAggregateMatchMiss' name: type: string hit: type: boolean required: - hit type: object cacheHit: type: boolean cacheKey: type: string cacheExpiresAt: type: string format: date-time cacheUpdatedTime: type: string format: date-time required: - cacheHit type: object DefaultTimeDimension: properties: interval: $ref: '#/components/schemas/TimeFrames' field: type: string required: - interval - field type: object Pick_LightdashUser.userUuid-or-firstName-or-lastName_: properties: {} type: object description: From T, pick a set of properties whose keys are in the union K SavedChartDAO: $ref: '#/components/schemas/Omit_SavedChart.inheritsFromOrgOrProject-or-access_' SchedulerFormat: enum: - csv - xlsx - image - gsheets - pdf type: string SchedulerRun: properties: format: $ref: '#/components/schemas/SchedulerFormat' createdByUserName: type: string createdByUserUuid: type: string resourceName: type: string resourceUuid: type: string resourceType: $ref: '#/components/schemas/SchedulerResourceType' logCounts: $ref: '#/components/schemas/LogCounts' details: allOf: - $ref: '#/components/schemas/Record_string.AnyType_' nullable: true createdAt: type: string format: date-time runStatus: $ref: '#/components/schemas/SchedulerRunStatus' status: $ref: '#/components/schemas/SchedulerJobStatus' scheduledTime: type: string format: date-time schedulerName: type: string schedulerUuid: type: string runId: type: string required: - format - createdByUserName - createdByUserUuid - resourceName - resourceUuid - resourceType - logCounts - details - createdAt - runStatus - status - scheduledTime - schedulerName - schedulerUuid - runId type: object ApiContentVerificationDeleteResponse: properties: results: {} status: type: string enum: - ok nullable: false required: - status type: object SchedulerGsheetsOptions: properties: tabName: type: string url: type: string gdriveOrganizationName: type: string gdriveName: type: string gdriveId: type: string required: - url - gdriveOrganizationName - gdriveName - gdriveId type: object SchedulerJobStatus: enum: - scheduled - started - completed - error type: string MapHexbinAggregation: enum: - sum - avg - min - max type: string DashboardMarkdownTileProperties: properties: properties: properties: hideFrame: type: boolean content: type: string title: type: string required: - content - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.MARKDOWN' required: - properties - type type: object BinRange: properties: to: type: number format: double description: End value for this bin range (undefined for the last range) from: type: number format: double description: Start value for this bin range (undefined for the first range) type: object FilterGroupItem: anyOf: - $ref: '#/components/schemas/FilterGroup' - $ref: '#/components/schemas/FilterRule' FieldTarget: properties: fieldId: type: string description: Field ID to filter on required: - fieldId type: object PivotValue: properties: value: description: Pivot value field: type: string description: Pivot field ID required: - value - field type: object ColorPaletteSource: anyOf: - properties: type: type: string enum: - config nullable: false required: - type type: object - properties: type: type: string enum: - default nullable: false required: - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - organization nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - project nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - space nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - dashboard nullable: false required: - name - uuid - type type: object - properties: name: type: string uuid: type: string type: type: string enum: - chart nullable: false required: - name - uuid - type type: object description: 'Where a resolved colour palette came from. The `config` and `default` cases carry no entity reference; the rest expose the UUID and human-readable name of the entity (organization, project, space, dashboard or chart) that owns the winning palette in the resolution chain.' PreAggregateMissReason.GRANULARITY_TOO_FINE: enum: - granularity_too_fine type: string CartesianChartConfig: properties: config: $ref: '#/components/schemas/CartesianChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.CARTESIAN' description: Type of chart visualization required: - type type: object MetricOverrides: properties: {} additionalProperties: $ref: '#/components/schemas/Pick_Metric.formatOptions_' type: object AppScheduler: allOf: - $ref: '#/components/schemas/SchedulerBase' - properties: appUuid: type: string savedSqlUuid: type: number enum: - null nullable: true dashboardUuid: type: number enum: - null nullable: true savedChartUuid: type: number enum: - null nullable: true required: - appUuid - savedSqlUuid - dashboardUuid - savedChartUuid type: object ChartType.CARTESIAN: enum: - cartesian type: string GaugeChart: properties: customPercentageLabel: type: string description: Custom label for the percentage display showPercentage: type: boolean description: Show value as percentage customLabel: type: string description: Custom label for the gauge value sections: items: $ref: '#/components/schemas/GaugeSection' type: array description: Color sections/ranges for the gauge showAxisLabels: type: boolean description: Show min/max labels on the gauge maxFieldId: type: string description: Field ID to use as the max value max: type: number format: double description: Maximum value for the gauge min: type: number format: double description: Minimum value for the gauge selectedField: type: string description: Field ID for the gauge value type: object SchedulerBase: properties: projectName: type: string nullable: true projectUuid: type: string nullable: true includeLinks: type: boolean notificationFrequency: $ref: '#/components/schemas/NotificationFrequency' enabled: type: boolean thresholds: items: $ref: '#/components/schemas/ThresholdOptions' type: array options: $ref: '#/components/schemas/SchedulerOptions' appName: type: string nullable: true appUuid: type: string nullable: true savedSqlName: type: string nullable: true savedSqlUuid: type: string nullable: true dashboardName: type: string nullable: true dashboardUuid: type: string nullable: true savedChartName: type: string nullable: true savedChartUuid: type: string nullable: true projectSchedulerTimezone: type: string timezone: type: string cron: type: string format: $ref: '#/components/schemas/SchedulerFormat' createdByName: type: string nullable: true createdBy: type: string updatedAt: type: string format: date-time createdAt: type: string format: date-time message: type: string name: type: string schedulerUuid: type: string required: - includeLinks - enabled - options - appName - appUuid - savedSqlName - savedSqlUuid - dashboardName - dashboardUuid - savedChartName - savedChartUuid - cron - format - createdByName - createdBy - updatedAt - createdAt - name - schedulerUuid type: object Record_string.string-or-string-Array_: properties: {} additionalProperties: anyOf: - type: string - items: type: string type: array type: object description: Construct a type with a set of properties K of type T LegendPlacement: type: string enum: - custom - outsideRight - outsideLeft description: 'High-level legend placement preset. Set to ''outsideRight'' or ''outsideLeft'' to render the legend beside the plot with reserved grid space. Undefined behaves like ''custom'' (no override of the existing legend position fields).' ConditionalFormattingMinMax_number-or-auto_: properties: max: anyOf: - type: number format: double - type: string enum: - auto description: Maximum value (number or 'auto') min: anyOf: - type: number format: double - type: string enum: - auto description: Minimum value (number or 'auto') required: - max - min type: object GaugeChartConfig: properties: config: $ref: '#/components/schemas/GaugeChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.GAUGE' description: Type of chart visualization required: - type type: object PreAggregateMissReason.USER_BYPASS: enum: - user_bypass type: string ColumnProperties: properties: width: type: number format: double color: type: string description: Color for bar display style (hex code) displayStyle: type: string enum: - text - bar description: How to display the cell value frozen: type: boolean description: Freeze the column (stick to left side) name: type: string description: Custom display name for the column visible: type: boolean description: Whether the column is visible type: object MapChartLocation: enum: - USA - world - europe - custom type: string Filters: properties: tableCalculations: $ref: '#/components/schemas/FilterGroup' description: Table calculation filter group metrics: $ref: '#/components/schemas/FilterGroup' description: Metric filter group dimensions: $ref: '#/components/schemas/FilterGroup' description: Dimension filter group type: object PreAggregateMatchMiss: anyOf: - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.NO_PRE_AGGREGATES_DEFINED' required: - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.DIMENSION_NOT_IN_PRE_AGGREGATE' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.METRIC_NOT_IN_PRE_AGGREGATE' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.NON_ADDITIVE_METRIC' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.CUSTOM_SQL_METRIC' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.FILTER_DIMENSION_NOT_IN_PRE_AGGREGATE' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.PRE_AGGREGATE_FILTER_NOT_SATISFIED' required: - fieldId - reason type: object - properties: preAggregateTimeDimension: type: string preAggregateGranularity: $ref: '#/components/schemas/TimeFrames' queryGranularity: $ref: '#/components/schemas/TimeFrames' fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.GRANULARITY_TOO_FINE' required: - preAggregateTimeDimension - preAggregateGranularity - queryGranularity - fieldId - reason type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.CUSTOM_DIMENSION_PRESENT' required: - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.CUSTOM_METRIC_PRESENT' required: - fieldId - reason type: object - properties: fieldId: $ref: '#/components/schemas/FieldId' reason: $ref: '#/components/schemas/PreAggregateMissReason.TABLE_CALCULATION_PRESENT' required: - fieldId - reason type: object - properties: preAggregateName: type: string reason: $ref: '#/components/schemas/PreAggregateMissReason.USER_BYPASS' required: - preAggregateName - reason type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.EXPLORE_RESOLUTION_ERROR' required: - reason type: object - properties: reason: $ref: '#/components/schemas/PreAggregateMissReason.NO_ACTIVE_MATERIALIZATION' required: - reason type: object TableChart: properties: rowLimit: $ref: '#/components/schemas/RowLimit' description: Limit displayed rows to first/last N metricsAsRows: type: boolean description: Display metrics as rows instead of columns conditionalFormattings: items: $ref: '#/components/schemas/ConditionalFormattingConfig' type: array description: Conditional formatting rules columns: $ref: '#/components/schemas/Record_string.ColumnProperties_' description: Column-specific configuration showRowGrouping: type: boolean description: 'Visually deduplicate repeated row-index dimension values across consecutive rows without showing aggregate subtotal rows. When `showSubtotals` is true, grouping is implicitly active and this flag is ignored. Defaults to false.' showSubtotalsExpanded: type: boolean description: Default subtotal rows to expanded (vs. collapsed). Only meaningful when showSubtotals is true. showSubtotals: type: boolean description: Show subtotal rows showResultsTotal: type: boolean description: Show total results count hideRowNumbers: type: boolean description: Hide row number column showTableNames: type: boolean description: Show table names in column headers showRowCalculation: type: boolean description: Show row totals/calculations showColumnCalculation: type: boolean description: Show column totals/calculations type: object DashboardParameters: $ref: '#/components/schemas/Record_string.DashboardParameterValue_' PromotionChanges: properties: dataApps: items: properties: data: $ref: '#/components/schemas/PromotedApp' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array sqlCharts: items: properties: data: $ref: '#/components/schemas/PromotedSqlChart' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array charts: items: properties: data: $ref: '#/components/schemas/PromotedChart' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array dashboards: items: properties: data: $ref: '#/components/schemas/PromotedDashboard' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array spaces: items: properties: data: $ref: '#/components/schemas/PromotedSpace' action: $ref: '#/components/schemas/PromotionAction' required: - data - action type: object type: array required: - charts - dashboards - spaces type: object SchedulerEmailTarget: properties: recipient: type: string schedulerUuid: type: string updatedAt: type: string format: date-time createdAt: type: string format: date-time schedulerEmailTargetUuid: type: string required: - recipient - schedulerUuid - updatedAt - createdAt - schedulerEmailTargetUuid type: object DashboardMarkdownTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardMarkdownTileProperties' CompactOrAlias: anyOf: - $ref: '#/components/schemas/Compact' - type: string enum: - K - thousand - M - million - B - billion - T - trillion - KB - kilobyte - MB - megabyte - GB - gigabyte - TB - terabyte - PB - petabyte - KiB - kibibyte - MiB - mebibyte - GiB - gibibyte - TiB - tebibyte - PiB - pebibyte CustomVisConfig: properties: config: $ref: '#/components/schemas/CustomVis' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.CUSTOM' description: Type of chart visualization required: - type type: object BinGroup: properties: values: items: $ref: '#/components/schemas/GroupValueRule' type: array description: Rules that match values into this group name: type: string description: Display name for this group (e.g. "North America") required: - values - name type: object PromotedSqlChart: properties: spacePath: type: string spaceSlug: type: string description: type: string nullable: true name: type: string projectUuid: type: string slug: type: string oldUuid: type: string uuid: type: string required: - spacePath - spaceSlug - description - name - projectUuid - slug - oldUuid - uuid type: object ? Pick_Space.organizationUuid-or-projectUuid-or-uuid-or-name-or-inheritParentPermissions-or-projectMemberAccessRole-or-pinnedListUuid-or-pinnedListOrder-or-slug-or-parentSpaceUuid-or-path_ : properties: name: type: string projectUuid: type: string organizationUuid: type: string uuid: type: string inheritParentPermissions: type: boolean projectMemberAccessRole: allOf: - $ref: '#/components/schemas/SpaceMemberRole' nullable: true pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true slug: type: string parentSpaceUuid: type: string nullable: true path: type: string required: - name - projectUuid - organizationUuid - uuid - inheritParentPermissions - projectMemberAccessRole - pinnedListUuid - pinnedListOrder - slug - parentSpaceUuid - path type: object description: From T, pick a set of properties whose keys are in the union K AdditionalMetric: properties: label: type: string description: Display label for the metric type: $ref: '#/components/schemas/MetricType' description: Aggregation type description: type: string description: Description of what the metric measures sql: type: string description: SQL expression (e.g., ${TABLE}.column_name) hidden: type: boolean description: Whether the metric is hidden from users round: type: number format: double description: Number of decimal places compact: $ref: '#/components/schemas/CompactOrAlias' description: Compact format for large numbers format: anyOf: - $ref: '#/components/schemas/Format' - type: string description: Format string (legacy format specification) separator: $ref: '#/components/schemas/NumberSeparator' description: Number separator style for grouping/decimal characters table: type: string description: Table name the metric belongs to name: type: string description: Internal name of the metric index: type: number format: double description: Display order index filters: items: $ref: '#/components/schemas/MetricFilterRule' type: array description: Filters to apply to this metric baseDimensionName: type: string description: Name of the base dimension/column this metric aggregates uuid: type: string nullable: true description: Unique identifier for the metric percentile: type: number format: double description: Percentile value for percentile metrics distinctKeys: items: type: string type: array formatOptions: $ref: '#/components/schemas/CustomFormat' description: Formatting configuration generationType: type: string enum: - periodOverPeriod nullable: false description: 'Optional marker for metrics generated by the system. Currently used for Period-over-Period (PoP) previous-period metrics.' baseMetricId: $ref: '#/components/schemas/FieldId' description: For PoP-generated metrics, the base metric id that this metric is derived from. timeDimensionId: $ref: '#/components/schemas/FieldId' description: For PoP-generated metrics, the time dimension id used for the comparison. granularity: $ref: '#/components/schemas/TimeFrames' description: For PoP-generated metrics, the granularity used for the comparison. periodOffset: type: number format: double description: For PoP-generated metrics, the number of periods to offset by (>= 1). required: - type - sql - table - name type: object additionalProperties: true Partial_CompleteEChartsConfig_: properties: legend: $ref: '#/components/schemas/EchartsLegend' description: Legend configuration grid: $ref: '#/components/schemas/EchartsGrid' description: Grid (chart area) configuration series: items: $ref: '#/components/schemas/Series' type: array description: Chart series configuration xAxis: items: $ref: '#/components/schemas/XAxis' type: array description: X axis configuration yAxis: items: $ref: '#/components/schemas/Axis' type: array description: Y axis configuration tooltip: type: string description: Tooltip formatter template tooltipSort: $ref: '#/components/schemas/TooltipSortBy' description: How to sort tooltip items showAxisTicks: type: boolean description: Show tick marks on axes axisLabelFontSize: type: number format: double description: Font size for axis labels axisTitleFontSize: type: number format: double description: Font size for axis titles type: object description: Make all properties in T optional Source: properties: content: type: string highlight: properties: end: $ref: '#/components/schemas/SourcePosition' start: $ref: '#/components/schemas/SourcePosition' required: - end - start type: object range: properties: end: $ref: '#/components/schemas/SourcePosition' start: $ref: '#/components/schemas/SourcePosition' required: - end - start type: object path: type: string required: - content - range - path type: object ChartScheduler: allOf: - $ref: '#/components/schemas/SchedulerBase' - properties: appUuid: type: number enum: - null nullable: true savedSqlUuid: type: number enum: - null nullable: true dashboardUuid: type: number enum: - null nullable: true savedChartUuid: type: string required: - appUuid - savedSqlUuid - dashboardUuid - savedChartUuid type: object FrameBoundary: properties: offset: type: number format: double description: Offset for PRECEDING/FOLLOWING type: $ref: '#/components/schemas/FrameBoundaryType' description: Boundary type required: - type type: object PieChartLegendPosition: type: string enum: - horizontal - vertical nullable: false DimensionType: enum: - string - number - timestamp - date - boolean type: string TableCalculationTemplateType.PERCENT_CHANGE_FROM_PREVIOUS: enum: - percent_change_from_previous type: string DashboardTileTypes.MARKDOWN: enum: - markdown type: string ThresholdOptions: properties: value: type: number format: double fieldId: type: string operator: $ref: '#/components/schemas/ThresholdOperator' required: - value - fieldId - operator type: object DashboardTileTypes.HEADING: enum: - heading type: string FunnelChartDataInput: enum: - row - column type: string TooltipSortBy: type: string enum: - default - alphabetical - value_ascending - value_descending DashboardTileTypes.SQL_CHART: enum: - sql_chart type: string SeriesMetadata: properties: color: type: string description: Color for the series required: - color type: object UpdatedByUser: properties: userUuid: type: string firstName: type: string lastName: type: string required: - userUuid - firstName - lastName type: object additionalProperties: true MetricQuery: properties: metadata: properties: hasADateDimension: $ref: '#/components/schemas/Pick_CompiledDimension.label-or-name-or-table_' required: - hasADateDimension type: object pivotDimensions: items: $ref: '#/components/schemas/FieldId' type: array description: 'Dimension field IDs used as pivot columns (from chart''s pivotConfig.columns). Used by row_total() to determine non-pivot dimensions for GROUP BY.' timezone: type: string description: Timezone for date/time values (e.g., 'America/Los_Angeles', 'UTC') dimensionOverrides: $ref: '#/components/schemas/DimensionOverrides' description: Override formatting options for existing dimensions metricOverrides: $ref: '#/components/schemas/MetricOverrides' description: Override formatting options for existing metrics customDimensions: items: $ref: '#/components/schemas/CustomDimension' type: array description: Custom dimensions defined inline additionalMetrics: items: $ref: '#/components/schemas/AdditionalMetric' type: array description: Custom metrics defined inline (ad-hoc metrics not in the dbt model) tableCalculations: items: $ref: '#/components/schemas/TableCalculation' type: array description: Custom calculations to perform on query results limit: type: number format: double description: Maximum number of rows to return sorts: items: $ref: '#/components/schemas/SortField' type: array description: Sort configuration for query results filters: $ref: '#/components/schemas/Filters' description: Filter rules to apply to the query metrics: items: $ref: '#/components/schemas/FieldId' type: array description: List of metric field IDs to include dimensions: items: $ref: '#/components/schemas/FieldId' type: array description: List of dimension field IDs to include exploreName: type: string description: The name of the explore to query required: - tableCalculations - limit - sorts - filters - metrics - dimensions - exploreName type: object Record_string.SeriesMetadata_: properties: {} additionalProperties: $ref: '#/components/schemas/SeriesMetadata' type: object description: Construct a type with a set of properties K of type T Record_string.number_: properties: {} additionalProperties: type: number format: double type: object description: Construct a type with a set of properties K of type T ChartKind: enum: - line - horizontal_bar - vertical_bar - scatter - area - mixed - pie - table - big_number - funnel - custom - treemap - gauge - map - sankey type: string SortField: properties: pivotValues: items: $ref: '#/components/schemas/PivotSortAnchor' type: array description: Pins the row-sort anchor to a specific pivot column. Ignored for non-pivoted results. nullsFirst: type: boolean description: Sort null values first descending: type: boolean description: Sort in descending order fieldId: type: string description: Field ID to sort by required: - descending - fieldId type: object MetricType: enum: - percentile - average - count - count_distinct - sum - sum_distinct - average_distinct - min - max - percent_of_previous - percent_of_total - running_total - number - median - string - date - timestamp - boolean type: string PieChartValueLabel: type: string enum: - hidden - inside - outside nullable: false DashboardHeadingTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardHeadingTileProperties' NumberSeparator: enum: - default - commaPeriod - spacePeriod - periodComma - noSeparatorPeriod - apostrophePeriod type: string SchedulerPdfOptions: $ref: '#/components/schemas/Record_string.never_' SchedulerImageOptions: properties: withPdf: type: boolean type: object CustomBinDimension: anyOf: - $ref: '#/components/schemas/FixedNumberBinDimension' - $ref: '#/components/schemas/FixedWidthBinDimension' - $ref: '#/components/schemas/CustomRangeBinDimension' - $ref: '#/components/schemas/CustomGroupBinDimension' FiltersResponse: properties: tableCalculations: $ref: '#/components/schemas/FilterGroupResponse' metrics: $ref: '#/components/schemas/FilterGroupResponse' dimensions: $ref: '#/components/schemas/FilterGroupResponse' type: object Partial_CompleteCartesianChartLayout_: properties: xField: type: string description: Field ID to use for the X axis yField: items: type: string type: array description: Field IDs to use for the Y axis flipAxes: type: boolean description: Swap X and Y axes (creates horizontal bar charts) showGridX: type: boolean description: Show vertical grid lines showGridY: type: boolean description: Show horizontal grid lines showXAxis: type: boolean description: Show the X axis showYAxis: type: boolean description: Show the Y axis showLeftYAxis: type: boolean description: Controls left/primary Y-axis visibility showRightYAxis: type: boolean description: Controls right/secondary Y-axis visibility stack: anyOf: - type: string - type: boolean description: Stack series together (true for default stacking, or string for stack group name) connectNulls: type: boolean description: Connect null data points with a line colorByCategory: type: boolean description: Color each bar by its category value instead of using a single series color categoryColorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Per-category color overrides (maps category value to hex color) type: object description: Make all properties in T optional DashboardTile: anyOf: - $ref: '#/components/schemas/DashboardChartTile' - $ref: '#/components/schemas/DashboardMarkdownTile' - $ref: '#/components/schemas/DashboardLoomTile' - $ref: '#/components/schemas/DashboardSqlChartTile' - $ref: '#/components/schemas/DashboardHeadingTile' - $ref: '#/components/schemas/DashboardDataAppTile' FilterGroupResponse: anyOf: - properties: or: items: $ref: '#/components/schemas/AnyType' type: array id: type: string required: - or - id type: object - properties: and: items: $ref: '#/components/schemas/AnyType' type: array id: type: string required: - and - id type: object PieChart: properties: metadata: $ref: '#/components/schemas/Record_string.SeriesMetadata_' description: Metadata for series (colors, etc.) legendMaxItemLength: type: number format: double description: Maximum character length for legend items legendPosition: $ref: '#/components/schemas/PieChartLegendPosition' description: Legend position/orientation showLegend: type: boolean description: Show the chart legend groupSortOverrides: items: type: string type: array description: Custom sort order for groups/slices groupValueOptionOverrides: $ref: '#/components/schemas/Record_string.Partial_PieChartValueOptions__' description: Per-slice value display options groupColorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom colors for each group/slice groupLabelOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom labels for each group/slice showPercentage: type: boolean description: Show percentage on slices showValue: type: boolean description: Show the actual value on slices valueLabel: $ref: '#/components/schemas/PieChartValueLabel' description: Position of value labels on slices isDonut: type: boolean description: Display as donut chart with hole in center metricId: type: string description: Field ID of the metric to display groupFieldIds: items: type: string type: array description: Field IDs used for grouping/slicing the pie type: object GroupValueRule: properties: value: type: string matchType: $ref: '#/components/schemas/GroupValueMatchType' required: - value - matchType type: object MapFieldConfig: properties: label: type: string description: Custom label for the field visible: type: boolean description: Whether to show this field in tooltips type: object FrameClause: properties: end: $ref: '#/components/schemas/FrameBoundary' description: End boundary of the frame start: $ref: '#/components/schemas/FrameBoundary' description: Start boundary of the frame frameType: $ref: '#/components/schemas/FrameType' description: Type of frame (ROWS or RANGE) required: - end - frameType type: object EchartsLegend: properties: placement: $ref: '#/components/schemas/LegendPlacement' description: 'High-level placement preset. Overrides orient/top/right/bottom/left when set to an outside value.' icon: type: string enum: - circle - rect - roundRect - triangle - diamond - pin - arrow - none description: Legend icon shape align: type: string enum: - auto - left - right description: Legend alignment height: type: string description: Legend height width: type: string description: Legend width left: type: string description: Left position bottom: type: string description: Bottom position right: type: string description: Right position top: type: string description: Top position orient: type: string enum: - horizontal - vertical description: Legend orientation type: type: string enum: - plain - scroll description: Legend type (plain or scrollable) show: type: boolean description: Show the legend type: object SankeyChartConfig: properties: config: $ref: '#/components/schemas/SankeyChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.SANKEY' description: Type of chart visualization required: - type type: object Pick_CompiledDimension.label-or-name-or-table_: properties: name: type: string label: type: string table: type: string required: - name - label - table type: object description: From T, pick a set of properties whose keys are in the union K ApiSavedChartResponse: properties: results: $ref: '#/components/schemas/SavedChart' status: type: string enum: - ok nullable: false required: - results - status type: object TableCalculationTemplateType.WINDOW_FUNCTION: enum: - window_function type: string ApiCalculateTotalResponse: properties: results: $ref: '#/components/schemas/Record_string.number_' status: type: string enum: - ok nullable: false required: - results - status type: object Axis: properties: rotate: type: number format: double description: Rotation angle for axis labels inverse: type: boolean description: Reverse the axis direction maxOffset: type: string description: Offset from maximum value minOffset: type: string description: Offset from minimum value max: type: string description: Maximum value (or 'dataMax' for auto) min: type: string description: Minimum value (or 'dataMin' for auto) name: type: string description: Axis title type: object CartesianChartLayout: $ref: '#/components/schemas/Partial_CompleteCartesianChartLayout_' ApiSavedChartSchedulersResponse: properties: results: items: $ref: '#/components/schemas/SchedulerAndTargets' type: array status: type: string enum: - ok nullable: false required: - results - status type: object SchedulerMsTeamsTarget: properties: webhook: type: string schedulerUuid: type: string updatedAt: type: string format: date-time createdAt: type: string format: date-time schedulerMsTeamsTargetUuid: type: string required: - webhook - schedulerUuid - updatedAt - createdAt - schedulerMsTeamsTargetUuid type: object DashboardFilters: properties: tableCalculations: items: $ref: '#/components/schemas/DashboardFilterRule' type: array metrics: items: $ref: '#/components/schemas/DashboardFilterRule' type: array dimensions: items: $ref: '#/components/schemas/DashboardFilterRule' type: array required: - tableCalculations - metrics - dimensions type: object DashboardTileBase: $ref: '#/components/schemas/Required_CreateDashboardTileBase_' KnexPaginatedData_SchedulerRun-Array_: properties: pagination: allOf: - $ref: '#/components/schemas/KnexPaginateArgs' - properties: totalResults: type: number format: double totalPageCount: type: number format: double required: - totalResults - totalPageCount type: object data: items: $ref: '#/components/schemas/SchedulerRun' type: array required: - data type: object AnyType: description: 'This AnyType is an alias for any The goal is to make it easier to identify any type in the codebase without having to eslint-disable all the time These are only used on legacy `any` types, don''t use it for new types. This is added on a separate file to avoid circular dependencies.' TableCalculation: anyOf: - $ref: '#/components/schemas/SqlTableCalculation' - $ref: '#/components/schemas/TemplateTableCalculation' - $ref: '#/components/schemas/FormulaTableCalculation' ApiSuccessEmpty: properties: results: {} status: type: string enum: - ok nullable: false required: - status type: object TimeFrames: enum: - RAW - YEAR - QUARTER - MONTH - WEEK - DAY - HOUR - MINUTE - SECOND - MILLISECOND - DAY_OF_WEEK_INDEX - DAY_OF_MONTH_NUM - DAY_OF_YEAR_NUM - WEEK_NUM - MONTH_NUM - QUARTER_NUM - YEAR_NUM - DAY_OF_WEEK_NAME - MONTH_NAME - QUARTER_NAME - HOUR_OF_DAY_NUM - MINUTE_OF_HOUR_NUM type: string XAxisSortType: enum: - default - category - bar_totals type: string FieldType: enum: - metric - dimension type: string SankeyChart: properties: nodeLayout: $ref: '#/components/schemas/SankeyNodeLayout' description: How nodes are laid out across steps orient: type: string enum: - horizontal - vertical description: Orientation of the diagram nodeAlign: type: string enum: - left - right - justify description: Node alignment metricFieldId: type: string description: Field ID for the link value metric targetFieldId: type: string description: Field ID for the target node dimension sourceFieldId: type: string description: Field ID for the source node dimension type: object Record_string.never_: properties: {} type: object description: Construct a type with a set of properties K of type T FilterRule_FilterOperator.DashboardFieldTarget.AnyType.AnyType_: properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: $ref: '#/components/schemas/DashboardFieldTarget' description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true FilterRule: properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: $ref: '#/components/schemas/FieldTarget' description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true SchedulerGoogleChatTarget: properties: googleChatWebhook: type: string schedulerUuid: type: string updatedAt: type: string format: date-time createdAt: type: string format: date-time schedulerGoogleChatTargetUuid: type: string required: - googleChatWebhook - schedulerUuid - updatedAt - createdAt - schedulerGoogleChatTargetUuid type: object PreAggregateMissReason.NO_ACTIVE_MATERIALIZATION: enum: - no_active_materialization type: string PreAggregateMissReason.PRE_AGGREGATE_FILTER_NOT_SATISFIED: enum: - pre_aggregate_filter_not_satisfied type: string SqlTableCalculation: allOf: - $ref: '#/components/schemas/TableCalculationBase' - properties: sql: type: string description: SQL expression for the calculation (can reference fields with ${table.field}) required: - sql type: object PromotedDashboard: allOf: - $ref: '#/components/schemas/DashboardDAO' - properties: spacePath: type: string spaceSlug: type: string required: - spacePath - spaceSlug type: object PreAggregateMissReason.CUSTOM_DIMENSION_PRESENT: enum: - custom_dimension_present type: string DashboardDataAppTileProperties: properties: properties: properties: appDeletedAt: type: string nullable: true appUuid: type: string hideTitle: type: boolean title: type: string required: - appUuid - title type: object type: $ref: '#/components/schemas/DashboardTileTypes.DATA_APP' required: - properties - type type: object Field: properties: fieldType: $ref: '#/components/schemas/FieldType' type: type: string name: type: string label: type: string table: type: string tableLabel: type: string sql: type: string description: type: string source: $ref: '#/components/schemas/Source' hidden: type: boolean compact: $ref: '#/components/schemas/CompactOrAlias' round: type: number format: double format: anyOf: - $ref: '#/components/schemas/Format' - type: string separator: $ref: '#/components/schemas/NumberSeparator' description: 'Number separator style for grouping/decimal characters. Composes with `format` (including ECMA-376 expressions) and `formatOptions` — it only controls the separator characters, not the format shape.' groupLabel: type: string deprecated: true groups: items: type: string type: array urls: items: $ref: '#/components/schemas/FieldUrl' type: array index: type: number format: double tags: items: type: string type: array parameterReferences: items: type: string type: array required: - fieldType - type - name - label - table - tableLabel - sql - hidden type: object additionalProperties: true PreAggregateMissReason.DIMENSION_NOT_IN_PRE_AGGREGATE: enum: - dimension_not_in_pre_aggregate type: string PreAggregateMissReason.CUSTOM_SQL_METRIC: enum: - custom_sql_metric type: string FixedNumberBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.FIXED_NUMBER' binNumber: type: number format: double required: - id - name - table - type - dimensionId - binType - binNumber type: object additionalProperties: true SqlChartScheduler: allOf: - $ref: '#/components/schemas/SchedulerBase' - properties: appUuid: type: number enum: - null nullable: true savedSqlUuid: type: string dashboardUuid: type: number enum: - null nullable: true savedChartUuid: type: number enum: - null nullable: true required: - appUuid - savedSqlUuid - dashboardUuid - savedChartUuid type: object BinType.CUSTOM_RANGE: enum: - custom_range type: string PromotedApp: properties: name: type: string uuid: type: string required: - name - uuid type: object DashboardScheduler: allOf: - $ref: '#/components/schemas/SchedulerBase' - properties: selectedTabs: items: type: string type: array nullable: true customViewportWidth: type: number format: double parameters: $ref: '#/components/schemas/ParametersValuesMap' filters: items: $ref: '#/components/schemas/DashboardFilterRule' type: array appUuid: type: number enum: - null nullable: true savedSqlUuid: type: number enum: - null nullable: true dashboardUuid: type: string savedChartUuid: type: number enum: - null nullable: true required: - selectedTabs - appUuid - savedSqlUuid - dashboardUuid - savedChartUuid type: object ChartType.SANKEY: enum: - sankey type: string ConditionalFormattingConfigWithSingleColor: properties: applyTo: $ref: '#/components/schemas/ConditionalFormattingColorApplyTo' description: Apply formatting to cell background or text rules: items: $ref: '#/components/schemas/ConditionalFormattingWithFilterOperator' type: array description: Rules for single-color conditional formatting darkColor: type: string description: Color for dark mode color: type: string description: Color for single-color conditional formatting target: allOf: - $ref: '#/components/schemas/FieldTarget' nullable: true description: Target field for the formatting rule required: - rules - color - target type: object PromotedChart: allOf: - $ref: '#/components/schemas/SavedChartDAO' - properties: oldUuid: type: string spacePath: type: string spaceSlug: type: string required: - oldUuid - spacePath - spaceSlug type: object MapChartType: enum: - scatter - area - heatmap - hexbin type: string BaseFilterRule_FilterOperator.number-or-string_: properties: values: items: anyOf: - type: number format: double - type: string type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter rule required: - operator - id type: object MarkLineData: properties: dynamicValue: type: string enum: - average nullable: false description: Dynamic value type label: properties: position: type: string enum: - start - middle - end description: Label position formatter: type: string description: Label formatter type: object description: Label configuration for this data point lineStyle: properties: color: type: string description: Line color required: - color type: object description: Line style for this data point uuid: type: string description: Unique identifier for this mark line type: type: string description: Point type (e.g., 'average') value: type: string description: Value to display name: type: string description: Name of the reference line xAxis: type: string description: X axis value for vertical line yAxis: type: string description: Y axis value for horizontal line required: - uuid type: object Record_string.ColumnProperties_: properties: {} additionalProperties: $ref: '#/components/schemas/ColumnProperties' type: object description: Construct a type with a set of properties K of type T GroupValueMatchType: enum: - exact - startsWith - endsWith - includes type: string Compact: enum: - thousands - millions - billions - trillions - kilobytes - megabytes - gigabytes - terabytes - petabytes - kibibytes - mebibytes - gibibytes - tebibytes - pebibytes type: string GaugeSection: properties: color: type: string description: Color for this section (hex code) maxFieldId: type: string description: Field ID to use as max value minFieldId: type: string description: Field ID to use as min value max: type: number format: double description: End value for this section min: type: number format: double description: Start value for this section required: - color - max - min type: object Record_string.DashboardParameterValue_: properties: {} additionalProperties: $ref: '#/components/schemas/DashboardParameterValue' type: object description: Construct a type with a set of properties K of type T DashboardDAO: $ref: '#/components/schemas/Omit_Dashboard.inheritsFromOrgOrProject-or-access_' ParameterValue: anyOf: - type: string - type: number format: double - items: type: string type: array - items: type: number format: double type: array TableCalculationTemplateType.RUNNING_TOTAL: enum: - running_total type: string MapChartConfig: properties: config: $ref: '#/components/schemas/MapChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.MAP' description: Type of chart visualization required: - type type: object ThresholdOperator: enum: - greaterThan - lessThan - increasedBy - decreasedBy type: string Pick_Dashboard.Exclude_keyofDashboard.inheritsFromOrgOrProject-or-access__: properties: description: type: string name: type: string projectUuid: type: string organizationUuid: type: string uuid: type: string parameters: $ref: '#/components/schemas/DashboardParameters' pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true slug: type: string updatedAt: type: string format: date-time versionUuid: type: string spaceUuid: type: string dashboardVersionId: type: number format: double verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true tiles: items: $ref: '#/components/schemas/DashboardTile' type: array filters: $ref: '#/components/schemas/DashboardFilters' updatedByUser: $ref: '#/components/schemas/UpdatedByUser' spaceName: type: string views: type: number format: double firstViewedAt: anyOf: - type: string - type: string format: date-time nullable: true tabs: items: $ref: '#/components/schemas/DashboardTab' type: array config: $ref: '#/components/schemas/DashboardConfig' colorPaletteUuid: type: string nullable: true deletedAt: type: string format: date-time deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object nullable: true required: - name - projectUuid - organizationUuid - uuid - pinnedListUuid - pinnedListOrder - slug - updatedAt - versionUuid - spaceUuid - dashboardVersionId - verification - tiles - filters - spaceName - views - firstViewedAt - tabs - colorPaletteUuid type: object description: From T, pick a set of properties whose keys are in the union K ChartHistory: properties: history: items: $ref: '#/components/schemas/ChartVersionSummary' type: array required: - history type: object ParametersValuesMap: $ref: '#/components/schemas/Record_string.ParameterValue_' BinType.CUSTOM_GROUP: enum: - custom_group type: string Series: properties: isFilteredOut: type: boolean description: Whether this series is currently filtered out markLine: $ref: '#/components/schemas/MarkLine' description: Reference line configuration smooth: type: boolean description: Use smooth curves for line/area charts showSymbol: type: boolean description: Show symbols/markers on data points areaStyle: $ref: '#/components/schemas/Record_string.unknown_' description: Area fill style (presence indicates area chart) hidden: type: boolean description: Hide this series from the chart label: properties: showSeriesName: type: boolean description: Show the metric field name showLabel: type: boolean description: Show the legend/pivot name showValue: type: boolean description: Show the metric value showOverlappingLabels: type: boolean description: Show labels even when they overlap position: type: string enum: - left - top - right - bottom - inside description: Position of data labels show: type: boolean description: Show data labels on points type: object description: Data label configuration yAxisIndex: type: number format: double description: Index of Y axis to use (for dual Y axis charts) color: type: string description: Color for the series (hex code) name: type: string description: Display name for the series stackLabel: properties: show: type: boolean description: Show stack total labels type: object description: Stack total label configuration stack: type: string description: Stack group name (series with same stack name are stacked) type: $ref: '#/components/schemas/CartesianSeriesType' description: Series visualization type encode: properties: y: type: string description: Hash of yRef (computed) x: type: string description: Hash of xRef (computed) yRef: $ref: '#/components/schemas/PivotReference' description: Y axis field reference xRef: $ref: '#/components/schemas/PivotReference' description: X axis field reference required: - yRef - xRef type: object description: Field references for this series required: - type - encode type: object CustomFormat: properties: type: $ref: '#/components/schemas/CustomFormatType' description: Format type round: type: number format: double description: Number of decimal places separator: $ref: '#/components/schemas/NumberSeparator' description: Number separator style currency: type: string description: Currency code (e.g., USD, GBP, EUR) compact: $ref: '#/components/schemas/CompactOrAlias' description: Compact format for large numbers (K, M, B, T) or byte units prefix: type: string description: Prefix to prepend to formatted values suffix: type: string description: Suffix to append to formatted values timeInterval: $ref: '#/components/schemas/TimeFrames' description: Time interval for date formatting custom: type: string description: Custom format string required: - type type: object additionalProperties: true ChartType.FUNNEL: enum: - funnel type: string WindowFunctionType: enum: - row_number - percent_rank - cume_dist - rank - sum - avg - count - min - max type: string PromotionAction: enum: - no changes - create - update - delete type: string FunnelChartConfig: properties: config: $ref: '#/components/schemas/FunnelChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.FUNNEL' description: Type of chart visualization required: - type type: object CustomRangeBinDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.BIN' description: Type of custom dimension (bin or sql) dimensionId: $ref: '#/components/schemas/FieldId' description: Field ID of the parent dimension to bin binType: $ref: '#/components/schemas/BinType.CUSTOM_RANGE' customRange: items: $ref: '#/components/schemas/BinRange' type: array required: - id - name - table - type - dimensionId - binType - customRange type: object additionalProperties: true PivotSortAnchor: properties: value: anyOf: - type: string - type: number format: double - type: boolean nullable: true reference: type: string required: - value - reference type: object description: 'Coordinates of a single pivot column, used to anchor a row sort to that specific column when results are pivoted.' ChartConfig: anyOf: - $ref: '#/components/schemas/BigNumberConfig' - $ref: '#/components/schemas/CartesianChartConfig' - $ref: '#/components/schemas/CustomVisConfig' - $ref: '#/components/schemas/PieChartConfig' - $ref: '#/components/schemas/FunnelChartConfig' - $ref: '#/components/schemas/TableChartConfig' - $ref: '#/components/schemas/TreemapChartConfig' - $ref: '#/components/schemas/GaugeChartConfig' - $ref: '#/components/schemas/MapChartConfig' - $ref: '#/components/schemas/SankeyChartConfig' TableCalculationBase: properties: type: $ref: '#/components/schemas/TableCalculationType' description: Data type of the calculation result format: $ref: '#/components/schemas/CustomFormat' description: Formatting options for the calculation displayName: type: string description: Display name shown in the UI name: type: string description: Internal name of the table calculation index: type: number format: double description: Display order index required: - displayName - name type: object TableCalculationTemplate: anyOf: - properties: partitionBy: items: type: string type: array orderBy: items: properties: order: type: string enum: - asc - desc - null nullable: true fieldId: type: string required: - order - fieldId type: object type: array description: Fields to order by for window functions fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.PERCENT_CHANGE_FROM_PREVIOUS' description: Type of template calculation required: - orderBy - fieldId - type type: object - properties: partitionBy: items: type: string type: array orderBy: items: properties: order: type: string enum: - asc - desc - null nullable: true fieldId: type: string required: - order - fieldId type: object type: array description: Fields to order by for window functions fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.PERCENT_OF_PREVIOUS_VALUE' description: Type of template calculation required: - orderBy - fieldId - type type: object - properties: partitionBy: items: type: string type: array description: Fields to partition by fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.PERCENT_OF_COLUMN_TOTAL' description: Type of template calculation required: - fieldId - type type: object - properties: fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.RANK_IN_COLUMN' description: Type of template calculation required: - fieldId - type type: object - properties: fieldId: type: string description: Field ID to apply the template to type: $ref: '#/components/schemas/TableCalculationTemplateType.RUNNING_TOTAL' description: Type of template calculation required: - fieldId - type type: object - properties: frame: $ref: '#/components/schemas/FrameClause' description: Frame clause for window functions partitionBy: items: type: string type: array description: Fields to partition by for window functions orderBy: items: properties: order: type: string enum: - asc - desc - null nullable: true fieldId: type: string required: - order - fieldId type: object type: array description: Fields to order by for window functions fieldId: type: string nullable: true description: Field ID to apply the template to windowFunction: $ref: '#/components/schemas/WindowFunctionType' description: Window function type type: $ref: '#/components/schemas/TableCalculationTemplateType.WINDOW_FUNCTION' description: Type of template calculation required: - partitionBy - orderBy - fieldId - windowFunction - type type: object ApiPromotionChangesResponse: properties: results: $ref: '#/components/schemas/PromotionChanges' status: type: string enum: - ok nullable: false required: - results - status type: object Omit_Dashboard.inheritsFromOrgOrProject-or-access_: $ref: '#/components/schemas/Pick_Dashboard.Exclude_keyofDashboard.inheritsFromOrgOrProject-or-access__' description: Construct a type with the properties of T except for those in type K. DashboardChartTile: allOf: - $ref: '#/components/schemas/DashboardTileBase' - $ref: '#/components/schemas/DashboardChartTileProperties' TableChartConfig: properties: config: $ref: '#/components/schemas/TableChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.TABLE' description: Type of chart visualization required: - type type: object Record_string.ParameterValue_: properties: {} additionalProperties: $ref: '#/components/schemas/ParameterValue' type: object description: Construct a type with a set of properties K of type T TableCalculationTemplateType.RANK_IN_COLUMN: enum: - rank_in_column type: string ChartType.BIG_NUMBER: enum: - big_number type: string DashboardTileTypes.DATA_APP: enum: - data_app type: string TemplateTableCalculation: allOf: - $ref: '#/components/schemas/TableCalculationBase' - properties: template: $ref: '#/components/schemas/TableCalculationTemplate' description: Template-based calculation (alternative to sql) required: - template type: object Omit_SavedChart.inheritsFromOrgOrProject-or-access_: $ref: '#/components/schemas/Pick_SavedChart.Exclude_keyofSavedChart.inheritsFromOrgOrProject-or-access__' description: Construct a type with the properties of T except for those in type K. TableCalculationTemplateType.PERCENT_OF_COLUMN_TOTAL: enum: - percent_of_column_total type: string ComparisonFormatTypes: enum: - raw - percentage type: string ConditionalFormattingWithCompareTarget_number-or-string_: allOf: - $ref: '#/components/schemas/BaseFilterRule_FilterOperator.number-or-string_' - properties: values: items: anyOf: - type: number format: double - type: string type: array description: Values to compare against compareTarget: allOf: - $ref: '#/components/schemas/FieldTarget' nullable: true description: Target field to compare against required: - compareTarget type: object ApiPromoteChartResponse: properties: results: $ref: '#/components/schemas/SavedChartDAO' status: type: string enum: - ok nullable: false required: - results - status type: object ConditionalFormattingWithValues_number-or-string_: allOf: - $ref: '#/components/schemas/BaseFilterRule_FilterOperator.number-or-string_' - properties: values: items: anyOf: - type: number format: double - type: string type: array description: Values to compare against required: - values type: object ChartType.TREEMAP: enum: - treemap type: string PromotedSpace: $ref: '#/components/schemas/SpaceSummaryBase' DashboardFieldTarget: properties: fallbackType: $ref: '#/components/schemas/DimensionType' isSqlColumn: type: boolean tableName: type: string fieldId: type: string required: - tableName - fieldId type: object BinType.FIXED_WIDTH: enum: - fixed_width type: string DashboardSqlChartTileProperties: properties: properties: properties: chartSlug: type: string nullable: true hideTitle: type: boolean chartName: type: string savedSqlUuid: type: string nullable: true title: type: string required: - chartName - savedSqlUuid type: object type: $ref: '#/components/schemas/DashboardTileTypes.SQL_CHART' required: - properties - type type: object ConditionalFormattingConfig: anyOf: - $ref: '#/components/schemas/ConditionalFormattingConfigWithSingleColor' - $ref: '#/components/schemas/ConditionalFormattingConfigWithColorRange' PreAggregateMissReason.CUSTOM_METRIC_PRESENT: enum: - custom_metric_present type: string ConditionalFormattingColorRange: properties: end: type: string description: End color for gradient start: type: string description: Start color for gradient required: - end - start type: object PieChartConfig: properties: config: $ref: '#/components/schemas/PieChart' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.PIE' description: Type of chart visualization required: - type type: object SourcePosition: properties: character: type: number format: double line: type: number format: double required: - character - line type: object ChartType.GAUGE: enum: - gauge type: string SchedulerAndTargets: allOf: - $ref: '#/components/schemas/Scheduler' - properties: latestRun: allOf: - $ref: '#/components/schemas/SchedulerRun' nullable: true targets: items: anyOf: - $ref: '#/components/schemas/SchedulerSlackTarget' - $ref: '#/components/schemas/SchedulerEmailTarget' - $ref: '#/components/schemas/SchedulerMsTeamsTarget' - $ref: '#/components/schemas/SchedulerGoogleChatTarget' type: array required: - targets type: object DashboardHeadingTileProperties: properties: properties: properties: showDivider: type: boolean text: type: string title: {} required: - text type: object type: $ref: '#/components/schemas/DashboardTileTypes.HEADING' required: - properties - type type: object FilterOperator: enum: - isNull - notNull - equals - notEquals - startsWith - endsWith - include - doesNotInclude - lessThan - lessThanOrEqual - greaterThan - greaterThanOrEqual - inThePast - notInThePast - inTheNext - inTheCurrent - notInTheCurrent - inBetween - notInBetween - inPeriodToDate type: string ApiContentVerificationResponse: properties: results: $ref: '#/components/schemas/ContentVerificationInfo' status: type: string enum: - ok nullable: false required: - results - status type: object KnexPaginateArgs: properties: page: type: number format: double pageSize: type: number format: double required: - page - pageSize type: object FunnelChart: properties: legendPosition: $ref: '#/components/schemas/FunnelChartLegendPosition' description: Legend orientation showLegend: type: boolean description: Show the chart legend labels: properties: showPercentage: type: boolean description: Show percentage showValue: type: boolean description: Show the actual value position: $ref: '#/components/schemas/FunnelChartLabelPosition' description: Position of labels type: object description: Label display configuration colorOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom colors for funnel stages labelOverrides: $ref: '#/components/schemas/Record_string.string_' description: Custom labels for funnel stages metadata: $ref: '#/components/schemas/Record_string.SeriesMetadata_' description: Metadata for series (colors, etc.) fieldId: type: string description: Field ID to display in funnel dataInput: $ref: '#/components/schemas/FunnelChartDataInput' description: How data is structured (row-based or column-based) type: object PreAggregateMissReason.FILTER_DIMENSION_NOT_IN_PRE_AGGREGATE: enum: - filter_dimension_not_in_pre_aggregate type: string BigNumberConfig: properties: config: $ref: '#/components/schemas/BigNumber' description: Chart-type-specific configuration type: $ref: '#/components/schemas/ChartType.BIG_NUMBER' description: Type of chart visualization required: - type type: object CustomDimensionType.BIN: enum: - bin type: string EchartsGrid: properties: height: type: string description: Grid height width: type: string description: Grid width left: type: string description: Left padding bottom: type: string description: Bottom padding right: type: string description: Right padding top: type: string description: Top padding containLabel: type: boolean description: Whether the grid area contains axis labels type: object CustomFormatType: enum: - default - percent - currency - number - id - date - timestamp - bytes_si - bytes_iec - custom type: string SchedulerOptions: anyOf: - $ref: '#/components/schemas/SchedulerCsvOptions' - $ref: '#/components/schemas/SchedulerImageOptions' - $ref: '#/components/schemas/SchedulerGsheetsOptions' - $ref: '#/components/schemas/SchedulerPdfOptions' SavedChart: properties: deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object nullable: true deletedAt: type: string format: date-time verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true slug: type: string description: Unique identifier slug for this chart access: items: $ref: '#/components/schemas/SpaceAccess' type: array inheritsFromOrgOrProject: type: boolean resolvedColorPalette: $ref: '#/components/schemas/ResolvedProjectColorPalette' description: 'Fully resolved palette for this chart, computed from the org → project → space → dashboard → chart hierarchy. Read-only — set the chart''s own palette via `colorPaletteUuid`.' colorPaletteUuid: type: string nullable: true description: 'Chart-level palette override pointer. `null` means inherit from the containing dashboard / space / project / org. Writable via `UpdateSavedChart`.' colorPalette: items: type: string type: array deprecated: true dashboardName: type: string nullable: true dashboardUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true pinnedListUuid: type: string nullable: true spaceName: type: string spaceUuid: type: string organizationUuid: type: string updatedByUser: $ref: '#/components/schemas/UpdatedByUser' updatedAt: type: string format: date-time description: Timestamp when the chart was last updated parameters: $ref: '#/components/schemas/ParametersValuesMap' description: Parameter values for the chart query tableConfig: properties: columnOrder: items: type: string type: array description: Order of columns in table view required: - columnOrder type: object description: Table view configuration chartConfig: $ref: '#/components/schemas/ChartConfig' description: Visualization configuration for the chart pivotConfig: properties: columns: items: type: string type: array description: Fields to use as pivot columns required: - columns type: object description: Pivot table configuration metricQuery: $ref: '#/components/schemas/MetricQuery' description: The query configuration defining what data to fetch tableName: type: string description: The explore/table name this chart queries from description: type: string description: Optional description of what this chart displays name: type: string description: Display name of the chart projectUuid: type: string uuid: type: string required: - verification - slug - access - inheritsFromOrgOrProject - resolvedColorPalette - colorPaletteUuid - colorPalette - dashboardName - dashboardUuid - pinnedListOrder - pinnedListUuid - spaceName - spaceUuid - organizationUuid - updatedAt - tableConfig - chartConfig - metricQuery - tableName - name - projectUuid - uuid type: object CartesianChart: properties: columnLimit: type: number format: double description: Maximum number of pivot columns to display rowLimit: $ref: '#/components/schemas/RowLimit' description: Limit displayed rows to first/last N metadata: $ref: '#/components/schemas/Record_string.SeriesMetadata_' description: Metadata for series (colors, etc.) conditionalFormattings: items: $ref: '#/components/schemas/ConditionalFormattingConfig' type: array description: Conditional formatting rules eChartsConfig: $ref: '#/components/schemas/EChartsConfig' description: ECharts-specific configuration layout: $ref: '#/components/schemas/CartesianChartLayout' description: Layout configuration for the chart axes and orientation required: - eChartsConfig - layout type: object Pick_ChartVersion.chartUuid-or-versionUuid-or-createdAt-or-createdBy_: properties: createdAt: type: string format: date-time versionUuid: type: string chartUuid: type: string createdBy: allOf: - $ref: '#/components/schemas/Pick_LightdashUser.userUuid-or-firstName-or-lastName_' nullable: true required: - createdAt - versionUuid - chartUuid - createdBy type: object description: From T, pick a set of properties whose keys are in the union K DashboardTileTypes.SAVED_CHART: enum: - saved_chart type: string ApiSavedChartPaginatedSchedulersResponse: properties: results: $ref: '#/components/schemas/KnexPaginatedData_SchedulerAndTargets-Array_' status: type: string enum: - ok nullable: false required: - results - status type: object Record_string.Item-or-AdditionalMetric_: properties: {} additionalProperties: anyOf: - $ref: '#/components/schemas/Field' - $ref: '#/components/schemas/Metric' - $ref: '#/components/schemas/TableCalculation' - $ref: '#/components/schemas/AdditionalMetric' - $ref: '#/components/schemas/CustomDimension' type: object description: Construct a type with a set of properties K of type T MetricQueryResponse: properties: metadata: properties: hasADateDimension: $ref: '#/components/schemas/Pick_CompiledDimension.label-or-name-or-table_' required: - hasADateDimension type: object customDimensions: items: $ref: '#/components/schemas/CustomDimension' type: array additionalMetrics: items: $ref: '#/components/schemas/AdditionalMetric' type: array tableCalculations: items: $ref: '#/components/schemas/TableCalculation' type: array limit: type: number format: double sorts: items: $ref: '#/components/schemas/SortField' type: array filters: $ref: '#/components/schemas/FiltersResponse' metrics: items: $ref: '#/components/schemas/FieldId' type: array dimensions: items: $ref: '#/components/schemas/FieldId' type: array exploreName: type: string required: - tableCalculations - limit - sorts - filters - metrics - dimensions - exploreName type: object ApiSchedulerRunsResponse: $ref: '#/components/schemas/ApiSuccess_KnexPaginatedData_SchedulerRun-Array__' Record_string.string_: properties: {} additionalProperties: type: string type: object description: Construct a type with a set of properties K of type T PreAggregateMissReason.TABLE_CALCULATION_PRESENT: enum: - table_calculation_present type: string Scheduler: anyOf: - $ref: '#/components/schemas/ChartScheduler' - $ref: '#/components/schemas/DashboardScheduler' - $ref: '#/components/schemas/SqlChartScheduler' - $ref: '#/components/schemas/AppScheduler' ConditionalFormattingConfigWithColorRange: properties: applyTo: $ref: '#/components/schemas/ConditionalFormattingColorApplyTo' description: Apply formatting to cell background or text rule: $ref: '#/components/schemas/ConditionalFormattingMinMax_number-or-auto_' description: Rule for color range formatting (min/max values) color: $ref: '#/components/schemas/ConditionalFormattingColorRange' description: Color range for gradient conditional formatting target: allOf: - $ref: '#/components/schemas/FieldTarget' nullable: true description: Target field for the formatting rule required: - rule - color - target type: object LogCounts: properties: error: type: number format: double completed: type: number format: double started: type: number format: double scheduled: type: number format: double total: type: number format: double required: - error - completed - started - scheduled - total type: object Record_string.AnyType_: properties: {} additionalProperties: {} type: object description: Construct a type with a set of properties K of type T DashboardTileTypes: enum: - saved_chart - sql_chart - markdown - loom - heading - data_app type: string CustomSqlDimension: properties: id: type: string description: Unique identifier for the custom dimension name: type: string description: Display name for the custom dimension table: type: string description: Table this custom dimension belongs to type: $ref: '#/components/schemas/CustomDimensionType.SQL' description: Type of custom dimension (bin or sql) sql: type: string description: SQL expression for the custom dimension dimensionType: $ref: '#/components/schemas/DimensionType' description: Data type of the dimension result required: - id - name - table - type - sql - dimensionType type: object additionalProperties: true FunnelChartLabelPosition: enum: - inside - left - right - hidden type: string AndFilterGroup: properties: and: items: $ref: '#/components/schemas/FilterGroupItem' type: array description: Array of filters or nested groups combined with AND logic id: type: string description: Unique identifier for the filter group required: - and - id type: object FunnelChartLegendPosition: enum: - horizontal - vertical type: string Pick_SavedChart.Exclude_keyofSavedChart.inheritsFromOrgOrProject-or-access__: properties: description: type: string description: Optional description of what this chart displays name: type: string description: Display name of the chart projectUuid: type: string organizationUuid: type: string uuid: type: string parameters: $ref: '#/components/schemas/ParametersValuesMap' description: Parameter values for the chart query pinnedListUuid: type: string nullable: true pinnedListOrder: type: number format: double nullable: true slug: type: string description: Unique identifier slug for this chart updatedAt: type: string format: date-time description: Timestamp when the chart was last updated chartConfig: $ref: '#/components/schemas/ChartConfig' description: Visualization configuration for the chart spaceUuid: type: string dashboardUuid: type: string nullable: true verification: allOf: - $ref: '#/components/schemas/ContentVerificationInfo' nullable: true updatedByUser: $ref: '#/components/schemas/UpdatedByUser' spaceName: type: string colorPaletteUuid: type: string nullable: true description: 'Chart-level palette override pointer. `null` means inherit from the containing dashboard / space / project / org. Writable via `UpdateSavedChart`.' deletedAt: type: string format: date-time deletedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object nullable: true tableName: type: string description: The explore/table name this chart queries from metricQuery: $ref: '#/components/schemas/MetricQuery' description: The query configuration defining what data to fetch pivotConfig: properties: columns: items: type: string type: array required: - columns type: object description: Pivot table configuration tableConfig: properties: columnOrder: items: type: string type: array required: - columnOrder type: object description: Table view configuration dashboardName: type: string nullable: true colorPalette: items: type: string type: array deprecated: true resolvedColorPalette: $ref: '#/components/schemas/ResolvedProjectColorPalette' description: 'Fully resolved palette for this chart, computed from the org → project → space → dashboard → chart hierarchy. Read-only — set the chart''s own palette via `colorPaletteUuid`.' required: - name - projectUuid - organizationUuid - uuid - pinnedListUuid - pinnedListOrder - slug - updatedAt - chartConfig - spaceUuid - dashboardUuid - verification - spaceName - colorPaletteUuid - tableName - metricQuery - tableConfig - dashboardName - colorPalette - resolvedColorPalette type: object description: From T, pick a set of properties whose keys are in the union K ApiExportChartImageResponse: properties: results: type: string status: type: string enum: - ok nullable: false required: - results - status type: object Required_CreateDashboardTileBase_: properties: uuid: type: string type: $ref: '#/components/schemas/DashboardTileTypes' x: type: number format: double y: type: number format: double h: type: number format: double w: type: number format: double tabUuid: type: string nullable: true required: - uuid - type - x - y - h - w type: object description: Make all properties in T required Format: enum: - km - mi - usd - gbp - eur - jpy - dkk - id - percent type: string CustomDimension: anyOf: - $ref: '#/components/schemas/CustomBinDimension' - $ref: '#/components/schemas/CustomSqlDimension' EChartsConfig: $ref: '#/components/schemas/Partial_CompleteEChartsConfig_' DashboardParameterValue: properties: value: $ref: '#/components/schemas/ParameterValue' parameterName: type: string required: - value - parameterName type: object MetricFilterRule: description: Filter rule for metrics, targeting fields by reference properties: values: items: $ref: '#/components/schemas/AnyType' type: array description: Values to filter by operator: $ref: '#/components/schemas/FilterOperator' description: Filter operator id: type: string description: Unique identifier for the filter target: properties: fieldRef: type: string description: Field reference to filter on (e.g., 'table_name.field_name') required: - fieldRef type: object description: Target field for the filter settings: $ref: '#/components/schemas/AnyType' description: Additional settings for date/time filters disabled: type: boolean description: Whether this filter is disabled required: type: boolean description: Whether this filter is required caseSensitive: type: boolean description: 'Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field''s configured setting.' required: - operator - id - target type: object additionalProperties: true CustomDimensionType.SQL: enum: - sql type: string MapHexbinValueBasis: enum: - count - field type: string ChartVersionSummary: $ref: '#/components/schemas/Pick_ChartVersion.chartUuid-or-versionUuid-or-createdAt-or-createdBy_' ConditionalFormattingColorApplyTo: enum: - cell - text - row type: string ContentVerificationInfo: properties: verifiedAt: type: string format: date-time verifiedBy: properties: lastName: type: string firstName: type: string userUuid: type: string required: - lastName - firstName - userUuid type: object required: - verifiedAt - verifiedBy type: object SchedulerSlackTarget: properties: channel: type: string schedulerUuid: type: string updatedAt: type: string format: date-time createdAt: type: string format: date-time schedulerSlackTargetUuid: type: string required: - channel - schedulerUuid - updatedAt - createdAt - schedulerSlackTargetUuid type: object DashboardConfig: properties: defaultDateZoomGranularity: anyOf: - $ref: '#/components/schemas/DateGranularity' - type: string dateZoomGranularities: items: anyOf: - $ref: '#/components/schemas/DateGranularity' - type: string type: array parameterOrder: items: type: string type: array pinnedParameters: items: type: string type: array isAddFilterDisabled: type: boolean isDateZoomDisabled: type: boolean required: - isDateZoomDisabled type: object securitySchemes: session_cookie: type: apiKey in: cookie name: connect.sid api_key: type: apiKey in: header name: Authorization description: Value should be 'ApiKey '