mirror of
https://github.com/apache/superset.git
synced 2026-08-04 13:02:41 +00:00
154 lines
8.3 KiB
JSON
154 lines
8.3 KiB
JSON
{
|
|
"title": "Body",
|
|
"body": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"properties": {
|
|
"allow_ctas": {
|
|
"description": "Allow CREATE TABLE AS option in SQL Lab",
|
|
"type": "boolean"
|
|
},
|
|
"allow_cvas": {
|
|
"description": "Allow CREATE VIEW AS option in SQL Lab",
|
|
"type": "boolean"
|
|
},
|
|
"allow_dml": {
|
|
"description": "Allow users to run non-SELECT statements (UPDATE, DELETE, CREATE, ...) in SQL Lab",
|
|
"type": "boolean"
|
|
},
|
|
"allow_file_upload": {
|
|
"description": "Allow to upload CSV file data into this databaseIf selected, please set the schemas allowed for csv upload in Extra.",
|
|
"type": "boolean"
|
|
},
|
|
"allow_run_async": {
|
|
"description": "Operate the database in asynchronous mode, meaning that the queries are executed on remote workers as opposed to on the web server itself. This assumes that you have a Celery worker setup as well as a results backend. Refer to the installation docs for more information.",
|
|
"type": "boolean"
|
|
},
|
|
"cache_timeout": {
|
|
"description": "Duration (in seconds) of the caching timeout for charts of this database. A timeout of 0 indicates that the cache never expires. Note this defaults to the global timeout if undefined.",
|
|
"nullable": true,
|
|
"type": "integer"
|
|
},
|
|
"configuration_method": {
|
|
"default": "sqlalchemy_form",
|
|
"description": "Configuration_method is used on the frontend to inform the backend whether to explode parameters or to provide only a sqlalchemy_uri.",
|
|
"enum": ["sqlalchemy_form", "dynamic_form"]
|
|
},
|
|
"database_name": {
|
|
"description": "A database name to identify this connection.",
|
|
"maxLength": 250,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"driver": {
|
|
"description": "SQLAlchemy driver to use",
|
|
"nullable": true,
|
|
"type": "string"
|
|
},
|
|
"engine": {
|
|
"description": "SQLAlchemy engine to use",
|
|
"nullable": true,
|
|
"type": "string"
|
|
},
|
|
"expose_in_sqllab": {
|
|
"description": "Expose this database to SQLLab",
|
|
"type": "boolean"
|
|
},
|
|
"external_url": { "nullable": true, "type": "string" },
|
|
"extra": {
|
|
"description": "<p>JSON string containing extra configuration elements.<br>1. The <code>engine_params</code> object gets unpacked into the <a href=\"https://docs.sqlalchemy.org/en/latest/core/engines.html#sqlalchemy.create_engine\" rel=\"noopener noreferrer\">sqlalchemy.create_engine</a> call, while the <code>metadata_params</code> gets unpacked into the <a href=\"https://docs.sqlalchemy.org/en/rel_1_0/core/metadata.html#sqlalchemy.schema.MetaData\" rel=\"noopener noreferrer\">sqlalchemy.MetaData</a> call.<br>2. The <code>metadata_cache_timeout</code> is a cache timeout setting in seconds for metadata fetch of this database. Specify it as <strong>\"metadata_cache_timeout\": {\"schema_cache_timeout\": 600, \"table_cache_timeout\": 600}</strong>. If unset, cache will not be enabled for the functionality. A timeout of 0 indicates that the cache never expires.<br>3. The <code>schemas_allowed_for_file_upload</code> is a comma separated list of schemas that CSVs are allowed to upload to. Specify it as <strong>\"schemas_allowed_for_file_upload\": [\"public\", \"csv_upload\"]</strong>. If database flavor does not support schema or any schema is allowed to be accessed, just leave the list empty<br>4. The <code>version</code> field is a string specifying the this db's version. This should be used with Presto DBs so that the syntax is correct<br>5. The <code>allows_virtual_table_explore</code> field is a boolean specifying whether or not the Explore button in SQL Lab results is shown.<br>6. The <code>disable_data_preview</code> field is a boolean specifying whether or not data preview queries will be run when fetching table metadata in SQL Lab.7. The <code>disable_drill_to_detail</code> field is a boolean specifying whether or notdrill to detail is disabled for the database.8. The <code>allow_multi_catalog</code> indicates if the database allows changing the default catalog when running queries and creating datasets.</p>",
|
|
"type": "string"
|
|
},
|
|
"force_ctas_schema": {
|
|
"description": "When allowing CREATE TABLE AS option in SQL Lab, this option forces the table to be created in this schema",
|
|
"maxLength": 250,
|
|
"minLength": 0,
|
|
"nullable": true,
|
|
"type": "string"
|
|
},
|
|
"impersonate_user": {
|
|
"description": "If Presto, all the queries in SQL Lab are going to be executed as the currently logged on user who must have permission to run them.<br/>If Hive and hive.server2.enable.doAs is enabled, will run the queries as service account, but impersonate the currently logged on user via hive.server2.proxy.user property.",
|
|
"type": "boolean"
|
|
},
|
|
"is_managed_externally": { "nullable": true, "type": "boolean" },
|
|
"masked_encrypted_extra": {
|
|
"description": "<p>JSON string containing additional connection configuration.<br>This is used to provide connection information for systems like Hive, Presto, and BigQuery, which do not conform to the username:password syntax normally used by SQLAlchemy.</p>",
|
|
"nullable": true,
|
|
"type": "string"
|
|
},
|
|
"parameters": {
|
|
"additionalProperties": {},
|
|
"description": "DB-specific parameters for configuration",
|
|
"type": "object"
|
|
},
|
|
"server_cert": {
|
|
"description": "<p>Optional CA_BUNDLE contents to validate HTTPS requests. Only available on certain database engines.</p>",
|
|
"nullable": true,
|
|
"type": "string"
|
|
},
|
|
"sqlalchemy_uri": {
|
|
"description": "<p>Refer to the <a href=\"https://docs.sqlalchemy.org/en/rel_1_2/core/engines.html#database-urls\" rel=\"noopener noreferrer\">SqlAlchemy docs</a> for more information on how to structure your URI.</p>",
|
|
"maxLength": 1024,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"ssh_tunnel": {
|
|
"allOf": [
|
|
{
|
|
"properties": {
|
|
"id": {
|
|
"description": "SSH Tunnel ID (for updates)",
|
|
"nullable": true,
|
|
"type": "integer"
|
|
},
|
|
"password": { "type": "string" },
|
|
"private_key": { "type": "string" },
|
|
"private_key_password": { "type": "string" },
|
|
"server_address": { "type": "string" },
|
|
"server_port": { "type": "integer" },
|
|
"username": { "type": "string" }
|
|
},
|
|
"type": "object",
|
|
"title": "DatabaseSSHTunnel"
|
|
}
|
|
],
|
|
"nullable": true
|
|
},
|
|
"uuid": { "type": "string" }
|
|
},
|
|
"required": ["database_name"],
|
|
"type": "object",
|
|
"title": "DatabaseRestApi.post"
|
|
},
|
|
"example": {
|
|
"allow_ctas": true,
|
|
"allow_cvas": true,
|
|
"allow_dml": true,
|
|
"allow_file_upload": true,
|
|
"allow_run_async": true,
|
|
"cache_timeout": 1,
|
|
"configuration_method": {},
|
|
"database_name": "string",
|
|
"driver": "string",
|
|
"engine": "string",
|
|
"expose_in_sqllab": true,
|
|
"external_url": "string",
|
|
"extra": "string",
|
|
"force_ctas_schema": "string",
|
|
"impersonate_user": true,
|
|
"is_managed_externally": true,
|
|
"masked_encrypted_extra": "string",
|
|
"parameters": {},
|
|
"server_cert": "string",
|
|
"sqlalchemy_uri": "string",
|
|
"ssh_tunnel": {},
|
|
"uuid": "string"
|
|
}
|
|
}
|
|
},
|
|
"description": "Database schema",
|
|
"required": true
|
|
}
|
|
}
|