diff --git a/_docs/v0.57/api.html b/_docs/v0.57/api.html
index 7a1b57bd4..8a214c995 100644
--- a/_docs/v0.57/api.html
+++ b/_docs/v0.57/api.html
@@ -1415,10 +1415,134 @@
},
"required" : [ "id", "type", "name" ]
},
+ "metabase-enterprise.metabot-v3.tools.api.basic-snippet" : {
+ "type" : "object",
+ "properties" : {
+ "description" : {
+ "type" : "string"
+ },
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "id", "name" ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.basic-transform" : {
+ "type" : "object",
+ "properties" : {
+ "description" : {
+ "type" : "string"
+ },
+ "entity_id" : {
+ "type" : "string"
+ },
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ },
+ "source" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.transforms.transform-source"
+ },
+ "type" : {
+ "type" : "string",
+ "enum" : [ "mbql", "native", "python" ]
+ }
+ },
+ "required" : [ "id", "name", "type", "source" ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.broken-question" : {
+ "type" : "object",
+ "properties" : {
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "id", "name" ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.broken-transform" : {
+ "type" : "object",
+ "properties" : {
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "id", "name" ]
+ },
"metabase-enterprise.metabot-v3.tools.api.bucket" : {
"type" : "string",
"enum" : [ "millisecond", "second", "minute", "hour", "day", "week", "month", "quarter", "year", "second-of-minute", "minute-of-hour", "hour-of-day", "day-of-week", "day-of-month", "day-of-year", "week-of-year", "month-of-year", "quarter-of-year", "year-of-era" ]
},
+ "metabase-enterprise.metabot-v3.tools.api.check-transform-dependencies-arguments" : {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "source" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.transforms.transform-source"
+ },
+ "transform_id" : {
+ "type" : "integer"
+ }
+ },
+ "required" : [ "transform_id", "source" ]
+ }, {
+ "type" : "object",
+ "properties" : { }
+ } ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.check-transform-dependencies-result" : {
+ "anyOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "structured_output" : {
+ "type" : "object",
+ "properties" : {
+ "bad_question_count" : {
+ "type" : "integer"
+ },
+ "bad_questions" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.broken-question"
+ }
+ },
+ "bad_transform_count" : {
+ "type" : "integer"
+ },
+ "bad_transforms" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.broken-transform"
+ }
+ },
+ "success" : {
+ "type" : "boolean"
+ }
+ },
+ "required" : [ "success", "bad_transform_count", "bad_transforms", "bad_question_count", "bad_questions" ]
+ }
+ },
+ "required" : [ "structured_output" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "output" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "output" ]
+ } ]
+ },
"metabase-enterprise.metabot-v3.tools.api.column" : {
"type" : "object",
"properties" : {
@@ -1937,6 +2061,60 @@
},
"required" : [ "id", "type", "name" ]
},
+ "metabase-enterprise.metabot-v3.tools.api.full-snippet" : {
+ "type" : "object",
+ "properties" : {
+ "content" : {
+ "type" : "string"
+ },
+ "description" : {
+ "type" : "string"
+ },
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "id", "name", "content" ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.full-transform" : {
+ "type" : "object",
+ "properties" : {
+ "entity_id" : {
+ "type" : "string"
+ },
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ },
+ "updated_at" : {
+ "description" : "value must be a valid date string",
+ "type" : "string"
+ },
+ "source" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.transforms.transform-source"
+ },
+ "type" : {
+ "type" : "string",
+ "enum" : [ "mbql", "native", "python" ]
+ },
+ "target" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.transforms.transform-target"
+ },
+ "created_at" : {
+ "description" : "value must be a valid date string",
+ "type" : "string"
+ },
+ "description" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "id", "name", "type", "source", "created_at", "updated_at", "target" ]
+ },
"metabase-enterprise.metabot-v3.tools.api.generate-insights-arguments" : {
"type" : "object",
"properties" : {
@@ -1989,6 +2167,12 @@
"email_address" : {
"type" : "string"
},
+ "glossary" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "string"
+ }
+ },
"id" : {
"type" : "integer"
},
@@ -2237,6 +2421,43 @@
"required" : [ "output" ]
} ]
},
+ "metabase-enterprise.metabot-v3.tools.api.get-snippet-details-arguments" : {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "snippet_id" : {
+ "type" : "integer"
+ }
+ },
+ "required" : [ "snippet_id" ]
+ }, {
+ "type" : "object",
+ "properties" : { }
+ } ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.get-snippet-details-result" : {
+ "description" : "Schema for SQL snippet detail results",
+ "type" : "object",
+ "properties" : {
+ "structured_output" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.full-snippet"
+ }
+ },
+ "required" : [ "structured_output" ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.get-snippets-result" : {
+ "description" : "Schema for SQL snippet list results",
+ "type" : "object",
+ "properties" : {
+ "structured_output" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.basic-snippet"
+ }
+ }
+ },
+ "required" : [ "structured_output" ]
+ },
"metabase-enterprise.metabot-v3.tools.api.get-table-details-arguments" : {
"allOf" : [ {
"type" : "object",
@@ -2389,66 +2610,174 @@
"required" : [ "output" ]
} ]
},
- "metabase-enterprise.metabot-v3.tools.api.group-by" : {
+ "metabase-enterprise.metabot-v3.tools.api.get-transform-details-arguments" : {
"allOf" : [ {
"type" : "object",
"properties" : {
- "field_granularity" : {
- "type" : "string",
- "enum" : [ "day", "week", "month", "quarter", "year" ]
- },
- "field_id" : {
- "type" : "string"
+ "transform_id" : {
+ "type" : "integer"
}
},
- "required" : [ "field_id" ]
+ "required" : [ "transform_id" ]
}, {
"type" : "object",
"properties" : { }
} ]
},
- "metabase-enterprise.metabot-v3.tools.api.numeric-filter" : {
+ "metabase-enterprise.metabot-v3.tools.api.get-transform-details-result" : {
+ "anyOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "structured_output" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.full-transform"
+ }
+ }
+ },
+ "required" : [ "structured_output" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "output" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "output" ]
+ } ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.get-transform-python-library-details-arguments" : {
"allOf" : [ {
"type" : "object",
"properties" : {
- "field_id" : {
+ "path" : {
"type" : "string"
- },
- "operation" : {
- "type" : "string",
- "enum" : [ "equals", "not-equals", "greater-than", "greater-than-or-equal", "less-than", "less-than-or-equal", "number-equals", "number-not-equals", "number-greater-than", "number-greater-than-or-equal", "number-less-than", "number-less-than-or-equal" ]
- },
- "value" : {
- "anyOf" : [ {
- "type" : "integer"
- }, {
- "type" : "number"
- } ]
}
},
- "required" : [ "field_id", "operation", "value" ]
+ "required" : [ "path" ]
}, {
"type" : "object",
"properties" : { }
} ]
},
- "metabase-enterprise.metabot-v3.tools.api.proportion" : {
- "type" : "number"
+ "metabase-enterprise.metabot-v3.tools.api.get-transform-python-library-details-result" : {
+ "anyOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "structured_output" : {
+ "type" : "object",
+ "properties" : {
+ "created_at" : {
+ "description" : "value must be a valid date string",
+ "type" : "string"
+ },
+ "path" : {
+ "type" : "string"
+ },
+ "source" : {
+ "type" : "string"
+ },
+ "updated_at" : {
+ "description" : "value must be a valid date string",
+ "type" : "string"
+ }
+ },
+ "required" : [ "source", "path", "created_at", "updated_at" ]
+ }
+ },
+ "required" : [ "structured_output" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "output" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "output" ]
+ } ]
},
- "metabase-enterprise.metabot-v3.tools.api.query-datasource-arguments" : {
- "allOf" : [ {
+ "metabase-enterprise.metabot-v3.tools.api.get-transforms-result" : {
+ "anyOf" : [ {
"type" : "object",
"properties" : {
- "aggregations" : {
+ "structured_output" : {
"type" : "array",
"items" : {
- "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.aggregation"
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.basic-transform"
}
- },
- "fields" : {
- "type" : "array",
- "items" : {
- "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.field"
+ }
+ },
+ "required" : [ "structured_output" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "output" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "output" ]
+ } ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.group-by" : {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "field_granularity" : {
+ "type" : "string",
+ "enum" : [ "day", "week", "month", "quarter", "year" ]
+ },
+ "field_id" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "field_id" ]
+ }, {
+ "type" : "object",
+ "properties" : { }
+ } ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.numeric-filter" : {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "field_id" : {
+ "type" : "string"
+ },
+ "operation" : {
+ "type" : "string",
+ "enum" : [ "equals", "not-equals", "greater-than", "greater-than-or-equal", "less-than", "less-than-or-equal", "number-equals", "number-not-equals", "number-greater-than", "number-greater-than-or-equal", "number-less-than", "number-less-than-or-equal" ]
+ },
+ "value" : {
+ "anyOf" : [ {
+ "type" : "integer"
+ }, {
+ "type" : "number"
+ } ]
+ }
+ },
+ "required" : [ "field_id", "operation", "value" ]
+ }, {
+ "type" : "object",
+ "properties" : { }
+ } ]
+ },
+ "metabase-enterprise.metabot-v3.tools.api.proportion" : {
+ "type" : "number"
+ },
+ "metabase-enterprise.metabot-v3.tools.api.query-datasource-arguments" : {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "aggregations" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.aggregation"
+ }
+ },
+ "fields" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.field"
}
},
"filters" : {
@@ -2592,7 +2921,7 @@
"type" : "array",
"items" : {
"type" : "string",
- "enum" : [ "table", "model", "question", "dashboard", "metric", "database" ]
+ "enum" : [ "table", "model", "question", "dashboard", "metric", "database", "transform" ]
}
},
"last_edited_at" : {
@@ -2603,6 +2932,10 @@
"default" : 50,
"type" : "integer"
},
+ "search_native_query" : {
+ "type" : "boolean",
+ "default" : false
+ },
"semantic_queries" : {
"type" : "array",
"items" : {
@@ -2687,7 +3020,7 @@
},
"type" : {
"type" : "string",
- "enum" : [ "table", "model", "dashboard", "question", "metric", "database" ]
+ "enum" : [ "table", "model", "dashboard", "question", "metric", "database", "transform" ]
},
"database_schema" : {
"type" : "string"
@@ -2833,7 +3166,47 @@
} ]
},
"metabase-enterprise.metabot-v3.tools.api.table-result" : {
- "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.table-result"
+ "type" : "object",
+ "properties" : {
+ "id" : {
+ "type" : "integer"
+ },
+ "name" : {
+ "type" : "string"
+ },
+ "database_id" : {
+ "type" : "integer"
+ },
+ "related_tables" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.table-result"
+ }
+ },
+ "display_name" : {
+ "type" : "string"
+ },
+ "type" : {
+ "type" : "string",
+ "enum" : [ "model", "table" ]
+ },
+ "fields" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.columns"
+ },
+ "database_schema" : {
+ "type" : "string"
+ },
+ "metrics" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.metabot-v3.tools.api.basic-metric"
+ }
+ },
+ "description" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "id", "type", "name", "display_name", "database_id", "fields" ]
},
"metabase-enterprise.metabot-v3.tools.api.temporal-extraction-filter" : {
"allOf" : [ {
@@ -2895,6 +3268,12 @@
},
"required" : [ "conversation_id" ]
},
+ "metabase-enterprise.metabot-v3.tools.transforms.transform-source" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.transforms.api.transform-source"
+ },
+ "metabase-enterprise.metabot-v3.tools.transforms.transform-target" : {
+ "$ref" : "#/components/schemas/metabase-enterprise.transforms.api.transform-target"
+ },
"metabase-enterprise.permission-debug.impl.group-id" : {
"type" : "integer"
},
@@ -2939,6 +3318,21 @@
},
"required" : [ "model-type", "model-id", "decision", "segment", "message", "data", "suggestions" ]
},
+ "metabase-enterprise.sandbox.schema.attribute-remappings" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "minLength" : 1
+ }, {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.field"
+ }, {
+ "$ref" : "#/components/schemas/metabase.lib.schema.parameter.target"
+ } ]
+ },
+ "description" : "value must be a valid attribute remappings map (attribute name -> remapped name)",
+ "optional" : true
+ },
"metabase-enterprise.transforms.api.run-trigger" : {
"type" : "string",
"enum" : [ "none", "global-schedule" ]
@@ -2948,13 +3342,7 @@
"type" : "object",
"properties" : {
"query" : {
- "type" : "object",
- "properties" : {
- "database" : {
- "type" : "integer"
- }
- },
- "required" : [ "database" ]
+ "$ref" : "#/components/schemas/metabase.queries.schema.query"
},
"type" : {
"const" : "query"
@@ -3601,102 +3989,268 @@
"required" : [ "moved" ]
},
"metabase.legacy-mbql.schema.!=" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :!= clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.*" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :* clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.+" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :+ clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.-" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :- clause",
"allOf" : [ ]
},
- "metabase.legacy-mbql.schema..expression.options" : {
- "description" : "Options for a legacy `:expression` ref in MBQL 4 are the same as in MBQL 5, except that `:lib/uuid` is optional and\n it cannot be empty.",
- "default" : { },
+ "metabase.legacy-mbql.schema..NativeQuery.Common" : {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "collection" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "template-tags" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTagMap"
+ }
+ }
+ }, {
+ "allOf" : [ ]
+ } ]
+ },
+ "metabase.legacy-mbql.schema..TemplateTag.Common" : {
+ "description" : "Things required by all template tag types.",
"type" : "object",
"properties" : {
- "base-type" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "database-type" : {
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
+ },
+ "name" : {
"$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
+ "type" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTagType"
+ }
+ },
+ "required" : [ "type", "name", "display-name" ]
+ },
+ "metabase.legacy-mbql.schema..TemplateTag.FieldFilter" : {
+ "description" : "Things required by all template tag types.",
+ "type" : "object",
+ "properties" : {
"display-name" : {
"$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "effective-type" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
- },
- "lib/uuid" : {
- "type" : "string",
- "minLength" : 36,
- "maxLength" : 36
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
},
"name" : {
"$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "semantic-type" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.semantic-or-relation-type"
+ "required" : {
+ "type" : "boolean"
},
- "temporal-unit" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.temporal-bucketing.unit"
+ "type" : {
+ "const" : "dimension"
+ },
+ "alias" : {
+ "type" : "string"
+ },
+ "options" : {
+ "type" : "object",
+ "additionalProperties" : { },
+ "description" : "optional map to be appended to filter clause"
+ },
+ "dimension" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
+ },
+ "default" : { },
+ "widget-type" : {
+ "default" : "category",
+ "description" : "which type of widget the frontend should show for this Field Filter; this also affects which parameter types\n are allowed to be specified for it.",
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.WidgetType"
}
- }
+ },
+ "required" : [ "type", "name", "display-name", "dimension", "widget-type" ]
},
- "metabase.legacy-mbql.schema..legacy-column-metadata.binning-info" : {
+ "metabase.legacy-mbql.schema..TemplateTag.RawValue" : {
+ "description" : "Things required by all template tag types.",
"type" : "object",
"properties" : {
- "bin_width" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.bin-width"
+ "default" : { },
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "binning_strategy" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
},
- "num_bins" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.num-bins"
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "strategy" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
+ "required" : {
+ "type" : "boolean"
+ },
+ "type" : {
+ "type" : "string",
+ "enum" : [ "date", "number", "boolean", "text" ]
}
},
- "required" : [ "strategy" ]
+ "required" : [ "type", "name", "display-name" ]
},
- "metabase.legacy-mbql.schema..legacy-column-metadata.qualified-keys" : {
+ "metabase.legacy-mbql.schema..TemplateTag.Snippet" : {
+ "description" : "Things required by all template tag types.",
"type" : "object",
"properties" : {
- "lib/external-remap" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.remapping.external"
- },
- "lib/source-column-alias" : {
- "description" : "Name for a column as returned/projected by the previous stage of the query or source Table/source Card. The\n left-hand side (LHS) of\n\n SELECT lhs AS rhs",
- "type" : "string"
+ "database" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.database"
},
- "lib/type" : {
- "default" : "metadata/column",
- "const" : "metadata/column"
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "lib/source-uuid" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.uuid"
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
},
- "qp/implicit-field?" : {
- "type" : "boolean"
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "lib/ref-name" : {
- "type" : "string"
+ "snippet-id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.snippet"
},
- "lib/deduplicated-name" : {
- "type" : "string",
- "description" : "The simply-deduplicated name that was historically used in QP results metadata (originally calculated by\n the [[metabase.query-processor.middleware.annotate]] middleware, now calculated\n by [[metabase.lib.middleware.result-metadata]]). This just adds suffixes to column names e.g. `ID` and `ID` become\n `ID` and `ID_2`, respectively. Kept around because many old field refs use this column name."
+ "snippet-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
},
- "lib/original-expression-name" : {
- "type" : "string",
- "minLength" : 1
+ "type" : {
+ "const" : "snippet"
+ }
+ },
+ "required" : [ "type", "name", "display-name", "snippet-name", "snippet-id" ]
+ },
+ "metabase.legacy-mbql.schema..TemplateTag.SourceQuery" : {
+ "description" : "Things required by all template tag types.",
+ "type" : "object",
+ "properties" : {
+ "card-id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.card"
+ },
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
+ },
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "type" : {
+ "const" : "card"
+ }
+ },
+ "required" : [ "type", "name", "display-name", "card-id" ]
+ },
+ "metabase.legacy-mbql.schema..TemplateTag.TemporalUnit" : {
+ "description" : "Things required by all template tag types.",
+ "type" : "object",
+ "properties" : {
+ "alias" : {
+ "type" : "string"
+ },
+ "default" : { },
+ "dimension" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
+ },
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
+ },
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "required" : {
+ "type" : "boolean"
+ },
+ "type" : {
+ "const" : "temporal-unit"
+ }
+ },
+ "required" : [ "type", "name", "display-name", "dimension" ]
+ },
+ "metabase.legacy-mbql.schema..TemplateTag.Value.Common" : {
+ "description" : "Things required by all template tag types.",
+ "type" : "object",
+ "properties" : {
+ "default" : { },
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
+ },
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "required" : {
+ "type" : "boolean"
+ },
+ "type" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTagType"
+ }
+ },
+ "required" : [ "type", "name", "display-name" ]
+ },
+ "metabase.legacy-mbql.schema..legacy-column-metadata.binning-info" : {
+ "type" : "object",
+ "properties" : {
+ "bin_width" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.bin-width"
+ },
+ "binning_strategy" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
+ },
+ "num_bins" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.num-bins"
+ },
+ "strategy" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
+ }
+ },
+ "required" : [ "strategy" ]
+ },
+ "metabase.legacy-mbql.schema..legacy-column-metadata.qualified-keys" : {
+ "type" : "object",
+ "properties" : {
+ "lib/external-remap" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.remapping.external"
+ },
+ "lib/source-column-alias" : {
+ "description" : "Name for a column as returned/projected by the previous stage of the query or source Table/source Card. The\n left-hand side (LHS) of\n\n SELECT lhs AS rhs",
+ "type" : "string"
+ },
+ "lib/type" : {
+ "default" : "metadata/column",
+ "const" : "metadata/column"
+ },
+ "lib/source-uuid" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.uuid"
+ },
+ "qp/implicit-field?" : {
+ "type" : "boolean"
+ },
+ "lib/ref-name" : {
+ "type" : "string"
+ },
+ "lib/deduplicated-name" : {
+ "type" : "string",
+ "description" : "The simply-deduplicated name that was historically used in QP results metadata (originally calculated by\n the [[metabase.query-processor.middleware.annotate]] middleware, now calculated\n by [[metabase.lib.middleware.result-metadata]]). This just adds suffixes to column names e.g. `ID` and `ID` become\n `ID` and `ID_2`, respectively. Kept around because many old field refs use this column name."
+ },
+ "lib/original-expression-name" : {
+ "type" : "string",
+ "minLength" : 1
},
"lib/card-id" : {
"description" : "Valid Card ID",
@@ -3836,45 +4390,73 @@
}
},
"metabase.legacy-mbql.schema./" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :/ clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.<" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :< clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.<=" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :<= clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.=" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 := clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.>" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :> clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.>=" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :>= clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.Addable" : {
"anyOf" : [ {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DateTimeExpressionArg"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.NumericExpressionArg"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.interval"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DateTimeExpressionArg"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.NumericExpressionArg"
+ "oneOf" : [ {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.interval"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.segment"
+ } ]
} ]
},
"metabase.legacy-mbql.schema.Aggregation" : {
+ "description" : "Schema for anything that is a valid `:aggregation` clause.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.aggregation-options"
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.UnnamedAggregation"
} ]
},
+ "metabase.legacy-mbql.schema.AggregationOptionsOptions" : {
+ "description" : "Additional options for any aggregation clause when wrapping it in `:aggregation-options`.",
+ "type" : "object",
+ "properties" : {
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ }
+ }
+ },
+ "metabase.legacy-mbql.schema.Aggregations" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Aggregation"
+ },
+ "minItems" : 1
+ },
+ "metabase.legacy-mbql.schema.ArithmeticDateTimeUnit" : {
+ "type" : "string",
+ "enum" : [ "millisecond", "second", "minute", "hour", "day", "week", "month", "quarter", "year" ]
+ },
"metabase.legacy-mbql.schema.BooleanExpression" : {
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.and"
@@ -3926,6 +4508,42 @@
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.during"
} ]
},
+ "metabase.legacy-mbql.schema.Breakouts" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
+ },
+ "minItems" : 1
+ },
+ "metabase.legacy-mbql.schema.CaseOptions" : {
+ "type" : "object",
+ "properties" : {
+ "default" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.ExpressionArg"
+ }
+ }
+ },
+ "metabase.legacy-mbql.schema.CaseSubclause" : {
+ "type" : "array",
+ "prefixItems" : [ {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Filter"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.ExpressionArg"
+ } ]
+ },
+ "metabase.legacy-mbql.schema.CaseSubclauses" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.CaseSubclause"
+ },
+ "minItems" : 1
+ },
+ "metabase.legacy-mbql.schema.CheckKeysForQueryType" : {
+ "allOf" : [ ]
+ },
+ "metabase.legacy-mbql.schema.CheckQueryDoesNotHaveSourceMetadata" : {
+ "description" : "`:source-metadata` is added to queries when `card__id` source queries are resolved. It contains info about the\n columns in the source query.\n\n Where this is added was changed in Metabase 0.33.0 -- previously, when `card__id` source queries were resolved, the\n middleware would add `:source-metadata` to the top-level; to support joins against source queries, this has been\n changed so it is always added at the same level the resolved `:source-query` is added.\n\n This should automatically be fixed by `normalize`; if we encounter it, it means some middleware is not functioning\n properly."
+ },
"metabase.legacy-mbql.schema.DatabaseID" : {
"description" : "Schema for a valid `:database` ID, in the top-level 'outer' query. Either a positive integer (referring to an\n actual Database), or the saved questions virtual ID, which is a placeholder used for queries using the\n `:source-table \"card__id\"` shorthand for a source query resolved by middleware (since clients might not know the\n actual DB for that source query.)",
"anyOf" : [ {
@@ -3957,7 +4575,7 @@
"anyOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DateOrDatetimeLiteral"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
} ]
} ]
},
@@ -3977,6 +4595,7 @@
"enum" : [ "second", "minute", "hour", "day", "week", "month", "quarter", "year" ]
},
"metabase.legacy-mbql.schema.DatetimeExpression" : {
+ "description" : "Schema for the definition of a date function expression.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.+"
}, {
@@ -3995,11 +4614,24 @@
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.today"
} ]
},
+ "metabase.legacy-mbql.schema.DatetimeOptions" : {
+ "type" : "object",
+ "properties" : {
+ "mode" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DatetimeOptionsMode"
+ }
+ }
+ },
+ "metabase.legacy-mbql.schema.DatetimeOptionsMode" : {
+ "type" : "string",
+ "enum" : [ "simple-bytes", "unix-nanoseconds", "simple", "iso", "iso-bytes", "unix-seconds", "unix-milliseconds", "unix-microseconds" ]
+ },
"metabase.legacy-mbql.schema.Emptyable" : {
+ "description" : "Schema for a valid is-empty or not-empty argument.",
"anyOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.StringExpressionArg"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
} ]
},
"metabase.legacy-mbql.schema.EqualityComparable" : {
@@ -4012,18 +4644,19 @@
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemporalLiteral"
}, {
- "oneOf" : [ {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.relative-datetime"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
- } ]
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRefOrRelativeDatetime"
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.ExpressionArg"
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.value"
} ],
+ "description" : "Schema for things that make sense in a `=` or `!=` filter, i.e. things that can be compared for equality.",
"optional" : true
},
+ "metabase.legacy-mbql.schema.EqualityFilterFieldArg" : {
+ "description" : "Schema for the first arg to `=`, `!=`, and friends.",
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.EqualityComparable"
+ },
"metabase.legacy-mbql.schema.ExpressionArg" : {
"oneOf" : [ {
"type" : "number"
@@ -4044,15 +4677,93 @@
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.value"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
} ]
},
+ "metabase.legacy-mbql.schema.ExpressionName" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "metabase.legacy-mbql.schema.ExpressionRefOptions" : {
+ "description" : "Options for a legacy `:expression` ref in MBQL 4 are the same as in MBQL 5, except that `:lib/uuid` is optional and\n it cannot be empty.",
+ "default" : { },
+ "type" : "object",
+ "properties" : {
+ "base-type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
+ },
+ "database-type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "display-name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "effective-type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
+ },
+ "lib/uuid" : {
+ "type" : "string",
+ "minLength" : 36,
+ "maxLength" : 36
+ },
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "semantic-type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.semantic-or-relation-type"
+ },
+ "temporal-unit" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.temporal-bucketing.unit"
+ }
+ }
+ },
+ "metabase.legacy-mbql.schema.Expressions" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionDef"
+ }
+ },
"metabase.legacy-mbql.schema.ExtractWeekMode" : {
"description" : "Valid modes to extract weeks.",
"type" : "string",
"enum" : [ "iso", "us", "instance" ]
},
- "metabase.legacy-mbql.schema.FieldOptions" : {
+ "metabase.legacy-mbql.schema.FieldOrExpressionDef" : {
+ "description" : "Schema for anything that is accepted as a top-level expression definition, either an arithmetic expression such as a\n `:+` clause or a `:field` or `:value` clause.",
+ "oneOf" : [ {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.NumericExpression"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.StringExpression"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.BooleanExpression"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DatetimeExpression"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.case"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.if"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.offset"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.value"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
+ } ]
+ },
+ "metabase.legacy-mbql.schema.FieldOrExpressionRef" : {
+ "oneOf" : [ {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.expression"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
+ } ]
+ },
+ "metabase.legacy-mbql.schema.FieldOrExpressionRefOrRelativeDatetime" : {
+ "oneOf" : [ {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.relative-datetime"
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
+ } ]
+ },
+ "metabase.legacy-mbql.schema.FieldRefOptions" : {
"default" : { },
"type" : "object",
"properties" : {
@@ -4113,33 +4824,11 @@
"description" : "Options for an MBQL 4 `:field` ref are the same as MBQL 5, except that `:lib/uuid` is not required and it cannot be\n empty.",
"optional" : true
},
- "metabase.legacy-mbql.schema.FieldOrExpressionDef" : {
- "description" : "Schema for anything that is accepted as a top-level expression definition, either an arithmetic expression such as a\n `:+` clause or a `:field` or `:value` clause.",
- "oneOf" : [ {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.NumericExpression"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.StringExpression"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.BooleanExpression"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DatetimeExpression"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.case"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.if"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.offset"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.value"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
- } ]
- },
"metabase.legacy-mbql.schema.Fields" : {
"allOf" : [ {
"type" : "array",
"items" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
},
"minItems" : 1
}, {
@@ -4147,6 +4836,7 @@
} ]
},
"metabase.legacy-mbql.schema.Filter" : {
+ "description" : "Schema for a valid MBQL `:filter` clause.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.DatetimeExpression"
}, {
@@ -4160,7 +4850,7 @@
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.segment"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
} ]
},
"metabase.legacy-mbql.schema.IntGreaterThanZeroOrNumericExpression" : {
@@ -4186,12 +4876,7 @@
},
"fields" : {
"description" : "The Fields from this join to include in parent-level results. This can be either `:none`, `:all`, or a sequence\n of `:field` clauses.\n\n * `:none`: no Fields from the joined table or nested query are included (unless indirectly included by breakouts or\n other clauses). This is the default, and what is used for automatically-generated joins.\n\n * `:all`: will include all of the Field from the joined table or query\n\n * a sequence of Field clauses: include only the Fields specified. Valid clauses are the same as the top-level\n `:fields` clause. This should be non-empty and all elements should be distinct. The normalizer will automatically\n remove duplicate fields for you, and replace empty clauses with `:none`.\n\n Driver implementations: you can ignore this clause. Relevant fields will be added to top-level `:fields` clause with\n appropriate aliases.",
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all", "none" ]
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Fields"
- } ]
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.JoinFields"
},
"fk-field-id" : {
"$ref" : "#/components/schemas/metabase.lib.schema.id.field",
@@ -4209,18 +4894,11 @@
},
"source-table" : {
"description" : "*What* to JOIN. Self-joins can be done by using the same `:source-table` as in the query where\n this is specified. YOU MUST SUPPLY EITHER `:source-table` OR `:source-query`, BUT NOT BOTH!",
- "anyOf" : [ {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.table"
- }, {
- "description" : "`card__` string Table ID",
- "type" : "string",
- "pattern" : "^card__[1-9]\\d*$"
- } ]
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.SourceTable"
},
"strategy" : {
"description" : "Defaults to `:left-join`; used for all automatically-generated JOINs\n\n Driver implementations: this is guaranteed to be present after pre-processing.",
- "type" : "string",
- "enum" : [ "full-join", "right-join", "left-join", "inner-join" ]
+ "$ref" : "#/components/schemas/metabase.lib.schema.join.strategy"
}
},
"required" : [ "condition" ]
@@ -4228,6 +4906,14 @@
"allOf" : [ ]
} ]
},
+ "metabase.legacy-mbql.schema.JoinFields" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all", "none" ]
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Fields"
+ } ]
+ },
"metabase.legacy-mbql.schema.Joins" : {
"description" : "Schema for a valid sequence of `Join`s. Must be a non-empty sequence, and `:alias`, if specified, must be unique.",
"type" : "array",
@@ -4241,11 +4927,7 @@
"type" : "object",
"properties" : {
"breakout" : {
- "type" : "array",
- "items" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
- },
- "minItems" : 1
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Breakouts"
},
"source-metadata" : {
"type" : "array",
@@ -4267,23 +4949,13 @@
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Joins"
},
"aggregation" : {
- "type" : "array",
- "items" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Aggregation"
- },
- "minItems" : 1
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Aggregations"
},
"fields" : {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Fields"
},
"source-table" : {
- "anyOf" : [ {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.table"
- }, {
- "description" : "`card__` string Table ID",
- "type" : "string",
- "pattern" : "^card__[1-9]\\d*$"
- } ]
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.SourceTable"
},
"order-by" : {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.OrderBys"
@@ -4292,12 +4964,32 @@
"$ref" : "#/components/schemas/metabase.lib.schema.page"
},
"expressions" : {
- "type" : "object",
- "additionalProperties" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionDef"
- }
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Expressions"
}
}
+ }, {
+ "type" : "object",
+ "properties" : { }
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.RemoveFieldRefsFromFieldsAlreadyInBreakout"
+ }, {
+ "allOf" : [ ]
+ } ]
+ },
+ "metabase.legacy-mbql.schema.NativeQuery" : {
+ "description" : "Schema for a valid, normalized native [inner] query.",
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "collection" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
+ },
+ "query" : { },
+ "template-tags" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTagMap"
+ }
+ },
+ "required" : [ "query" ]
}, {
"allOf" : [ ]
} ]
@@ -4320,6 +5012,7 @@
} ]
},
"metabase.legacy-mbql.schema.NumericExpression" : {
+ "description" : "Schema for the definition of a numeric expression. All numeric expressions evaluate to numeric values.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.+"
}, {
@@ -4415,6 +5108,7 @@
} ]
},
"metabase.legacy-mbql.schema.OrderComparable" : {
+ "description" : "Schema for things that make sense in a filter like `>` or `<`, i.e. things that can be sorted.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.value"
}, {
@@ -4427,16 +5121,20 @@
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.ExpressionArg"
}, {
- "oneOf" : [ {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.relative-datetime"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
- } ]
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRefOrRelativeDatetime"
} ]
} ]
},
+ "metabase.legacy-mbql.schema.OrderedFilterFieldArg" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.OrderComparable"
+ },
"metabase.legacy-mbql.schema.Query" : {
"allOf" : [ {
+ "type" : "object",
+ "properties" : { }
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.CheckQueryDoesNotHaveSourceMetadata"
+ }, {
"type" : "object",
"properties" : {
"update-row" : {
@@ -4452,21 +5150,7 @@
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.MBQLQuery"
},
"native" : {
- "allOf" : [ {
- "type" : "object",
- "properties" : {
- "collection" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "query" : { },
- "template-tags" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTagMap"
- }
- },
- "required" : [ "query" ]
- }, {
- "allOf" : [ ]
- } ]
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.NativeQuery"
},
"info" : {
"$ref" : "#/components/schemas/metabase.lib.schema.info.info",
@@ -4492,14 +5176,13 @@
},
"required" : [ "type" ]
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.check-keys-for-query-type"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.check-query-does-not-have-source-metadata"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.CheckKeysForQueryType"
}, {
"allOf" : [ ]
} ]
},
"metabase.legacy-mbql.schema.Reference" : {
+ "description" : "Schema for any type of valid Field clause, or for an indexed reference to an aggregation clause.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.aggregation"
}, {
@@ -4512,13 +5195,25 @@
"type" : "string",
"enum" : [ "default", "minute", "hour", "day", "week", "month", "quarter", "year" ]
},
+ "metabase.legacy-mbql.schema.RemoveFieldRefsFromFieldsAlreadyInBreakout" : { },
"metabase.legacy-mbql.schema.SourceQuery" : {
+ "description" : "Schema for a valid value for a `:source-query`.",
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.NativeSourceQuery"
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.MBQLQuery"
} ]
},
+ "metabase.legacy-mbql.schema.SourceTable" : {
+ "description" : "Schema for a valid value for the `:source-table` clause of an MBQL query.",
+ "anyOf" : [ {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.table"
+ }, {
+ "description" : "`card__` string Table ID",
+ "type" : "string",
+ "pattern" : "^card__[1-9]\\d*$"
+ } ]
+ },
"metabase.legacy-mbql.schema.StringExpression" : {
"oneOf" : [ {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.substring"
@@ -4572,164 +5267,31 @@
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.value"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field-or-expression-ref"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.FieldOrExpressionRef"
} ]
},
+ "metabase.legacy-mbql.schema.StringFilterOptions" : {
+ "type" : "object",
+ "properties" : {
+ "case-sensitive" : {
+ "type" : "boolean"
+ }
+ }
+ },
"metabase.legacy-mbql.schema.TemplateTag" : {
"description" : "Schema for a template tag as specified in a native query. There are four types of template tags, differentiated by\n `:type`.\n\n Template tags are used to specify {{placeholders}} in native queries that are replaced with some sort of value when\n the query itself runs. There are four basic types of template tag for native queries:\n\n 1. Field filters, which are used like\n\n SELECT * FROM table WHERE {{field_filter}}\n\n These reference specific Fields and are replaced with entire conditions, e.g. `some_field > 1000`\n\n 2. Raw values, which are used like\n\n SELECT * FROM table WHERE my_field = {{x}}\n\n These are replaced with raw values.\n\n 3. Native query snippets, which might be used like\n\n SELECT * FROM ({{snippet: orders}}) source\n\n These are replaced with `NativeQuerySnippet`s from the application database.\n\n 4. Source query Card IDs, which are used like\n\n SELECT * FROM ({{#123}}) source\n\n These are replaced with the query from the Card with that ID.\n\n Field filters and raw values usually have their value specified by `:parameters`.",
"oneOf" : [ {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTag:FieldFilter"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..TemplateTag.FieldFilter"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTag:Snippet"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..TemplateTag.Snippet"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTag:SourceQuery"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..TemplateTag.SourceQuery"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTag:TemporalUnit"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..TemplateTag.TemporalUnit"
}, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TemplateTag:RawValue"
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..TemplateTag.RawValue"
} ]
},
- "metabase.legacy-mbql.schema.TemplateTag:FieldFilter" : {
- "description" : "Schema for a field filter template tag.",
- "type" : "object",
- "properties" : {
- "display-name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
- },
- "name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "required" : {
- "type" : "boolean"
- },
- "type" : {
- "const" : "dimension"
- },
- "alias" : {
- "type" : "string"
- },
- "options" : {
- "type" : "object",
- "additionalProperties" : { },
- "description" : "optional map to be appended to filter clause"
- },
- "dimension" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
- },
- "default" : { },
- "widget-type" : {
- "description" : "which type of widget the frontend should show for this Field Filter; this also affects which parameter types\n are allowed to be specified for it.",
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.WidgetType"
- }
- },
- "required" : [ "type", "name", "display-name", "dimension", "widget-type" ]
- },
- "metabase.legacy-mbql.schema.TemplateTag:RawValue" : {
- "description" : "Schema for a raw value template tag.",
- "type" : "object",
- "properties" : {
- "default" : { },
- "display-name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
- },
- "name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "required" : {
- "type" : "boolean"
- },
- "type" : {
- "type" : "string",
- "enum" : [ "date", "number", "boolean", "text" ]
- }
- },
- "required" : [ "type", "name", "display-name" ]
- },
- "metabase.legacy-mbql.schema.TemplateTag:Snippet" : {
- "description" : "Schema for a native query snippet template tag.",
- "type" : "object",
- "properties" : {
- "database" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.database"
- },
- "display-name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
- },
- "name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "snippet-id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.snippet"
- },
- "snippet-name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "type" : {
- "const" : "snippet"
- }
- },
- "required" : [ "type", "name", "display-name", "snippet-name", "snippet-id" ]
- },
- "metabase.legacy-mbql.schema.TemplateTag:SourceQuery" : {
- "description" : "Schema for a source query template tag.",
- "type" : "object",
- "properties" : {
- "card-id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.card"
- },
- "display-name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
- },
- "name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "type" : {
- "const" : "card"
- }
- },
- "required" : [ "type", "name", "display-name", "card-id" ]
- },
- "metabase.legacy-mbql.schema.TemplateTag:TemporalUnit" : {
- "description" : "Schema for a temporal unit template tag.",
- "type" : "object",
- "properties" : {
- "alias" : {
- "type" : "string"
- },
- "default" : { },
- "dimension" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
- },
- "display-name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.template-tag.id"
- },
- "name" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.non-blank-string"
- },
- "required" : {
- "type" : "boolean"
- },
- "type" : {
- "const" : "temporal-unit"
- }
- },
- "required" : [ "type", "name", "display-name", "dimension" ]
- },
"metabase.legacy-mbql.schema.TemplateTagMap" : {
"description" : "Schema for the `:template-tags` map passed in as part of a native query.\n\n Map of template tag name -> template tag definition",
"allOf" : [ {
@@ -4741,6 +5303,11 @@
"$ref" : "#/components/schemas/metabase.lib.schema.template-tag..template-tag-map.validate-names"
} ]
},
+ "metabase.legacy-mbql.schema.TemplateTagType" : {
+ "description" : "Schema for valid values of template tag `:type`.",
+ "type" : "string",
+ "enum" : [ "snippet", "card", "dimension", "number", "text", "date" ]
+ },
"metabase.legacy-mbql.schema.TemporalExtractUnit" : {
"description" : "Valid units to extract from a temporal.",
"type" : "string",
@@ -4754,6 +5321,14 @@
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.TimeLiteral"
} ]
},
+ "metabase.legacy-mbql.schema.TimeIntervalOptions" : {
+ "type" : "object",
+ "properties" : {
+ "include-current" : {
+ "type" : "boolean"
+ }
+ }
+ },
"metabase.legacy-mbql.schema.TimeLiteral" : {
"description" : "Schema for valid time literals.",
"anyOf" : [ {
@@ -4838,657 +5413,667 @@
}
},
"metabase.legacy-mbql.schema.WidgetType" : {
- "description" : "Schema for valid values of `:widget-type` for a [[::TemplateTag:FieldFilter]].",
+ "description" : "Schema for valid values of `:widget-type` for a [[::TemplateTag.FieldFilter]].",
"$ref" : "#/components/schemas/metabase.lib.schema.parameter.widget-type"
},
"metabase.legacy-mbql.schema.abs" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :abs clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.absolute-datetime" : {
+ "description" : "Schema for a valid MBQL 4 :absolute-datetime clause.",
"oneOf" : [ { }, {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :absolute-datetime clause",
"allOf" : [ ]
}, {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :absolute-datetime clause",
"allOf" : [ ]
} ]
},
"metabase.legacy-mbql.schema.aggregation" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :aggregation clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.aggregation-options" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :aggregation-options clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.and" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
- "allOf" : [ ]
+ "description" : "Schema for a valid MBQL 4 :and clause.",
+ "oneOf" : [ {
+ "description" : "schema for a valid MBQL 4 :and clause",
+ "allOf" : [ ]
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Filter"
+ } ]
},
"metabase.legacy-mbql.schema.asc" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :asc clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.avg" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :avg clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.between" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :between clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.case" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :case clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.ceil" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :ceil clause",
"allOf" : [ ]
},
- "metabase.legacy-mbql.schema.check-keys-for-query-type" : {
- "allOf" : [ ]
- },
- "metabase.legacy-mbql.schema.check-query-does-not-have-source-metadata" : {
- "description" : "`:source-metadata` is added to queries when `card__id` source queries are resolved. It contains info about the\n columns in the source query.\n\n Where this is added was changed in Metabase 0.33.0 -- previously, when `card__id` source queries were resolved, the\n middleware would add `:source-metadata` to the top-level; to support joins against source queries, this has been\n changed so it is always added at the same level the resolved `:source-query` is added.\n\n This should automatically be fixed by `normalize`; if we encounter it, it means some middleware is not functioning\n properly."
- },
"metabase.legacy-mbql.schema.coalesce" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :coalesce clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.concat" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :concat clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.contains" : {
+ "description" : "Schema for a valid MBQL 4 :metabase.legacy-mbql.schema/contains clause.",
"anyOf" : [ {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :contains clause",
"allOf" : [ ]
}, {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :contains clause",
"allOf" : [ ]
} ]
},
"metabase.legacy-mbql.schema.convert-timezone" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :convert-timezone clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.count" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :count clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.count-where" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :count-where clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.cum-count" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :cum-count clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.cum-sum" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :cum-sum clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.date" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :date clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.datetime" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :datetime clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.datetime-add" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :datetime-add clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.datetime-diff" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :datetime-diff clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.datetime-subtract" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :datetime-subtract clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.day-name" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :day-name clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.desc" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :desc clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.distinct" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :distinct clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.distinct-where" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :distinct-where clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.does-not-contain" : {
+ "description" : "Schema for a valid MBQL 4 :metabase.legacy-mbql.schema/does-not-contain clause.",
"anyOf" : [ {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :does-not-contain clause",
"allOf" : [ ]
}, {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :does-not-contain clause",
"allOf" : [ ]
} ]
},
"metabase.legacy-mbql.schema.domain" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :domain clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.during" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :during clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.ends-with" : {
+ "description" : "Schema for a valid MBQL 4 :metabase.legacy-mbql.schema/ends-with clause.",
"anyOf" : [ {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :ends-with clause",
"allOf" : [ ]
}, {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :ends-with clause",
"allOf" : [ ]
} ]
},
"metabase.legacy-mbql.schema.exp" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :exp clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.expression" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :expression clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.field" : {
+ "description" : "Schema for a valid MBQL 4 :field clause.",
"allOf" : [ {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :field clause",
"allOf" : [ ]
}, {
"$ref" : "#/components/schemas/metabase.legacy-mbql.schema.require-base-type-for-field-name"
} ]
},
- "metabase.legacy-mbql.schema.field-or-expression-ref" : {
- "oneOf" : [ {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.expression"
- }, {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
- } ]
- },
"metabase.legacy-mbql.schema.float" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :float clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.floor" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :floor clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-day" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-day clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-day-of-week" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-day-of-week clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-hour" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-hour clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-minute" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-minute clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-month" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-month clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-quarter" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-quarter clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-second" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-second clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-week" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-week clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.get-year" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :get-year clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.helpers.distinct" : {
"description" : "values must be distinct"
},
"metabase.legacy-mbql.schema.host" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :host clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.if" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :if clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.in" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :in clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.inside" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :inside clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.integer" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :integer clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.interval" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :interval clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.is-empty" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :is-empty clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.is-null" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :is-null clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.legacy-column-metadata" : {
"description" : "Schema for a single legacy metadata column. This is the pre-Lib equivalent of\n `:metabase.lib.schema.metadata/column`.",
- "type" : "object",
- "properties" : {
- "field_ref" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Reference"
- },
- "lib/external-remap" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.remapping.external"
- },
- "lib/source-column-alias" : {
- "description" : "Name for a column as returned/projected by the previous stage of the query or source Table/source Card. The\n left-hand side (LHS) of\n\n SELECT lhs AS rhs",
- "type" : "string"
- },
- "lib/type" : {
- "default" : "metadata/column",
- "const" : "metadata/column"
- },
- "fingerprint" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata.fingerprint.fingerprint"
- },
- "visibility_type" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.visibility-type"
- },
- "base_type" : {
- "default" : "type/*",
- "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
- },
- "lib/source-uuid" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.uuid"
- },
- "qp/implicit-field?" : {
- "type" : "boolean"
- },
- "lib/ref-name" : {
- "type" : "string"
- },
- "id" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.field"
- },
- "lib/deduplicated-name" : {
- "type" : "string",
- "description" : "The simply-deduplicated name that was historically used in QP results metadata (originally calculated by\n the [[metabase.query-processor.middleware.annotate]] middleware, now calculated\n by [[metabase.lib.middleware.result-metadata]]). This just adds suffixes to column names e.g. `ID` and `ID` become\n `ID` and `ID_2`, respectively. Kept around because many old field refs use this column name."
- },
- "lib/original-expression-name" : {
- "type" : "string",
- "minLength" : 1
- },
- "name" : {
- "type" : "string"
- },
- "lib/card-id" : {
- "description" : "Valid Card ID",
- "type" : "integer",
- "minimum" : 1
- },
- "lib/expression-name" : {
- "type" : "string",
- "minLength" : 1
- },
- "lib/breakout?" : {
- "type" : "boolean"
- },
- "metabase.lib.field/temporal-unit" : {
- "type" : "string",
- "enum" : [ "day", "day-of-month", "day-of-week", "day-of-year", "default", "hour", "hour-of-day", "millisecond", "minute", "minute-of-hour", "month", "month-of-year", "quarter", "quarter-of-year", "second", "second-of-minute", "week", "week-of-year", "year", "year-of-era" ]
- },
- "metabase.lib.field/binning" : {
- "description" : "Schema for `:binning` options passed to a `:field` clause.",
- "allOf" : [ {
- "type" : "object",
- "properties" : {
- "strategy" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
- }
- },
- "required" : [ "strategy" ]
- }, {
- "oneOf" : [ {
+ "allOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "field_ref" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Reference"
+ },
+ "lib/external-remap" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.remapping.external"
+ },
+ "lib/source-column-alias" : {
+ "description" : "Name for a column as returned/projected by the previous stage of the query or source Table/source Card. The\n left-hand side (LHS) of\n\n SELECT lhs AS rhs",
+ "type" : "string"
+ },
+ "lib/type" : {
+ "default" : "metadata/column",
+ "const" : "metadata/column"
+ },
+ "fingerprint" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata.fingerprint.fingerprint"
+ },
+ "visibility_type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.visibility-type"
+ },
+ "base_type" : {
+ "default" : "type/*",
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
+ },
+ "lib/source-uuid" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.uuid"
+ },
+ "qp/implicit-field?" : {
+ "type" : "boolean"
+ },
+ "lib/ref-name" : {
+ "type" : "string"
+ },
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.field"
+ },
+ "lib/deduplicated-name" : {
+ "type" : "string",
+ "description" : "The simply-deduplicated name that was historically used in QP results metadata (originally calculated by\n the [[metabase.query-processor.middleware.annotate]] middleware, now calculated\n by [[metabase.lib.middleware.result-metadata]]). This just adds suffixes to column names e.g. `ID` and `ID` become\n `ID` and `ID_2`, respectively. Kept around because many old field refs use this column name."
+ },
+ "lib/original-expression-name" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "name" : {
+ "type" : "string"
+ },
+ "lib/card-id" : {
+ "description" : "Valid Card ID",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "lib/expression-name" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "lib/breakout?" : {
+ "type" : "boolean"
+ },
+ "metabase.lib.field/temporal-unit" : {
+ "type" : "string",
+ "enum" : [ "day", "day-of-month", "day-of-week", "day-of-year", "default", "hour", "hour-of-day", "millisecond", "minute", "minute-of-hour", "month", "month-of-year", "quarter", "quarter-of-year", "second", "second-of-minute", "week", "week-of-year", "year", "year-of-era" ]
+ },
+ "metabase.lib.field/binning" : {
+ "description" : "Schema for `:binning` options passed to a `:field` clause.",
+ "allOf" : [ {
"type" : "object",
"properties" : {
"strategy" : {
- "const" : "default"
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
}
},
"required" : [ "strategy" ]
}, {
- "type" : "object",
- "properties" : {
- "bin-width" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.bin-width"
+ "oneOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "strategy" : {
+ "const" : "default"
+ }
},
- "strategy" : {
- "const" : "bin-width"
- }
- },
- "required" : [ "strategy", "bin-width" ]
- }, {
- "type" : "object",
- "properties" : {
- "num-bins" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.num-bins"
+ "required" : [ "strategy" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "bin-width" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.bin-width"
+ },
+ "strategy" : {
+ "const" : "bin-width"
+ }
},
- "strategy" : {
- "const" : "num-bins"
- }
- },
- "required" : [ "strategy", "num-bins" ]
+ "required" : [ "strategy", "bin-width" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "num-bins" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.num-bins"
+ },
+ "strategy" : {
+ "const" : "num-bins"
+ }
+ },
+ "required" : [ "strategy", "num-bins" ]
+ } ]
} ]
- } ]
- },
- "semantic_type" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.semantic-or-relation-type"
- },
- "display_name" : {
- "type" : "string"
- },
- "lib/model-display-name" : {
- "type" : "string"
- },
- "lib/internal-remap" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.remapping.internal"
- },
- "converted_timezone" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.expression.temporal.timezone-id"
- },
- "source" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.legacy-source"
- },
- "metabase.lib.join/join-alias" : {
- "type" : "string",
- "minLength" : 1
- },
- "binning_info" : {
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..legacy-column-metadata.binning-info"
- },
- "lib/original-binning" : {
- "description" : "Schema for `:binning` options passed to a `:field` clause.",
- "allOf" : [ {
- "type" : "object",
- "properties" : {
- "strategy" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
- }
- },
- "required" : [ "strategy" ]
- }, {
- "oneOf" : [ {
+ },
+ "semantic_type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.semantic-or-relation-type"
+ },
+ "display_name" : {
+ "type" : "string"
+ },
+ "lib/model-display-name" : {
+ "type" : "string"
+ },
+ "lib/internal-remap" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.remapping.internal"
+ },
+ "converted_timezone" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.expression.temporal.timezone-id"
+ },
+ "source" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.legacy-source"
+ },
+ "metabase.lib.join/join-alias" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "binning_info" : {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema..legacy-column-metadata.binning-info"
+ },
+ "lib/original-binning" : {
+ "description" : "Schema for `:binning` options passed to a `:field` clause.",
+ "allOf" : [ {
"type" : "object",
"properties" : {
"strategy" : {
- "const" : "default"
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.strategy"
}
},
"required" : [ "strategy" ]
}, {
- "type" : "object",
- "properties" : {
- "bin-width" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.bin-width"
+ "oneOf" : [ {
+ "type" : "object",
+ "properties" : {
+ "strategy" : {
+ "const" : "default"
+ }
},
- "strategy" : {
- "const" : "bin-width"
- }
- },
- "required" : [ "strategy", "bin-width" ]
- }, {
- "type" : "object",
- "properties" : {
- "num-bins" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.binning.num-bins"
+ "required" : [ "strategy" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "bin-width" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.bin-width"
+ },
+ "strategy" : {
+ "const" : "bin-width"
+ }
},
- "strategy" : {
- "const" : "num-bins"
- }
- },
- "required" : [ "strategy", "num-bins" ]
+ "required" : [ "strategy", "bin-width" ]
+ }, {
+ "type" : "object",
+ "properties" : {
+ "num-bins" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.binning.num-bins"
+ },
+ "strategy" : {
+ "const" : "num-bins"
+ }
+ },
+ "required" : [ "strategy", "num-bins" ]
+ } ]
} ]
- } ]
- },
- "effective_type" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
- },
- "lib/original-join-alias" : {
- "type" : "string",
- "minLength" : 1
- },
- "lib/original-display-name" : {
- "type" : "string"
- },
- "unit" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.temporal-bucketing.unit"
- },
- "lib/source" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.source"
- },
- "lib/ref-display-name" : {
- "type" : "string"
- },
- "lib/original-name" : {
- "type" : "string",
- "description" : "The original name of the column as it appeared in the very first place it came from (i.e., the physical name of the\n column in the table it appears in). This should be the same as the `:lib/source-column-alias` for the very first\n usage of the column.\n Allowed to be blank because some databases like SQL Server allow blank column names."
+ },
+ "effective_type" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.common.base-type"
+ },
+ "lib/original-join-alias" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "lib/original-display-name" : {
+ "type" : "string"
+ },
+ "unit" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.temporal-bucketing.unit"
+ },
+ "lib/source" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata..column.source"
+ },
+ "lib/ref-display-name" : {
+ "type" : "string"
+ },
+ "lib/original-name" : {
+ "type" : "string",
+ "description" : "The original name of the column as it appeared in the very first place it came from (i.e., the physical name of the\n column in the table it appears in). This should be the same as the `:lib/source-column-alias` for the very first\n usage of the column.\n Allowed to be blank because some databases like SQL Server allow blank column names."
+ },
+ "description" : {
+ "type" : "string"
+ },
+ "lib/desired-column-alias" : {
+ "description" : "Name we should use as a column alias for a column in this stage of a query. The desired column alias in stage N\n becomes the source column alias in stage N+1. The right-hand side (RHS) in\n\n SELECT lhs AS rhs",
+ "type" : "string"
+ }
},
- "lib/desired-column-alias" : {
- "description" : "Name we should use as a column alias for a column in this stage of a query. The desired column alias in stage N\n becomes the source column alias in stage N+1. The right-hand side (RHS) in\n\n SELECT lhs AS rhs",
- "type" : "string"
- }
- },
- "required" : [ "base_type", "display_name", "name" ]
+ "required" : [ "base_type", "display_name", "name" ]
+ }, {
+ "allOf" : [ ]
+ } ]
},
"metabase.legacy-mbql.schema.length" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :length clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.log" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :log clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.lower" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :lower clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.ltrim" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :ltrim clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.max" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :max clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.median" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :median clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.metric" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :metric clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.min" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :min clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.month-name" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :month-name clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.not" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :not clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.not-empty" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :not-empty clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.not-in" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :not-in clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.not-null" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :not-null clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.now" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :now clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.offset" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :offset clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.or" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
- "allOf" : [ ]
+ "description" : "Schema for a valid MBQL 4 :or clause.",
+ "oneOf" : [ {
+ "description" : "schema for a valid MBQL 4 :or clause",
+ "allOf" : [ ]
+ }, {
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.Filter"
+ } ]
},
"metabase.legacy-mbql.schema.path" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :path clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.percentile" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :percentile clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.power" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :power clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.quarter-name" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :quarter-name clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.regex-match-first" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :regex-match-first clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.relative-datetime" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :relative-datetime clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.relative-time-interval" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :relative-time-interval clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.replace" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :replace clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.require-base-type-for-field-name" : {
"description" : "Fields using names rather than integer IDs are required to specify `:base-type`."
},
"metabase.legacy-mbql.schema.round" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :round clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.rtrim" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :rtrim clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.segment" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :segment clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.share" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :share clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.split-part" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :split-part clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.sqrt" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :sqrt clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.starts-with" : {
+ "description" : "Schema for a valid MBQL 4 :metabase.legacy-mbql.schema/starts-with clause.",
"anyOf" : [ {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :starts-with clause",
"allOf" : [ ]
}, {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :starts-with clause",
"allOf" : [ ]
} ]
},
"metabase.legacy-mbql.schema.stddev" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :stddev clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.subdomain" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :subdomain clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.substring" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :substring clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.sum" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :sum clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.sum-where" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :sum-where clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.temporal-extract" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :temporal-extract clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.text" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :text clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.time" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :time clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.time-interval" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :time-interval clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.today" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :today clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.trim" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :trim clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.upper" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :upper clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.value" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :value clause",
"allOf" : [ ]
},
"metabase.legacy-mbql.schema.var" : {
- "description" : "schema for a valid legacy MBQL :tag clause",
+ "description" : "schema for a valid MBQL 4 :var clause",
"allOf" : [ ]
},
"metabase.lib.metadata.protocols.metadata-provider" : {
@@ -5908,7 +6493,7 @@
}, {
"anyOf" : [ {
"type" : "string",
- "enum" : [ "Africa/Abidjan", "Africa/Accra", "Africa/Addis_Ababa", "Africa/Algiers", "Africa/Asmara", "Africa/Asmera", "Africa/Bamako", "Africa/Bangui", "Africa/Banjul", "Africa/Bissau", "Africa/Blantyre", "Africa/Brazzaville", "Africa/Bujumbura", "Africa/Cairo", "Africa/Casablanca", "Africa/Ceuta", "Africa/Conakry", "Africa/Dakar", "Africa/Dar_es_Salaam", "Africa/Djibouti", "Africa/Douala", "Africa/El_Aaiun", "Africa/Freetown", "Africa/Gaborone", "Africa/Harare", "Africa/Johannesburg", "Africa/Juba", "Africa/Kampala", "Africa/Khartoum", "Africa/Kigali", "Africa/Kinshasa", "Africa/Lagos", "Africa/Libreville", "Africa/Lome", "Africa/Luanda", "Africa/Lubumbashi", "Africa/Lusaka", "Africa/Malabo", "Africa/Maputo", "Africa/Maseru", "Africa/Mbabane", "Africa/Mogadishu", "Africa/Monrovia", "Africa/Nairobi", "Africa/Ndjamena", "Africa/Niamey", "Africa/Nouakchott", "Africa/Ouagadougou", "Africa/Porto-Novo", "Africa/Sao_Tome", "Africa/Timbuktu", "Africa/Tripoli", "Africa/Tunis", "Africa/Windhoek", "America/Adak", "America/Anchorage", "America/Anguilla", "America/Antigua", "America/Araguaina", "America/Argentina/Buenos_Aires", "America/Argentina/Catamarca", "America/Argentina/ComodRivadavia", "America/Argentina/Cordoba", "America/Argentina/Jujuy", "America/Argentina/La_Rioja", "America/Argentina/Mendoza", "America/Argentina/Rio_Gallegos", "America/Argentina/Salta", "America/Argentina/San_Juan", "America/Argentina/San_Luis", "America/Argentina/Tucuman", "America/Argentina/Ushuaia", "America/Aruba", "America/Asuncion", "America/Atikokan", "America/Atka", "America/Bahia", "America/Bahia_Banderas", "America/Barbados", "America/Belem", "America/Belize", "America/Blanc-Sablon", "America/Boa_Vista", "America/Bogota", "America/Boise", "America/Buenos_Aires", "America/Cambridge_Bay", "America/Campo_Grande", "America/Cancun", "America/Caracas", "America/Catamarca", "America/Cayenne", "America/Cayman", "America/Chicago", "America/Chihuahua", "America/Ciudad_Juarez", "America/Coral_Harbour", "America/Cordoba", "America/Costa_Rica", "America/Coyhaique", "America/Creston", "America/Cuiaba", "America/Curacao", "America/Danmarkshavn", "America/Dawson", "America/Dawson_Creek", "America/Denver", "America/Detroit", "America/Dominica", "America/Edmonton", "America/Eirunepe", "America/El_Salvador", "America/Ensenada", "America/Fort_Nelson", "America/Fort_Wayne", "America/Fortaleza", "America/Glace_Bay", "America/Godthab", "America/Goose_Bay", "America/Grand_Turk", "America/Grenada", "America/Guadeloupe", "America/Guatemala", "America/Guayaquil", "America/Guyana", "America/Halifax", "America/Havana", "America/Hermosillo", "America/Indiana/Indianapolis", "America/Indiana/Knox", "America/Indiana/Marengo", "America/Indiana/Petersburg", "America/Indiana/Tell_City", "America/Indiana/Vevay", "America/Indiana/Vincennes", "America/Indiana/Winamac", "America/Indianapolis", "America/Inuvik", "America/Iqaluit", "America/Jamaica", "America/Jujuy", "America/Juneau", "America/Kentucky/Louisville", "America/Kentucky/Monticello", "America/Knox_IN", "America/Kralendijk", "America/La_Paz", "America/Lima", "America/Los_Angeles", "America/Louisville", "America/Lower_Princes", "America/Maceio", "America/Managua", "America/Manaus", "America/Marigot", "America/Martinique", "America/Matamoros", "America/Mazatlan", "America/Mendoza", "America/Menominee", "America/Merida", "America/Metlakatla", "America/Mexico_City", "America/Miquelon", "America/Moncton", "America/Monterrey", "America/Montevideo", "America/Montreal", "America/Montserrat", "America/Nassau", "America/New_York", "America/Nipigon", "America/Nome", "America/Noronha", "America/North_Dakota/Beulah", "America/North_Dakota/Center", "America/North_Dakota/New_Salem", "America/Nuuk", "America/Ojinaga", "America/Panama", "America/Pangnirtung", "America/Paramaribo", "America/Phoenix", "America/Port-au-Prince", "America/Port_of_Spain", "America/Porto_Acre", "America/Porto_Velho", "America/Puerto_Rico", "America/Punta_Arenas", "America/Rainy_River", "America/Rankin_Inlet", "America/Recife", "America/Regina", "America/Resolute", "America/Rio_Branco", "America/Rosario", "America/Santa_Isabel", "America/Santarem", "America/Santiago", "America/Santo_Domingo", "America/Sao_Paulo", "America/Scoresbysund", "America/Shiprock", "America/Sitka", "America/St_Barthelemy", "America/St_Johns", "America/St_Kitts", "America/St_Lucia", "America/St_Thomas", "America/St_Vincent", "America/Swift_Current", "America/Tegucigalpa", "America/Thule", "America/Thunder_Bay", "America/Tijuana", "America/Toronto", "America/Tortola", "America/Vancouver", "America/Virgin", "America/Whitehorse", "America/Winnipeg", "America/Yakutat", "America/Yellowknife", "Antarctica/Casey", "Antarctica/Davis", "Antarctica/DumontDUrville", "Antarctica/Macquarie", "Antarctica/Mawson", "Antarctica/McMurdo", "Antarctica/Palmer", "Antarctica/Rothera", "Antarctica/South_Pole", "Antarctica/Syowa", "Antarctica/Troll", "Antarctica/Vostok", "Arctic/Longyearbyen", "Asia/Aden", "Asia/Almaty", "Asia/Amman", "Asia/Anadyr", "Asia/Aqtau", "Asia/Aqtobe", "Asia/Ashgabat", "Asia/Ashkhabad", "Asia/Atyrau", "Asia/Baghdad", "Asia/Bahrain", "Asia/Baku", "Asia/Bangkok", "Asia/Barnaul", "Asia/Beirut", "Asia/Bishkek", "Asia/Brunei", "Asia/Calcutta", "Asia/Chita", "Asia/Choibalsan", "Asia/Chongqing", "Asia/Chungking", "Asia/Colombo", "Asia/Dacca", "Asia/Damascus", "Asia/Dhaka", "Asia/Dili", "Asia/Dubai", "Asia/Dushanbe", "Asia/Famagusta", "Asia/Gaza", "Asia/Harbin", "Asia/Hebron", "Asia/Ho_Chi_Minh", "Asia/Hong_Kong", "Asia/Hovd", "Asia/Irkutsk", "Asia/Istanbul", "Asia/Jakarta", "Asia/Jayapura", "Asia/Jerusalem", "Asia/Kabul", "Asia/Kamchatka", "Asia/Karachi", "Asia/Kashgar", "Asia/Kathmandu", "Asia/Katmandu", "Asia/Khandyga", "Asia/Kolkata", "Asia/Krasnoyarsk", "Asia/Kuala_Lumpur", "Asia/Kuching", "Asia/Kuwait", "Asia/Macao", "Asia/Macau", "Asia/Magadan", "Asia/Makassar", "Asia/Manila", "Asia/Muscat", "Asia/Nicosia", "Asia/Novokuznetsk", "Asia/Novosibirsk", "Asia/Omsk", "Asia/Oral", "Asia/Phnom_Penh", "Asia/Pontianak", "Asia/Pyongyang", "Asia/Qatar", "Asia/Qostanay", "Asia/Qyzylorda", "Asia/Rangoon", "Asia/Riyadh", "Asia/Saigon", "Asia/Sakhalin", "Asia/Samarkand", "Asia/Seoul", "Asia/Shanghai", "Asia/Singapore", "Asia/Srednekolymsk", "Asia/Taipei", "Asia/Tashkent", "Asia/Tbilisi", "Asia/Tehran", "Asia/Tel_Aviv", "Asia/Thimbu", "Asia/Thimphu", "Asia/Tokyo", "Asia/Tomsk", "Asia/Ujung_Pandang", "Asia/Ulaanbaatar", "Asia/Ulan_Bator", "Asia/Urumqi", "Asia/Ust-Nera", "Asia/Vientiane", "Asia/Vladivostok", "Asia/Yakutsk", "Asia/Yangon", "Asia/Yekaterinburg", "Asia/Yerevan", "Atlantic/Azores", "Atlantic/Bermuda", "Atlantic/Canary", "Atlantic/Cape_Verde", "Atlantic/Faeroe", "Atlantic/Faroe", "Atlantic/Jan_Mayen", "Atlantic/Madeira", "Atlantic/Reykjavik", "Atlantic/South_Georgia", "Atlantic/St_Helena", "Atlantic/Stanley", "Australia/ACT", "Australia/Adelaide", "Australia/Brisbane", "Australia/Broken_Hill", "Australia/Canberra", "Australia/Currie", "Australia/Darwin", "Australia/Eucla", "Australia/Hobart", "Australia/LHI", "Australia/Lindeman", "Australia/Lord_Howe", "Australia/Melbourne", "Australia/NSW", "Australia/North", "Australia/Perth", "Australia/Queensland", "Australia/South", "Australia/Sydney", "Australia/Tasmania", "Australia/Victoria", "Australia/West", "Australia/Yancowinna", "Brazil/Acre", "Brazil/DeNoronha", "Brazil/East", "Brazil/West", "CET", "CST6CDT", "Canada/Atlantic", "Canada/Central", "Canada/Eastern", "Canada/Mountain", "Canada/Newfoundland", "Canada/Pacific", "Canada/Saskatchewan", "Canada/Yukon", "Chile/Continental", "Chile/EasterIsland", "Cuba", "EET", "EST5EDT", "Egypt", "Eire", "Etc/GMT", "Etc/GMT+0", "Etc/GMT+1", "Etc/GMT+10", "Etc/GMT+11", "Etc/GMT+12", "Etc/GMT+2", "Etc/GMT+3", "Etc/GMT+4", "Etc/GMT+5", "Etc/GMT+6", "Etc/GMT+7", "Etc/GMT+8", "Etc/GMT+9", "Etc/GMT-0", "Etc/GMT-1", "Etc/GMT-10", "Etc/GMT-11", "Etc/GMT-12", "Etc/GMT-13", "Etc/GMT-14", "Etc/GMT-2", "Etc/GMT-3", "Etc/GMT-4", "Etc/GMT-5", "Etc/GMT-6", "Etc/GMT-7", "Etc/GMT-8", "Etc/GMT-9", "Etc/GMT0", "Etc/Greenwich", "Etc/UCT", "Etc/UTC", "Etc/Universal", "Etc/Zulu", "Europe/Amsterdam", "Europe/Andorra", "Europe/Astrakhan", "Europe/Athens", "Europe/Belfast", "Europe/Belgrade", "Europe/Berlin", "Europe/Bratislava", "Europe/Brussels", "Europe/Bucharest", "Europe/Budapest", "Europe/Busingen", "Europe/Chisinau", "Europe/Copenhagen", "Europe/Dublin", "Europe/Gibraltar", "Europe/Guernsey", "Europe/Helsinki", "Europe/Isle_of_Man", "Europe/Istanbul", "Europe/Jersey", "Europe/Kaliningrad", "Europe/Kiev", "Europe/Kirov", "Europe/Kyiv", "Europe/Lisbon", "Europe/Ljubljana", "Europe/London", "Europe/Luxembourg", "Europe/Madrid", "Europe/Malta", "Europe/Mariehamn", "Europe/Minsk", "Europe/Monaco", "Europe/Moscow", "Europe/Nicosia", "Europe/Oslo", "Europe/Paris", "Europe/Podgorica", "Europe/Prague", "Europe/Riga", "Europe/Rome", "Europe/Samara", "Europe/San_Marino", "Europe/Sarajevo", "Europe/Saratov", "Europe/Simferopol", "Europe/Skopje", "Europe/Sofia", "Europe/Stockholm", "Europe/Tallinn", "Europe/Tirane", "Europe/Tiraspol", "Europe/Ulyanovsk", "Europe/Uzhgorod", "Europe/Vaduz", "Europe/Vatican", "Europe/Vienna", "Europe/Vilnius", "Europe/Volgograd", "Europe/Warsaw", "Europe/Zagreb", "Europe/Zaporozhye", "Europe/Zurich", "GB", "GB-Eire", "GMT", "GMT0", "Greenwich", "Hongkong", "Iceland", "Indian/Antananarivo", "Indian/Chagos", "Indian/Christmas", "Indian/Cocos", "Indian/Comoro", "Indian/Kerguelen", "Indian/Mahe", "Indian/Maldives", "Indian/Mauritius", "Indian/Mayotte", "Indian/Reunion", "Iran", "Israel", "Jamaica", "Japan", "Kwajalein", "Libya", "MET", "MST7MDT", "Mexico/BajaNorte", "Mexico/BajaSur", "Mexico/General", "NZ", "NZ-CHAT", "Navajo", "PRC", "PST8PDT", "Pacific/Apia", "Pacific/Auckland", "Pacific/Bougainville", "Pacific/Chatham", "Pacific/Chuuk", "Pacific/Easter", "Pacific/Efate", "Pacific/Enderbury", "Pacific/Fakaofo", "Pacific/Fiji", "Pacific/Funafuti", "Pacific/Galapagos", "Pacific/Gambier", "Pacific/Guadalcanal", "Pacific/Guam", "Pacific/Honolulu", "Pacific/Johnston", "Pacific/Kanton", "Pacific/Kiritimati", "Pacific/Kosrae", "Pacific/Kwajalein", "Pacific/Majuro", "Pacific/Marquesas", "Pacific/Midway", "Pacific/Nauru", "Pacific/Niue", "Pacific/Norfolk", "Pacific/Noumea", "Pacific/Pago_Pago", "Pacific/Palau", "Pacific/Pitcairn", "Pacific/Pohnpei", "Pacific/Ponape", "Pacific/Port_Moresby", "Pacific/Rarotonga", "Pacific/Saipan", "Pacific/Samoa", "Pacific/Tahiti", "Pacific/Tarawa", "Pacific/Tongatapu", "Pacific/Truk", "Pacific/Wake", "Pacific/Wallis", "Pacific/Yap", "Poland", "Portugal", "ROK", "Singapore", "SystemV/AST4", "SystemV/AST4ADT", "SystemV/CST6", "SystemV/CST6CDT", "SystemV/EST5", "SystemV/EST5EDT", "SystemV/HST10", "SystemV/MST7", "SystemV/MST7MDT", "SystemV/PST8", "SystemV/PST8PDT", "SystemV/YST9", "SystemV/YST9YDT", "Turkey", "UCT", "US/Alaska", "US/Aleutian", "US/Arizona", "US/Central", "US/East-Indiana", "US/Eastern", "US/Hawaii", "US/Indiana-Starke", "US/Michigan", "US/Mountain", "US/Pacific", "US/Samoa", "UTC", "Universal", "W-SU", "WET", "Zulu" ]
+ "enum" : [ "Africa/Abidjan", "Africa/Accra", "Africa/Addis_Ababa", "Africa/Algiers", "Africa/Asmara", "Africa/Asmera", "Africa/Bamako", "Africa/Bangui", "Africa/Banjul", "Africa/Bissau", "Africa/Blantyre", "Africa/Brazzaville", "Africa/Bujumbura", "Africa/Cairo", "Africa/Casablanca", "Africa/Ceuta", "Africa/Conakry", "Africa/Dakar", "Africa/Dar_es_Salaam", "Africa/Djibouti", "Africa/Douala", "Africa/El_Aaiun", "Africa/Freetown", "Africa/Gaborone", "Africa/Harare", "Africa/Johannesburg", "Africa/Juba", "Africa/Kampala", "Africa/Khartoum", "Africa/Kigali", "Africa/Kinshasa", "Africa/Lagos", "Africa/Libreville", "Africa/Lome", "Africa/Luanda", "Africa/Lubumbashi", "Africa/Lusaka", "Africa/Malabo", "Africa/Maputo", "Africa/Maseru", "Africa/Mbabane", "Africa/Mogadishu", "Africa/Monrovia", "Africa/Nairobi", "Africa/Ndjamena", "Africa/Niamey", "Africa/Nouakchott", "Africa/Ouagadougou", "Africa/Porto-Novo", "Africa/Sao_Tome", "Africa/Timbuktu", "Africa/Tripoli", "Africa/Tunis", "Africa/Windhoek", "America/Adak", "America/Anchorage", "America/Anguilla", "America/Antigua", "America/Araguaina", "America/Argentina/Buenos_Aires", "America/Argentina/Catamarca", "America/Argentina/ComodRivadavia", "America/Argentina/Cordoba", "America/Argentina/Jujuy", "America/Argentina/La_Rioja", "America/Argentina/Mendoza", "America/Argentina/Rio_Gallegos", "America/Argentina/Salta", "America/Argentina/San_Juan", "America/Argentina/San_Luis", "America/Argentina/Tucuman", "America/Argentina/Ushuaia", "America/Aruba", "America/Asuncion", "America/Atikokan", "America/Atka", "America/Bahia", "America/Bahia_Banderas", "America/Barbados", "America/Belem", "America/Belize", "America/Blanc-Sablon", "America/Boa_Vista", "America/Bogota", "America/Boise", "America/Buenos_Aires", "America/Cambridge_Bay", "America/Campo_Grande", "America/Cancun", "America/Caracas", "America/Catamarca", "America/Cayenne", "America/Cayman", "America/Chicago", "America/Chihuahua", "America/Ciudad_Juarez", "America/Coral_Harbour", "America/Cordoba", "America/Costa_Rica", "America/Creston", "America/Cuiaba", "America/Curacao", "America/Danmarkshavn", "America/Dawson", "America/Dawson_Creek", "America/Denver", "America/Detroit", "America/Dominica", "America/Edmonton", "America/Eirunepe", "America/El_Salvador", "America/Ensenada", "America/Fort_Nelson", "America/Fort_Wayne", "America/Fortaleza", "America/Glace_Bay", "America/Godthab", "America/Goose_Bay", "America/Grand_Turk", "America/Grenada", "America/Guadeloupe", "America/Guatemala", "America/Guayaquil", "America/Guyana", "America/Halifax", "America/Havana", "America/Hermosillo", "America/Indiana/Indianapolis", "America/Indiana/Knox", "America/Indiana/Marengo", "America/Indiana/Petersburg", "America/Indiana/Tell_City", "America/Indiana/Vevay", "America/Indiana/Vincennes", "America/Indiana/Winamac", "America/Indianapolis", "America/Inuvik", "America/Iqaluit", "America/Jamaica", "America/Jujuy", "America/Juneau", "America/Kentucky/Louisville", "America/Kentucky/Monticello", "America/Knox_IN", "America/Kralendijk", "America/La_Paz", "America/Lima", "America/Los_Angeles", "America/Louisville", "America/Lower_Princes", "America/Maceio", "America/Managua", "America/Manaus", "America/Marigot", "America/Martinique", "America/Matamoros", "America/Mazatlan", "America/Mendoza", "America/Menominee", "America/Merida", "America/Metlakatla", "America/Mexico_City", "America/Miquelon", "America/Moncton", "America/Monterrey", "America/Montevideo", "America/Montreal", "America/Montserrat", "America/Nassau", "America/New_York", "America/Nipigon", "America/Nome", "America/Noronha", "America/North_Dakota/Beulah", "America/North_Dakota/Center", "America/North_Dakota/New_Salem", "America/Nuuk", "America/Ojinaga", "America/Panama", "America/Pangnirtung", "America/Paramaribo", "America/Phoenix", "America/Port-au-Prince", "America/Port_of_Spain", "America/Porto_Acre", "America/Porto_Velho", "America/Puerto_Rico", "America/Punta_Arenas", "America/Rainy_River", "America/Rankin_Inlet", "America/Recife", "America/Regina", "America/Resolute", "America/Rio_Branco", "America/Rosario", "America/Santa_Isabel", "America/Santarem", "America/Santiago", "America/Santo_Domingo", "America/Sao_Paulo", "America/Scoresbysund", "America/Shiprock", "America/Sitka", "America/St_Barthelemy", "America/St_Johns", "America/St_Kitts", "America/St_Lucia", "America/St_Thomas", "America/St_Vincent", "America/Swift_Current", "America/Tegucigalpa", "America/Thule", "America/Thunder_Bay", "America/Tijuana", "America/Toronto", "America/Tortola", "America/Vancouver", "America/Virgin", "America/Whitehorse", "America/Winnipeg", "America/Yakutat", "America/Yellowknife", "Antarctica/Casey", "Antarctica/Davis", "Antarctica/DumontDUrville", "Antarctica/Macquarie", "Antarctica/Mawson", "Antarctica/McMurdo", "Antarctica/Palmer", "Antarctica/Rothera", "Antarctica/South_Pole", "Antarctica/Syowa", "Antarctica/Troll", "Antarctica/Vostok", "Arctic/Longyearbyen", "Asia/Aden", "Asia/Almaty", "Asia/Amman", "Asia/Anadyr", "Asia/Aqtau", "Asia/Aqtobe", "Asia/Ashgabat", "Asia/Ashkhabad", "Asia/Atyrau", "Asia/Baghdad", "Asia/Bahrain", "Asia/Baku", "Asia/Bangkok", "Asia/Barnaul", "Asia/Beirut", "Asia/Bishkek", "Asia/Brunei", "Asia/Calcutta", "Asia/Chita", "Asia/Choibalsan", "Asia/Chongqing", "Asia/Chungking", "Asia/Colombo", "Asia/Dacca", "Asia/Damascus", "Asia/Dhaka", "Asia/Dili", "Asia/Dubai", "Asia/Dushanbe", "Asia/Famagusta", "Asia/Gaza", "Asia/Harbin", "Asia/Hebron", "Asia/Ho_Chi_Minh", "Asia/Hong_Kong", "Asia/Hovd", "Asia/Irkutsk", "Asia/Istanbul", "Asia/Jakarta", "Asia/Jayapura", "Asia/Jerusalem", "Asia/Kabul", "Asia/Kamchatka", "Asia/Karachi", "Asia/Kashgar", "Asia/Kathmandu", "Asia/Katmandu", "Asia/Khandyga", "Asia/Kolkata", "Asia/Krasnoyarsk", "Asia/Kuala_Lumpur", "Asia/Kuching", "Asia/Kuwait", "Asia/Macao", "Asia/Macau", "Asia/Magadan", "Asia/Makassar", "Asia/Manila", "Asia/Muscat", "Asia/Nicosia", "Asia/Novokuznetsk", "Asia/Novosibirsk", "Asia/Omsk", "Asia/Oral", "Asia/Phnom_Penh", "Asia/Pontianak", "Asia/Pyongyang", "Asia/Qatar", "Asia/Qostanay", "Asia/Qyzylorda", "Asia/Rangoon", "Asia/Riyadh", "Asia/Saigon", "Asia/Sakhalin", "Asia/Samarkand", "Asia/Seoul", "Asia/Shanghai", "Asia/Singapore", "Asia/Srednekolymsk", "Asia/Taipei", "Asia/Tashkent", "Asia/Tbilisi", "Asia/Tehran", "Asia/Tel_Aviv", "Asia/Thimbu", "Asia/Thimphu", "Asia/Tokyo", "Asia/Tomsk", "Asia/Ujung_Pandang", "Asia/Ulaanbaatar", "Asia/Ulan_Bator", "Asia/Urumqi", "Asia/Ust-Nera", "Asia/Vientiane", "Asia/Vladivostok", "Asia/Yakutsk", "Asia/Yangon", "Asia/Yekaterinburg", "Asia/Yerevan", "Atlantic/Azores", "Atlantic/Bermuda", "Atlantic/Canary", "Atlantic/Cape_Verde", "Atlantic/Faeroe", "Atlantic/Faroe", "Atlantic/Jan_Mayen", "Atlantic/Madeira", "Atlantic/Reykjavik", "Atlantic/South_Georgia", "Atlantic/St_Helena", "Atlantic/Stanley", "Australia/ACT", "Australia/Adelaide", "Australia/Brisbane", "Australia/Broken_Hill", "Australia/Canberra", "Australia/Currie", "Australia/Darwin", "Australia/Eucla", "Australia/Hobart", "Australia/LHI", "Australia/Lindeman", "Australia/Lord_Howe", "Australia/Melbourne", "Australia/NSW", "Australia/North", "Australia/Perth", "Australia/Queensland", "Australia/South", "Australia/Sydney", "Australia/Tasmania", "Australia/Victoria", "Australia/West", "Australia/Yancowinna", "Brazil/Acre", "Brazil/DeNoronha", "Brazil/East", "Brazil/West", "CET", "CST6CDT", "Canada/Atlantic", "Canada/Central", "Canada/Eastern", "Canada/Mountain", "Canada/Newfoundland", "Canada/Pacific", "Canada/Saskatchewan", "Canada/Yukon", "Chile/Continental", "Chile/EasterIsland", "Cuba", "EET", "EST5EDT", "Egypt", "Eire", "Etc/GMT", "Etc/GMT+0", "Etc/GMT+1", "Etc/GMT+10", "Etc/GMT+11", "Etc/GMT+12", "Etc/GMT+2", "Etc/GMT+3", "Etc/GMT+4", "Etc/GMT+5", "Etc/GMT+6", "Etc/GMT+7", "Etc/GMT+8", "Etc/GMT+9", "Etc/GMT-0", "Etc/GMT-1", "Etc/GMT-10", "Etc/GMT-11", "Etc/GMT-12", "Etc/GMT-13", "Etc/GMT-14", "Etc/GMT-2", "Etc/GMT-3", "Etc/GMT-4", "Etc/GMT-5", "Etc/GMT-6", "Etc/GMT-7", "Etc/GMT-8", "Etc/GMT-9", "Etc/GMT0", "Etc/Greenwich", "Etc/UCT", "Etc/UTC", "Etc/Universal", "Etc/Zulu", "Europe/Amsterdam", "Europe/Andorra", "Europe/Astrakhan", "Europe/Athens", "Europe/Belfast", "Europe/Belgrade", "Europe/Berlin", "Europe/Bratislava", "Europe/Brussels", "Europe/Bucharest", "Europe/Budapest", "Europe/Busingen", "Europe/Chisinau", "Europe/Copenhagen", "Europe/Dublin", "Europe/Gibraltar", "Europe/Guernsey", "Europe/Helsinki", "Europe/Isle_of_Man", "Europe/Istanbul", "Europe/Jersey", "Europe/Kaliningrad", "Europe/Kiev", "Europe/Kirov", "Europe/Kyiv", "Europe/Lisbon", "Europe/Ljubljana", "Europe/London", "Europe/Luxembourg", "Europe/Madrid", "Europe/Malta", "Europe/Mariehamn", "Europe/Minsk", "Europe/Monaco", "Europe/Moscow", "Europe/Nicosia", "Europe/Oslo", "Europe/Paris", "Europe/Podgorica", "Europe/Prague", "Europe/Riga", "Europe/Rome", "Europe/Samara", "Europe/San_Marino", "Europe/Sarajevo", "Europe/Saratov", "Europe/Simferopol", "Europe/Skopje", "Europe/Sofia", "Europe/Stockholm", "Europe/Tallinn", "Europe/Tirane", "Europe/Tiraspol", "Europe/Ulyanovsk", "Europe/Uzhgorod", "Europe/Vaduz", "Europe/Vatican", "Europe/Vienna", "Europe/Vilnius", "Europe/Volgograd", "Europe/Warsaw", "Europe/Zagreb", "Europe/Zaporozhye", "Europe/Zurich", "GB", "GB-Eire", "GMT", "GMT0", "Greenwich", "Hongkong", "Iceland", "Indian/Antananarivo", "Indian/Chagos", "Indian/Christmas", "Indian/Cocos", "Indian/Comoro", "Indian/Kerguelen", "Indian/Mahe", "Indian/Maldives", "Indian/Mauritius", "Indian/Mayotte", "Indian/Reunion", "Iran", "Israel", "Jamaica", "Japan", "Kwajalein", "Libya", "MET", "MST7MDT", "Mexico/BajaNorte", "Mexico/BajaSur", "Mexico/General", "NZ", "NZ-CHAT", "Navajo", "PRC", "PST8PDT", "Pacific/Apia", "Pacific/Auckland", "Pacific/Bougainville", "Pacific/Chatham", "Pacific/Chuuk", "Pacific/Easter", "Pacific/Efate", "Pacific/Enderbury", "Pacific/Fakaofo", "Pacific/Fiji", "Pacific/Funafuti", "Pacific/Galapagos", "Pacific/Gambier", "Pacific/Guadalcanal", "Pacific/Guam", "Pacific/Honolulu", "Pacific/Johnston", "Pacific/Kanton", "Pacific/Kiritimati", "Pacific/Kosrae", "Pacific/Kwajalein", "Pacific/Majuro", "Pacific/Marquesas", "Pacific/Midway", "Pacific/Nauru", "Pacific/Niue", "Pacific/Norfolk", "Pacific/Noumea", "Pacific/Pago_Pago", "Pacific/Palau", "Pacific/Pitcairn", "Pacific/Pohnpei", "Pacific/Ponape", "Pacific/Port_Moresby", "Pacific/Rarotonga", "Pacific/Saipan", "Pacific/Samoa", "Pacific/Tahiti", "Pacific/Tarawa", "Pacific/Tongatapu", "Pacific/Truk", "Pacific/Wake", "Pacific/Wallis", "Pacific/Yap", "Poland", "Portugal", "ROK", "Singapore", "SystemV/AST4", "SystemV/AST4ADT", "SystemV/CST6", "SystemV/CST6CDT", "SystemV/EST5", "SystemV/EST5EDT", "SystemV/HST10", "SystemV/MST7", "SystemV/MST7MDT", "SystemV/PST8", "SystemV/PST8PDT", "SystemV/YST9", "SystemV/YST9YDT", "Turkey", "UCT", "US/Alaska", "US/Aleutian", "US/Arizona", "US/Central", "US/East-Indiana", "US/Eastern", "US/Hawaii", "US/Indiana-Starke", "US/Michigan", "US/Mountain", "US/Pacific", "US/Samoa", "UTC", "Universal", "W-SU", "WET", "Zulu" ]
}, {
"$ref" : "#/components/schemas/metabase.lib.schema.literal..string.zone-offset"
} ]
@@ -6022,6 +6607,7 @@
"minimum" : 1
},
"metabase.lib.schema.info.context" : {
+ "description" : "Schema for `info.context`; used for informational purposes to record how a query was executed.",
"type" : "string",
"enum" : [ "action", "ad-hoc", "cache-refresh", "collection", "map-tiles", "pulse", "dashboard-subscription", "dashboard", "question", "csv-download", "xlsx-download", "json-download", "public-dashboard", "public-question", "public-csv-download", "public-xlsx-download", "public-json-download", "embedded-dashboard", "embedded-question", "embedded-csv-download", "embedded-xlsx-download", "embedded-json-download", "table-grid" ]
},
@@ -8559,6 +9145,12 @@
"type" : "string",
"enum" : [ "static-list", "card" ]
},
+ "metabase.queries.schema..card.result-metadata" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.metadata.lib-or-legacy-column"
+ }
+ },
"metabase.queries.schema.card" : {
"description" : "Schema for an instance of a `:model/Card` (everything is optional to support updates).",
"type" : "object",
@@ -8576,10 +9168,7 @@
"$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
},
"result_metadata" : {
- "type" : "array",
- "items" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.metadata.lib-or-legacy-column"
- }
+ "$ref" : "#/components/schemas/metabase.queries.schema..card.result-metadata"
},
"type" : {
"$ref" : "#/components/schemas/metabase.lib.schema.metadata..card.type"
@@ -8640,204 +9229,812 @@
"create-row" : {
"$ref" : "#/components/schemas/metabase.lib.schema.actions.row"
}
- },
- "required" : [ "lib/type", "lib/metadata", "stages" ]
- }, {
- "$ref" : "#/components/schemas/metabase.lib.schema.util.unique-uuids"
- }, {
- "allOf" : [ ]
- } ]
- } ]
- },
- "metabase.query-processor.schema..result-metadata.column" : {
- "description" : "A single result metadata column as returned by the Query Processor.",
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.legacy-column-metadata"
- },
- "metabase.query-processor.schema.export-format" : {
- "description" : "Schema for valid export formats for downloading query results.",
- "type" : "string",
- "enum" : [ "csv", "api", "xlsx", "json" ]
- },
- "metabase.sync.schedules.ExpandedSchedulesMap" : {
- "description" : "value must be a valid map of schedule maps for a DB.",
- "type" : "object",
- "properties" : {
- "cache_field_values" : {
- "$ref" : "#/components/schemas/metabase.util.cron.ScheduleMap"
+ },
+ "required" : [ "lib/type", "lib/metadata", "stages" ]
+ }, {
+ "$ref" : "#/components/schemas/metabase.lib.schema.util.unique-uuids"
+ }, {
+ "allOf" : [ ]
+ } ]
+ } ]
+ },
+ "metabase.query-processor.schema..result-metadata.column" : {
+ "description" : "A single result metadata column as returned by the Query Processor.",
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.legacy-column-metadata"
+ },
+ "metabase.query-processor.schema.export-format" : {
+ "description" : "Schema for valid export formats for downloading query results.",
+ "type" : "string",
+ "enum" : [ "csv", "api", "xlsx", "json" ]
+ },
+ "metabase.sync.schedules.ExpandedSchedulesMap" : {
+ "description" : "value must be a valid map of schedule maps for a DB.",
+ "type" : "object",
+ "properties" : {
+ "cache_field_values" : {
+ "$ref" : "#/components/schemas/metabase.util.cron.ScheduleMap"
+ },
+ "metadata_sync" : {
+ "$ref" : "#/components/schemas/metabase.util.cron.ScheduleMap"
+ }
+ }
+ },
+ "metabase.tiles.api.legacy-ref" : {
+ "description" : "Form-encoded JSON-encoded legacy MBQL :field ref.",
+ "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
+ },
+ "metabase.tiles.api.parameters" : {
+ "description" : "Form-encoded JSON-encoded array of parameter maps.",
+ "$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
+ },
+ "metabase.tiles.api.query" : {
+ "description" : "Form-encoded JSON-encoded MBQL query.",
+ "$ref" : "#/components/schemas/metabase.lib.schema.query"
+ },
+ "metabase.timeline.api.timeline.Timeline" : {
+ "type" : "object",
+ "properties" : {
+ "id" : {
+ "type" : "integer",
+ "minimum" : 1
+ }
+ },
+ "required" : [ "id" ]
+ },
+ "metabase.timeline.api.timeline.include" : {
+ "type" : "string",
+ "enum" : [ "events" ]
+ },
+ "metabase.users.api.user-group-membership" : {
+ "description" : "Group Membership info of a User.\n In which :is_group_manager is only included if `advanced-permissions` is enabled.",
+ "type" : "object",
+ "properties" : {
+ "id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "is_group_manager" : {
+ "description" : "Only relevant if `advanced-permissions` is enabled. If it is, you should always include this key.",
+ "type" : "boolean"
+ }
+ },
+ "required" : [ "id" ]
+ },
+ "metabase.util.cron.CronHour" : {
+ "type" : "integer",
+ "minimum" : 0,
+ "maximum" : 23
+ },
+ "metabase.util.cron.CronMinute" : {
+ "type" : "integer",
+ "minimum" : 0,
+ "maximum" : 59
+ },
+ "metabase.util.cron.CronScheduleString" : {
+ "description" : "value must be a valid Quartz cron schedule string.",
+ "type" : "string",
+ "minLength" : 1
+ },
+ "metabase.util.cron.ScheduleMap" : {
+ "description" : "value must be a valid schedule map. See schema in metabase.util.cron for details.",
+ "type" : "object",
+ "properties" : {
+ "schedule_day" : {
+ "type" : "string",
+ "enum" : [ "sun", "mon", "tue", "wed", "thu", "fri", "sat" ]
+ },
+ "schedule_frame" : {
+ "type" : "string",
+ "enum" : [ "first", "mid", "last" ]
+ },
+ "schedule_hour" : {
+ "$ref" : "#/components/schemas/metabase.util.cron.CronHour"
+ },
+ "schedule_minute" : {
+ "$ref" : "#/components/schemas/metabase.util.cron.CronMinute"
+ },
+ "schedule_type" : {
+ "type" : "string",
+ "enum" : [ "hourly", "daily", "weekly", "monthly" ]
+ }
+ },
+ "required" : [ "schedule_type" ]
+ },
+ "metabase.warehouse-schema.api.table.data-authority-write" : {
+ "description" : "Schema for writing a valid table data authority.",
+ "type" : "string",
+ "enum" : [ "computed", "authoritative", "unconfigured", "ingested" ]
+ },
+ "metabase.warehouses.api.available-settings" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "object",
+ "properties" : {
+ "enabled" : {
+ "type" : "boolean"
+ },
+ "reasons" : {
+ "type" : "array",
+ "items" : {
+ "type" : "object",
+ "properties" : {
+ "key" : {
+ "type" : "string"
+ },
+ "message" : {
+ "anyOf" : [ {
+ "type" : "string"
+ }, { } ]
+ },
+ "type" : {
+ "type" : "string",
+ "enum" : [ "error", "warning" ]
+ }
+ },
+ "required" : [ "key", "type", "message" ]
+ }
+ }
+ },
+ "required" : [ "enabled" ]
+ }
+ },
+ "metabase.xrays.api.automagic-dashboards.base-64-encoded-json" : {
+ "description" : "form-encoded base-64-encoded JSON"
+ },
+ "metabase.xrays.api.automagic-dashboards.entity-id-or-query" : {
+ "description" : "One of these:\n\n * A non-empty string with an Entity ID (including `card__`-encoded Card IDs)\n\n * a form-encoded base-64-encoded JSON-encoded MBQL query\n\n * The name of a transform\n\n (Effectively since the names of transforms are unconstrained this parameter is allowed to be any form-encoded\n string.)",
+ "type" : "string",
+ "minLength" : 1
+ },
+ "metabot.reaction.redirect" : {
+ "type" : "object",
+ "properties" : {
+ "type" : {
+ "const" : "metabot.reaction/redirect"
+ },
+ "url" : {
+ "type" : "string"
+ }
+ },
+ "required" : [ "type", "url" ]
+ }
+ }
+ },
+ "paths" : {
+ "/api/action/" : {
+ "get" : {
+ "summary" : "GET /api/action/",
+ "description" : "Returns actions that can be used for QueryActions. By default lists all viewable actions. Pass optional\n `?model-id=` to limit to actions on a particular model.",
+ "parameters" : [ {
+ "in" : "query",
+ "name" : "model-id",
+ "required" : false,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.card"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "sequence of An Action as it should appear when we `SELECT` it from the app DB.",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.action"
+ }
+ }
+ }
+ }
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ },
+ "post" : {
+ "summary" : "POST /api/action/",
+ "description" : "Create a new action.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "An Action as it should appear when we `SELECT` it from the app DB.",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.action"
+ }
+ }
+ }
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema..action.for-insert"
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/action/public" : {
+ "get" : {
+ "summary" : "GET /api/action/public",
+ "description" : "Fetch a list of Actions with public UUIDs. These actions are publicly-accessible *if* public sharing is enabled.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "sequence of An Action as it should appear when we `SELECT` it from the app DB.",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "array",
+ "items" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.action"
+ }
+ }
+ }
+ }
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/action/{action-id}" : {
+ "get" : {
+ "summary" : "GET /api/action/{action-id}",
+ "description" : "Fetch an Action.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "action-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "An Action as it should appear when we `SELECT` it from the app DB.",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.action"
+ }
+ }
+ }
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ },
+ "delete" : {
+ "summary" : "DELETE /api/action/{action-id}",
+ "description" : "Delete an Action.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "action-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/action/{action-id}/execute" : {
+ "get" : {
+ "summary" : "GET /api/action/{action-id}/execute",
+ "description" : "Fetches the values for filling in execution parameters. Pass PK parameters and values to select.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "action-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ }, {
+ "in" : "query",
+ "name" : "parameters",
+ "required" : true,
+ "schema" : {
+ "type" : "string"
+ },
+ "description" : "value must be a valid JSON string."
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/action/{id}" : {
+ "put" : {
+ "summary" : "PUT /api/action/{id}",
+ "description" : "Update an Action.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema..action.for-update"
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/action/{id}/execute" : {
+ "post" : {
+ "summary" : "POST /api/action/{id}/execute",
+ "description" : "Execute the Action.\n\n `parameters` should be the mapped dashboard parameters with values.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "parameters" : {
+ "type" : "object",
+ "additionalProperties" : { }
+ }
+ },
+ "optional" : true
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/action/{id}/public_link" : {
+ "post" : {
+ "summary" : "POST /api/action/{id}/public_link",
+ "description" : "Generate publicly-accessible links for this Action. Returns UUID to be used in public links. (If this\n Action has already been shared, it will return the existing public link rather than creating a new one.) Public\n sharing must be enabled.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ },
+ "delete" : {
+ "summary" : "DELETE /api/action/{id}/public_link",
+ "description" : "Delete the publicly-accessible link to this Dashboard.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/action" ]
+ }
+ },
+ "/api/activity/most_recently_viewed_dashboard" : {
+ "get" : {
+ "summary" : "GET /api/activity/most_recently_viewed_dashboard",
+ "description" : "Get the most recently viewed dashboard for the current user. Returns a 204 if the user has not viewed any dashboards\n in the last 24 hours.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/activity" ]
+ }
+ },
+ "/api/activity/popular_items" : {
+ "get" : {
+ "summary" : "GET /api/activity/popular_items",
+ "description" : "Get the list of 5 popular things on the instance. Query takes 8 and limits to 5 so that if it finds anything\n archived, deleted, etc it can usually still get 5. ",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/activity" ]
+ }
+ },
+ "/api/activity/recent_views" : {
+ "get" : {
+ "summary" : "GET /api/activity/recent_views",
+ "description" : "Get a list of 100 models (cards, models, tables, dashboards, and collections) that the current user has been viewing most\n recently. Return a maximum of 20 model of each, if they've looked at at least 20.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/activity" ]
+ }
+ },
+ "/api/activity/recents" : {
+ "get" : {
+ "summary" : "GET /api/activity/recents",
+ "description" : "Get a list of recent items the current user has been viewing most recently under the `:recents` key.\n Allows for filtering by context: views or selections",
+ "parameters" : [ {
+ "in" : "query",
+ "name" : "context",
+ "required" : true,
+ "schema" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string",
+ "enum" : [ "selections", "views" ]
+ }
+ }
+ }, {
+ "in" : "query",
+ "name" : "include_metadata",
+ "required" : false,
+ "schema" : {
+ "type" : "boolean",
+ "default" : false
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/activity" ]
+ },
+ "post" : {
+ "summary" : "POST /api/activity/recents",
+ "description" : "Adds a model to the list of recently selected items.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "context" : {
+ "type" : "string",
+ "enum" : [ "selection" ]
+ },
+ "model" : {
+ "type" : "string",
+ "enum" : [ "card", "dataset", "metric", "dashboard", "table", "collection", "document" ]
+ },
+ "model_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }
+ },
+ "required" : [ "model", "model_id", "context" ]
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/activity" ]
+ }
+ },
+ "/api/alert/" : {
+ "get" : {
+ "summary" : "GET /api/alert/",
+ "description" : "Fetch alerts which the current user has created or will receive, or all alerts if the user is an admin.\n The optional `user_id` will return alerts created by the corresponding user, but is ignored for non-admin users.",
+ "parameters" : [ {
+ "in" : "query",
+ "name" : "archived",
+ "required" : false,
+ "schema" : {
+ "type" : "boolean",
+ "default" : false
+ }
+ }, {
+ "in" : "query",
+ "name" : "user_id",
+ "required" : false,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
},
- "metadata_sync" : {
- "$ref" : "#/components/schemas/metabase.util.cron.ScheduleMap"
+ "description" : "value must be an integer greater than zero."
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
- }
- },
- "metabase.tiles.api.legacy-ref" : {
- "description" : "Form-encoded JSON-encoded legacy MBQL :field ref.",
- "$ref" : "#/components/schemas/metabase.legacy-mbql.schema.field"
- },
- "metabase.tiles.api.parameters" : {
- "description" : "Form-encoded JSON-encoded array of parameter maps.",
- "$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
- },
- "metabase.tiles.api.query" : {
- "description" : "Form-encoded JSON-encoded MBQL query.",
- "$ref" : "#/components/schemas/metabase.lib.schema.query"
- },
- "metabase.timeline.api.timeline.Timeline" : {
- "type" : "object",
- "properties" : {
- "id" : {
+ },
+ "tags" : [ "/api/alert" ]
+ }
+ },
+ "/api/alert/{id}" : {
+ "get" : {
+ "summary" : "GET /api/alert/{id}",
+ "description" : "Fetch an alert by ID",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
"type" : "integer",
"minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
},
- "required" : [ "id" ]
- },
- "metabase.timeline.api.timeline.include" : {
- "type" : "string",
- "enum" : [ "events" ]
- },
- "metabase.users.api.user-group-membership" : {
- "description" : "Group Membership info of a User.\n In which :is_group_manager is only included if `advanced-permissions` is enabled.",
- "type" : "object",
- "properties" : {
- "id" : {
- "description" : "value must be an integer greater than zero.",
+ "tags" : [ "/api/alert" ]
+ }
+ },
+ "/api/alert/{id}/subscription" : {
+ "delete" : {
+ "summary" : "DELETE /api/alert/{id}/subscription",
+ "description" : "For users to unsubscribe themselves from the given alert.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
"type" : "integer",
"minimum" : 1
},
- "is_group_manager" : {
- "description" : "Only relevant if `advanced-permissions` is enabled. If it is, you should always include this key.",
- "type" : "boolean"
+ "description" : "value must be an integer greater than zero."
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
},
- "required" : [ "id" ]
- },
- "metabase.util.cron.CronHour" : {
- "type" : "integer",
- "minimum" : 0,
- "maximum" : 23
- },
- "metabase.util.cron.CronMinute" : {
- "type" : "integer",
- "minimum" : 0,
- "maximum" : 59
- },
- "metabase.util.cron.CronScheduleString" : {
- "description" : "value must be a valid Quartz cron schedule string.",
- "type" : "string",
- "minLength" : 1
- },
- "metabase.util.cron.ScheduleMap" : {
- "description" : "value must be a valid schedule map. See schema in metabase.util.cron for details.",
- "type" : "object",
- "properties" : {
- "schedule_day" : {
- "type" : "string",
- "enum" : [ "sun", "mon", "tue", "wed", "thu", "fri", "sat" ]
+ "tags" : [ "/api/alert" ]
+ }
+ },
+ "/api/analytics/anonymous-stats" : {
+ "get" : {
+ "summary" : "GET /api/analytics/anonymous-stats",
+ "description" : "Anonymous usage stats. Endpoint for testing, and eventually exposing this to instance admins to let them see\n what is being phoned home.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
},
- "schedule_frame" : {
- "type" : "string",
- "enum" : [ "first", "mid", "last" ]
+ "4XX" : {
+ "description" : "Client error response"
},
- "schedule_hour" : {
- "$ref" : "#/components/schemas/metabase.util.cron.CronHour"
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/analytics" ]
+ }
+ },
+ "/api/api-key/" : {
+ "post" : {
+ "summary" : "POST /api/api-key/",
+ "description" : "Create a new API key (and an associated `User`) with the provided name and group ID.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
},
- "schedule_minute" : {
- "$ref" : "#/components/schemas/metabase.util.cron.CronMinute"
+ "4XX" : {
+ "description" : "Client error response"
},
- "schedule_type" : {
- "type" : "string",
- "enum" : [ "hourly", "daily", "weekly", "monthly" ]
+ "5XX" : {
+ "description" : "Server error response"
}
},
- "required" : [ "schedule_type" ]
- },
- "metabase.warehouse-schema.api.table.data-authority-write" : {
- "description" : "Schema for writing a valid table data authority.",
- "type" : "string",
- "enum" : [ "computed", "authoritative", "unconfigured", "ingested" ]
- },
- "metabase.warehouses.api.available-settings" : {
- "type" : "object",
- "additionalProperties" : {
- "type" : "object",
- "properties" : {
- "enabled" : {
- "type" : "boolean"
- },
- "reasons" : {
- "type" : "array",
- "items" : {
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
"type" : "object",
"properties" : {
- "key" : {
- "type" : "string"
- },
- "message" : {
- "anyOf" : [ {
- "type" : "string"
- }, { } ]
+ "group_id" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
},
- "type" : {
+ "name" : {
"type" : "string",
- "enum" : [ "error", "warning" ]
+ "minLength" : 1
}
},
- "required" : [ "key", "type", "message" ]
+ "required" : [ "group_id", "name" ]
}
}
- },
- "required" : [ "enabled" ]
- }
- },
- "metabase.xrays.api.automagic-dashboards.base-64-encoded-json" : {
- "description" : "form-encoded base-64-encoded JSON"
- },
- "metabase.xrays.api.automagic-dashboards.entity-id-or-query" : {
- "description" : "One of these:\n\n * A non-empty string with an Entity ID (including `card__`-encoded Card IDs)\n\n * a form-encoded base-64-encoded JSON-encoded MBQL query\n\n * The name of a transform\n\n (Effectively since the names of transforms are unconstrained this parameter is allowed to be any form-encoded\n string.)",
- "type" : "string",
- "minLength" : 1
+ }
+ },
+ "tags" : [ "/api/api-key" ]
},
- "metabot.reaction.redirect" : {
- "type" : "object",
- "properties" : {
- "type" : {
- "const" : "metabot.reaction/redirect"
+ "get" : {
+ "summary" : "GET /api/api-key/",
+ "description" : "Get a list of API keys with the default scope. Non-paginated.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
},
- "url" : {
- "type" : "string"
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
},
- "required" : [ "type", "url" ]
+ "tags" : [ "/api/api-key" ]
}
- }
- },
- "paths" : {
- "/api/action/" : {
+ },
+ "/api/api-key/count" : {
"get" : {
- "summary" : "GET /api/action/",
- "description" : "Returns actions that can be used for QueryActions. By default lists all viewable actions. Pass optional\n `?model-id=` to limit to actions on a particular model.",
- "parameters" : [ {
- "in" : "query",
- "name" : "model-id",
- "required" : false,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.card"
- }
- } ],
+ "summary" : "GET /api/api-key/count",
+ "description" : "Get the count of API keys in the DB with the default scope.",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
- "description" : "sequence of An Action as it should appear when we `SELECT` it from the app DB.",
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "array",
- "items" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.action"
- }
- }
- }
- }
+ "description" : "Successful response"
},
"4XX" : {
"description" : "Client error response"
@@ -8846,22 +10043,26 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/action" ]
- },
- "post" : {
- "summary" : "POST /api/action/",
- "description" : "Create a new action.",
- "parameters" : [ ],
+ "tags" : [ "/api/api-key" ]
+ }
+ },
+ "/api/api-key/{id}" : {
+ "put" : {
+ "summary" : "PUT /api/api-key/{id}",
+ "description" : "Update an API key by changing its group and/or its name",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ } ],
"responses" : {
"2XX" : {
- "description" : "An Action as it should appear when we `SELECT` it from the app DB.",
- "content" : {
- "application/json" : {
- "schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.action"
- }
- }
- }
+ "description" : "Successful response"
},
"4XX" : {
"description" : "Client error response"
@@ -8874,29 +10075,82 @@
"content" : {
"application/json" : {
"schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema..action.for-insert"
+ "type" : "object",
+ "properties" : {
+ "group_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "name" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema.name"
+ }
+ }
}
}
}
},
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/api-key" ]
+ },
+ "delete" : {
+ "summary" : "DELETE /api/api-key/{id}",
+ "description" : "Delete an ApiKey",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/api-key" ]
}
},
- "/api/action/public" : {
- "get" : {
- "summary" : "GET /api/action/public",
- "description" : "Fetch a list of Actions with public UUIDs. These actions are publicly-accessible *if* public sharing is enabled.",
- "parameters" : [ ],
+ "/api/api-key/{id}/regenerate" : {
+ "put" : {
+ "summary" : "PUT /api/api-key/{id}/regenerate",
+ "description" : "Regenerate an API Key",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
+ }
+ } ],
"responses" : {
"2XX" : {
- "description" : "sequence of An Action as it should appear when we `SELECT` it from the app DB.",
+ "description" : "map where {:id -> , :unmasked_key -> '.>, :masked_key -> , :prefix -> }",
"content" : {
"application/json" : {
"schema" : {
- "type" : "array",
- "items" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.action"
- }
+ "type" : "object",
+ "properties" : {
+ "id" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
+ },
+ "masked_key" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema..key.masked"
+ },
+ "prefix" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema.prefix"
+ },
+ "unmasked_key" : {
+ "$ref" : "#/components/schemas/metabase.api-keys.schema..key.raw"
+ }
+ },
+ "required" : [ "id", "unmasked_key", "masked_key", "prefix" ]
}
}
}
@@ -8908,16 +10162,16 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/api-key" ]
}
},
- "/api/action/{action-id}" : {
+ "/api/automagic-dashboards/database/{id}/candidates" : {
"get" : {
- "summary" : "GET /api/action/{action-id}",
- "description" : "Fetch an Action.",
+ "summary" : "GET /api/automagic-dashboards/database/{id}/candidates",
+ "description" : "Return a list of candidates for automagic dashboards ordered by interestingness.",
"parameters" : [ {
"in" : "path",
- "name" : "action-id",
+ "name" : "id",
"required" : true,
"schema" : {
"type" : "integer",
@@ -8927,14 +10181,7 @@
} ],
"responses" : {
"2XX" : {
- "description" : "An Action as it should appear when we `SELECT` it from the app DB.",
- "content" : {
- "application/json" : {
- "schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.action"
- }
- }
- }
+ "description" : "Successful response"
},
"4XX" : {
"description" : "Client error response"
@@ -8943,20 +10190,73 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/action" ]
- },
- "delete" : {
- "summary" : "DELETE /api/action/{action-id}",
- "description" : "Delete an Action.",
+ "tags" : [ "/api/automagic-dashboards" ]
+ }
+ },
+ "/api/automagic-dashboards/model_index/{model-index-id}/primary_key/{pk-id}" : {
+ "get" : {
+ "summary" : "GET /api/automagic-dashboards/model_index/{model-index-id}/primary_key/{pk-id}",
+ "description" : "Return an automagic dashboard for an entity detail specified by `entity`\n with id `id` and a primary key of `indexed-value`.",
"parameters" : [ {
"in" : "path",
- "name" : "action-id",
+ "name" : "model-index-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer"
+ }
+ }, {
+ "in" : "path",
+ "name" : "pk-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer"
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/automagic-dashboards" ]
+ }
+ },
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}" : {
+ "get" : {
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}",
+ "description" : "Return an automagic dashboard for entity `entity` with id `id`.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "entity",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
+ }, {
+ "in" : "path",
+ "name" : "entity-id-or-query",
"required" : true,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ }
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "const" : "all"
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
+ }
} ],
"responses" : {
"2XX" : {
@@ -8969,30 +10269,49 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/action/{action-id}/execute" : {
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}" : {
"get" : {
- "summary" : "GET /api/action/{action-id}/execute",
- "description" : "Fetches the values for filling in execution parameters. Pass PK parameters and values to select.",
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}",
+ "description" : "Return an automagic dashboard analyzing cell in automagic dashboard for entity `entity` defined by query\n `cell-query`.",
"parameters" : [ {
"in" : "path",
- "name" : "action-id",
+ "name" : "entity",
"required" : true,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
}, {
- "in" : "query",
- "name" : "parameters",
+ "in" : "path",
+ "name" : "entity-id-or-query",
"required" : true,
"schema" : {
- "type" : "string"
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ }
+ }, {
+ "in" : "path",
+ "name" : "cell-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
+ }
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
},
- "description" : "value must be a valid JSON string."
+ "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -9005,20 +10324,65 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/action/{id}" : {
- "put" : {
- "summary" : "PUT /api/action/{id}",
- "description" : "Update an Action.",
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
+ "get" : {
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
+ "description" : "Return an automagic comparison dashboard for cell in automagic dashboard for entity `entity`\n with id `id` defined by query `cell-query`; compared with entity `comparison-entity` with id\n `comparison-entity-id-or-query.`.",
"parameters" : [ {
"in" : "path",
- "name" : "id",
+ "name" : "entity",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
+ }, {
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ }
+ }, {
+ "in" : "path",
+ "name" : "cell-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
+ }
+ }, {
+ "in" : "path",
+ "name" : "comparison-entity",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "adhoc", "segment", "table" ]
+ },
+ "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
+ }, {
+ "in" : "path",
+ "name" : "comparison-entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
+ },
+ "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -9031,29 +10395,60 @@
"description" : "Server error response"
}
},
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema..action.for-update"
- }
- }
- }
- },
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/action/{id}/execute" : {
- "post" : {
- "summary" : "POST /api/action/{id}/execute",
- "description" : "Execute the Action.\n\n `parameters` should be the mapped dashboard parameters with values.",
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}" : {
+ "get" : {
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}",
+ "description" : "Return an automagic dashboard analyzing cell in question with id `id` defined by query `cell-query` using\n dashboard-template `dashboard-template`.",
"parameters" : [ {
"in" : "path",
- "name" : "id",
+ "name" : "entity",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
+ }, {
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ }
+ }, {
+ "in" : "path",
+ "name" : "prefix",
+ "required" : true,
+ "schema" : { }
+ }, {
+ "in" : "path",
+ "name" : "dashboard-template",
+ "required" : true,
+ "schema" : { },
+ "description" : "invalid value for dashboard template name"
+ }, {
+ "in" : "path",
+ "name" : "cell-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
}
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
+ },
+ "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -9066,60 +10461,76 @@
"description" : "Server error response"
}
},
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "parameters" : {
- "type" : "object",
- "additionalProperties" : { }
- }
- },
- "optional" : true
- }
- }
- }
- },
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/action/{id}/public_link" : {
- "post" : {
- "summary" : "POST /api/action/{id}/public_link",
- "description" : "Generate publicly-accessible links for this Action. Returns UUID to be used in public links. (If this\n Action has already been shared, it will return the existing public link rather than creating a new one.) Public\n sharing must be enabled.",
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
+ "get" : {
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
+ "description" : "Return an automagic comparison dashboard for cell in automagic dashboard for entity `entity`\n with id `id` defined by query `cell-query` using dashboard-template `dashboard-template`; compared with entity\n `comparison-entity` with id `comparison-entity-id-or-query.`.",
"parameters" : [ {
"in" : "path",
- "name" : "id",
+ "name" : "entity",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
}
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
+ }, {
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
- },
- "tags" : [ "/api/action" ]
- },
- "delete" : {
- "summary" : "DELETE /api/action/{id}/public_link",
- "description" : "Delete the publicly-accessible link to this Dashboard.",
- "parameters" : [ {
+ }, {
+ "in" : "path",
+ "name" : "prefix",
+ "required" : true,
+ "schema" : { }
+ }, {
+ "in" : "path",
+ "name" : "dashboard-template",
+ "required" : true,
+ "schema" : { },
+ "description" : "invalid value for dashboard template name"
+ }, {
+ "in" : "path",
+ "name" : "cell-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
+ }
+ }, {
+ "in" : "path",
+ "name" : "comparison-entity",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "adhoc", "segment", "table" ]
+ },
+ "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
+ }, {
"in" : "path",
- "name" : "id",
+ "name" : "comparison-entity-id-or-query",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.actions.schema.id"
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
+ },
+ "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -9132,52 +10543,59 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/action" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/activity/most_recently_viewed_dashboard" : {
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
"get" : {
- "summary" : "GET /api/activity/most_recently_viewed_dashboard",
- "description" : "Get the most recently viewed dashboard for the current user. Returns a 204 if the user has not viewed any dashboards\n in the last 24 hours.",
- "parameters" : [ ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
+ "description" : "Return an automagic comparison dashboard for entity `entity` with id `id` compared with entity `comparison-entity`\n with id `comparison-entity-id-or-query.`",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
- },
- "tags" : [ "/api/activity" ]
- }
- },
- "/api/activity/popular_items" : {
- "get" : {
- "summary" : "GET /api/activity/popular_items",
- "description" : "Get the list of 5 popular things on the instance. Query takes 8 and limits to 5 so that if it finds anything\n archived, deleted, etc it can usually still get 5. ",
- "parameters" : [ ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
+ }, {
+ "in" : "path",
+ "name" : "entity",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
+ }, {
+ "in" : "path",
+ "name" : "comparison-entity",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "adhoc", "segment", "table" ]
},
- "5XX" : {
- "description" : "Server error response"
+ "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
+ }, {
+ "in" : "path",
+ "name" : "comparison-entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
- },
- "tags" : [ "/api/activity" ]
- }
- },
- "/api/activity/recent_views" : {
- "get" : {
- "summary" : "GET /api/activity/recent_views",
- "description" : "Get a list of 100 models (cards, models, tables, dashboards, and collections) that the current user has been viewing most\n recently. Return a maximum of 20 model of each, if they've looked at at least 20.",
- "parameters" : [ ],
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
+ },
+ "description" : "invalid show value"
+ } ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -9189,31 +10607,27 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/activity" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/activity/recents" : {
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/query_metadata" : {
"get" : {
- "summary" : "GET /api/activity/recents",
- "description" : "Get a list of recent items the current user has been viewing most recently under the `:recents` key.\n Allows for filtering by context: views or selections",
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/query_metadata",
+ "description" : "Return all metadata for an automagic dashboard for entity `entity` with id `id`.",
"parameters" : [ {
- "in" : "query",
- "name" : "context",
+ "in" : "path",
+ "name" : "entity",
"required" : true,
"schema" : {
- "type" : "array",
- "items" : {
- "type" : "string",
- "enum" : [ "selections", "views" ]
- }
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
}
}, {
- "in" : "query",
- "name" : "include_metadata",
- "required" : false,
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
"schema" : {
- "type" : "boolean",
- "default" : false
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
} ],
"responses" : {
@@ -9227,72 +10641,53 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/activity" ]
- },
- "post" : {
- "summary" : "POST /api/activity/recents",
- "description" : "Adds a model to the list of recently selected items.",
- "parameters" : [ ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "context" : {
- "type" : "string",
- "enum" : [ "selection" ]
- },
- "model" : {
- "type" : "string",
- "enum" : [ "card", "dataset", "metric", "dashboard", "table", "collection", "document" ]
- },
- "model_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- }
- },
- "required" : [ "model", "model_id", "context" ]
- }
- }
- }
- },
- "tags" : [ "/api/activity" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/alert/" : {
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}" : {
"get" : {
- "summary" : "GET /api/alert/",
- "description" : "Fetch alerts which the current user has created or will receive, or all alerts if the user is an admin.\n The optional `user_id` will return alerts created by the corresponding user, but is ignored for non-admin users.",
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}",
+ "description" : "Return an automagic dashboard for entity `entity` with id `id` using dashboard-template `dashboard-template`.",
"parameters" : [ {
- "in" : "query",
- "name" : "archived",
- "required" : false,
+ "in" : "path",
+ "name" : "entity",
+ "required" : true,
"schema" : {
- "type" : "boolean",
- "default" : false
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
+ }, {
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
}
+ }, {
+ "in" : "path",
+ "name" : "prefix",
+ "required" : true,
+ "schema" : { }
+ }, {
+ "in" : "path",
+ "name" : "dashboard-template",
+ "required" : true,
+ "schema" : { },
+ "description" : "invalid value for dashboard template name"
}, {
"in" : "query",
- "name" : "user_id",
+ "name" : "show",
"required" : false,
"schema" : {
- "type" : "integer",
- "minimum" : 1
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
},
- "description" : "value must be an integer greater than zero."
+ "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -9305,50 +10700,69 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/alert" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/alert/{id}" : {
+ "/api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
"get" : {
- "summary" : "GET /api/alert/{id}",
- "description" : "Fetch an alert by ID",
+ "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
+ "description" : "Return an automagic comparison dashboard for entity `entity` with id `id` using dashboard-template\n `dashboard-template`; compared with entity `comparison-entity` with id `comparison-entity-id-or-query.`.",
"parameters" : [ {
"in" : "path",
- "name" : "id",
+ "name" : "entity",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ }
+ }, {
+ "in" : "path",
+ "name" : "entity-id-or-query",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ }
+ }, {
+ "in" : "path",
+ "name" : "prefix",
+ "required" : true,
+ "schema" : { }
+ }, {
+ "in" : "path",
+ "name" : "dashboard-template",
+ "required" : true,
+ "schema" : { },
+ "description" : "invalid value for dashboard template name"
+ }, {
+ "in" : "path",
+ "name" : "comparison-entity",
"required" : true,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
+ "type" : "string",
+ "enum" : [ "adhoc", "segment", "table" ]
},
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/alert" ]
- }
- },
- "/api/alert/{id}/subscription" : {
- "delete" : {
- "summary" : "DELETE /api/alert/{id}/subscription",
- "description" : "For users to unsubscribe themselves from the given alert.",
- "parameters" : [ {
+ "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
+ }, {
"in" : "path",
- "name" : "id",
+ "name" : "comparison-entity-id-or-query",
"required" : true,
"schema" : {
- "type" : "integer",
- "minimum" : 1
+ "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ }
+ }, {
+ "in" : "query",
+ "name" : "show",
+ "required" : false,
+ "schema" : {
+ "anyOf" : [ {
+ "type" : "string",
+ "enum" : [ "all" ]
+ }, {
+ "type" : "integer",
+ "minimum" : 0
+ } ]
},
- "description" : "value must be an integer greater than zero."
+ "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -9361,13 +10775,13 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/alert" ]
+ "tags" : [ "/api/automagic-dashboards" ]
}
},
- "/api/analytics/anonymous-stats" : {
+ "/api/bookmark/" : {
"get" : {
- "summary" : "GET /api/analytics/anonymous-stats",
- "description" : "Anonymous usage stats. Endpoint for testing, and eventually exposing this to instance admins to let them see\n what is being phoned home.",
+ "summary" : "GET /api/bookmark/",
+ "description" : "Fetch all bookmarks for the user",
"parameters" : [ ],
"responses" : {
"2XX" : {
@@ -9380,13 +10794,13 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/analytics" ]
+ "tags" : [ "/api/bookmark" ]
}
},
- "/api/api-key/" : {
- "post" : {
- "summary" : "POST /api/api-key/",
- "description" : "Create a new API key (and an associated `User`) with the provided name and group ID.",
+ "/api/bookmark/ordering" : {
+ "put" : {
+ "summary" : "PUT /api/bookmark/ordering",
+ "description" : "Sets the order of bookmarks for user.",
"parameters" : [ ],
"responses" : {
"2XX" : {
@@ -9405,63 +10819,46 @@
"schema" : {
"type" : "object",
"properties" : {
- "group_id" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
- },
- "name" : {
- "type" : "string",
- "minLength" : 1
+ "orderings" : {
+ "type" : "array",
+ "items" : {
+ "type" : "object",
+ "properties" : {
+ "item_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "type" : {
+ "type" : "string",
+ "enum" : [ "card", "dashboard", "collection", "document" ]
+ }
+ },
+ "required" : [ "type", "item_id" ]
+ }
}
},
- "required" : [ "group_id", "name" ]
+ "required" : [ "orderings" ]
}
}
}
},
- "tags" : [ "/api/api-key" ]
- },
- "get" : {
- "summary" : "GET /api/api-key/",
- "description" : "Get a list of API keys with the default scope. Non-paginated.",
- "parameters" : [ ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/api-key" ]
- }
- },
- "/api/api-key/count" : {
- "get" : {
- "summary" : "GET /api/api-key/count",
- "description" : "Get the count of API keys in the DB with the default scope.",
- "parameters" : [ ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/api-key" ]
+ "tags" : [ "/api/bookmark" ]
}
},
- "/api/api-key/{id}" : {
- "put" : {
- "summary" : "PUT /api/api-key/{id}",
- "description" : "Update an API key by changing its group and/or its name",
+ "/api/bookmark/{model}/{id}" : {
+ "post" : {
+ "summary" : "POST /api/bookmark/{model}/{id}",
+ "description" : "Create a new bookmark for user.",
"parameters" : [ {
+ "in" : "path",
+ "name" : "model",
+ "required" : true,
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "card", "dashboard", "collection", "document" ]
+ }
+ }, {
"in" : "path",
"name" : "id",
"required" : true,
@@ -9482,114 +10879,48 @@
"description" : "Server error response"
}
},
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "group_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "name" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema.name"
- }
- }
- }
- }
- }
- },
- "tags" : [ "/api/api-key" ]
+ "tags" : [ "/api/bookmark" ]
},
"delete" : {
- "summary" : "DELETE /api/api-key/{id}",
- "description" : "Delete an ApiKey",
+ "summary" : "DELETE /api/bookmark/{model}/{id}",
+ "description" : "Delete a bookmark. Will delete a bookmark assigned to the user making the request by model and id.",
"parameters" : [ {
"in" : "path",
- "name" : "id",
+ "name" : "model",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
- }
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
+ "type" : "string",
+ "enum" : [ "card", "dashboard", "collection", "document" ]
}
- },
- "tags" : [ "/api/api-key" ]
- }
- },
- "/api/api-key/{id}/regenerate" : {
- "put" : {
- "summary" : "PUT /api/api-key/{id}/regenerate",
- "description" : "Regenerate an API Key",
- "parameters" : [ {
+ }, {
"in" : "path",
"name" : "id",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
- }
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
} ],
"responses" : {
"2XX" : {
- "description" : "map where {:id -> , :unmasked_key -> '.>, :masked_key -> , :prefix -> }",
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "id" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema.id"
- },
- "masked_key" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema..key.masked"
- },
- "prefix" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema.prefix"
- },
- "unmasked_key" : {
- "$ref" : "#/components/schemas/metabase.api-keys.schema..key.raw"
- }
- },
- "required" : [ "id", "unmasked_key", "masked_key", "prefix" ]
- }
- }
- }
+ "description" : "Successful response"
},
"4XX" : {
"description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/api-key" ]
- }
- },
- "/api/automagic-dashboards/database/{id}/candidates" : {
- "get" : {
- "summary" : "GET /api/automagic-dashboards/database/{id}/candidates",
- "description" : "Return a list of candidates for automagic dashboards ordered by interestingness.",
- "parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
- "schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
- } ],
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/bookmark" ]
+ }
+ },
+ "/api/bug-reporting/connection-pool-details" : {
+ "get" : {
+ "summary" : "GET /api/bug-reporting/connection-pool-details",
+ "description" : "Returns database connection pool info for the current Metabase instance.",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -9601,28 +10932,14 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/bug-reporting" ]
}
},
- "/api/automagic-dashboards/model_index/{model-index-id}/primary_key/{pk-id}" : {
+ "/api/bug-reporting/details" : {
"get" : {
- "summary" : "GET /api/automagic-dashboards/model_index/{model-index-id}/primary_key/{pk-id}",
- "description" : "Return an automagic dashboard for an entity detail specified by `entity`\n with id `id` and a primary key of `indexed-value`.",
- "parameters" : [ {
- "in" : "path",
- "name" : "model-index-id",
- "required" : true,
- "schema" : {
- "type" : "integer"
- }
- }, {
- "in" : "path",
- "name" : "pk-id",
- "required" : true,
- "schema" : {
- "type" : "integer"
- }
- } ],
+ "summary" : "GET /api/bug-reporting/details",
+ "description" : "Returns version and system information relevant to filing a bug report against Metabase.",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -9634,40 +10951,44 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/bug-reporting" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}" : {
+ "/api/cache/" : {
"get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}",
- "description" : "Return an automagic dashboard for entity `entity` with id `id`.",
+ "summary" : "GET /api/cache/",
+ "description" : "Return cache configuration.",
"parameters" : [ {
- "in" : "path",
- "name" : "entity",
+ "in" : "query",
+ "name" : "model",
"required" : true,
"schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
+ "default" : [ "root" ],
+ "type" : "array",
+ "items" : {
+ "type" : "string",
+ "enum" : [ "root", "database", "dashboard", "question" ]
+ }
+ },
+ "description" : "Type of model"
}, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
+ "in" : "query",
+ "name" : "collection",
+ "required" : false,
"schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "Collection id to filter results. Returns everything if not supplied."
}, {
"in" : "query",
- "name" : "show",
+ "name" : "id",
"required" : false,
"schema" : {
- "anyOf" : [ {
- "const" : "all"
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
- }
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "Model id to get configuration for."
} ],
"responses" : {
"2XX" : {
@@ -9680,50 +11001,53 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
- }
- },
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}" : {
- "get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}",
- "description" : "Return an automagic dashboard analyzing cell in automagic dashboard for entity `entity` defined by query\n `cell-query`.",
- "parameters" : [ {
- "in" : "path",
- "name" : "entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
- }, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ "tags" : [ "/api/cache" ]
+ },
+ "put" : {
+ "summary" : "PUT /api/cache/",
+ "description" : "Store cache configuration.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
- }, {
- "in" : "path",
- "name" : "cell-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "model" : {
+ "type" : "string",
+ "enum" : [ "root", "database", "dashboard", "question" ]
+ },
+ "model_id" : {
+ "description" : "value must be an integer greater or equal to than zero.",
+ "type" : "integer",
+ "minimum" : 0
+ },
+ "strategy" : {
+ "$ref" : "#/components/schemas/metabase.cache.api.cache-strategy"
+ }
+ },
+ "required" : [ "model", "model_id", "strategy" ]
+ }
+ }
}
- }, {
- "in" : "query",
- "name" : "show",
- "required" : false,
- "schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
- },
- "description" : "invalid show value"
- } ],
+ },
+ "tags" : [ "/api/cache" ]
+ },
+ "delete" : {
+ "summary" : "DELETE /api/cache/",
+ "description" : "Delete cache configurations.",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -9735,65 +11059,84 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "model" : {
+ "type" : "string",
+ "enum" : [ "root", "database", "dashboard", "question" ]
+ },
+ "model_id" : {
+ "type" : "array",
+ "items" : {
+ "description" : "value must be an integer greater or equal to than zero.",
+ "type" : "integer",
+ "minimum" : 0
+ }
+ }
+ },
+ "required" : [ "model", "model_id" ]
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/cache" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
- "get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
- "description" : "Return an automagic comparison dashboard for cell in automagic dashboard for entity `entity`\n with id `id` defined by query `cell-query`; compared with entity `comparison-entity` with id\n `comparison-entity-id-or-query.`.",
+ "/api/cache/invalidate" : {
+ "post" : {
+ "summary" : "POST /api/cache/invalidate",
+ "description" : "Invalidate cache entries.\n\n Use it like `/api/cache/invalidate?database=1&dashboard=15` (any number of database/dashboard/question can be\n supplied).\n\n `&include=overrides` controls whenever you want to invalidate cache for a specific cache configuration without\n touching all nested configurations, or you want your invalidation to trickle down to every card.",
"parameters" : [ {
- "in" : "path",
- "name" : "entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
- }, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
- }, {
- "in" : "path",
- "name" : "cell-query",
- "required" : true,
+ "in" : "query",
+ "name" : "include",
+ "required" : false,
"schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
- }
+ "const" : "overrides"
+ },
+ "description" : "All cache configuration overrides should invalidate cache too"
}, {
- "in" : "path",
- "name" : "comparison-entity",
- "required" : true,
+ "in" : "query",
+ "name" : "database",
+ "required" : false,
"schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "segment", "table" ]
+ "type" : "array",
+ "items" : {
+ "description" : "value must be an integer greater or equal to than zero.",
+ "type" : "integer",
+ "minimum" : 0
+ }
},
- "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
+ "description" : "A list of database ids"
}, {
- "in" : "path",
- "name" : "comparison-entity-id-or-query",
- "required" : true,
+ "in" : "query",
+ "name" : "dashboard",
+ "required" : false,
"schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
+ "type" : "array",
+ "items" : {
+ "description" : "value must be an integer greater or equal to than zero.",
+ "type" : "integer",
+ "minimum" : 0
+ }
+ },
+ "description" : "A list of dashboard ids"
}, {
"in" : "query",
- "name" : "show",
+ "name" : "question",
"required" : false,
"schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
+ "type" : "array",
+ "items" : {
+ "description" : "value must be an integer greater or equal to than zero.",
"type" : "integer",
"minimum" : 0
- } ]
+ }
},
- "description" : "invalid show value"
+ "description" : "A list of question ids"
} ],
"responses" : {
"2XX" : {
@@ -9806,60 +11149,31 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/cache" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}" : {
+ "/api/card/" : {
"get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}",
- "description" : "Return an automagic dashboard analyzing cell in question with id `id` defined by query `cell-query` using\n dashboard-template `dashboard-template`.",
+ "summary" : "GET /api/card/",
+ "description" : "Get all the Cards. Option filter param `f` can be used to change the set of Cards that are returned; default is\n `all`, but other options include `mine`, `bookmarked`, `database`, `table`, `using_model`, `using_segment`, and\n `archived`. See corresponding implementation functions above for the specific behavior of each filter\n option. :card_index:",
"parameters" : [ {
- "in" : "path",
- "name" : "entity",
+ "in" : "query",
+ "name" : "f",
"required" : true,
"schema" : {
+ "default" : "all",
"type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
- }, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
- }, {
- "in" : "path",
- "name" : "prefix",
- "required" : true,
- "schema" : { }
- }, {
- "in" : "path",
- "name" : "dashboard-template",
- "required" : true,
- "schema" : { },
- "description" : "invalid value for dashboard template name"
- }, {
- "in" : "path",
- "name" : "cell-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
+ "enum" : [ "archived", "table", "using_model", "bookmarked", "using_segment", "all", "mine", "database" ]
}
}, {
"in" : "query",
- "name" : "show",
+ "name" : "model_id",
"required" : false,
"schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
+ "type" : "integer",
+ "minimum" : 1
},
- "description" : "invalid show value"
+ "description" : "value must be an integer greater than zero."
} ],
"responses" : {
"2XX" : {
@@ -9872,76 +11186,177 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/card" ]
+ },
+ "post" : {
+ "summary" : "POST /api/card/",
+ "description" : "Create a new `Card`. Card `type` can be `question`, `metric`, or `model`.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "visualization_settings" : {
+ "description" : "Value must be a map.",
+ "type" : "object",
+ "properties" : { }
+ },
+ "dashboard_tab_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "entity_id" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "dataset_query" : {
+ "description" : "Value must be a map.",
+ "type" : "object",
+ "properties" : { }
+ },
+ "parameter_mappings" : {
+ "$ref" : "#/components/schemas/metabase.parameters.schema.parameter-mappings"
+ },
+ "name" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "collection_position" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "result_metadata" : {
+ "$ref" : "#/components/schemas/metabase.analyze.query-results.ResultsMetadata"
+ },
+ "collection_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "cache_ttl" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "type" : {
+ "$ref" : "#/components/schemas/metabase.queries.schema.card-type"
+ },
+ "display" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "parameters" : {
+ "$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
+ },
+ "description" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "dashboard_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }
+ },
+ "required" : [ "name", "dataset_query", "display", "visualization_settings" ]
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/card" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
- "get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/cell/{cell-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
- "description" : "Return an automagic comparison dashboard for cell in automagic dashboard for entity `entity`\n with id `id` defined by query `cell-query` using dashboard-template `dashboard-template`; compared with entity\n `comparison-entity` with id `comparison-entity-id-or-query.`.",
- "parameters" : [ {
- "in" : "path",
- "name" : "entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
- }, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ "/api/card/collections" : {
+ "post" : {
+ "summary" : "POST /api/card/collections",
+ "description" : "Bulk update endpoint for Card Collections. Move a set of `Cards` with `card_ids` into a `Collection` with\n `collection_id`, or remove them from any Collections by passing a `null` `collection_id`.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
- }, {
- "in" : "path",
- "name" : "prefix",
- "required" : true,
- "schema" : { }
- }, {
- "in" : "path",
- "name" : "dashboard-template",
- "required" : true,
- "schema" : { },
- "description" : "invalid value for dashboard template name"
- }, {
- "in" : "path",
- "name" : "cell-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.base-64-encoded-json"
+ },
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "card_ids" : {
+ "type" : "array",
+ "items" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }
+ },
+ "collection_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }
+ },
+ "required" : [ "card_ids" ]
+ }
+ }
}
- }, {
- "in" : "path",
- "name" : "comparison-entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "segment", "table" ]
+ },
+ "tags" : [ "/api/card" ]
+ }
+ },
+ "/api/card/embeddable" : {
+ "get" : {
+ "summary" : "GET /api/card/embeddable",
+ "description" : "Fetch a list of Cards where `enable_embedding` is `true`. The cards can be embedded using the embedding endpoints\n and a signed JWT.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
},
- "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
- }, {
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/card" ]
+ }
+ },
+ "/api/card/pivot/{card-id}/query" : {
+ "post" : {
+ "summary" : "POST /api/card/pivot/{card-id}/query",
+ "description" : "Run the query associated with a Card.",
+ "parameters" : [ {
"in" : "path",
- "name" : "comparison-entity-id-or-query",
+ "name" : "card-id",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
- }, {
- "in" : "query",
- "name" : "show",
- "required" : false,
- "schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
+ "type" : "integer",
+ "minimum" : 1
},
- "description" : "invalid show value"
+ "description" : "value must be an integer greater than zero."
} ],
"responses" : {
"2XX" : {
@@ -9954,58 +11369,70 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "ignore_cache" : {
+ "type" : "boolean"
+ }
+ }
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/card" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
+ "/api/card/public" : {
"get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
- "description" : "Return an automagic comparison dashboard for entity `entity` with id `id` compared with entity `comparison-entity`\n with id `comparison-entity-id-or-query.`",
+ "summary" : "GET /api/card/public",
+ "description" : "Fetch a list of Cards with public UUIDs. These cards are publicly-accessible *if* public sharing is enabled.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/card" ]
+ }
+ },
+ "/api/card/{card-id}/params/{param-key}/search/{query}" : {
+ "get" : {
+ "summary" : "GET /api/card/{card-id}/params/{param-key}/search/{query}",
+ "description" : "Fetch possible values of the parameter whose ID is `:param-key` that contain `:query`.\n\n ;; fetch values for Card 1 parameter 'abc' that contain 'Orange';\n GET /api/card/1/params/abc/search/Orange\n\n Currently limited to first 1000 results.",
"parameters" : [ {
"in" : "path",
- "name" : "entity-id-or-query",
+ "name" : "card-id",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
}, {
"in" : "path",
- "name" : "entity",
+ "name" : "param-key",
"required" : true,
"schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
+ "$ref" : "#/components/schemas/metabase.lib.schema.parameter.id"
}
}, {
"in" : "path",
- "name" : "comparison-entity",
+ "name" : "query",
"required" : true,
"schema" : {
"type" : "string",
- "enum" : [ "adhoc", "segment", "table" ]
- },
- "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
- }, {
- "in" : "path",
- "name" : "comparison-entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ "minLength" : 1
}
- }, {
- "in" : "query",
- "name" : "show",
- "required" : false,
- "schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
- },
- "description" : "invalid show value"
} ],
"responses" : {
"2XX" : {
@@ -10018,27 +11445,28 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/query_metadata" : {
+ "/api/card/{card-id}/params/{param-key}/values" : {
"get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/query_metadata",
- "description" : "Return all metadata for an automagic dashboard for entity `entity` with id `id`.",
+ "summary" : "GET /api/card/{card-id}/params/{param-key}/values",
+ "description" : "Fetch possible values of the parameter whose ID is `:param-key`.\n\n ;; fetch values for Card 1 parameter 'abc' that are possible\n GET /api/card/1/params/abc/values",
"parameters" : [ {
"in" : "path",
- "name" : "entity",
+ "name" : "card-id",
"required" : true,
"schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
}, {
"in" : "path",
- "name" : "entity-id-or-query",
+ "name" : "param-key",
"required" : true,
"schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
+ "$ref" : "#/components/schemas/metabase.lib.schema.parameter.id"
}
} ],
"responses" : {
@@ -10052,53 +11480,22 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}" : {
- "get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}",
- "description" : "Return an automagic dashboard for entity `entity` with id `id` using dashboard-template `dashboard-template`.",
+ "/api/card/{card-id}/public_link" : {
+ "post" : {
+ "summary" : "POST /api/card/{card-id}/public_link",
+ "description" : "Generate publicly-accessible links for this Card. Returns UUID to be used in public links. (If this Card has\n already been shared, it will return the existing public link rather than creating a new one.) Public sharing must\n be enabled.",
"parameters" : [ {
"in" : "path",
- "name" : "entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
- }, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
- }, {
- "in" : "path",
- "name" : "prefix",
- "required" : true,
- "schema" : { }
- }, {
- "in" : "path",
- "name" : "dashboard-template",
+ "name" : "card-id",
"required" : true,
- "schema" : { },
- "description" : "invalid value for dashboard template name"
- }, {
- "in" : "query",
- "name" : "show",
- "required" : false,
"schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
+ "type" : "integer",
+ "minimum" : 1
},
- "description" : "invalid show value"
+ "description" : "value must be an integer greater than zero."
} ],
"responses" : {
"2XX" : {
@@ -10111,69 +11508,20 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
- }
- },
- "/api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}" : {
- "get" : {
- "summary" : "GET /api/automagic-dashboards/{entity}/{entity-id-or-query}/rule/{prefix}/{dashboard-template}/compare/{comparison-entity}/{comparison-entity-id-or-query}",
- "description" : "Return an automagic comparison dashboard for entity `entity` with id `id` using dashboard-template\n `dashboard-template`; compared with entity `comparison-entity` with id `comparison-entity-id-or-query.`.",
- "parameters" : [ {
- "in" : "path",
- "name" : "entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "field", "model", "question", "segment", "table", "transform" ]
- }
- }, {
- "in" : "path",
- "name" : "entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
- }, {
- "in" : "path",
- "name" : "prefix",
- "required" : true,
- "schema" : { }
- }, {
- "in" : "path",
- "name" : "dashboard-template",
- "required" : true,
- "schema" : { },
- "description" : "invalid value for dashboard template name"
- }, {
- "in" : "path",
- "name" : "comparison-entity",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "adhoc", "segment", "table" ]
- },
- "description" : "Invalid comparison entity type. Can only be one of \"table\", \"segment\", or \"adhoc\""
- }, {
- "in" : "path",
- "name" : "comparison-entity-id-or-query",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.xrays.api.automagic-dashboards.entity-id-or-query"
- }
- }, {
- "in" : "query",
- "name" : "show",
- "required" : false,
- "schema" : {
- "anyOf" : [ {
- "type" : "string",
- "enum" : [ "all" ]
- }, {
- "type" : "integer",
- "minimum" : 0
- } ]
+ "tags" : [ "/api/card" ]
+ },
+ "delete" : {
+ "summary" : "DELETE /api/card/{card-id}/public_link",
+ "description" : "Delete the publicly-accessible link to this Card.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "card-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
},
- "description" : "invalid show value"
+ "description" : "value must be an integer greater than zero."
} ],
"responses" : {
"2XX" : {
@@ -10186,14 +11534,29 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/automagic-dashboards" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/bookmark/" : {
- "get" : {
- "summary" : "GET /api/bookmark/",
- "description" : "Fetch all bookmarks for the user",
- "parameters" : [ ],
+ "/api/card/{card-id}/query" : {
+ "post" : {
+ "summary" : "POST /api/card/{card-id}/query",
+ "description" : "Run the query associated with a Card.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "card-id",
+ "required" : true,
+ "schema" : {
+ "anyOf" : [ {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }, {
+ "description" : "String must be a valid 21-character NanoID string.",
+ "type" : "string",
+ "pattern" : "^[A-Za-z0-9_\\-]{21}$"
+ } ]
+ }
+ } ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -10205,14 +11568,54 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/bookmark" ]
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "collection_preview" : {
+ "type" : "boolean"
+ },
+ "dashboard_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "ignore_cache" : {
+ "default" : false,
+ "type" : "boolean"
+ }
+ },
+ "required" : [ "ignore_cache" ]
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/card" ]
}
},
- "/api/bookmark/ordering" : {
- "put" : {
- "summary" : "PUT /api/bookmark/ordering",
- "description" : "Sets the order of bookmarks for user.",
- "parameters" : [ ],
+ "/api/card/{card-id}/query/{export-format}" : {
+ "post" : {
+ "summary" : "POST /api/card/{card-id}/query/{export-format}",
+ "description" : "Run the query associated with a Card, and return its results as a file in the specified format.\n\n `parameters`, `pivot-results?` and `format-rows?` should be passed as application/x-www-form-urlencoded form content\n or json in the body. This is because this endpoint is normally used to power 'Download Results' buttons that use\n HTML `form` actions).",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "card-id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ }, {
+ "in" : "path",
+ "name" : "export-format",
+ "required" : true,
+ "schema" : {
+ "$ref" : "#/components/schemas/metabase.query-processor.schema.export-format"
+ }
+ } ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -10230,46 +11633,75 @@
"schema" : {
"type" : "object",
"properties" : {
- "orderings" : {
+ "format_rows" : {
+ "default" : false,
+ "type" : "boolean"
+ },
+ "parameters" : {
"type" : "array",
"items" : {
"type" : "object",
- "properties" : {
- "item_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "type" : {
- "type" : "string",
- "enum" : [ "card", "dashboard", "collection", "document" ]
- }
- },
- "required" : [ "type", "item_id" ]
+ "additionalProperties" : { }
}
+ },
+ "pivot_results" : {
+ "default" : false,
+ "type" : "boolean"
}
},
- "required" : [ "orderings" ]
+ "required" : [ "format_rows", "pivot_results" ]
}
}
}
},
- "tags" : [ "/api/bookmark" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/bookmark/{model}/{id}" : {
- "post" : {
- "summary" : "POST /api/bookmark/{model}/{id}",
- "description" : "Create a new bookmark for user.",
+ "/api/card/{id}" : {
+ "get" : {
+ "summary" : "GET /api/card/{id}",
+ "description" : "Get `Card` with ID.\n\n As of v57, returns the MBQL query (`dataset_query`) as MBQL 5; to return the query as MBQL 4 (aka legacy MBQL)\n instead, you can specify `?legacy-mbql=true`.",
"parameters" : [ {
"in" : "path",
- "name" : "model",
+ "name" : "id",
"required" : true,
"schema" : {
- "type" : "string",
- "enum" : [ "card", "dashboard", "collection", "document" ]
+ "anyOf" : [ {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }, {
+ "description" : "String must be a valid 21-character NanoID string.",
+ "type" : "string",
+ "pattern" : "^[A-Za-z0-9_\\-]{21}$"
+ } ]
}
}, {
+ "in" : "query",
+ "name" : "legacy-mbql",
+ "required" : false,
+ "schema" : {
+ "type" : "boolean",
+ "default" : false
+ }
+ } ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
+ "tags" : [ "/api/card" ]
+ },
+ "put" : {
+ "summary" : "PUT /api/card/{id}",
+ "description" : "Update a `Card`.",
+ "parameters" : [ {
"in" : "path",
"name" : "id",
"required" : true,
@@ -10278,6 +11710,13 @@
"minimum" : 1
},
"description" : "value must be an integer greater than zero."
+ }, {
+ "in" : "query",
+ "name" : "delete_old_dashcards",
+ "required" : false,
+ "schema" : {
+ "type" : "boolean"
+ }
} ],
"responses" : {
"2XX" : {
@@ -10290,20 +11729,98 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/bookmark" ]
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "enable_embedding" : {
+ "type" : "boolean"
+ },
+ "visualization_settings" : {
+ "description" : "Value must be a map.",
+ "type" : "object",
+ "properties" : { }
+ },
+ "dashboard_tab_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "collection_preview" : {
+ "type" : "boolean"
+ },
+ "dataset_query" : {
+ "description" : "Value must be a map.",
+ "type" : "object",
+ "properties" : { }
+ },
+ "parameter_mappings" : {
+ "$ref" : "#/components/schemas/metabase.parameters.schema.parameter-mappings"
+ },
+ "name" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "archived" : {
+ "type" : "boolean"
+ },
+ "collection_position" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "embedding_params" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "string",
+ "enum" : [ "disabled", "enabled", "locked" ]
+ },
+ "description" : "value must be a valid embedding params map."
+ },
+ "result_metadata" : {
+ "$ref" : "#/components/schemas/metabase.analyze.query-results.ResultsMetadata"
+ },
+ "collection_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "cache_ttl" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "type" : {
+ "$ref" : "#/components/schemas/metabase.queries.schema.card-type"
+ },
+ "display" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "parameters" : {
+ "$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
+ },
+ "description" : {
+ "type" : "string"
+ },
+ "dashboard_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }
+ }
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/card" ]
},
"delete" : {
- "summary" : "DELETE /api/bookmark/{model}/{id}",
- "description" : "Delete a bookmark. Will delete a bookmark assigned to the user making the request by model and id.",
+ "summary" : "DELETE /api/card/{id}",
+ "description" : "Hard delete a Card. To soft delete, use `PUT /api/card/:id`",
"parameters" : [ {
- "in" : "path",
- "name" : "model",
- "required" : true,
- "schema" : {
- "type" : "string",
- "enum" : [ "card", "dashboard", "collection", "document" ]
- }
- }, {
"in" : "path",
"name" : "id",
"required" : true,
@@ -10324,14 +11841,23 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/bookmark" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/bug-reporting/connection-pool-details" : {
- "get" : {
- "summary" : "GET /api/bug-reporting/connection-pool-details",
- "description" : "Returns database connection pool info for the current Metabase instance.",
- "parameters" : [ ],
+ "/api/card/{id}/copy" : {
+ "post" : {
+ "summary" : "POST /api/card/{id}/copy",
+ "description" : "Copy a `Card`, with the new name 'Copy of _name_'",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ } ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -10343,14 +11869,23 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/bug-reporting" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/bug-reporting/details" : {
+ "/api/card/{id}/dashboards" : {
"get" : {
- "summary" : "GET /api/bug-reporting/details",
- "description" : "Returns version and system information relevant to filing a bug report against Metabase.",
- "parameters" : [ ],
+ "summary" : "GET /api/card/{id}/dashboards",
+ "description" : "Get a list of `{:name ... :id ...}` pairs for all the dashboards this card appears in.",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
+ "schema" : {
+ "type" : "integer",
+ "minimum" : 1
+ },
+ "description" : "value must be an integer greater than zero."
+ } ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -10362,103 +11897,35 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/bug-reporting" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/cache/" : {
+ "/api/card/{id}/params/{param-key}/remapping" : {
"get" : {
- "summary" : "GET /api/cache/",
- "description" : "Return cache configuration.",
+ "summary" : "GET /api/card/{id}/params/{param-key}/remapping",
+ "description" : "Fetch the remapped value for a given value of the parameter with ID `:param-key`.\n\n ;; fetch the remapped value for Card 1 parameter 'abc' for value 100\n GET /api/card/1/params/abc/remapping?value=100",
"parameters" : [ {
- "in" : "query",
- "name" : "model",
+ "in" : "path",
+ "name" : "id",
"required" : true,
"schema" : {
- "default" : [ "root" ],
- "type" : "array",
- "items" : {
- "type" : "string",
- "enum" : [ "root", "database", "dashboard", "question" ]
- }
- },
- "description" : "Type of model"
+ "$ref" : "#/components/schemas/metabase.lib.schema.id.card"
+ }
}, {
- "in" : "query",
- "name" : "collection",
- "required" : false,
+ "in" : "path",
+ "name" : "param-key",
+ "required" : true,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "Collection id to filter results. Returns everything if not supplied."
+ "$ref" : "#/components/schemas/metabase.lib.schema.parameter.id"
+ }
}, {
"in" : "query",
- "name" : "id",
- "required" : false,
+ "name" : "value",
+ "required" : true,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "Model id to get configuration for."
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/cache" ]
- },
- "put" : {
- "summary" : "PUT /api/cache/",
- "description" : "Store cache configuration.",
- "parameters" : [ ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "model" : {
- "type" : "string",
- "enum" : [ "root", "database", "dashboard", "question" ]
- },
- "model_id" : {
- "description" : "value must be an integer greater or equal to than zero.",
- "type" : "integer",
- "minimum" : 0
- },
- "strategy" : {
- "$ref" : "#/components/schemas/metabase.cache.api.cache-strategy"
- }
- },
- "required" : [ "model", "model_id", "strategy" ]
- }
- }
+ "type" : "string"
}
- },
- "tags" : [ "/api/cache" ]
- },
- "delete" : {
- "summary" : "DELETE /api/cache/",
- "description" : "Delete cache configurations.",
- "parameters" : [ ],
+ } ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -10470,84 +11937,28 @@
"description" : "Server error response"
}
},
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "model" : {
- "type" : "string",
- "enum" : [ "root", "database", "dashboard", "question" ]
- },
- "model_id" : {
- "type" : "array",
- "items" : {
- "description" : "value must be an integer greater or equal to than zero.",
- "type" : "integer",
- "minimum" : 0
- }
- }
- },
- "required" : [ "model", "model_id" ]
- }
- }
- }
- },
- "tags" : [ "/api/cache" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/cache/invalidate" : {
- "post" : {
- "summary" : "POST /api/cache/invalidate",
- "description" : "Invalidate cache entries.\n\n Use it like `/api/cache/invalidate?database=1&dashboard=15` (any number of database/dashboard/question can be\n supplied).\n\n `&include=overrides` controls whenever you want to invalidate cache for a specific cache configuration without\n touching all nested configurations, or you want your invalidation to trickle down to every card.",
+ "/api/card/{id}/query_metadata" : {
+ "get" : {
+ "summary" : "GET /api/card/{id}/query_metadata",
+ "description" : "Get all of the required query metadata for a card.",
"parameters" : [ {
- "in" : "query",
- "name" : "include",
- "required" : false,
- "schema" : {
- "const" : "overrides"
- },
- "description" : "All cache configuration overrides should invalidate cache too"
- }, {
- "in" : "query",
- "name" : "database",
- "required" : false,
- "schema" : {
- "type" : "array",
- "items" : {
- "description" : "value must be an integer greater or equal to than zero.",
- "type" : "integer",
- "minimum" : 0
- }
- },
- "description" : "A list of database ids"
- }, {
- "in" : "query",
- "name" : "dashboard",
- "required" : false,
- "schema" : {
- "type" : "array",
- "items" : {
- "description" : "value must be an integer greater or equal to than zero.",
- "type" : "integer",
- "minimum" : 0
- }
- },
- "description" : "A list of dashboard ids"
- }, {
- "in" : "query",
- "name" : "question",
- "required" : false,
+ "in" : "path",
+ "name" : "id",
+ "required" : true,
"schema" : {
- "type" : "array",
- "items" : {
- "description" : "value must be an integer greater or equal to than zero.",
+ "anyOf" : [ {
+ "description" : "value must be an integer greater than zero.",
"type" : "integer",
- "minimum" : 0
- }
- },
- "description" : "A list of question ids"
+ "minimum" : 1
+ }, {
+ "description" : "String must be a valid 21-character NanoID string.",
+ "type" : "string",
+ "pattern" : "^[A-Za-z0-9_\\-]{21}$"
+ } ]
+ }
} ],
"responses" : {
"2XX" : {
@@ -10560,31 +11971,42 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/cache" ]
+ "tags" : [ "/api/card" ]
}
},
- "/api/card/" : {
+ "/api/card/{id}/series" : {
"get" : {
- "summary" : "GET /api/card/",
- "description" : "Get all the Cards. Option filter param `f` can be used to change the set of Cards that are returned; default is\n `all`, but other options include `mine`, `bookmarked`, `database`, `table`, `using_model`, `using_segment`, and\n `archived`. See corresponding implementation functions above for the specific behavior of each filter\n option. :card_index:",
- "parameters" : [ {
- "in" : "query",
- "name" : "f",
+ "summary" : "GET /api/card/{id}/series",
+ "description" : "Fetches a list of compatible series with the card with id `card_id`.\n\n - `last_cursor` with value is the id of the last card from the previous page to fetch the next page.\n - `query` to search card by name.\n - `exclude_ids` to filter out a list of card ids",
+ "parameters" : [ {
+ "in" : "path",
+ "name" : "id",
"required" : true,
"schema" : {
- "default" : "all",
- "type" : "string",
- "enum" : [ "archived", "table", "using_model", "bookmarked", "using_segment", "all", "mine", "database" ]
+ "type" : "integer"
}
}, {
"in" : "query",
- "name" : "model_id",
+ "name" : "last_cursor",
"required" : false,
"schema" : {
"type" : "integer",
"minimum" : 1
},
"description" : "value must be an integer greater than zero."
+ }, {
+ "in" : "query",
+ "name" : "query",
+ "required" : false,
+ "schema" : {
+ "type" : "string",
+ "minLength" : 1
+ }
+ }, {
+ "in" : "query",
+ "name" : "exclude_ids",
+ "required" : false,
+ "schema" : { }
} ],
"responses" : {
"2XX" : {
@@ -10598,10 +12020,12 @@
}
},
"tags" : [ "/api/card" ]
- },
+ }
+ },
+ "/api/cards/dashboards" : {
"post" : {
- "summary" : "POST /api/card/",
- "description" : "Create a new `Card`. Card `type` can be `question`, `metric`, or `model`.",
+ "summary" : "POST /api/cards/dashboards",
+ "description" : "Get the dashboards that multiple cards appear in. The response is a sequence of maps, each of which has a `card_id`\n and `dashboards`. `dashboard` may include an `:error` key, either `:unreadable-dashboard` or\n `:unwritable-dashboard`. In the case of an `unreadable-dashboard` the dashboard details (name, ID) will NOT be\n present.",
"parameters" : [ ],
"responses" : {
"2XX" : {
@@ -10620,82 +12044,27 @@
"schema" : {
"type" : "object",
"properties" : {
- "visualization_settings" : {
- "description" : "Value must be a map.",
- "type" : "object",
- "properties" : { }
- },
- "dashboard_tab_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "entity_id" : {
- "type" : "string",
- "minLength" : 1
- },
- "dataset_query" : {
- "description" : "Value must be a map.",
- "type" : "object",
- "properties" : { }
- },
- "parameter_mappings" : {
- "$ref" : "#/components/schemas/metabase.parameters.schema.parameter-mappings"
- },
- "name" : {
- "type" : "string",
- "minLength" : 1
- },
- "collection_position" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "result_metadata" : {
- "$ref" : "#/components/schemas/metabase.analyze.query-results.ResultsMetadata"
- },
- "collection_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "cache_ttl" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "type" : {
- "$ref" : "#/components/schemas/metabase.queries.schema.card-type"
- },
- "display" : {
- "type" : "string",
- "minLength" : 1
- },
- "parameters" : {
- "$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
- },
- "description" : {
- "type" : "string",
- "minLength" : 1
- },
- "dashboard_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
+ "card_ids" : {
+ "type" : "array",
+ "items" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
+ }
}
},
- "required" : [ "name", "dataset_query", "display", "visualization_settings" ]
+ "required" : [ "card_ids" ]
}
}
}
},
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/cards" ]
}
},
- "/api/card/collections" : {
+ "/api/cards/move" : {
"post" : {
- "summary" : "POST /api/card/collections",
- "description" : "Bulk update endpoint for Card Collections. Move a set of `Cards` with `card_ids` into a `Collection` with\n `collection_id`, or remove them from any Collections by passing a `null` `collection_id`.",
+ "summary" : "POST /api/cards/move",
+ "description" : "Moves a number of Cards to a single collection or dashboard.\n\n For now, just either succeed or fail as a batch - we can think more about error handling later down the road.",
"parameters" : [ ],
"responses" : {
"2XX" : {
@@ -10726,6 +12095,11 @@
"description" : "value must be an integer greater than zero.",
"type" : "integer",
"minimum" : 1
+ },
+ "dashboard_id" : {
+ "description" : "value must be an integer greater than zero.",
+ "type" : "integer",
+ "minimum" : 1
}
},
"required" : [ "card_ids" ]
@@ -10733,13 +12107,13 @@
}
}
},
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/cards" ]
}
},
- "/api/card/embeddable" : {
+ "/api/channel/" : {
"get" : {
- "summary" : "GET /api/card/embeddable",
- "description" : "Fetch a list of Cards where `enable_embedding` is `true`. The cards can be embedded using the embedding endpoints\n and a signed JWT.",
+ "summary" : "GET /api/channel/",
+ "description" : "Get all channels",
"parameters" : [ ],
"responses" : {
"2XX" : {
@@ -10752,55 +12126,26 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
- }
- },
- "/api/card/pivot/{card-id}/query" : {
- "post" : {
- "summary" : "POST /api/card/pivot/{card-id}/query",
- "description" : "Run the query associated with a Card.",
- "parameters" : [ {
- "in" : "path",
- "name" : "card-id",
- "required" : true,
- "schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"type" : "object",
"properties" : {
- "ignore_cache" : {
- "type" : "boolean"
+ "include_inactive" : {
+ "type" : "boolean",
+ "default" : false
}
}
}
}
}
},
- "tags" : [ "/api/card" ]
- }
- },
- "/api/card/public" : {
- "get" : {
- "summary" : "GET /api/card/public",
- "description" : "Fetch a list of Cards with public UUIDs. These cards are publicly-accessible *if* public sharing is enabled.",
+ "tags" : [ "/api/channel" ]
+ },
+ "post" : {
+ "summary" : "POST /api/channel/",
+ "description" : "Create a channel",
"parameters" : [ ],
"responses" : {
"2XX" : {
@@ -10813,73 +12158,45 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
- }
- },
- "/api/card/{card-id}/params/{param-key}/search/{query}" : {
- "get" : {
- "summary" : "GET /api/card/{card-id}/params/{param-key}/search/{query}",
- "description" : "Fetch possible values of the parameter whose ID is `:param-key` that contain `:query`.\n\n ;; fetch values for Card 1 parameter 'abc' that contain 'Orange';\n GET /api/card/1/params/abc/search/Orange\n\n Currently limited to first 1000 results.",
- "parameters" : [ {
- "in" : "path",
- "name" : "card-id",
- "required" : true,
- "schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
- }, {
- "in" : "path",
- "name" : "param-key",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.parameter.id"
- }
- }, {
- "in" : "path",
- "name" : "query",
- "required" : true,
- "schema" : {
- "type" : "string",
- "minLength" : 1
- }
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/card" ]
- }
- },
- "/api/card/{card-id}/params/{param-key}/values" : {
- "get" : {
- "summary" : "GET /api/card/{card-id}/params/{param-key}/values",
- "description" : "Fetch possible values of the parameter whose ID is `:param-key`.\n\n ;; fetch values for Card 1 parameter 'abc' that are possible\n GET /api/card/1/params/abc/values",
- "parameters" : [ {
- "in" : "path",
- "name" : "card-id",
- "required" : true,
- "schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
- }, {
- "in" : "path",
- "name" : "param-key",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.parameter.id"
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "active" : {
+ "type" : "boolean",
+ "default" : true
+ },
+ "description" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "details" : {
+ "type" : "object",
+ "properties" : { }
+ },
+ "name" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "type" : {
+ "description" : "Must be a namespaced channel. E.g: channel/http"
+ }
+ },
+ "required" : [ "name", "type", "details" ]
+ }
+ }
}
- } ],
+ },
+ "tags" : [ "/api/channel" ]
+ }
+ },
+ "/api/channel/test" : {
+ "post" : {
+ "summary" : "POST /api/channel/test",
+ "description" : "Test a channel connection",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -10891,16 +12208,35 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "details" : {
+ "type" : "object",
+ "properties" : { }
+ },
+ "type" : {
+ "description" : "Must be a namespaced channel. E.g: channel/http"
+ }
+ },
+ "required" : [ "type", "details" ]
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/channel" ]
}
},
- "/api/card/{card-id}/public_link" : {
- "post" : {
- "summary" : "POST /api/card/{card-id}/public_link",
- "description" : "Generate publicly-accessible links for this Card. Returns UUID to be used in public links. (If this Card has\n already been shared, it will return the existing public link rather than creating a new one.) Public sharing must\n be enabled.",
+ "/api/channel/{id}" : {
+ "get" : {
+ "summary" : "GET /api/channel/{id}",
+ "description" : "Get a channel",
"parameters" : [ {
"in" : "path",
- "name" : "card-id",
+ "name" : "id",
"required" : true,
"schema" : {
"type" : "integer",
@@ -10919,14 +12255,14 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/channel" ]
},
- "delete" : {
- "summary" : "DELETE /api/card/{card-id}/public_link",
- "description" : "Delete the publicly-accessible link to this Card.",
+ "put" : {
+ "summary" : "PUT /api/channel/{id}",
+ "description" : "Update a channel",
"parameters" : [ {
"in" : "path",
- "name" : "card-id",
+ "name" : "id",
"required" : true,
"schema" : {
"type" : "integer",
@@ -10945,88 +12281,60 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
- }
- },
- "/api/card/{card-id}/query" : {
- "post" : {
- "summary" : "POST /api/card/{card-id}/query",
- "description" : "Run the query associated with a Card.",
- "parameters" : [ {
- "in" : "path",
- "name" : "card-id",
- "required" : true,
- "schema" : {
- "anyOf" : [ {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- }, {
- "description" : "String must be a valid 21-character NanoID string.",
- "type" : "string",
- "pattern" : "^[A-Za-z0-9_\\-]{21}$"
- } ]
- }
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"type" : "object",
"properties" : {
- "collection_preview" : {
+ "active" : {
"type" : "boolean"
},
- "dashboard_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
+ "description" : {
+ "type" : "string",
+ "minLength" : 1
},
- "ignore_cache" : {
- "default" : false,
- "type" : "boolean"
+ "details" : {
+ "type" : "object",
+ "properties" : { }
+ },
+ "name" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "type" : {
+ "description" : "Must be a namespaced channel. E.g: channel/http"
}
- },
- "required" : [ "ignore_cache" ]
+ }
}
}
}
},
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/channel" ]
}
},
- "/api/card/{card-id}/query/{export-format}" : {
+ "/api/cloud-migration/" : {
"post" : {
- "summary" : "POST /api/card/{card-id}/query/{export-format}",
- "description" : "Run the query associated with a Card, and return its results as a file in the specified format.\n\n `parameters`, `pivot-results?` and `format-rows?` should be passed as application/x-www-form-urlencoded form content\n or json in the body. This is because this endpoint is normally used to power 'Download Results' buttons that use\n HTML `form` actions).",
- "parameters" : [ {
- "in" : "path",
- "name" : "card-id",
- "required" : true,
- "schema" : {
- "type" : "integer",
- "minimum" : 1
+ "summary" : "POST /api/cloud-migration/",
+ "description" : "Initiate a new cloud migration.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
},
- "description" : "value must be an integer greater than zero."
- }, {
- "in" : "path",
- "name" : "export-format",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.query-processor.schema.export-format"
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
- } ],
+ },
+ "tags" : [ "/api/cloud-migration" ]
+ },
+ "get" : {
+ "summary" : "GET /api/cloud-migration/",
+ "description" : "Get the latest cloud migration, if any.",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
"description" : "Successful response"
@@ -11038,95 +12346,63 @@
"description" : "Server error response"
}
},
- "requestBody" : {
- "content" : {
- "application/json" : {
- "schema" : {
- "type" : "object",
- "properties" : {
- "format_rows" : {
- "default" : false,
- "type" : "boolean"
- },
- "parameters" : {
- "type" : "array",
- "items" : {
- "type" : "object",
- "additionalProperties" : { }
- }
- },
- "pivot_results" : {
- "default" : false,
- "type" : "boolean"
- }
- },
- "required" : [ "format_rows", "pivot_results" ]
- }
- }
+ "tags" : [ "/api/cloud-migration" ]
+ }
+ },
+ "/api/cloud-migration/cancel" : {
+ "put" : {
+ "summary" : "PUT /api/cloud-migration/cancel",
+ "description" : "Cancel any ongoing cloud migrations, if any.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/cloud-migration" ]
}
},
- "/api/card/{id}" : {
+ "/api/collection/" : {
"get" : {
- "summary" : "GET /api/card/{id}",
- "description" : "Get `Card` with ID.\n\n As of v57, returns the MBQL query (`dataset_query`) as MBQL 5; to return the query as MBQL 4 (aka legacy MBQL)\n instead, you can specify `?legacy-mbql=true`.",
+ "summary" : "GET /api/collection/",
+ "description" : "Fetch a list of all Collections that the current user has read permissions for (`:can_write` is returned as an\n additional property of each Collection so you can tell which of these you have write permissions for.)\n\n By default, this returns non-archived Collections, but instead you can show archived ones by passing\n `?archived=true`.\n\n By default, admin users will see all collections. To hide other user's collections pass in\n `?exclude-other-user-collections=true`.\n\n If personal-only is `true`, then return only personal collections where `personal_owner_id` is not `nil`.",
"parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
+ "in" : "query",
+ "name" : "archived",
+ "required" : false,
"schema" : {
- "anyOf" : [ {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- }, {
- "description" : "String must be a valid 21-character NanoID string.",
- "type" : "string",
- "pattern" : "^[A-Za-z0-9_\\-]{21}$"
- } ]
+ "type" : "boolean",
+ "default" : false
}
}, {
"in" : "query",
- "name" : "legacy-mbql",
+ "name" : "exclude-other-user-collections",
"required" : false,
"schema" : {
"type" : "boolean",
"default" : false
}
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/card" ]
- },
- "put" : {
- "summary" : "PUT /api/card/{id}",
- "description" : "Update a `Card`.",
- "parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
+ }, {
+ "in" : "query",
+ "name" : "namespace",
+ "required" : false,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
+ "type" : "string",
+ "minLength" : 1
+ }
}, {
"in" : "query",
- "name" : "delete_old_dashcards",
+ "name" : "personal-only",
"required" : false,
"schema" : {
- "type" : "boolean"
+ "type" : "boolean",
+ "default" : false
}
} ],
"responses" : {
@@ -11140,134 +12416,75 @@
"description" : "Server error response"
}
},
+ "tags" : [ "/api/collection" ]
+ },
+ "post" : {
+ "summary" : "POST /api/collection/",
+ "description" : "Create a new Collection.",
+ "parameters" : [ ],
+ "responses" : {
+ "2XX" : {
+ "description" : "Successful response"
+ },
+ "4XX" : {
+ "description" : "Client error response"
+ },
+ "5XX" : {
+ "description" : "Server error response"
+ }
+ },
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"type" : "object",
"properties" : {
- "enable_embedding" : {
- "type" : "boolean"
- },
- "visualization_settings" : {
- "description" : "Value must be a map.",
- "type" : "object",
- "properties" : { }
- },
- "dashboard_tab_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "collection_preview" : {
- "type" : "boolean"
- },
- "dataset_query" : {
- "description" : "Value must be a map.",
- "type" : "object",
- "properties" : { }
+ "authority_level" : {
+ "type" : "string",
+ "enum" : [ "official" ]
},
- "parameter_mappings" : {
- "$ref" : "#/components/schemas/metabase.parameters.schema.parameter-mappings"
+ "description" : {
+ "type" : "string",
+ "minLength" : 1
},
"name" : {
"type" : "string",
"minLength" : 1
},
- "archived" : {
- "type" : "boolean"
- },
- "collection_position" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- },
- "embedding_params" : {
- "type" : "object",
- "additionalProperties" : {
- "type" : "string",
- "enum" : [ "disabled", "enabled", "locked" ]
- },
- "description" : "value must be a valid embedding params map."
- },
- "result_metadata" : {
- "$ref" : "#/components/schemas/metabase.analyze.query-results.ResultsMetadata"
- },
- "collection_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
+ "namespace" : {
+ "type" : "string",
+ "minLength" : 1
},
- "cache_ttl" : {
+ "parent_id" : {
"description" : "value must be an integer greater than zero.",
"type" : "integer",
"minimum" : 1
},
"type" : {
- "$ref" : "#/components/schemas/metabase.queries.schema.card-type"
- },
- "display" : {
"type" : "string",
- "minLength" : 1
- },
- "parameters" : {
- "$ref" : "#/components/schemas/metabase.parameters.schema.parameters"
- },
- "description" : {
- "type" : "string"
- },
- "dashboard_id" : {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
+ "enum" : [ "remote-synced" ]
}
- }
+ },
+ "required" : [ "name" ]
}
}
}
},
- "tags" : [ "/api/card" ]
- },
- "delete" : {
- "summary" : "DELETE /api/card/{id}",
- "description" : "Hard delete a Card. To soft delete, use `PUT /api/card/:id`",
- "parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
- "schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
- } ],
- "responses" : {
- "2XX" : {
- "description" : "Successful response"
- },
- "4XX" : {
- "description" : "Client error response"
- },
- "5XX" : {
- "description" : "Server error response"
- }
- },
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/collection" ]
}
},
- "/api/card/{id}/copy" : {
- "post" : {
- "summary" : "POST /api/card/{id}/copy",
- "description" : "Copy a `Card`, with the new name 'Copy of _name_'",
+ "/api/collection/graph" : {
+ "get" : {
+ "summary" : "GET /api/collection/graph",
+ "description" : "Fetch a graph of all Collection Permissions.",
"parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
+ "in" : "query",
+ "name" : "namespace",
+ "required" : false,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
+ "type" : "string",
+ "minLength" : 1
+ }
} ],
"responses" : {
"2XX" : {
@@ -11280,22 +12497,27 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
- }
- },
- "/api/card/{id}/dashboards" : {
- "get" : {
- "summary" : "GET /api/card/{id}/dashboards",
- "description" : "Get a list of `{:name ... :id ...}` pairs for all the dashboards this card appears in.",
+ "tags" : [ "/api/collection" ]
+ },
+ "put" : {
+ "summary" : "PUT /api/collection/graph",
+ "description" : "Do a batch update of Collections Permissions by passing in a modified graph. Will overwrite parts of the graph that\n are present in the request, and leave the rest unchanged.\n\n If the `force` query parameter is `true`, a `revision` number is not required. The provided graph will be persisted\n as-is, and has the potential to clobber other writes that happened since the last read.\n\n If the `skip_graph` query parameter is `true`, it will only return the current revision, not the entire permissions\n graph.",
"parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
+ "in" : "query",
+ "name" : "force",
+ "required" : false,
"schema" : {
- "type" : "integer",
- "minimum" : 1
- },
- "description" : "value must be an integer greater than zero."
+ "type" : "boolean",
+ "default" : false
+ }
+ }, {
+ "in" : "query",
+ "name" : "skip-graph",
+ "required" : false,
+ "schema" : {
+ "type" : "boolean",
+ "default" : false
+ }
} ],
"responses" : {
"2XX" : {
@@ -11308,33 +12530,44 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "properties" : {
+ "groups" : {
+ "type" : "object",
+ "properties" : { }
+ },
+ "namespace" : {
+ "type" : "string",
+ "minLength" : 1
+ },
+ "revision" : {
+ "description" : "value must be an integer.",
+ "type" : "integer"
+ }
+ },
+ "required" : [ "groups" ]
+ }
+ }
+ }
+ },
+ "tags" : [ "/api/collection" ]
}
},
- "/api/card/{id}/params/{param-key}/remapping" : {
+ "/api/collection/root" : {
"get" : {
- "summary" : "GET /api/card/{id}/params/{param-key}/remapping",
- "description" : "Fetch the remapped value for a given value of the parameter with ID `:param-key`.\n\n ;; fetch the remapped value for Card 1 parameter 'abc' for value 100\n GET /api/card/1/params/abc/remapping?value=100",
+ "summary" : "GET /api/collection/root",
+ "description" : "Return the 'Root' Collection object with standard details added",
"parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.id.card"
- }
- }, {
- "in" : "path",
- "name" : "param-key",
- "required" : true,
- "schema" : {
- "$ref" : "#/components/schemas/metabase.lib.schema.parameter.id"
- }
- }, {
"in" : "query",
- "name" : "value",
- "required" : true,
+ "name" : "namespace",
+ "required" : false,
"schema" : {
- "type" : "string"
+ "type" : "string",
+ "minLength" : 1
}
} ],
"responses" : {
@@ -11348,32 +12581,24 @@
"description" : "Server error response"
}
},
- "tags" : [ "/api/card" ]
+ "tags" : [ "/api/collection" ]
}
},
- "/api/card/{id}/query_metadata" : {
+ "/api/collection/root/dashboard-question-candidates" : {
"get" : {
- "summary" : "GET /api/card/{id}/query_metadata",
- "description" : "Get all of the required query metadata for a card.",
- "parameters" : [ {
- "in" : "path",
- "name" : "id",
- "required" : true,
- "schema" : {
- "anyOf" : [ {
- "description" : "value must be an integer greater than zero.",
- "type" : "integer",
- "minimum" : 1
- }, {
- "description" : "String must be a valid 21-character NanoID string.",
- "type" : "string",
- "pattern" : "^[A-Za-z0-9_\\-]{21}$"
- } ]
- }
- } ],
+ "summary" : "GET /api/collection/root/dashboard-question-candidates",
+ "description" : "Find cards in the root collection that can be moved into dashboards in the root collection. (Same as the above\n endpoint, but for the root collection)",
+ "parameters" : [ ],
"responses" : {
"2XX" : {
- "description" : "Successful response"
+ "description" : "map where {:data -> , :name -> , :description -> , :sole_dashboard_info ->