> ## Documentation Index
> Fetch the complete documentation index at: https://docs.growthbook.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a single dashboard



## OpenAPI

````yaml openapi.yaml PUT /v1/dashboards/{id}
openapi: 3.1.0
info:
  version: 5.1.0
  title: GrowthBook REST API
  description: >
    GrowthBook offers a full REST API for interacting with the application.


    Request data can use either JSON or Form data encoding (with proper
    `Content-Type` headers). All response bodies are JSON-encoded.


    The API base URL for GrowthBook Cloud is `https://api.growthbook.io/api`.
    For self-hosted deployments, it is the same as your API_HOST environment
    variable (defaults to `http://localhost:3100/api`). The rest of these docs
    will assume you are using GrowthBook Cloud.


    ## Versioning


    Endpoints are versioned by path prefix:


    - `/v1/...` — stable, widely-supported endpoints

    - `/v2/...` — updated endpoints with improved shapes (e.g. unified per-rule
    environment scope for feature flags)


    New integrations should prefer v2 where available.


    ## Authentication


    We support both the HTTP Basic and Bearer authentication schemes for
    convenience.


    You first need to generate a new API Key in GrowthBook. Different keys have
    different permissions:


    - **Personal Access Tokens**: These are sensitive and provide the same level
    of access as the user has to an organization. These can be created by going
    to `Personal Access Tokens` under the your user menu.

    - **Secret Keys**: These are sensitive and provide the level of access for
    the role, which currently is either `admin` or `readonly`. Only Admins with
    the `manageApiKeys` permission can manage Secret Keys on behalf of an
    organization. These can be created by going to `Settings -> API Keys`


    If using HTTP Basic auth, pass the Secret Key as the username and leave the
    password blank (when using curl, add `:` at the end of the secret to
    indicate an empty password)


    ```bash

    curl https://api.growthbook.io/api/v1/features \
      -u secret_abc123DEF456:
    ```


    If using Bearer auth, pass the Secret Key as the token:


    ```bash

    curl https://api.growthbook.io/api/v1/features \

    -H "Authorization: Bearer secret_abc123DEF456"

    ```


    ## Errors


    The API may return the following error status codes:


    - **400** - Bad Request - Often due to a missing required parameter

    - **401** - Unauthorized - No valid API key provided

    - **402** - Request Failed - The parameters are valid, but the request
    failed

    - **403** - Forbidden - Provided API key does not have the required access

    - **404** - Not Found - Unknown API route or requested resource

    - **422** - Unprocessable Entity - The request is valid, but a warning,
    validation rule, approval requirement, or another publishing gate blocked
    it. Do not assume that `ignoreWarnings` clears every 422 response.

    - **429** - Too Many Requests - You exceeded the rate limit of 60 requests
    per minute. Try again later.

    - **5XX** - Server Error - Something went wrong on GrowthBook's end (these
    are rare)


    The response body will be a JSON object with the following properties:


    - **message** - Information about the error


    ### Publishing gates


    Publish responses include a `gates` array that explains every blocker:


    - `type`, `severity`, and `messages` identify the problem.

    - `override` names the request-body field that can bypass it. This is
    `ignoreWarnings` for warnings, `skipSchemaValidation` for schema and
    invariant failures, or `skipHooks` for Custom Hook rejections. A value of
    `null` means there is no request-body override.

    - `requiresPermission` identifies any additional permission needed to use
    the override.

    - `resolution` provides an API action, method, and path when the blocker
    must be resolved another way.


    For example, an approval gate is cleared by approving the revision or by
    using a caller with **Bypass draft approvals** access. A Config lock is
    cleared through the unlock route in `resolution`.


    When a successful publish bypasses a gate, the response includes
    `bypassedGates`. Each entry reports the gate `type` and how it was bypassed
    in `via`, which is one of `ignoreWarnings`, `skipSchemaValidation`,
    `skipHooks`, `bypassApprovalPermission`, `restApiBypassesReviews`, or
    `revertsBypassApproval` (reverts only). This field is omitted when no gates
    were bypassed.
servers:
  - url: https://api.growthbook.io/api
    description: GrowthBook Cloud
  - url: https://{domain}/api
    description: Self-hosted GrowthBook
    variables:
      domain:
        default: localhost:3100
        description: Your self-hosted GrowthBook host (and port)
security:
  - bearerAuth: []
  - basicAuth: []
