1

I am using AWS MWAA ver 2.2.2 and trying to use the Tableau operator to refresh a workbook. I created a Tableau connection using a username and password. In the Tableau operator I passed the following parameters

    task_id='refresh_tableau_workbook',
    resource='workbooks',
    method='refresh',
    find=workbook_name,
    match_with='name',
    site_id=site_id,
    tableau_conn_id=tableau_conn_id,
    dag=dag
)

But when I run it I get the following error: tableauserverclient.server.exceptions.NotSignedInError: Missing site ID. You must sign in first.

If tableau online has "/#/site/test/projects/4" in the URL then I am passing the "test" to the site_id variable. I am not sure where else I am missing site_id.

hemant A
  • 185
  • 14
  • I've never used Tableau Operator but upstream in your code, are you authenticating? The error mentions you must sign in first. As this leverages Server Client API, take a look at the docs on authentication process. https://tableau.github.io/server-client-python/docs/api-ref#authentication – Bernardo Nov 18 '22 at 14:39
  • @Bernardo: I am already doing that. As I mentioned I created the connection for Tableau in Airflow UI and provided login details there. – hemant A Nov 19 '22 at 17:20

1 Answers1

0

I was able to resolve this by upgrading the version of the Tableau provider. I was using apache-airflow-providers-tableau==2.1.2 which has a bug, after updating it to version 2.1.3 this error was resolved.

hemant A
  • 185
  • 14