2 Replies Latest reply on Apr 28, 2019 10:43 PM by Matt Lazarus

    Bad Request: The data source does not contain the expected data (BigQuery)


      Trying to access google sheets which are stored as tables on BigQuery. Facing OAuth issues (screenshot attached)

      There are couple of similar questions on the forum and none of them have working solution. Has anyone solved this issue?

        • 1. Re: Bad Request: The data source does not contain the expected data (BigQuery)

          Hello Phaneendra,


          Please make sure you have followed the steps in the following documentation for setting up OAuth for Google and Tableau.


          Set up OAuth for Google - Tableau


          I would double check the permissions on the account being used to access the data on Google Sheets as well. If the error is continuing, I would open a case with Technical Support, Support Case | Tableau Software.


          Please share any resolution that might be found for other Community Forums members that might come across this post.


          Hope this helps!



          Byrne, Patrick

          Community Manager

          Tableau Software

          • 2. Re: Bad Request: The data source does not contain the expected data (BigQuery)
            Matt Lazarus

            Hi there,


            This may not be a solution, rather a workaround.


            You're using a federated table in BigQuery which means BigQuery doesn't store the data, but rather each time you query this federated table BigQuery goes back to the Google Sheet to find the data which is then processed according to the query and returns results.


            In an ordinary (native) BigQuery table the table data is more or less stored in BigQuery and therefore there is no external source (such as a Google Sheet) which needs to be scanned.


            The workaround; in BigQuery select * from the federated table and load the data into a native table. You can then connect Tableau to said native table.


            The only thing you need to keep in mind is that when the data changes in the Google Sheets you need to repeat the above process. Or alternatively set up a process to overwrite the native table with the results from the federated table on a schedule.


            Hope this helps!

            1 of 1 people found this helpful