tags:
  - name: projects
    x-displayName: Projects
    description: Projects are used to organize your feature flags and experiments
  - name: environments
    x-displayName: Environments
    description: >-
      GrowthBook comes with one environment by default (production), but you can
      add as many as you need. When used with feature flags, you can
      enable/disable feature flags on a per-environment basis.
  - name: features-v2
    x-displayName: Feature Flags
    description: >-
      Control your feature flags programmatically.


      Rules are returned as a unified top-level array; each rule carries
      `allEnvironments` / `environments` scope fields instead of being bucketed
      by environment.
  - name: feature-revisions-v2
    x-displayName: Feature Revisions
    description: >-
      Draft revisions for feature flags, including rules, scheduling, and
      approval workflows.


      Revision `rules` is a flat array with per-rule scope fields.
  - name: features
    x-displayName: Feature Flags (legacy)
    description: >-
      Control your feature flags programmatically.


      **These are v1 endpoints.** New integrations should use the v2 Feature
      Flags endpoints, which expose a unified per-rule environment scope instead
      of per-environment rule arrays.
  - name: feature-revisions
    x-displayName: Feature Revisions (legacy)
    description: >-
      Draft revisions for feature flags, including rules, scheduling, and
      approval workflows.


      **These are v1 endpoints.** New integrations should use the v2 Feature
      Revisions endpoints.
  - name: ramp-schedules
    x-displayName: Ramp Schedules
    description: >-
      Multi-step rollout schedules that gradually increase feature rule traffic
      over time, with optional real-time monitoring. Each step supports interval
      timers, approval gates, and hold conditions. Monitored steps are backed by
      a live analysis experiment that can automatically hold, roll back, or
      advance the ramp based on guardrail and signal metric health.
  - name: data-sources
    x-displayName: Data Sources
    description: >-
      How GrowthBook connects and queries your data, including cached database
      schema metadata (information schemas) for tables and columns.
  - name: fact-tables
    x-displayName: Fact Tables
    description: Fact Tables describe the shape of your data warehouse tables
  - name: fact-metrics
    x-displayName: Fact Metrics
    description: Fact Metrics are metrics built on top of Fact Table definitions
  - name: metrics
    x-displayName: Metrics (legacy)
    description: Metrics used as goals and guardrails for experiments
  - name: experiments
    x-displayName: Experiments
    description: Experiments (A/B Tests)
  - name: namespaces
    x-displayName: Namespaces
    description: >-
      Namespaces partition your user population into buckets so that experiments
      using the same hash attribute do not overlap unintentionally. Each
      namespace defines a 0–1 range and individual experiments claim sub-ranges
      within it.
  - name: snapshots
    x-displayName: Experiment Snapshots
    description: Experiment Snapshots (the individual updates of an experiment)
  - name: dimensions
    x-displayName: Dimensions
    description: Dimensions used during experiment analysis
  - name: segments
    x-displayName: Segments
    description: Segments used during experiment analysis
  - name: reports
    x-displayName: Experiment Reports
    description: >-
      Custom analysis reports built on top of experiment snapshots. Reports let
      you re-run analysis with different metrics, date ranges, stats engines,
      and other settings without modifying the underlying experiment.
  - name: sdk-connections
    x-displayName: SDK Connections
    description: Client keys and settings for connecting SDKs to a GrowthBook instance
  - name: visual-changesets
    x-displayName: Visual Changesets
    description: Groups of visual changes made by the visual editor to a single page
  - name: saved-groups
    x-displayName: Saved Groups
    description: >-
      Defined sets of attribute values which can be used with feature rules for
      targeting features at particular users.
  - name: saved-group-revisions
    x-displayName: Saved Group Revisions
    description: >-
      Draft revisions for saved groups, including pending changes, approvals,
      and lifecycle (publish, discard, revert).


      Most callers can interact with these endpoints via shorthand actions
      (`/items/add`, `/items/remove`, single-field PUTs) instead of authoring
      JSON Patch ops directly. Pass `version: "new"` on edit endpoints to
      auto-create a draft.
  - name: constants
    x-displayName: Constants
    description: >-
      **Beta** — these endpoints are new and may change in
      backwards-incompatible ways.


      Reusable named values referenced from feature flag values as `@const:key`
      and resolved into the SDK payload at build time. String constants are
      interpolated via `{{ @const:key }}`; JSON (object) constants are composed
      via an `$extends` array. A constant's own keys **replace** what its
      `$extends` bases provide, wholesale — constants are atomic building
      blocks. (Config and feature values compose as deep, targeted patches
      instead.)
  - name: constant-revisions
    x-displayName: Constant Revisions
    description: >-
      **Beta** — these endpoints are new and may change in
      backwards-incompatible ways.


      Draft revisions for constants, including pending changes, approvals, and
      lifecycle (publish, discard, revert). Pass `version: "new"` on edit
      endpoints to auto-create a draft.
  - name: configs
    x-displayName: Configs
    description: >-
      **Beta** — these endpoints are new and may change in
      backwards-incompatible ways.


      Reusable, typed, inheritable JSON objects referenced from feature flag
      values as `@config:key`. A config carries a field `schema` (with
      TypeScript/JSON Schema import-export) and a lineage `parent`. Inheritance
      is expressed via `parent`, never an in-value `@config:` entry. Values
      layer as a **deep, targeted patch**: a child (or a config-backed feature
      value) restates only the leaves it changes and inherits the rest — unlike
      a constant's `$extends`, whose own keys replace wholesale. Schema fields
      colliding with a published ancestor's key follow 'base wins': identical
      re-declarations are stripped with a warning, differing ones are rejected.
  - name: config-revisions
    x-displayName: Config Revisions
    description: >-
      **Beta** — these endpoints are new and may change in
      backwards-incompatible ways.


      Draft revisions for configs, including value and schema edits, schema
      import (JSON Schema / TypeScript / inferred), approvals, and lifecycle
      (publish, discard, revert). Publishing a schema change cascades the "base
      wins" normalization to descendant configs; a publish that removes or
      retypes fields descendants still use soft-blocks with a 422 unless the
      request body sets `ignoreWarnings: true`. Pass `version: "new"` on edit
      endpoints to auto-create a draft.
  - name: releases
    x-displayName: Releases
    description: >-
      **Beta** — these endpoints are new and may change in
      backwards-incompatible ways.


      Coordinated multi-entity publishing: publish a set of revisions across
      Feature Flags, Saved Groups, configs, and constants as one all-or-nothing
      operation, validated against the combined end-state instead of each
      in-between state. Requires the `releases` commercial feature.
  - name: custom-hooks
    x-displayName: Custom Hooks
    description: >-
      Sandboxed JavaScript validation hooks that run when features, configs, or
      their revisions are saved or published. Throwing an Error blocks the save;
      `addWarning(msg)` raises a soft warning. Hooks are scoped by projects, or
      pinned to a single feature/config via `entityType`/`entityId`; a
      config-scoped hook also runs for every config inheriting from it (its
      whole descendant lineage). Scope can be retargeted on update (or cleared
      with nulls). Requires an enterprise plan; not available on GrowthBook
      Cloud.
  - name: organizations
    x-displayName: Organizations
    description: >-
      Organizations are used for multi-org deployments where different teams can
      run their own isolated feature flags and experiments. These endpoints are
      only via a super-admin's Personal Access Token.
  - name: members
    x-displayName: Members
    description: Members are users who have been invited to an organization.
  - name: code-references
    x-displayName: Code References
    description: >-
      Intended for use with our code reference CI utility,
      [`gb-find-code-refs`](https://github.com/growthbook/gb-find-code-refs).
  - name: archetypes
    x-displayName: Archetypes
    description: >-
      Archetypes allow you to simulate the result of targeting rules on pre-set
      user attributes
  - name: queries
    x-displayName: Queries
    description: Retrieve queries used in experiments to calculate results.
  - name: settings
    x-displayName: Settings
    description: Get the organization settings.
  - name: attributes
    x-displayName: Attributes
    description: Used when targeting feature flags and experiments.
  - name: usage
    x-displayName: Usage
    description: Usage information for metrics in experiments.
  - name: meta
    x-displayName: Meta
    description: >-
      Server metadata, including the running build's version and commit for
      version-skew checks.
  - name: ContextualBandits
    x-displayName: Contextual Bandits
    description: ''
  - name: Dashboards
    x-displayName: Dashboards
    description: ''
  - name: ContextualBanditQueries
    x-displayName: Contextual Bandit Queries
    description: ''
  - name: CustomFields
    x-displayName: Custom Fields
    description: ''
  - name: MetricGroups
    x-displayName: Metric Groups
    description: ''
  - name: Teams
    x-displayName: Teams
    description: ''
  - name: ExperimentTemplates
    x-displayName: Experiment Templates
    description: ''
  - name: AnalyticsExplorations
    x-displayName: Analytics Explorations
    description: ''
  - name: RampScheduleTemplates
    x-displayName: Ramp Schedule Templates
    description: Reusable step configurations for ramp schedules.
  - name: Learnings
    x-displayName: Learnings
    description: >-
      Saved learnings captured across experiments, including AI-discovered
      patterns.
  - name: Holdouts
    x-displayName: Holdouts
    description: >-
      Hold a share of traffic out of all experiments to measure their combined
      effect.
  - name: AutoRuns
    x-displayName: Auto Runs
    description: ''
  - name: AggregatedFactTable_model
    x-displayName: Aggregated Fact Table
    description: <SchemaDefinition schemaRef="#/components/schemas/AggregatedFactTable" />
  - name: AnalyticsExploration_model
    x-displayName: Analytics Exploration
    description: <SchemaDefinition schemaRef="#/components/schemas/AnalyticsExploration" />
  - name: Archetype_model
    x-displayName: Archetype
    description: <SchemaDefinition schemaRef="#/components/schemas/Archetype" />
  - name: Attribute_model
    x-displayName: Attribute
    description: <SchemaDefinition schemaRef="#/components/schemas/Attribute" />
  - name: AutoRun_model
    x-displayName: Auto Run
    description: <SchemaDefinition schemaRef="#/components/schemas/AutoRun" />
  - name: CodeRef_model
    x-displayName: Code Ref
    description: <SchemaDefinition schemaRef="#/components/schemas/CodeRef" />
  - name: Config_model
    x-displayName: Config
    description: <SchemaDefinition schemaRef="#/components/schemas/Config" />
  - name: ConfigKeyUsage_model
    x-displayName: Config Key Usage
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigKeyUsage" />
  - name: ConfigLineage_model
    x-displayName: Config Lineage
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigLineage" />
  - name: ConfigReferences_model
    x-displayName: Config References
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigReferences" />
  - name: ConfigRevision_model
    x-displayName: Config Revision
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigRevision" />
  - name: ConfigRevisionActivityLogEntry_model
    x-displayName: Config Revision Activity Log Entry
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/ConfigRevisionActivityLogEntry" />
  - name: ConfigRevisionRef_model
    x-displayName: Config Revision Ref
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigRevisionRef" />
  - name: ConfigRevisionReview_model
    x-displayName: Config Revision Review
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigRevisionReview" />
  - name: ConfigSchemaExport_model
    x-displayName: Config Schema Export
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigSchemaExport" />
  - name: ConfigSchemaSource_model
    x-displayName: Config Schema Source
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigSchemaSource" />
  - name: ConfigSchemaVerify_model
    x-displayName: Config Schema Verify
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigSchemaVerify" />
  - name: ConfigSchemaWarning_model
    x-displayName: Config Schema Warning
    description: <SchemaDefinition schemaRef="#/components/schemas/ConfigSchemaWarning" />
  - name: Constant_model
    x-displayName: Constant
    description: <SchemaDefinition schemaRef="#/components/schemas/Constant" />
  - name: ConstantReferences_model
    x-displayName: Constant References
    description: <SchemaDefinition schemaRef="#/components/schemas/ConstantReferences" />
  - name: ConstantRevision_model
    x-displayName: Constant Revision
    description: <SchemaDefinition schemaRef="#/components/schemas/ConstantRevision" />
  - name: ConstantRevisionActivityLogEntry_model
    x-displayName: Constant Revision Activity Log Entry
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/ConstantRevisionActivityLogEntry" />
  - name: ConstantRevisionRef_model
    x-displayName: Constant Revision Ref
    description: <SchemaDefinition schemaRef="#/components/schemas/ConstantRevisionRef" />
  - name: ConstantRevisionReview_model
    x-displayName: Constant Revision Review
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/ConstantRevisionReview"
      />
  - name: ContextualBandit_model
    x-displayName: Contextual Bandit
    description: <SchemaDefinition schemaRef="#/components/schemas/ContextualBandit" />
  - name: ContextualBanditQuery_model
    x-displayName: Contextual Bandit Query
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/ContextualBanditQuery"
      />
  - name: CustomField_model
    x-displayName: Custom Field
    description: <SchemaDefinition schemaRef="#/components/schemas/CustomField" />
  - name: CustomHook_model
    x-displayName: Custom Hook
    description: <SchemaDefinition schemaRef="#/components/schemas/CustomHook" />
  - name: Dashboard_model
    x-displayName: Dashboard
    description: <SchemaDefinition schemaRef="#/components/schemas/Dashboard" />
  - name: DataSource_model
    x-displayName: Data Source
    description: <SchemaDefinition schemaRef="#/components/schemas/DataSource" />
  - name: Dimension_model
    x-displayName: Dimension
    description: <SchemaDefinition schemaRef="#/components/schemas/Dimension" />
  - name: Environment_model
    x-displayName: Environment
    description: <SchemaDefinition schemaRef="#/components/schemas/Environment" />
  - name: EventUser_model
    x-displayName: Event User
    description: <SchemaDefinition schemaRef="#/components/schemas/EventUser" />
  - name: Experiment_model
    x-displayName: Experiment
    description: <SchemaDefinition schemaRef="#/components/schemas/Experiment" />
  - name: Experiment Rule_model
    x-displayName: Experiment Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/Experiment Rule" />
  - name: ExperimentAnalysisSettings_model
    x-displayName: Experiment Analysis Settings
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/ExperimentAnalysisSettings" />
  - name: ExperimentDecisionFrameworkSettings_model
    x-displayName: Experiment Decision Framework Settings
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/ExperimentDecisionFrameworkSettings" />
  - name: ExperimentMetric_model
    x-displayName: Experiment Metric
    description: <SchemaDefinition schemaRef="#/components/schemas/ExperimentMetric" />
  - name: ExperimentMetricOverrideEntry_model
    x-displayName: Experiment Metric Override Entry
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/ExperimentMetricOverrideEntry" />
  - name: ExperimentResults_model
    x-displayName: Experiment Results
    description: <SchemaDefinition schemaRef="#/components/schemas/ExperimentResults" />
  - name: ExperimentSnapshot_model
    x-displayName: Experiment Snapshot
    description: <SchemaDefinition schemaRef="#/components/schemas/ExperimentSnapshot" />
  - name: ExperimentTemplate_model
    x-displayName: Experiment Template
    description: <SchemaDefinition schemaRef="#/components/schemas/ExperimentTemplate" />
  - name: ExperimentWithEnhancedStatus_model
    x-displayName: Experiment With Enhanced Status
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/ExperimentWithEnhancedStatus" />
  - name: FactMetric_model
    x-displayName: Fact Metric
    description: <SchemaDefinition schemaRef="#/components/schemas/FactMetric" />
  - name: FactTable_model
    x-displayName: Fact Table
    description: <SchemaDefinition schemaRef="#/components/schemas/FactTable" />
  - name: FactTableColumn_model
    x-displayName: Fact Table Column
    description: <SchemaDefinition schemaRef="#/components/schemas/FactTableColumn" />
  - name: FactTableFilter_model
    x-displayName: Fact Table Filter
    description: <SchemaDefinition schemaRef="#/components/schemas/FactTableFilter" />
  - name: FeatureBaseRule_model
    x-displayName: Feature Base Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureBaseRule" />
  - name: FeatureContextualBanditRefRule_model
    x-displayName: Feature Contextual Bandit Ref Rule
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/FeatureContextualBanditRefRule" />
  - name: FeatureDefinition_model
    x-displayName: Feature Definition
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureDefinition" />
  - name: FeatureEnvironmentV1_model
    x-displayName: Feature Environment V1
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureEnvironmentV1" />
  - name: FeatureEnvironmentV2_model
    x-displayName: Feature Environment V2
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureEnvironmentV2" />
  - name: FeatureExperimentRefRule_model
    x-displayName: Feature Experiment Ref Rule
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/FeatureExperimentRefRule" />
  - name: FeatureExperimentRule_model
    x-displayName: Feature Experiment Rule
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/FeatureExperimentRule"
      />
  - name: FeatureForceRule_model
    x-displayName: Feature Force Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureForceRule" />
  - name: FeatureRevisionRef_model
    x-displayName: Feature Revision Ref
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureRevisionRef" />
  - name: FeatureRevisionSummary_model
    x-displayName: Feature Revision Summary
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/FeatureRevisionSummary"
      />
  - name: FeatureRevisionV1_model
    x-displayName: Feature Revision V1
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureRevisionV1" />
  - name: FeatureRevisionV2_model
    x-displayName: Feature Revision V2
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureRevisionV2" />
  - name: FeatureRolloutRule_model
    x-displayName: Feature Rollout Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureRolloutRule" />
  - name: FeatureRuleV1_model
    x-displayName: Feature Rule V1
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureRuleV1" />
  - name: FeatureRuleV2_model
    x-displayName: Feature Rule V2
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureRuleV2" />
  - name: FeatureSafeRolloutRule_model
    x-displayName: Feature Safe Rollout Rule
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/FeatureSafeRolloutRule"
      />
  - name: FeatureV1_model
    x-displayName: Feature V1
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureV1" />
  - name: FeatureV2_model
    x-displayName: Feature V2
    description: <SchemaDefinition schemaRef="#/components/schemas/FeatureV2" />
  - name: FeatureWithRevisionsV1_model
    x-displayName: Feature With Revisions V1
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/FeatureWithRevisionsV1"
      />
  - name: FeatureWithRevisionsV2_model
    x-displayName: Feature With Revisions V2
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/FeatureWithRevisionsV2"
      />
  - name: Holdout_model
    x-displayName: Holdout
    description: <SchemaDefinition schemaRef="#/components/schemas/Holdout" />
  - name: InformationSchema_model
    x-displayName: Information Schema
    description: <SchemaDefinition schemaRef="#/components/schemas/InformationSchema" />
  - name: InformationSchemaTable_model
    x-displayName: Information Schema Table
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/InformationSchemaTable"
      />
  - name: Learning_model
    x-displayName: Learning
    description: <SchemaDefinition schemaRef="#/components/schemas/Learning" />
  - name: LookbackOverride_model
    x-displayName: Lookback Override
    description: <SchemaDefinition schemaRef="#/components/schemas/LookbackOverride" />
  - name: Member_model
    x-displayName: Member
    description: <SchemaDefinition schemaRef="#/components/schemas/Member" />
  - name: Metric_model
    x-displayName: Metric
    description: <SchemaDefinition schemaRef="#/components/schemas/Metric" />
  - name: MetricAnalysis_model
    x-displayName: Metric Analysis
    description: <SchemaDefinition schemaRef="#/components/schemas/MetricAnalysis" />
  - name: MetricGroup_model
    x-displayName: Metric Group
    description: <SchemaDefinition schemaRef="#/components/schemas/MetricGroup" />
  - name: MetricUsage_model
    x-displayName: Metric Usage
    description: <SchemaDefinition schemaRef="#/components/schemas/MetricUsage" />
  - name: Namespace_model
    x-displayName: Namespace
    description: <SchemaDefinition schemaRef="#/components/schemas/Namespace" />
  - name: NamespaceExperimentMember_model
    x-displayName: Namespace Experiment Member
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/NamespaceExperimentMember" />
  - name: Organization_model
    x-displayName: Organization
    description: <SchemaDefinition schemaRef="#/components/schemas/Organization" />
  - name: PaginationFields_model
    x-displayName: Pagination Fields
    description: <SchemaDefinition schemaRef="#/components/schemas/PaginationFields" />
  - name: Project_model
    x-displayName: Project
    description: <SchemaDefinition schemaRef="#/components/schemas/Project" />
  - name: Query_model
    x-displayName: Query
    description: <SchemaDefinition schemaRef="#/components/schemas/Query" />
  - name: RampSchedule_model
    x-displayName: Ramp Schedule
    description: <SchemaDefinition schemaRef="#/components/schemas/RampSchedule" />
  - name: RampScheduleTemplate_model
    x-displayName: Ramp Schedule Template
    description: <SchemaDefinition schemaRef="#/components/schemas/RampScheduleTemplate" />
  - name: Report_model
    x-displayName: Report
    description: <SchemaDefinition schemaRef="#/components/schemas/Report" />
  - name: RequireReviewRule_model
    x-displayName: Require Review Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/RequireReviewRule" />
  - name: RequireReviewRuleInput_model
    x-displayName: Require Review Rule Input
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/RequireReviewRuleInput"
      />
  - name: RevisionIdRef_model
    x-displayName: Revision Id Ref
    description: <SchemaDefinition schemaRef="#/components/schemas/RevisionIdRef" />
  - name: Safe Rollout Rule_model
    x-displayName: Safe Rollout Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/Safe Rollout Rule" />
  - name: SavedGroup_model
    x-displayName: Saved Group
    description: <SchemaDefinition schemaRef="#/components/schemas/SavedGroup" />
  - name: SavedGroupApprovalRule_model
    x-displayName: Saved Group Approval Rule
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/SavedGroupApprovalRule"
      />
  - name: SavedGroupReferenceResource_model
    x-displayName: Saved Group Reference Resource
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/SavedGroupReferenceResource" />
  - name: SavedGroupReferences_model
    x-displayName: Saved Group References
    description: <SchemaDefinition schemaRef="#/components/schemas/SavedGroupReferences" />
  - name: SavedGroupRevision_model
    x-displayName: Saved Group Revision
    description: <SchemaDefinition schemaRef="#/components/schemas/SavedGroupRevision" />
  - name: SavedGroupRevisionActivityLogEntry_model
    x-displayName: Saved Group Revision Activity Log Entry
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/SavedGroupRevisionActivityLogEntry" />
  - name: SavedGroupRevisionRef_model
    x-displayName: Saved Group Revision Ref
    description: >-
      <SchemaDefinition schemaRef="#/components/schemas/SavedGroupRevisionRef"
      />
  - name: SavedGroupRevisionReview_model
    x-displayName: Saved Group Revision Review
    description: >-
      <SchemaDefinition
      schemaRef="#/components/schemas/SavedGroupRevisionReview" />
  - name: ScheduleRule_model
    x-displayName: Schedule Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/ScheduleRule" />
  - name: ScheduledStopPlan_model
    x-displayName: Scheduled Stop Plan
    description: <SchemaDefinition schemaRef="#/components/schemas/ScheduledStopPlan" />
  - name: SdkConnection_model
    x-displayName: Sdk Connection
    description: <SchemaDefinition schemaRef="#/components/schemas/SdkConnection" />
  - name: Segment_model
    x-displayName: Segment
    description: <SchemaDefinition schemaRef="#/components/schemas/Segment" />
  - name: Settings_model
    x-displayName: Settings
    description: <SchemaDefinition schemaRef="#/components/schemas/Settings" />
  - name: Targeting Rule_model
    x-displayName: Targeting Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/Targeting Rule" />
  - name: TargetingReviewRule_model
    x-displayName: Targeting Review Rule
    description: <SchemaDefinition schemaRef="#/components/schemas/TargetingReviewRule" />
  - name: Team_model
    x-displayName: Team
    description: <SchemaDefinition schemaRef="#/components/schemas/Team" />
  - name: VisualChange_model
    x-displayName: Visual Change
    description: <SchemaDefinition schemaRef="#/components/schemas/VisualChange" />
  - name: VisualChangeset_model
    x-displayName: Visual Changeset
    description: <SchemaDefinition schemaRef="#/components/schemas/VisualChangeset" />
paths:
  /v1/dashboards/{id}:
    put:
      tags:
        - Dashboards
      summary: Update a single dashboard
      operationId: updateDashboard
      parameters:
        - name: id
          in: path
          required: true
          description: ''
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  description: The display name of the Dashboard
                  type: string
                editLevel:
                  description: >-
                    Dashboards that are "published" are editable by organization
                    members with appropriate permissions
                  type: string
                  enum:
                    - published
                    - private
                shareLevel:
                  description: >-
                    General Dashboards only. Dashboards that are "published" are
                    viewable by organization members with appropriate
                    permissions
                  type: string
                  enum:
                    - published
                    - private
                enableAutoUpdates:
                  description: >-
                    If enabled for a General Dashboard, also requires an
                    updateSchedule
                  type: boolean
                updateSchedule:
                  description: >-
                    General Dashboards only. Experiment Dashboards update based
                    on the parent experiment instead
                  anyOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          const: stale
                        hours:
                          type: number
                      required:
                        - type
                        - hours
                      additionalProperties: false
                    - type: object
                      properties:
                        type:
                          type: string
                          const: cron
                        cron:
                          type: string
                      required:
                        - type
                        - cron
                      additionalProperties: false
                projects:
                  description: >-
                    General Dashboards only, Experiment Dashboards use the
                    experiment's projects
                  type: array
                  items:
                    type: string
                globalControls:
                  type: object
                  properties:
                    dateRange:
                      type: object
                      properties:
                        predefined:
                          type: string
                          enum:
                            - today
                            - yesterday
                            - last7Days
                            - last30Days
                            - last90Days
                            - last12Months
                            - lastCalendarYear
                            - customLookback
                            - customDateRange
                        lookbackValue:
                          anyOf:
                            - type: number
                            - type: 'null'
                        lookbackUnit:
                          anyOf:
                            - type: string
                              enum:
                                - hour
                                - day
                                - week
                                - month
                            - type: 'null'
                        startDate:
                          anyOf:
                            - type: string
                            - type: 'null'
                        endDate:
                          anyOf:
                            - type: string
                            - type: 'null'
                      required:
                        - predefined
                      additionalProperties: false
                    dateGranularity:
                      type: string
                      enum:
                        - auto
                        - hour
                        - day
                        - week
                        - month
                        - year
                    projects:
                      type: array
                      items:
                        type: string
                    experimentSearchString:
                      type: string
                  additionalProperties: false
                comparison:
                  description: >-
                    Dashboard-wide compare-to-previous-period. Takes precedence
                    over any per-block comparison.
                  type: object
                  properties:
                    enabled:
                      type: boolean
                    mode:
                      type: string
                      enum:
                        - previousPeriod
                        - previousPeriodMatchDayOfWeek
                        - previousYear
                        - previousYearMatchDayOfWeek
                        - custom
                    previousTimeFrame:
                      type: object
                      properties:
                        predefined:
                          type: string
                          enum:
                            - today
                            - yesterday
                            - last7Days
                            - last30Days
                            - last90Days
                            - last12Months
                            - lastCalendarYear
                            - customLookback
                            - customDateRange
                        lookbackValue:
                          anyOf:
                            - type: number
                            - type: 'null'
                        lookbackUnit:
                          anyOf:
                            - type: string
                              enum:
                                - hour
                                - day
                                - week
                                - month
                            - type: 'null'
                        startDate:
                          anyOf:
                            - type: string
                            - type: 'null'
                        endDate:
                          anyOf:
                            - type: string
                            - type: 'null'
                      required:
                        - predefined
                      additionalProperties: false
                  required:
                    - enabled
                  additionalProperties: false
                blocks:
                  type: array
                  items:
                    anyOf:
                      - type: object
                        properties:
                          id:
                            type: string
                            minLength: 1
                        required:
                          - id
                        additionalProperties: false
                      - anyOf:
                          - type: object
                            properties:
                              type:
                                type: string
                                const: markdown
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              content:
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - content
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-metadata
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              showDescription:
                                type: boolean
                              showHypothesis:
                                type: boolean
                              showVariationImages:
                                type: boolean
                              variationIds:
                                type: array
                                items:
                                  type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - experimentId
                              - showDescription
                              - showHypothesis
                              - showVariationImages
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-metric
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              metricIds:
                                type: array
                                items:
                                  type: string
                              variationIds:
                                type: array
                                items:
                                  type: string
                              baselineRow:
                                type: number
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              columnsFilter:
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - Metric & Variation Names
                                    - Baseline Average
                                    - Variation Averages
                                    - Chance to Win
                                    - CI Graph
                                    - Lift
                              sliceTagsFilter:
                                type: array
                                items:
                                  type: string
                              metricTagFilter:
                                type: array
                                items:
                                  type: string
                              sortBy:
                                anyOf:
                                  - type: string
                                    enum:
                                      - metrics
                                      - metricTags
                                      - significance
                                      - change
                                  - type: 'null'
                              sortDirection:
                                anyOf:
                                  - type: string
                                    enum:
                                      - asc
                                      - desc
                                  - type: 'null'
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - snapshotId
                              - experimentId
                              - metricIds
                              - variationIds
                              - baselineRow
                              - differenceType
                              - columnsFilter
                              - sliceTagsFilter
                              - metricTagFilter
                              - sortBy
                              - sortDirection
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: metric-experiments
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              metricId:
                                type: string
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              bandits:
                                type: boolean
                              startDateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              endDateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              columns:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    id:
                                      type: string
                                    visible:
                                      type: boolean
                                  required:
                                    - id
                                    - visible
                                  additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - metricId
                              - projects
                              - experimentSearchString
                              - differenceType
                              - bandits
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiments-scaled-impact
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              dateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              metricId:
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - dateRange
                              - projects
                              - metricId
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiments-win-rate
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              dateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              showProjectBreakdown:
                                type: boolean
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - dateRange
                              - projects
                              - showProjectBreakdown
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiments-status
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              dateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              dateGranularity:
                                type: string
                                enum:
                                  - auto
                                  - hour
                                  - day
                                  - week
                                  - month
                                  - year
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - dateRange
                              - projects
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-dimension
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              dimensionId:
                                type: string
                              dimensionValues:
                                type: array
                                items:
                                  type: string
                              metricIds:
                                type: array
                                items:
                                  type: string
                              variationIds:
                                type: array
                                items:
                                  type: string
                              baselineRow:
                                type: number
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              columnsFilter:
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - Metric & Variation Names
                                    - Baseline Average
                                    - Variation Averages
                                    - Chance to Win
                                    - CI Graph
                                    - Lift
                              metricTagFilter:
                                type: array
                                items:
                                  type: string
                              sortBy:
                                anyOf:
                                  - type: string
                                    enum:
                                      - metrics
                                      - metricTags
                                      - significance
                                      - change
                                  - type: 'null'
                              sortDirection:
                                anyOf:
                                  - type: string
                                    enum:
                                      - asc
                                      - desc
                                  - type: 'null'
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - snapshotId
                              - experimentId
                              - dimensionId
                              - dimensionValues
                              - metricIds
                              - variationIds
                              - baselineRow
                              - differenceType
                              - columnsFilter
                              - metricTagFilter
                              - sortBy
                              - sortDirection
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-time-series
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              metricId:
                                type: string
                              metricIds:
                                type: array
                                items:
                                  type: string
                              variationIds:
                                type: array
                                items:
                                  type: string
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              sliceTagsFilter:
                                type: array
                                items:
                                  type: string
                              metricTagFilter:
                                type: array
                                items:
                                  type: string
                              sortBy:
                                anyOf:
                                  - type: string
                                    enum:
                                      - metrics
                                      - metricTags
                                      - significance
                                      - change
                                  - type: 'null'
                              sortDirection:
                                anyOf:
                                  - type: string
                                    enum:
                                      - asc
                                      - desc
                                  - type: 'null'
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - snapshotId
                              - experimentId
                              - metricIds
                              - variationIds
                              - differenceType
                              - sliceTagsFilter
                              - metricTagFilter
                              - sortBy
                              - sortDirection
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-traffic
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              showTable:
                                type: boolean
                              showTimeseries:
                                type: boolean
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - experimentId
                              - showTable
                              - showTimeseries
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: sql-explorer
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              savedQueryId:
                                type: string
                              dataVizConfigIndex:
                                type: number
                              blockConfig:
                                type: array
                                items:
                                  type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - savedQueryId
                              - blockConfig
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: metric-explorer
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              factMetricId:
                                type: string
                              visualizationType:
                                type: string
                                enum:
                                  - histogram
                                  - bigNumber
                                  - timeseries
                              valueType:
                                type: string
                                enum:
                                  - avg
                                  - sum
                              metricAnalysisId:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonMetricAnalysisId:
                                type: string
                              analysisSettings:
                                type: object
                                properties:
                                  userIdType:
                                    type: string
                                  lookbackDays:
                                    type: number
                                  populationType:
                                    type: string
                                    enum:
                                      - metric
                                      - factTable
                                      - exposureQuery
                                      - population
                                      - segment
                                  populationId:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  additionalNumeratorFilters:
                                    type: array
                                    items:
                                      type: string
                                  additionalDenominatorFilters:
                                    type: array
                                    items:
                                      type: string
                                  startDate:
                                    type: string
                                  endDate:
                                    type: string
                                required:
                                  - userIdType
                                  - lookbackDays
                                  - populationType
                                  - populationId
                                  - startDate
                                  - endDate
                                additionalProperties: false
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - factMetricId
                              - visualizationType
                              - valueType
                              - metricAnalysisId
                              - analysisSettings
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: metric-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: metric
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: metric
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: metric
                                            metricId:
                                              type: string
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            denominatorUnit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - metricId
                                            - unit
                                            - denominatorUnit
                                          additionalProperties: false
                                    required:
                                      - type
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: fact-table-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: fact_table
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: fact_table
                                      factTableId:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: fact_table
                                            valueType:
                                              type: string
                                              enum:
                                                - unit_count
                                                - count
                                                - sum
                                            valueColumn:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - valueType
                                            - valueColumn
                                            - unit
                                          additionalProperties: false
                                    required:
                                      - type
                                      - factTableId
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: data-source-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: data_source
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: data_source
                                      table:
                                        type: string
                                      path:
                                        type: string
                                      timestampColumn:
                                        type: string
                                      columnTypes:
                                        type: object
                                        propertyNames:
                                          type: string
                                        additionalProperties:
                                          type: string
                                          enum:
                                            - string
                                            - number
                                            - date
                                            - boolean
                                            - other
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: data_source
                                            valueType:
                                              type: string
                                              enum:
                                                - unit_count
                                                - count
                                                - sum
                                            valueColumn:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - valueType
                                            - valueColumn
                                            - unit
                                          additionalProperties: false
                                    required:
                                      - type
                                      - table
                                      - path
                                      - timestampColumn
                                      - columnTypes
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: funnel-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: funnel
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: funnel
                                      unit:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      steps:
                                        maxItems: 20
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            factTableId:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            optional:
                                              type: boolean
                                            conversionWindow:
                                              anyOf:
                                                - type: object
                                                  properties:
                                                    unit:
                                                      type: string
                                                      enum:
                                                        - weeks
                                                        - days
                                                        - hours
                                                        - minutes
                                                    value:
                                                      type: number
                                                      exclusiveMinimum: 0
                                                  required:
                                                    - unit
                                                    - value
                                                  additionalProperties: false
                                                - type: 'null'
                                          required:
                                            - name
                                            - factTableId
                                            - rowFilters
                                            - optional
                                          additionalProperties: false
                                      concurrencyWindowSeconds:
                                        type: integer
                                        minimum: 0
                                      yAxisScale:
                                        type: string
                                        enum:
                                          - count
                                          - percent
                                    required:
                                      - type
                                      - unit
                                      - steps
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              linkedFunnelMetricId:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                              - id
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: sql-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: sql
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: sql
                                      sql:
                                        type: string
                                      timestampColumn:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      columnTypes:
                                        type: object
                                        propertyNames:
                                          type: string
                                        additionalProperties:
                                          type: string
                                          enum:
                                            - string
                                            - number
                                            - date
                                            - boolean
                                            - other
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: sql
                                            valueType:
                                              type: string
                                              enum:
                                                - unit_count
                                                - count
                                                - sum
                                            valueColumn:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - valueType
                                            - valueColumn
                                            - unit
                                          additionalProperties: false
                                      hiddenColumns:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - type
                                      - sql
                                      - timestampColumn
                                      - columnTypes
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                              id:
                                type: string
                                minLength: 1
                              uid:
                                type: string
                              organization:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                              - id
                            additionalProperties: false
                      - anyOf:
                          - type: object
                            properties:
                              type:
                                type: string
                                const: markdown
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              content:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - content
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-metadata
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              showDescription:
                                type: boolean
                              showHypothesis:
                                type: boolean
                              showVariationImages:
                                type: boolean
                              variationIds:
                                type: array
                                items:
                                  type: string
                            required:
                              - type
                              - title
                              - description
                              - experimentId
                              - showDescription
                              - showHypothesis
                              - showVariationImages
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-metric
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              metricIds:
                                type: array
                                items:
                                  type: string
                              variationIds:
                                type: array
                                items:
                                  type: string
                              baselineRow:
                                type: number
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              columnsFilter:
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - Metric & Variation Names
                                    - Baseline Average
                                    - Variation Averages
                                    - Chance to Win
                                    - CI Graph
                                    - Lift
                              sliceTagsFilter:
                                type: array
                                items:
                                  type: string
                              metricTagFilter:
                                type: array
                                items:
                                  type: string
                              sortBy:
                                anyOf:
                                  - type: string
                                    enum:
                                      - metrics
                                      - metricTags
                                      - significance
                                      - change
                                  - type: 'null'
                              sortDirection:
                                anyOf:
                                  - type: string
                                    enum:
                                      - asc
                                      - desc
                                  - type: 'null'
                            required:
                              - type
                              - title
                              - description
                              - snapshotId
                              - experimentId
                              - metricIds
                              - variationIds
                              - baselineRow
                              - differenceType
                              - columnsFilter
                              - sliceTagsFilter
                              - metricTagFilter
                              - sortBy
                              - sortDirection
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: metric-experiments
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              metricId:
                                type: string
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              bandits:
                                type: boolean
                              startDateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              endDateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              columns:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    id:
                                      type: string
                                    visible:
                                      type: boolean
                                  required:
                                    - id
                                    - visible
                                  additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                            required:
                              - type
                              - title
                              - description
                              - metricId
                              - projects
                              - experimentSearchString
                              - differenceType
                              - bandits
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiments-scaled-impact
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              dateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              metricId:
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - dateRange
                              - projects
                              - metricId
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiments-win-rate
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              dateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              showProjectBreakdown:
                                type: boolean
                            required:
                              - type
                              - title
                              - description
                              - dateRange
                              - projects
                              - showProjectBreakdown
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiments-status
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              dateRange:
                                type: object
                                properties:
                                  predefined:
                                    type: string
                                    enum:
                                      - today
                                      - yesterday
                                      - last7Days
                                      - last30Days
                                      - last90Days
                                      - last12Months
                                      - lastCalendarYear
                                      - customLookback
                                      - customDateRange
                                  lookbackValue:
                                    anyOf:
                                      - type: number
                                      - type: 'null'
                                  lookbackUnit:
                                    anyOf:
                                      - type: string
                                        enum:
                                          - hour
                                          - day
                                          - week
                                          - month
                                      - type: 'null'
                                  startDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  endDate:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                required:
                                  - predefined
                                additionalProperties: false
                              projects:
                                type: array
                                items:
                                  type: string
                              experimentSearchString:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                  projects:
                                    type: boolean
                                  experimentSearchString:
                                    type: boolean
                                additionalProperties: false
                              dateGranularity:
                                type: string
                                enum:
                                  - auto
                                  - hour
                                  - day
                                  - week
                                  - month
                                  - year
                            required:
                              - type
                              - title
                              - description
                              - dateRange
                              - projects
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-dimension
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              dimensionId:
                                type: string
                              dimensionValues:
                                type: array
                                items:
                                  type: string
                              metricIds:
                                type: array
                                items:
                                  type: string
                              variationIds:
                                type: array
                                items:
                                  type: string
                              baselineRow:
                                type: number
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              columnsFilter:
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - Metric & Variation Names
                                    - Baseline Average
                                    - Variation Averages
                                    - Chance to Win
                                    - CI Graph
                                    - Lift
                              metricTagFilter:
                                type: array
                                items:
                                  type: string
                              sortBy:
                                anyOf:
                                  - type: string
                                    enum:
                                      - metrics
                                      - metricTags
                                      - significance
                                      - change
                                  - type: 'null'
                              sortDirection:
                                anyOf:
                                  - type: string
                                    enum:
                                      - asc
                                      - desc
                                  - type: 'null'
                            required:
                              - type
                              - title
                              - description
                              - snapshotId
                              - experimentId
                              - dimensionId
                              - dimensionValues
                              - metricIds
                              - variationIds
                              - baselineRow
                              - differenceType
                              - columnsFilter
                              - metricTagFilter
                              - sortBy
                              - sortDirection
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-time-series
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              metricId:
                                type: string
                              metricIds:
                                type: array
                                items:
                                  type: string
                              variationIds:
                                type: array
                                items:
                                  type: string
                              differenceType:
                                type: string
                                enum:
                                  - absolute
                                  - relative
                                  - scaled
                              sliceTagsFilter:
                                type: array
                                items:
                                  type: string
                              metricTagFilter:
                                type: array
                                items:
                                  type: string
                              sortBy:
                                anyOf:
                                  - type: string
                                    enum:
                                      - metrics
                                      - metricTags
                                      - significance
                                      - change
                                  - type: 'null'
                              sortDirection:
                                anyOf:
                                  - type: string
                                    enum:
                                      - asc
                                      - desc
                                  - type: 'null'
                            required:
                              - type
                              - title
                              - description
                              - snapshotId
                              - experimentId
                              - metricIds
                              - variationIds
                              - differenceType
                              - sliceTagsFilter
                              - metricTagFilter
                              - sortBy
                              - sortDirection
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: experiment-traffic
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              experimentId:
                                type: string
                              showTable:
                                type: boolean
                              showTimeseries:
                                type: boolean
                            required:
                              - type
                              - title
                              - description
                              - experimentId
                              - showTable
                              - showTimeseries
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: sql-explorer
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              savedQueryId:
                                type: string
                              dataVizConfigIndex:
                                type: number
                              blockConfig:
                                type: array
                                items:
                                  type: string
                            required:
                              - type
                              - title
                              - description
                              - savedQueryId
                              - blockConfig
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: metric-explorer
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              factMetricId:
                                type: string
                              visualizationType:
                                type: string
                                enum:
                                  - histogram
                                  - bigNumber
                                  - timeseries
                              valueType:
                                type: string
                                enum:
                                  - avg
                                  - sum
                              metricAnalysisId:
                                type: string
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonMetricAnalysisId:
                                type: string
                              analysisSettings:
                                type: object
                                properties:
                                  userIdType:
                                    type: string
                                  lookbackDays:
                                    type: number
                                  populationType:
                                    type: string
                                    enum:
                                      - metric
                                      - factTable
                                      - exposureQuery
                                      - population
                                      - segment
                                  populationId:
                                    anyOf:
                                      - type: string
                                      - type: 'null'
                                  additionalNumeratorFilters:
                                    type: array
                                    items:
                                      type: string
                                  additionalDenominatorFilters:
                                    type: array
                                    items:
                                      type: string
                                  startDate:
                                    type: string
                                  endDate:
                                    type: string
                                required:
                                  - userIdType
                                  - lookbackDays
                                  - populationType
                                  - populationId
                                  - startDate
                                  - endDate
                                additionalProperties: false
                            required:
                              - type
                              - title
                              - description
                              - factMetricId
                              - visualizationType
                              - valueType
                              - metricAnalysisId
                              - analysisSettings
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: metric-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: metric
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: metric
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: metric
                                            metricId:
                                              type: string
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            denominatorUnit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - metricId
                                            - unit
                                            - denominatorUnit
                                          additionalProperties: false
                                    required:
                                      - type
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: fact-table-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: fact_table
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: fact_table
                                      factTableId:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: fact_table
                                            valueType:
                                              type: string
                                              enum:
                                                - unit_count
                                                - count
                                                - sum
                                            valueColumn:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - valueType
                                            - valueColumn
                                            - unit
                                          additionalProperties: false
                                    required:
                                      - type
                                      - factTableId
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: data-source-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: data_source
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: data_source
                                      table:
                                        type: string
                                      path:
                                        type: string
                                      timestampColumn:
                                        type: string
                                      columnTypes:
                                        type: object
                                        propertyNames:
                                          type: string
                                        additionalProperties:
                                          type: string
                                          enum:
                                            - string
                                            - number
                                            - date
                                            - boolean
                                            - other
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: data_source
                                            valueType:
                                              type: string
                                              enum:
                                                - unit_count
                                                - count
                                                - sum
                                            valueColumn:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - valueType
                                            - valueColumn
                                            - unit
                                          additionalProperties: false
                                    required:
                                      - type
                                      - table
                                      - path
                                      - timestampColumn
                                      - columnTypes
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: funnel-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: funnel
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: funnel
                                      unit:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      steps:
                                        maxItems: 20
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            factTableId:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            optional:
                                              type: boolean
                                            conversionWindow:
                                              anyOf:
                                                - type: object
                                                  properties:
                                                    unit:
                                                      type: string
                                                      enum:
                                                        - weeks
                                                        - days
                                                        - hours
                                                        - minutes
                                                    value:
                                                      type: number
                                                      exclusiveMinimum: 0
                                                  required:
                                                    - unit
                                                    - value
                                                  additionalProperties: false
                                                - type: 'null'
                                          required:
                                            - name
                                            - factTableId
                                            - rowFilters
                                            - optional
                                          additionalProperties: false
                                      concurrencyWindowSeconds:
                                        type: integer
                                        minimum: 0
                                      yAxisScale:
                                        type: string
                                        enum:
                                          - count
                                          - percent
                                    required:
                                      - type
                                      - unit
                                      - steps
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              linkedFunnelMetricId:
                                anyOf:
                                  - type: string
                                  - type: 'null'
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                            additionalProperties: false
                          - type: object
                            properties:
                              type:
                                type: string
                                const: sql-exploration
                              title:
                                type: string
                              description:
                                type: string
                              snapshotId:
                                type: string
                              layout:
                                type: object
                                properties:
                                  x:
                                    type: integer
                                    minimum: 0
                                    maximum: 23
                                  'y':
                                    type: integer
                                    minimum: 0
                                  w:
                                    type: integer
                                    minimum: 1
                                    maximum: 24
                                  h:
                                    type: integer
                                    minimum: 1
                                  static:
                                    type: boolean
                                required:
                                  - x
                                  - 'y'
                                  - w
                                  - h
                                additionalProperties: false
                              comparison:
                                type: object
                                properties:
                                  enabled:
                                    type: boolean
                                  mode:
                                    type: string
                                    enum:
                                      - previousPeriod
                                      - previousPeriodMatchDayOfWeek
                                      - previousYear
                                      - previousYearMatchDayOfWeek
                                      - custom
                                  previousTimeFrame:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                required:
                                  - enabled
                                additionalProperties: false
                              comparisonExplorerAnalysisId:
                                type: string
                              globalControlSettings:
                                type: object
                                properties:
                                  dateRange:
                                    type: boolean
                                additionalProperties: false
                              config:
                                type: object
                                properties:
                                  datasource:
                                    description: ID of the datasource to query
                                    type: string
                                  dimensions:
                                    type: array
                                    items:
                                      anyOf:
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: date
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            dateGranularity:
                                              type: string
                                              enum:
                                                - auto
                                                - hour
                                                - day
                                                - week
                                                - month
                                                - year
                                          required:
                                            - dimensionType
                                            - column
                                            - dateGranularity
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: dynamic
                                            column:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            maxValues:
                                              type: number
                                          required:
                                            - dimensionType
                                            - column
                                            - maxValues
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: static
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - dimensionType
                                            - column
                                            - values
                                          additionalProperties: false
                                        - type: object
                                          properties:
                                            dimensionType:
                                              type: string
                                              const: slice
                                            slices:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  name:
                                                    type: string
                                                  filters:
                                                    type: array
                                                    items:
                                                      type: object
                                                      properties:
                                                        operator:
                                                          type: string
                                                          enum:
                                                            - '='
                                                            - '!='
                                                            - <
                                                            - <=
                                                            - '>'
                                                            - '>='
                                                            - between
                                                            - not_between
                                                            - in
                                                            - not_in
                                                            - contains
                                                            - not_contains
                                                            - matches_pattern
                                                            - not_matches_pattern
                                                            - starts_with
                                                            - ends_with
                                                            - is_null
                                                            - not_null
                                                            - is_true
                                                            - is_false
                                                            - sql_expr
                                                            - saved_filter
                                                        column:
                                                          type: string
                                                        values:
                                                          type: array
                                                          items:
                                                            type: string
                                                      required:
                                                        - operator
                                                      additionalProperties: false
                                                required:
                                                  - name
                                                  - filters
                                                additionalProperties: false
                                          required:
                                            - dimensionType
                                            - slices
                                          additionalProperties: false
                                  chartType:
                                    type: string
                                    enum:
                                      - line
                                      - area
                                      - timeseries-table
                                      - table
                                      - bar
                                      - stackedBar
                                      - horizontalBar
                                      - stackedHorizontalBar
                                      - bigNumber
                                      - rawTable
                                  dateRange:
                                    type: object
                                    properties:
                                      predefined:
                                        type: string
                                        enum:
                                          - today
                                          - yesterday
                                          - last7Days
                                          - last30Days
                                          - last90Days
                                          - last12Months
                                          - lastCalendarYear
                                          - customLookback
                                          - customDateRange
                                      lookbackValue:
                                        anyOf:
                                          - type: number
                                          - type: 'null'
                                      lookbackUnit:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - hour
                                              - day
                                              - week
                                              - month
                                          - type: 'null'
                                      startDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      endDate:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                    required:
                                      - predefined
                                    additionalProperties: false
                                  showAs:
                                    type: string
                                    enum:
                                      - total
                                      - per_unit
                                  chartSettings:
                                    type: object
                                    properties:
                                      categoryAxisLabel:
                                        type: string
                                      valueAxisLabel:
                                        type: string
                                    additionalProperties: false
                                  type:
                                    type: string
                                    const: sql
                                  dataset:
                                    type: object
                                    properties:
                                      type:
                                        type: string
                                        const: sql
                                      sql:
                                        type: string
                                      timestampColumn:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      columnTypes:
                                        type: object
                                        propertyNames:
                                          type: string
                                        additionalProperties:
                                          type: string
                                          enum:
                                            - string
                                            - number
                                            - date
                                            - boolean
                                            - other
                                      values:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            name:
                                              type: string
                                            rowFilters:
                                              type: array
                                              items:
                                                type: object
                                                properties:
                                                  operator:
                                                    type: string
                                                    enum:
                                                      - '='
                                                      - '!='
                                                      - <
                                                      - <=
                                                      - '>'
                                                      - '>='
                                                      - between
                                                      - not_between
                                                      - in
                                                      - not_in
                                                      - contains
                                                      - not_contains
                                                      - matches_pattern
                                                      - not_matches_pattern
                                                      - starts_with
                                                      - ends_with
                                                      - is_null
                                                      - not_null
                                                      - is_true
                                                      - is_false
                                                      - sql_expr
                                                      - saved_filter
                                                  column:
                                                    type: string
                                                  values:
                                                    type: array
                                                    items:
                                                      type: string
                                                required:
                                                  - operator
                                                additionalProperties: false
                                            type:
                                              type: string
                                              const: sql
                                            valueType:
                                              type: string
                                              enum:
                                                - unit_count
                                                - count
                                                - sum
                                            valueColumn:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                            unit:
                                              anyOf:
                                                - type: string
                                                - type: 'null'
                                          required:
                                            - name
                                            - rowFilters
                                            - type
                                            - valueType
                                            - valueColumn
                                            - unit
                                          additionalProperties: false
                                      hiddenColumns:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - type
                                      - sql
                                      - timestampColumn
                                      - columnTypes
                                      - values
                                    additionalProperties: false
                                required:
                                  - datasource
                                  - dimensions
                                  - chartType
                                  - dateRange
                                  - type
                                  - dataset
                                additionalProperties: false
                              explorerAnalysisId:
                                description: >-
                                  The exploration run this block renders. Omit
                                  it to send `config` alone and have the query
                                  run when the dashboard is written.
                                type: string
                            required:
                              - type
                              - title
                              - description
                              - config
                            additionalProperties: false
                owner:
                  description: >-
                    The userId or email address of the owner. If an email
                    address is provided, it will be used to look up the userId
                    of the matching organization member. If an ID is provided,
                    it will be validated as existing in the organization. Omit
                    to leave the current owner unchanged.
                  type: string
                  minLength: 1
              additionalProperties: false
      responses:
        '200':
          description: Resource updated
          content:
            application/json:
              schema:
                type: object
                properties:
                  dashboard:
                    $ref: '#/components/schemas/Dashboard'
                required:
                  - dashboard
                additionalProperties: false
      x-codeSamples:
        - lang: cURL
          source: |-
            curl -X PUT 'https://api.growthbook.io/api/v1/dashboards/{id}' \
              -H 'Authorization: Bearer YOUR_API_KEY'
components:
  schemas:
    Dashboard:
      type: object
      properties:
        id:
          type: string
        uid:
          type: string
        organization:
          type: string
        experimentId:
          type: string
        isDefault:
          type: boolean
        isDeleted:
          type: boolean
        userId:
          type: string
        editLevel:
          type: string
          enum:
            - published
            - private
        shareLevel:
          type: string
          enum:
            - published
            - private
        enableAutoUpdates:
          type: boolean
        updateSchedule:
          anyOf:
            - type: object
              properties:
                type:
                  type: string
                  const: stale
                hours:
                  type: number
              required:
                - type
                - hours
              additionalProperties: false
            - type: object
              properties:
                type:
                  type: string
                  const: cron
                cron:
                  type: string
              required:
                - type
                - cron
              additionalProperties: false
        title:
          type: string
        globalControls:
          type: object
          properties:
            dateRange:
              type: object
              properties:
                predefined:
                  type: string
                  enum:
                    - today
                    - yesterday
                    - last7Days
                    - last30Days
                    - last90Days
                    - last12Months
                    - lastCalendarYear
                    - customLookback
                    - customDateRange
                lookbackValue:
                  anyOf:
                    - type: number
                    - type: 'null'
                lookbackUnit:
                  anyOf:
                    - type: string
                      enum:
                        - hour
                        - day
                        - week
                        - month
                    - type: 'null'
                startDate:
                  anyOf:
                    - type: string
                    - type: 'null'
                endDate:
                  anyOf:
                    - type: string
                    - type: 'null'
              required:
                - predefined
              additionalProperties: false
            dateGranularity:
              type: string
              enum:
                - auto
                - hour
                - day
                - week
                - month
                - year
            projects:
              type: array
              items:
                type: string
            experimentSearchString:
              type: string
          additionalProperties: false
        comparison:
          type: object
          properties:
            enabled:
              type: boolean
            mode:
              type: string
              enum:
                - previousPeriod
                - previousPeriodMatchDayOfWeek
                - previousYear
                - previousYearMatchDayOfWeek
                - custom
            previousTimeFrame:
              type: object
              properties:
                predefined:
                  type: string
                  enum:
                    - today
                    - yesterday
                    - last7Days
                    - last30Days
                    - last90Days
                    - last12Months
                    - lastCalendarYear
                    - customLookback
                    - customDateRange
                lookbackValue:
                  anyOf:
                    - type: number
                    - type: 'null'
                lookbackUnit:
                  anyOf:
                    - type: string
                      enum:
                        - hour
                        - day
                        - week
                        - month
                    - type: 'null'
                startDate:
                  anyOf:
                    - type: string
                    - type: 'null'
                endDate:
                  anyOf:
                    - type: string
                    - type: 'null'
              required:
                - predefined
              additionalProperties: false
          required:
            - enabled
          additionalProperties: false
        grid:
          type: object
          properties:
            cols:
              default: 24
              type: integer
              minimum: 1
              maximum: 24
            rowHeight:
              default: 40
              type: integer
              minimum: 8
          required:
            - cols
            - rowHeight
          additionalProperties: false
        projects:
          type: array
          items:
            type: string
        nextUpdate:
          format: date-time
          type: string
        lastUpdated:
          format: date-time
          type: string
        dateCreated:
          format: date-time
          type: string
        dateUpdated:
          format: date-time
          type: string
        blocks:
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: metric-explorer
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  factMetricId:
                    type: string
                  visualizationType:
                    type: string
                    enum:
                      - histogram
                      - bigNumber
                      - timeseries
                  valueType:
                    type: string
                    enum:
                      - avg
                      - sum
                  metricAnalysisId:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  comparisonMetricAnalysisId:
                    type: string
                  analysisSettings:
                    type: object
                    properties:
                      userIdType:
                        type: string
                      lookbackDays:
                        type: number
                      populationType:
                        type: string
                        enum:
                          - metric
                          - factTable
                          - exposureQuery
                          - population
                          - segment
                      populationId:
                        anyOf:
                          - type: string
                          - type: 'null'
                      additionalNumeratorFilters:
                        type: array
                        items:
                          type: string
                      additionalDenominatorFilters:
                        type: array
                        items:
                          type: string
                      startDate:
                        type: string
                      endDate:
                        type: string
                    required:
                      - userIdType
                      - lookbackDays
                      - populationType
                      - populationId
                      - startDate
                      - endDate
                    additionalProperties: false
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - factMetricId
                  - visualizationType
                  - valueType
                  - metricAnalysisId
                  - analysisSettings
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: markdown
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  content:
                    type: string
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - content
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiment-metadata
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  experimentId:
                    type: string
                  showDescription:
                    type: boolean
                  showHypothesis:
                    type: boolean
                  showVariationImages:
                    type: boolean
                  variationIds:
                    type: array
                    items:
                      type: string
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - experimentId
                  - showDescription
                  - showHypothesis
                  - showVariationImages
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiment-metric
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  experimentId:
                    type: string
                  metricIds:
                    type: array
                    items:
                      type: string
                  variationIds:
                    type: array
                    items:
                      type: string
                  baselineRow:
                    type: number
                  differenceType:
                    type: string
                    enum:
                      - absolute
                      - relative
                      - scaled
                  columnsFilter:
                    type: array
                    items:
                      type: string
                      enum:
                        - Metric & Variation Names
                        - Baseline Average
                        - Variation Averages
                        - Chance to Win
                        - CI Graph
                        - Lift
                  sliceTagsFilter:
                    type: array
                    items:
                      type: string
                  metricTagFilter:
                    type: array
                    items:
                      type: string
                  sortBy:
                    anyOf:
                      - type: string
                        enum:
                          - metrics
                          - metricTags
                          - significance
                          - change
                      - type: 'null'
                  sortDirection:
                    anyOf:
                      - type: string
                        enum:
                          - asc
                          - desc
                      - type: 'null'
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - snapshotId
                  - experimentId
                  - metricIds
                  - variationIds
                  - baselineRow
                  - differenceType
                  - columnsFilter
                  - sliceTagsFilter
                  - metricTagFilter
                  - sortBy
                  - sortDirection
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: metric-experiments
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  metricId:
                    type: string
                  projects:
                    type: array
                    items:
                      type: string
                  experimentSearchString:
                    type: string
                  differenceType:
                    type: string
                    enum:
                      - absolute
                      - relative
                      - scaled
                  bandits:
                    type: boolean
                  startDateRange:
                    type: object
                    properties:
                      predefined:
                        type: string
                        enum:
                          - today
                          - yesterday
                          - last7Days
                          - last30Days
                          - last90Days
                          - last12Months
                          - lastCalendarYear
                          - customLookback
                          - customDateRange
                      lookbackValue:
                        anyOf:
                          - type: number
                          - type: 'null'
                      lookbackUnit:
                        anyOf:
                          - type: string
                            enum:
                              - hour
                              - day
                              - week
                              - month
                          - type: 'null'
                      startDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                      endDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                    required:
                      - predefined
                    additionalProperties: false
                  endDateRange:
                    type: object
                    properties:
                      predefined:
                        type: string
                        enum:
                          - today
                          - yesterday
                          - last7Days
                          - last30Days
                          - last90Days
                          - last12Months
                          - lastCalendarYear
                          - customLookback
                          - customDateRange
                      lookbackValue:
                        anyOf:
                          - type: number
                          - type: 'null'
                      lookbackUnit:
                        anyOf:
                          - type: string
                            enum:
                              - hour
                              - day
                              - week
                              - month
                          - type: 'null'
                      startDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                      endDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                    required:
                      - predefined
                    additionalProperties: false
                  columns:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        visible:
                          type: boolean
                      required:
                        - id
                        - visible
                      additionalProperties: false
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                      projects:
                        type: boolean
                      experimentSearchString:
                        type: boolean
                    additionalProperties: false
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - metricId
                  - projects
                  - experimentSearchString
                  - differenceType
                  - bandits
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiments-scaled-impact
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  dateRange:
                    type: object
                    properties:
                      predefined:
                        type: string
                        enum:
                          - today
                          - yesterday
                          - last7Days
                          - last30Days
                          - last90Days
                          - last12Months
                          - lastCalendarYear
                          - customLookback
                          - customDateRange
                      lookbackValue:
                        anyOf:
                          - type: number
                          - type: 'null'
                      lookbackUnit:
                        anyOf:
                          - type: string
                            enum:
                              - hour
                              - day
                              - week
                              - month
                          - type: 'null'
                      startDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                      endDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                    required:
                      - predefined
                    additionalProperties: false
                  projects:
                    type: array
                    items:
                      type: string
                  experimentSearchString:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                      projects:
                        type: boolean
                      experimentSearchString:
                        type: boolean
                    additionalProperties: false
                  metricId:
                    type: string
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - dateRange
                  - projects
                  - metricId
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiments-win-rate
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  dateRange:
                    type: object
                    properties:
                      predefined:
                        type: string
                        enum:
                          - today
                          - yesterday
                          - last7Days
                          - last30Days
                          - last90Days
                          - last12Months
                          - lastCalendarYear
                          - customLookback
                          - customDateRange
                      lookbackValue:
                        anyOf:
                          - type: number
                          - type: 'null'
                      lookbackUnit:
                        anyOf:
                          - type: string
                            enum:
                              - hour
                              - day
                              - week
                              - month
                          - type: 'null'
                      startDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                      endDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                    required:
                      - predefined
                    additionalProperties: false
                  projects:
                    type: array
                    items:
                      type: string
                  experimentSearchString:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                      projects:
                        type: boolean
                      experimentSearchString:
                        type: boolean
                    additionalProperties: false
                  showProjectBreakdown:
                    type: boolean
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - dateRange
                  - projects
                  - showProjectBreakdown
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiments-status
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  dateRange:
                    type: object
                    properties:
                      predefined:
                        type: string
                        enum:
                          - today
                          - yesterday
                          - last7Days
                          - last30Days
                          - last90Days
                          - last12Months
                          - lastCalendarYear
                          - customLookback
                          - customDateRange
                      lookbackValue:
                        anyOf:
                          - type: number
                          - type: 'null'
                      lookbackUnit:
                        anyOf:
                          - type: string
                            enum:
                              - hour
                              - day
                              - week
                              - month
                          - type: 'null'
                      startDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                      endDate:
                        anyOf:
                          - type: string
                          - type: 'null'
                    required:
                      - predefined
                    additionalProperties: false
                  projects:
                    type: array
                    items:
                      type: string
                  experimentSearchString:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                      projects:
                        type: boolean
                      experimentSearchString:
                        type: boolean
                    additionalProperties: false
                  dateGranularity:
                    type: string
                    enum:
                      - auto
                      - hour
                      - day
                      - week
                      - month
                      - year
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - dateRange
                  - projects
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiment-dimension
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  experimentId:
                    type: string
                  dimensionId:
                    type: string
                  dimensionValues:
                    type: array
                    items:
                      type: string
                  metricIds:
                    type: array
                    items:
                      type: string
                  variationIds:
                    type: array
                    items:
                      type: string
                  baselineRow:
                    type: number
                  differenceType:
                    type: string
                    enum:
                      - absolute
                      - relative
                      - scaled
                  columnsFilter:
                    type: array
                    items:
                      type: string
                      enum:
                        - Metric & Variation Names
                        - Baseline Average
                        - Variation Averages
                        - Chance to Win
                        - CI Graph
                        - Lift
                  metricTagFilter:
                    type: array
                    items:
                      type: string
                  sortBy:
                    anyOf:
                      - type: string
                        enum:
                          - metrics
                          - metricTags
                          - significance
                          - change
                      - type: 'null'
                  sortDirection:
                    anyOf:
                      - type: string
                        enum:
                          - asc
                          - desc
                      - type: 'null'
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - snapshotId
                  - experimentId
                  - dimensionId
                  - dimensionValues
                  - metricIds
                  - variationIds
                  - baselineRow
                  - differenceType
                  - columnsFilter
                  - metricTagFilter
                  - sortBy
                  - sortDirection
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiment-time-series
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  experimentId:
                    type: string
                  metricId:
                    type: string
                  metricIds:
                    type: array
                    items:
                      type: string
                  variationIds:
                    type: array
                    items:
                      type: string
                  differenceType:
                    type: string
                    enum:
                      - absolute
                      - relative
                      - scaled
                  sliceTagsFilter:
                    type: array
                    items:
                      type: string
                  metricTagFilter:
                    type: array
                    items:
                      type: string
                  sortBy:
                    anyOf:
                      - type: string
                        enum:
                          - metrics
                          - metricTags
                          - significance
                          - change
                      - type: 'null'
                  sortDirection:
                    anyOf:
                      - type: string
                        enum:
                          - asc
                          - desc
                      - type: 'null'
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - snapshotId
                  - experimentId
                  - metricIds
                  - variationIds
                  - differenceType
                  - sliceTagsFilter
                  - metricTagFilter
                  - sortBy
                  - sortDirection
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: experiment-traffic
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  experimentId:
                    type: string
                  showTable:
                    type: boolean
                  showTimeseries:
                    type: boolean
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - experimentId
                  - showTable
                  - showTimeseries
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: sql-explorer
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  savedQueryId:
                    type: string
                  dataVizConfigIndex:
                    type: number
                  blockConfig:
                    type: array
                    items:
                      type: string
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - savedQueryId
                  - blockConfig
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: metric-exploration
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  explorerAnalysisId:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  comparisonExplorerAnalysisId:
                    type: string
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                    additionalProperties: false
                  config:
                    type: object
                    properties:
                      datasource:
                        description: ID of the datasource to query
                        type: string
                      dimensions:
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: date
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                dateGranularity:
                                  type: string
                                  enum:
                                    - auto
                                    - hour
                                    - day
                                    - week
                                    - month
                                    - year
                              required:
                                - dimensionType
                                - column
                                - dateGranularity
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: dynamic
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                maxValues:
                                  type: number
                              required:
                                - dimensionType
                                - column
                                - maxValues
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: static
                                column:
                                  type: string
                                values:
                                  type: array
                                  items:
                                    type: string
                              required:
                                - dimensionType
                                - column
                                - values
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: slice
                                slices:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      filters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            operator:
                                              type: string
                                              enum:
                                                - '='
                                                - '!='
                                                - <
                                                - <=
                                                - '>'
                                                - '>='
                                                - between
                                                - not_between
                                                - in
                                                - not_in
                                                - contains
                                                - not_contains
                                                - matches_pattern
                                                - not_matches_pattern
                                                - starts_with
                                                - ends_with
                                                - is_null
                                                - not_null
                                                - is_true
                                                - is_false
                                                - sql_expr
                                                - saved_filter
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - operator
                                          additionalProperties: false
                                    required:
                                      - name
                                      - filters
                                    additionalProperties: false
                              required:
                                - dimensionType
                                - slices
                              additionalProperties: false
                      chartType:
                        type: string
                        enum:
                          - line
                          - area
                          - timeseries-table
                          - table
                          - bar
                          - stackedBar
                          - horizontalBar
                          - stackedHorizontalBar
                          - bigNumber
                          - rawTable
                      dateRange:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                      showAs:
                        type: string
                        enum:
                          - total
                          - per_unit
                      chartSettings:
                        type: object
                        properties:
                          categoryAxisLabel:
                            type: string
                          valueAxisLabel:
                            type: string
                        additionalProperties: false
                      type:
                        type: string
                        const: metric
                      dataset:
                        type: object
                        properties:
                          type:
                            type: string
                            const: metric
                          values:
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                rowFilters:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      operator:
                                        type: string
                                        enum:
                                          - '='
                                          - '!='
                                          - <
                                          - <=
                                          - '>'
                                          - '>='
                                          - between
                                          - not_between
                                          - in
                                          - not_in
                                          - contains
                                          - not_contains
                                          - matches_pattern
                                          - not_matches_pattern
                                          - starts_with
                                          - ends_with
                                          - is_null
                                          - not_null
                                          - is_true
                                          - is_false
                                          - sql_expr
                                          - saved_filter
                                      column:
                                        type: string
                                      values:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - operator
                                    additionalProperties: false
                                type:
                                  type: string
                                  const: metric
                                metricId:
                                  type: string
                                unit:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                denominatorUnit:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                              required:
                                - name
                                - rowFilters
                                - type
                                - metricId
                                - unit
                                - denominatorUnit
                              additionalProperties: false
                        required:
                          - type
                          - values
                        additionalProperties: false
                    required:
                      - datasource
                      - dimensions
                      - chartType
                      - dateRange
                      - type
                      - dataset
                    additionalProperties: false
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - explorerAnalysisId
                  - config
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: fact-table-exploration
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  explorerAnalysisId:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  comparisonExplorerAnalysisId:
                    type: string
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                    additionalProperties: false
                  config:
                    type: object
                    properties:
                      datasource:
                        description: ID of the datasource to query
                        type: string
                      dimensions:
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: date
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                dateGranularity:
                                  type: string
                                  enum:
                                    - auto
                                    - hour
                                    - day
                                    - week
                                    - month
                                    - year
                              required:
                                - dimensionType
                                - column
                                - dateGranularity
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: dynamic
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                maxValues:
                                  type: number
                              required:
                                - dimensionType
                                - column
                                - maxValues
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: static
                                column:
                                  type: string
                                values:
                                  type: array
                                  items:
                                    type: string
                              required:
                                - dimensionType
                                - column
                                - values
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: slice
                                slices:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      filters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            operator:
                                              type: string
                                              enum:
                                                - '='
                                                - '!='
                                                - <
                                                - <=
                                                - '>'
                                                - '>='
                                                - between
                                                - not_between
                                                - in
                                                - not_in
                                                - contains
                                                - not_contains
                                                - matches_pattern
                                                - not_matches_pattern
                                                - starts_with
                                                - ends_with
                                                - is_null
                                                - not_null
                                                - is_true
                                                - is_false
                                                - sql_expr
                                                - saved_filter
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - operator
                                          additionalProperties: false
                                    required:
                                      - name
                                      - filters
                                    additionalProperties: false
                              required:
                                - dimensionType
                                - slices
                              additionalProperties: false
                      chartType:
                        type: string
                        enum:
                          - line
                          - area
                          - timeseries-table
                          - table
                          - bar
                          - stackedBar
                          - horizontalBar
                          - stackedHorizontalBar
                          - bigNumber
                          - rawTable
                      dateRange:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                      showAs:
                        type: string
                        enum:
                          - total
                          - per_unit
                      chartSettings:
                        type: object
                        properties:
                          categoryAxisLabel:
                            type: string
                          valueAxisLabel:
                            type: string
                        additionalProperties: false
                      type:
                        type: string
                        const: fact_table
                      dataset:
                        type: object
                        properties:
                          type:
                            type: string
                            const: fact_table
                          factTableId:
                            anyOf:
                              - type: string
                              - type: 'null'
                          values:
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                rowFilters:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      operator:
                                        type: string
                                        enum:
                                          - '='
                                          - '!='
                                          - <
                                          - <=
                                          - '>'
                                          - '>='
                                          - between
                                          - not_between
                                          - in
                                          - not_in
                                          - contains
                                          - not_contains
                                          - matches_pattern
                                          - not_matches_pattern
                                          - starts_with
                                          - ends_with
                                          - is_null
                                          - not_null
                                          - is_true
                                          - is_false
                                          - sql_expr
                                          - saved_filter
                                      column:
                                        type: string
                                      values:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - operator
                                    additionalProperties: false
                                type:
                                  type: string
                                  const: fact_table
                                valueType:
                                  type: string
                                  enum:
                                    - unit_count
                                    - count
                                    - sum
                                valueColumn:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                unit:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                              required:
                                - name
                                - rowFilters
                                - type
                                - valueType
                                - valueColumn
                                - unit
                              additionalProperties: false
                        required:
                          - type
                          - factTableId
                          - values
                        additionalProperties: false
                    required:
                      - datasource
                      - dimensions
                      - chartType
                      - dateRange
                      - type
                      - dataset
                    additionalProperties: false
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - explorerAnalysisId
                  - config
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: data-source-exploration
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  explorerAnalysisId:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  comparisonExplorerAnalysisId:
                    type: string
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                    additionalProperties: false
                  config:
                    type: object
                    properties:
                      datasource:
                        description: ID of the datasource to query
                        type: string
                      dimensions:
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: date
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                dateGranularity:
                                  type: string
                                  enum:
                                    - auto
                                    - hour
                                    - day
                                    - week
                                    - month
                                    - year
                              required:
                                - dimensionType
                                - column
                                - dateGranularity
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: dynamic
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                maxValues:
                                  type: number
                              required:
                                - dimensionType
                                - column
                                - maxValues
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: static
                                column:
                                  type: string
                                values:
                                  type: array
                                  items:
                                    type: string
                              required:
                                - dimensionType
                                - column
                                - values
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: slice
                                slices:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      filters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            operator:
                                              type: string
                                              enum:
                                                - '='
                                                - '!='
                                                - <
                                                - <=
                                                - '>'
                                                - '>='
                                                - between
                                                - not_between
                                                - in
                                                - not_in
                                                - contains
                                                - not_contains
                                                - matches_pattern
                                                - not_matches_pattern
                                                - starts_with
                                                - ends_with
                                                - is_null
                                                - not_null
                                                - is_true
                                                - is_false
                                                - sql_expr
                                                - saved_filter
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - operator
                                          additionalProperties: false
                                    required:
                                      - name
                                      - filters
                                    additionalProperties: false
                              required:
                                - dimensionType
                                - slices
                              additionalProperties: false
                      chartType:
                        type: string
                        enum:
                          - line
                          - area
                          - timeseries-table
                          - table
                          - bar
                          - stackedBar
                          - horizontalBar
                          - stackedHorizontalBar
                          - bigNumber
                          - rawTable
                      dateRange:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                      showAs:
                        type: string
                        enum:
                          - total
                          - per_unit
                      chartSettings:
                        type: object
                        properties:
                          categoryAxisLabel:
                            type: string
                          valueAxisLabel:
                            type: string
                        additionalProperties: false
                      type:
                        type: string
                        const: data_source
                      dataset:
                        type: object
                        properties:
                          type:
                            type: string
                            const: data_source
                          table:
                            type: string
                          path:
                            type: string
                          timestampColumn:
                            type: string
                          columnTypes:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties:
                              type: string
                              enum:
                                - string
                                - number
                                - date
                                - boolean
                                - other
                          values:
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                rowFilters:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      operator:
                                        type: string
                                        enum:
                                          - '='
                                          - '!='
                                          - <
                                          - <=
                                          - '>'
                                          - '>='
                                          - between
                                          - not_between
                                          - in
                                          - not_in
                                          - contains
                                          - not_contains
                                          - matches_pattern
                                          - not_matches_pattern
                                          - starts_with
                                          - ends_with
                                          - is_null
                                          - not_null
                                          - is_true
                                          - is_false
                                          - sql_expr
                                          - saved_filter
                                      column:
                                        type: string
                                      values:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - operator
                                    additionalProperties: false
                                type:
                                  type: string
                                  const: data_source
                                valueType:
                                  type: string
                                  enum:
                                    - unit_count
                                    - count
                                    - sum
                                valueColumn:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                unit:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                              required:
                                - name
                                - rowFilters
                                - type
                                - valueType
                                - valueColumn
                                - unit
                              additionalProperties: false
                        required:
                          - type
                          - table
                          - path
                          - timestampColumn
                          - columnTypes
                          - values
                        additionalProperties: false
                    required:
                      - datasource
                      - dimensions
                      - chartType
                      - dateRange
                      - type
                      - dataset
                    additionalProperties: false
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - explorerAnalysisId
                  - config
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: sql-exploration
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  explorerAnalysisId:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  comparisonExplorerAnalysisId:
                    type: string
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                    additionalProperties: false
                  config:
                    type: object
                    properties:
                      datasource:
                        description: ID of the datasource to query
                        type: string
                      dimensions:
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: date
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                dateGranularity:
                                  type: string
                                  enum:
                                    - auto
                                    - hour
                                    - day
                                    - week
                                    - month
                                    - year
                              required:
                                - dimensionType
                                - column
                                - dateGranularity
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: dynamic
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                maxValues:
                                  type: number
                              required:
                                - dimensionType
                                - column
                                - maxValues
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: static
                                column:
                                  type: string
                                values:
                                  type: array
                                  items:
                                    type: string
                              required:
                                - dimensionType
                                - column
                                - values
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: slice
                                slices:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      filters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            operator:
                                              type: string
                                              enum:
                                                - '='
                                                - '!='
                                                - <
                                                - <=
                                                - '>'
                                                - '>='
                                                - between
                                                - not_between
                                                - in
                                                - not_in
                                                - contains
                                                - not_contains
                                                - matches_pattern
                                                - not_matches_pattern
                                                - starts_with
                                                - ends_with
                                                - is_null
                                                - not_null
                                                - is_true
                                                - is_false
                                                - sql_expr
                                                - saved_filter
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - operator
                                          additionalProperties: false
                                    required:
                                      - name
                                      - filters
                                    additionalProperties: false
                              required:
                                - dimensionType
                                - slices
                              additionalProperties: false
                      chartType:
                        type: string
                        enum:
                          - line
                          - area
                          - timeseries-table
                          - table
                          - bar
                          - stackedBar
                          - horizontalBar
                          - stackedHorizontalBar
                          - bigNumber
                          - rawTable
                      dateRange:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                      showAs:
                        type: string
                        enum:
                          - total
                          - per_unit
                      chartSettings:
                        type: object
                        properties:
                          categoryAxisLabel:
                            type: string
                          valueAxisLabel:
                            type: string
                        additionalProperties: false
                      type:
                        type: string
                        const: sql
                      dataset:
                        type: object
                        properties:
                          type:
                            type: string
                            const: sql
                          sql:
                            type: string
                          timestampColumn:
                            anyOf:
                              - type: string
                              - type: 'null'
                          columnTypes:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties:
                              type: string
                              enum:
                                - string
                                - number
                                - date
                                - boolean
                                - other
                          values:
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                rowFilters:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      operator:
                                        type: string
                                        enum:
                                          - '='
                                          - '!='
                                          - <
                                          - <=
                                          - '>'
                                          - '>='
                                          - between
                                          - not_between
                                          - in
                                          - not_in
                                          - contains
                                          - not_contains
                                          - matches_pattern
                                          - not_matches_pattern
                                          - starts_with
                                          - ends_with
                                          - is_null
                                          - not_null
                                          - is_true
                                          - is_false
                                          - sql_expr
                                          - saved_filter
                                      column:
                                        type: string
                                      values:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - operator
                                    additionalProperties: false
                                type:
                                  type: string
                                  const: sql
                                valueType:
                                  type: string
                                  enum:
                                    - unit_count
                                    - count
                                    - sum
                                valueColumn:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                unit:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                              required:
                                - name
                                - rowFilters
                                - type
                                - valueType
                                - valueColumn
                                - unit
                              additionalProperties: false
                          hiddenColumns:
                            type: array
                            items:
                              type: string
                        required:
                          - type
                          - sql
                          - timestampColumn
                          - columnTypes
                          - values
                        additionalProperties: false
                    required:
                      - datasource
                      - dimensions
                      - chartType
                      - dateRange
                      - type
                      - dataset
                    additionalProperties: false
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - explorerAnalysisId
                  - config
                additionalProperties: false
              - type: object
                properties:
                  organization:
                    type: string
                  id:
                    type: string
                  uid:
                    type: string
                  type:
                    type: string
                    const: funnel-exploration
                  title:
                    type: string
                  description:
                    type: string
                  snapshotId:
                    type: string
                  layout:
                    type: object
                    properties:
                      x:
                        type: integer
                        minimum: 0
                        maximum: 23
                      'y':
                        type: integer
                        minimum: 0
                      w:
                        type: integer
                        minimum: 1
                        maximum: 24
                      h:
                        type: integer
                        minimum: 1
                      static:
                        type: boolean
                    required:
                      - x
                      - 'y'
                      - w
                      - h
                    additionalProperties: false
                  explorerAnalysisId:
                    type: string
                  comparison:
                    type: object
                    properties:
                      enabled:
                        type: boolean
                      mode:
                        type: string
                        enum:
                          - previousPeriod
                          - previousPeriodMatchDayOfWeek
                          - previousYear
                          - previousYearMatchDayOfWeek
                          - custom
                      previousTimeFrame:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                    required:
                      - enabled
                    additionalProperties: false
                  comparisonExplorerAnalysisId:
                    type: string
                  globalControlSettings:
                    type: object
                    properties:
                      dateRange:
                        type: boolean
                    additionalProperties: false
                  config:
                    type: object
                    properties:
                      datasource:
                        description: ID of the datasource to query
                        type: string
                      dimensions:
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: date
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                dateGranularity:
                                  type: string
                                  enum:
                                    - auto
                                    - hour
                                    - day
                                    - week
                                    - month
                                    - year
                              required:
                                - dimensionType
                                - column
                                - dateGranularity
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: dynamic
                                column:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                maxValues:
                                  type: number
                              required:
                                - dimensionType
                                - column
                                - maxValues
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: static
                                column:
                                  type: string
                                values:
                                  type: array
                                  items:
                                    type: string
                              required:
                                - dimensionType
                                - column
                                - values
                              additionalProperties: false
                            - type: object
                              properties:
                                dimensionType:
                                  type: string
                                  const: slice
                                slices:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        type: string
                                      filters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            operator:
                                              type: string
                                              enum:
                                                - '='
                                                - '!='
                                                - <
                                                - <=
                                                - '>'
                                                - '>='
                                                - between
                                                - not_between
                                                - in
                                                - not_in
                                                - contains
                                                - not_contains
                                                - matches_pattern
                                                - not_matches_pattern
                                                - starts_with
                                                - ends_with
                                                - is_null
                                                - not_null
                                                - is_true
                                                - is_false
                                                - sql_expr
                                                - saved_filter
                                            column:
                                              type: string
                                            values:
                                              type: array
                                              items:
                                                type: string
                                          required:
                                            - operator
                                          additionalProperties: false
                                    required:
                                      - name
                                      - filters
                                    additionalProperties: false
                              required:
                                - dimensionType
                                - slices
                              additionalProperties: false
                      chartType:
                        type: string
                        enum:
                          - line
                          - area
                          - timeseries-table
                          - table
                          - bar
                          - stackedBar
                          - horizontalBar
                          - stackedHorizontalBar
                          - bigNumber
                          - rawTable
                      dateRange:
                        type: object
                        properties:
                          predefined:
                            type: string
                            enum:
                              - today
                              - yesterday
                              - last7Days
                              - last30Days
                              - last90Days
                              - last12Months
                              - lastCalendarYear
                              - customLookback
                              - customDateRange
                          lookbackValue:
                            anyOf:
                              - type: number
                              - type: 'null'
                          lookbackUnit:
                            anyOf:
                              - type: string
                                enum:
                                  - hour
                                  - day
                                  - week
                                  - month
                              - type: 'null'
                          startDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                          endDate:
                            anyOf:
                              - type: string
                              - type: 'null'
                        required:
                          - predefined
                        additionalProperties: false
                      showAs:
                        type: string
                        enum:
                          - total
                          - per_unit
                      chartSettings:
                        type: object
                        properties:
                          categoryAxisLabel:
                            type: string
                          valueAxisLabel:
                            type: string
                        additionalProperties: false
                      type:
                        type: string
                        const: funnel
                      dataset:
                        type: object
                        properties:
                          type:
                            type: string
                            const: funnel
                          unit:
                            anyOf:
                              - type: string
                              - type: 'null'
                          steps:
                            maxItems: 20
                            type: array
                            items:
                              type: object
                              properties:
                                name:
                                  type: string
                                factTableId:
                                  type: string
                                rowFilters:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      operator:
                                        type: string
                                        enum:
                                          - '='
                                          - '!='
                                          - <
                                          - <=
                                          - '>'
                                          - '>='
                                          - between
                                          - not_between
                                          - in
                                          - not_in
                                          - contains
                                          - not_contains
                                          - matches_pattern
                                          - not_matches_pattern
                                          - starts_with
                                          - ends_with
                                          - is_null
                                          - not_null
                                          - is_true
                                          - is_false
                                          - sql_expr
                                          - saved_filter
                                      column:
                                        type: string
                                      values:
                                        type: array
                                        items:
                                          type: string
                                    required:
                                      - operator
                                    additionalProperties: false
                                optional:
                                  type: boolean
                                conversionWindow:
                                  anyOf:
                                    - type: object
                                      properties:
                                        unit:
                                          type: string
                                          enum:
                                            - weeks
                                            - days
                                            - hours
                                            - minutes
                                        value:
                                          type: number
                                          exclusiveMinimum: 0
                                      required:
                                        - unit
                                        - value
                                      additionalProperties: false
                                    - type: 'null'
                              required:
                                - name
                                - factTableId
                                - rowFilters
                                - optional
                              additionalProperties: false
                          concurrencyWindowSeconds:
                            type: integer
                            minimum: 0
                          yAxisScale:
                            type: string
                            enum:
                              - count
                              - percent
                        required:
                          - type
                          - unit
                          - steps
                        additionalProperties: false
                    required:
                      - datasource
                      - dimensions
                      - chartType
                      - dateRange
                      - type
                      - dataset
                    additionalProperties: false
                  linkedFunnelMetricId:
                    anyOf:
                      - type: string
                      - type: 'null'
                required:
                  - organization
                  - id
                  - uid
                  - type
                  - title
                  - description
                  - explorerAnalysisId
                  - config
                additionalProperties: false
        owner:
          description: The userId of the owner (or raw owner name/email for legacy records)
          type: string
        ownerEmail:
          description: >-
            The email address of the owner, when the owner can be resolved to a
            known user.
          type: string
      required:
        - id
        - uid
        - organization
        - isDefault
        - isDeleted
        - userId
        - editLevel
        - shareLevel
        - enableAutoUpdates
        - title
        - dateCreated
        - dateUpdated
        - blocks
        - owner
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >
        If using Bearer auth, pass the Secret Key as the token:

        ```bash

        curl https://api.growthbook.io/api/v1/features   -H "Authorization:
        Bearer secret_abc123DEF456"

        ```
    basicAuth:
      type: http
      scheme: basic
      description: >
        If using HTTP Basic auth, pass the Secret Key as the username and leave
        the password blank:

        ```bash

        curl https://api.growthbook.io/api/v1/features   -u secret_abc123DEF456:

        # The ":" at the end stops curl from asking for a password

        ```

````