Tableau
Required
Fields required for a valid configuration.
| Path | Type | Required | Description | Default | Constraints |
|---|---|---|---|---|---|
| required | object | Yes | — | — | — |
Masked
Sensitive fields under(secrets/credentials).
| Path | Type | Required | Description | Default | Constraints |
|---|---|---|---|---|---|
| masked | object | Yes | — | — | — |
Optional
Optional configuration fields.
| Path | Type | Required | Description | Default | Constraints |
|---|---|---|---|---|---|
| optional | object | No | — | — | no extra properties |
| optional.connection | object | No | Tableau API connection and retry settings. | — | no extra properties |
| optional.connection.max_retries | integer | No | Maximum retries for transient Tableau API request failures | 3 | min 0, max 10 |
| optional.connection.session_trust_env | boolean | No | When true, allow requests session proxy/environment settings | false | — |
| optional.connection.ssl_verify | boolean | string | No | Verify SSL certificates. Provide a PEM bundle path string for custom certs. | true | — |
| optional.connection.timeout_seconds | integer | No | HTTP timeout in seconds for Tableau requests | 30 | min 5, max 300 |
| optional.extraction | object | No | Tableau metadata extraction feature flags. | — | no extra properties |
| optional.extraction.extract_usage_stats | boolean | No | Extract Tableau usage statistics when accessible | false | — |
| optional.extraction.ingest_owner | boolean | No | Extract Tableau owner metadata into assets | false | — |
| optional.extraction.ingest_tags | boolean | No | Extract Tableau tags into asset metadata | false | — |
| optional.scope | object | No | Optional Tableau project/workbook/datasource scope filters. | — | no extra properties |
| optional.scope.datasource_names | array | No | Optional Tableau datasource allowlist (exact names) | — | — |
| optional.scope.datasource_names[] | string | No | — | — | — |
| optional.scope.include_datasources | boolean | No | Include datasource assets in extraction | true | — |
| optional.scope.include_workbooks | boolean | No | Include workbook assets in extraction | true | — |
| optional.scope.project_names | array | No | Optional Tableau project allowlist (exact names) | — | — |
| optional.scope.project_names[] | string | No | — | — | — |
| optional.scope.workbook_names | array | No | Optional Tableau workbook allowlist (exact names) | — | — |
| optional.scope.workbook_names[] | string | No | — | — | — |
Extracted Metadata
Item
| Field | Type | Required | Description |
|---|---|---|---|
| site | string | Yes | Tableau site |
| report_type | string | Yes | Asset kind (workbook/view/datasource) |
| workbook_id | string | Yes | Asset/object id |
| project_name | string | No | Project name |
| tags | string[] | No | Tags |
| author | string | No | Owner display name or email |
Examples
Tableau Cloud PAT scan
Extract all workbooks and datasources from Tableau Cloud using personal access token
Config Payload
{
"type": "TABLEAU",
"required": {
"auth_mode": "PERSONAL_ACCESS_TOKEN",
"connect_uri": "https://your-site.online.tableau.com",
"site": "your-site-name",
"token_name": "your-token-name"
},
"masked": {
"token_value": "your-token-value"
},
"optional": {
"extraction": {
"ingest_tags": true,
"ingest_owner": true,
"extract_usage_stats": true
}
},
"sampling": {
"strategy": "AUTOMATIC"
}
}Schedule
{
"enabled": true,
"preset": "weekday_business",
"cron": "29 16 * * 1-5",
"timezone": "UTC"
}Tableau Server project-scoped scan
Scan specific projects on Tableau Server using username/password auth
Config Payload
{
"type": "TABLEAU",
"required": {
"auth_mode": "USERNAME_PASSWORD",
"connect_uri": "https://tableau.your-company.internal",
"site": ""
},
"masked": {
"username": "your-username",
"password": "your-password"
},
"optional": {
"scope": {
"project_names": [
"Finance",
"Operations"
],
"include_workbooks": true,
"include_datasources": true
}
},
"sampling": {
"strategy": "AUTOMATIC"
}
}Schedule
{
"enabled": true,
"preset": "nightly",
"cron": "17 0 * * *",
"timezone": "UTC"
}