If you are using older authentication methods to integrate with Tableau, such as PAT (Personal Access Token) or username/password, instead of Connected Apps, the in-app validator is not available. However, you can still validate your connection using an API call. Here are the steps:
1. Get the Tableau connection_uuid. You can use the following API call to get the connection_uuid:
query getUserBIConnections {
getUser {
id
cognitoUserId
role
auth {
groups
__typename
}
account {
id
bi {
id
uuid
name
type
dataCollector {
uuid
__typename
}
connections {
id
uuid
type
data
subtype
jobTypes
createdOn
isActive
connectionIdentifiers {
key
value
__typename
}
__typename
}
__typename
}
__typename
}
__typename
}
}
The output should include a BI array with an entry for each BI integration. Locate the Tableau integration, and the connection ID can be found under the connections array. In the example below, the connection_uuid value for Tableau is "abdcdefgsfdr-1234-5678-9101-a3c596bb3564":
"bi": [
{
...
"name": "tableau integration name",
"type": "TABLEAU",
...
},
"connections": [
{
"id": "16634",
"uuid": "abdcdefgsfdr-1234-5678-9101-a3c596bb3564",
"type": "TABLEAU",
...
],
"createdOn": "2022-08-25T13:11:43.916063+00:00",
"isActive": true,
2. To validate a connection, paste the below query in the API Explorer:
query TableauValidations($connectionId: UUID!) {
validateTableauConnection: testExistingConnectionV2(
connectionId: $connectionId
validationName: "validate_tableau_connection"
) {
additionalData {
datasetsValidated
projectsValidated
queriesWithResults {
query
rows
}
tablesValidated
}
description
errors {
cause
friendlyMessage
resolution
stackTrace
}
success
validationName
warnings {
cause
friendlyMessage
resolution
stackTrace
}
}
validateWorkbooks:testExistingConnectionV2(
connectionId: $connectionId
validationName: "validate_workbooks"
) {
additionalData {
datasetsValidated
projectsValidated
queriesWithResults {
query
rows
}
tablesValidated
}
description
errors {
cause
friendlyMessage
resolution
stackTrace
}
success
validationName
warnings {
cause
friendlyMessage
resolution
stackTrace
}
}
validateCustomSql:testExistingConnectionV2(
connectionId: $connectionId
validationName: "validate_custom_sql"
) {
additionalData {
datasetsValidated
projectsValidated
queriesWithResults {
query
rows
}
tablesValidated
}
description
errors {
cause
friendlyMessage
resolution
stackTrace
}
success
validationName
warnings {
cause
friendlyMessage
resolution
stackTrace
}
}
validateDetailedViews:testExistingConnectionV2(
connectionId: $connectionId
validationName: "validate_detailed_views"
) {
additionalData {
datasetsValidated
projectsValidated
queriesWithResults {
query
rows
}
tablesValidated
}
description
errors {
cause
friendlyMessage
resolution
stackTrace
}
success
validationName
warnings {
cause
friendlyMessage
resolution
stackTrace
}
}
}
3. Enter the connection ID in the Variables text box. This ID is the connection UUID for Tableau that you obtained in step 1:
{"connectionId":"abdcdefgsfdr-1234-5678-9101-a3c596bb3564"}
Example:
4. Execute the query and review any error messages returned by the Tableau API. Adjust your configuration according to the error message, and then rerun the query from step 2 until you achieve a successful connection test.
Comments
0 comments
Please sign in to leave a comment.