Skip to content

Unable to publish a workbook successfully #1635

Open

Description

@JeffreyLine

Describe the bug
I have some code that I have been using for quite some time to publish workbook and also data sources to our on -prem environment. We just migrated to the cloud. While I had to change how we authenticate to the cloud the code to publish a dashboard is not completing.
This is a workbook that is connecting live to a database that is on-prem. That is why I was using the skip_connection_check=True. Which seems to hang for me.

Versions
I'm using version 0.36 right now.

To Reproduce
Here is a snippet of the code I was using originally.

    if row['AssetType'] == 'Workbook':
        try:
            ################  PUBLISH WORKBOOK ################
            displayviews = gethiddensheets(server, asset.id, dload_path, RunProcessPath)
            print('    Publishing Workbook!')
            show_tabs = True
            if row['ShowTabs'].upper() == 'FALSE':
                show_tabs = False
            wb_item = TSC.WorkbookItem(name=row['AssetName'], project_id=row['DestinationProjectLUID'], show_tabs=show_tabs)
            if displayviews is None:
                publishedasset = server.workbooks.publish(wb_item, dload_path, 'Overwrite',
                                                      as_job=False, skip_connection_check='True', show_tabs=row['ShowTabs'])
            elif displayviews == -1:
                print('ERROR: Grabbing Hidden Sheets!')
                result = '1|ERROR: Grabbing Hidden Sheets!|'
            else:
                publishedasset = server.workbooks.publish(wb_item, dload_path, 'Overwrite',
                                                      as_job=False, skip_connection_check='True',
                                                      hidden_views=displayviews)
        except Exception as e:
            print('ERROR: Publishing Workbook!')
            print("error in level argument", e.args[0])
            result = '1|ERROR: Publishing Workbook!|'
            return result

New code to adjust for the hidden views in the wb_item:

    if row['AssetType'] == 'Workbook':
        try:
            ################  PUBLISH WORKBOOK ################
            #workbook = server.workbooks.get_by_id(asset.id)
            #all_connections = server.workbooks.populate_connections(workbook)
            displayviews = gethiddensheets(server, asset.id, dload_path, RunProcessPath)
            print('    Publishing Workbook!')
            show_tabs = True
            if row['ShowTabs'].upper() == 'FALSE':
                show_tabs = False
            wb_item = TSC.WorkbookItem(name=row['AssetName'], project_id=row['DestinationProjectLUID'], show_tabs=show_tabs)
            if displayviews is None:
                publishedasset = server.workbooks.publish(wb_item, dload_path, 'Overwrite')
            elif displayviews == -1:
                print('ERROR: Grabbing Hidden Sheets!')
                result = '1|ERROR: Grabbing Hidden Sheets!| '
            else:
                try:
                    print('Hidden Views')
                    wb_item.hidden_views = displayviews

                   publishedasset = server.workbooks.publish(wb_item, dload_path, mode='Overwrite',
                                                              skip_connection_check=True,
                                                              as_job=False)

Results
server.workbooks.publish never returns.
If I remove or change skip_connection_check to false it does complete with the following error.

403132: Forbidden
		AssetPromotionRequest failed to establish a connection to your datasource.

Activity

  1. jorwoods commented on Jul 14, 2025

    @jorwoods
    Contributor

    The database is on prem, correct? Do you have tableau bridge setup?

  2. JeffreyLine commented on Jul 14, 2025

    @JeffreyLine
    Author

    Yes the database is on-prem and we do have Tableau bridge setup and the database I'm connecting to does work via the bridge. Now our bridge client happens to be on another server than the one that is running this code. Not sure if that would affect anything.

    Quick update. It appears to only be affecting a live connection embedded in a workbook. Or a workbook that is using a server data source that is also a live connection.

  3. github-actions commented on Jul 24, 2026

    @github-actions

    This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. If this is still relevant, please comment to keep it open.

  4. jacalata commented on Jul 30, 2026

    @jacalata
    Contributor

    Hi @JeffreyLine, following up after a while.

    Looking at this again with fresh eyes: this doesn't appear to be a TSC bug. In our code, skip_connection_check=True simply appends &skipConnectionCheck=true to the publish URL and passes the request straight to the server — TSC has no logic that hangs or times out on its own. The 403132 error you saw with skip_connection_check=False is Tableau Cloud reporting that it can't reach your on-prem data source through Tableau Bridge, and the hang with skip_connection_check=True looks like the server holding the publish request open while it still tries to validate the connection behind the scenes.

    Both symptoms are server / Bridge configuration issues rather than something we can address in the client library. Some things worth checking on the Cloud side:

    • Bridge pool assignment — under Site Settings → Bridge, is your Bridge client assigned to a pool that includes the target data source? A mis-assigned pool commonly causes 403132.
    • Bridge client version — an outdated Bridge can cause silent failures for live connections.
    • Data source–level Bridge selection — some connections need to be explicitly told which Bridge pool to use.

    If Bridge pool config looks correct and this still reproduces, I'd recommend opening a Tableau Support ticket — the server-side team can look at the actual connection-check flow, which we can't see from the client.

  5. added
    help wantedA user needs help, may be a mistake, a bug or a feature request
    on Jul 30, 2026
  6. github-actions commented on Oct 7, 2026

    @github-actions

    This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. If this is still relevant, please comment to keep it open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedA user needs help, may be a mistake, a bug or a feature requeststale

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions