Google sheets integration completely broken

Since Sunday 12/6/2020

I’ve been experiencing issues with Google sheets integration. I’ve tried on new accounts, pc, mac, safari, chrome, edge. Popup blockers off. Cleared cache.

I select a sheet and i get a google popup that says i need to log in then when i press the button it quickly opens a popup and closes it. Then when i get as far as selecting the sheet, the app just sits there with no follow through. I refresh and see the title of my sheet in the drop down but with no data, its empty. Friday when I had it connected correctly then Saturday it stopped pulling data.

This does not work has intended and it needs fixing asap. I’ve been using this product since March 2020 and its a rarity that google sheets actually works.

Please fix google sheets integration put all the connection flow on the My Data Source screen to avoid popup behavior. A response would be great.

You are not an isolated case, I have the same problem.

At thunkable
What ever fix you did this weekend it broke it. Here is a screenshot of this new oauth screen i run into. “Malformed”

Fix this and I will love you again!

With the PRO support I succeeded but the table is there but the data is empty.

Hi!

Sorry you’re having trouble with this! Thanks for letting us know about it. Can everyone confirm they’re seeing similar issues to the screenshots posted by @exploriverse.com? Just want to make sure we are not talking about two separate issues. I’ll take a look at it and see if we can get things working again.

I confirm that I already had the same error as @exploriverse.com 2 days ago but was fixed when one of your colleagues reset my account. But now I can only choose one table the table is there but the data is empty. I have to close and re-open the browser to add a new table. Do you want an animated gif of the sequence?

@Steven
There are several issues. I have a screen capture I can share with you privately.
-Initially syncing to google sheets there is that popup issue in the screenshot above.
-Once synced sometimes the sheet selector does not display (popup blocking off)
-If you are already logged in, after selecting a google sheet the app just hangs and does nothing after. Resulting in a connected sheet with no data
-4th issue is if you have a sheet connected, it won’t update naturally, if you manually sync you get an error.

If you have screen recordings that you think might be helpful and you’re willing to share that would be great! If there might be information in there that you don’t want public you can send them to me directly via DM.

@pippawilderada thanks for breaking it down into smaller items.

  • I will take a look at this, I did some quick testing and wasn’t able to reproduce the issue so it might take some time for me to figure out what is going wrong.
  • I’m not sure exactly what you mean by once synced, can you please clarify?
  • I can take a look at this as well.
  • Again, I’ll need some clarification here. I understand that you are getting an error when manually syncing (which shouldn’t happen and I’ll take a look at) but what do you mean by update naturally?

I had this problem, to correct it I added again the same table in data source and now all the tables are updated by themselves thanks to the addition of a new table.

1 Like

I had the same issue a few months ago. I dropped and re added the data sources

1 Like

@Steven What is the scenario where Google sheets works fine? Please describe your conditions where it works.
-PC/Mac
-Operating system version
-browser (chrome, safari, edge)
-browser version
-browser settings, cookies, popup blocker off, any other settings
-login type (email, google, apple)

I need this to work and am willing to change computer, browser, etc.

@Steven
I’m able to log in fine, i’m able to sync google sheets fine, i get the sheet selector, i tap on the sheet I want, then the interface goes back to the fields with name, first row, 2nd row, and what’s suppose to happen next?

If I press [Create] nothing happens. If I press X it closes the popup. I tap the dropdown selector in the data component and nothing is there. I refresh the browser page and my sheet shows up in the dropdown selector of the data component. I select it and then select the content dropdown and it is blank.
Screen Shot 2020-12-07 at 10.23.14 PM

I go to the My Data Source and i see my sheet there, i go to refresh and get this error.

I would also like to point out that by dint of refreshing the application during the tests, all the tables go out of sync for no reason. Forcing me to add it again to get all the tables updated.

@Steven
Why???


Airtable doesn’t have this issue

@Steven I was able to connect an empty sheet successfully, but when i select a large sheet full of data that is when your importer breaks and times out. You may want to put in a loader bar.

Something is wrong even though i connected it and selected it from the component when I go to live test it i just get the loading animation. It doesn’t work.

1 Like

Thanks for following up everyone. More information is always helpful in determining the issue. I’ll try and respond to all of you but please let me know if I’ve missed anything.

@kushweez That is interesting. As far as I know, the only reason the request should fail is if our access token for you account is expired or otherwise invalid. There can definitely be other reasons for it to fail, I’m just not aware of them at the moment. I’m a little confused by what you’re saying. Did you add the same Google Sheet as a new data source and it works fine? That seems very odd since there would be no difference in us trying to access the new one vs the old one.

@exploriverse.com I am usually using a Mac on the latest os with the latest chrome (though I’ve also tested safari and firefox in the past). I use google login and generally don’t change the default chrome settings. If you let me know what you’re using that isn’t working I can give that a shot as well.

@pippawilderada Hm that seems like there might be some error on our end when we try to create the data source. I’m guessing our server is having trouble with your sheet for some reason which is why you don’t see any sheets/tables in the second dropdown and why it is unable to sync. If you’re willing to share your sheet that would help us narrow down the issue. If not, can you take a look and see if there is anything you think might cause problems? Could be unusual characters in your sheet names or maybe a unique data layout?

@kushweez Why do you mean by the tables go out of sync for no reason?

@exploriverse.com Yes, Airtable is generally more reliable for us to work with. Google Sheets is a lot more open ended, so that allows for a lot of unexpected behavior and we can’t prepare for all of those issues but we can fix them once we identify them! If you’re willing to share your sheet with me I can take a look. Otherwise, can you see if there is anything you have in that specific sheet which might cause issues?

@drezmaulerkkv Can you let me know specifically how much data (how many rows/columns) you have in your large sheet? I don’t expect that to cause any issues but I can’t know until we test it.

To summarize, the sheets desynchronize themselves during application testing. At a given moment my data viewer list will no longer load the data, why ? I do not know.

But as soon as I get the error if I try to access the google sheet I get the error.

GraphQL error: There was a problem fetching the data, please check your input and try again.

So to fix it I add the same table in data sources or any other table and it will resynchronize the tables that got the GraphQL error.

I think the best thing for you to see is that we give you access to the Thunkable account.

Then as soon as we press on the cross to close this error the thunkable page becomes all white here are the logs of the error messages of the EDGE console when I click on the cross to close the error:

GraphQL error: There was a problem fetching the data, please check your input and try again.

  2.def01dfa.chunk.js:1 TypeError: Cannot read property 'edges' of undefined
    at Object.children (main.97edfd21.chunk.js:1)
    at n (2.def01dfa.chunk.js:1)
    at t.render (2.def01dfa.chunk.js:1)
    at Pi (2.def01dfa.chunk.js:1)
    at Mi (2.def01dfa.chunk.js:1)
    at Ni (2.def01dfa.chunk.js:1)
    at Ya (2.def01dfa.chunk.js:1)
    at qa (2.def01dfa.chunk.js:1)
    at Ps (2.def01dfa.chunk.js:1)
    at ks (2.def01dfa.chunk.js:1)
console.<computed> @ 2.def01dfa.chunk.js:1
ha @ 2.def01dfa.chunk.js:1
Sa.i.componentDidCatch.n.callback @ 2.def01dfa.chunk.js:1
oa @ 2.def01dfa.chunk.js:1
ra @ 2.def01dfa.chunk.js:1
Ba @ 2.def01dfa.chunk.js:1
Ua @ 2.def01dfa.chunk.js:1
(anonymous) @ 2.def01dfa.chunk.js:1
t.unstable_runWithPriority @ 2.def01dfa.chunk.js:1
As @ 2.def01dfa.chunk.js:1
Ps @ 2.def01dfa.chunk.js:1
ks @ 2.def01dfa.chunk.js:1
Is @ 2.def01dfa.chunk.js:1
xn @ 2.def01dfa.chunk.js:1
2.def01dfa.chunk.js:1 TypeError: Cannot read property 'edges' of undefined
    at Object.children (main.97edfd21.chunk.js:1)
    at n (2.def01dfa.chunk.js:1)
    at t.render (2.def01dfa.chunk.js:1)
    at Pi (2.def01dfa.chunk.js:1)
    at Mi (2.def01dfa.chunk.js:1)
    at Ni (2.def01dfa.chunk.js:1)
    at Ya (2.def01dfa.chunk.js:1)
    at qa (2.def01dfa.chunk.js:1)
    at Ps (2.def01dfa.chunk.js:1)
    at ks (2.def01dfa.chunk.js:1)
console.<computed> @ 2.def01dfa.chunk.js:1
ha @ 2.def01dfa.chunk.js:1
Sa.i.componentDidCatch.n.callback @ 2.def01dfa.chunk.js:1
oa @ 2.def01dfa.chunk.js:1
ra @ 2.def01dfa.chunk.js:1
Ba @ 2.def01dfa.chunk.js:1
Ua @ 2.def01dfa.chunk.js:1
(anonymous) @ 2.def01dfa.chunk.js:1
t.unstable_runWithPriority @ 2.def01dfa.chunk.js:1
As @ 2.def01dfa.chunk.js:1
Ps @ 2.def01dfa.chunk.js:1
ks @ 2.def01dfa.chunk.js:1
Is @ 2.def01dfa.chunk.js:1
xn @ 2.def01dfa.chunk.js:1
2.def01dfa.chunk.js:1 TypeError: Cannot read property 'edges' of undefined
    at Object.children (main.97edfd21.chunk.js:1)
    at n (2.def01dfa.chunk.js:1)
    at t.render (2.def01dfa.chunk.js:1)
    at Pi (2.def01dfa.chunk.js:1)
    at Mi (2.def01dfa.chunk.js:1)
    at Ni (2.def01dfa.chunk.js:1)
    at Ya (2.def01dfa.chunk.js:1)
    at qa (2.def01dfa.chunk.js:1)
    at Ps (2.def01dfa.chunk.js:1)
    at ks (2.def01dfa.chunk.js:1)
console.<computed> @ 2.def01dfa.chunk.js:1
ha @ 2.def01dfa.chunk.js:1
Sa.i.componentDidCatch.n.callback @ 2.def01dfa.chunk.js:1
oa @ 2.def01dfa.chunk.js:1
ra @ 2.def01dfa.chunk.js:1
Ba @ 2.def01dfa.chunk.js:1
Ua @ 2.def01dfa.chunk.js:1
(anonymous) @ 2.def01dfa.chunk.js:1
t.unstable_runWithPriority @ 2.def01dfa.chunk.js:1
As @ 2.def01dfa.chunk.js:1
Ps @ 2.def01dfa.chunk.js:1
ks @ 2.def01dfa.chunk.js:1
Is @ 2.def01dfa.chunk.js:1
xn @ 2.def01dfa.chunk.js:1

@kushweez Thanks, so it sounds like you add a Sheet and it works for some amount of time and then they all stop working? Seems like we might be missing your refresh token from Google for some reason. I’m not sure how your account would get into that state but the solution is for me to delete the current tokens we have and for you to remove Thunkable as a trusted app here: https://myaccount.google.com/permissions (you might need to switch to the correct google account via the top right corner if you have multiple). Once we’ve both done so, Google will ask you to authorize Thunkable again, you allow it, and you should be all set. Can you message me directly with the email you use for your account if you would like to pursue this solution?

3 Likes

@Steven @kushweez @domhnallohanlon
I’ve spent a lot of my time troubleshooting this issue(s) and I’ve come to find out that ultimately its issues with Thunkable’s code. I’ve tested on PC, Mac, Safari 13/14, Chrome, Edge, MacOS 10.14/15. Removing permissions, clearing cache, turning off popups, turning off privacy, cross site constraints turning it off.

There is good news for Thunkers, there are work arounds that I have found. Here is how you can navigate around these code issues to hopefully get Google Sheets working for your project. This is not a permanent fix for these issues, they should still be fixed as not everyone will stumble on this post.

  1. Disable all popup blockers, even if its on notify this still breaks the code some how and even if you grant it in real-time something breaks. Workaround is your browser settings disable popups with thunkable this will address most thunkable>google oauth flows. To avoid any other issues that privacy protection may cause turn it off for thunkable.

  2. Because each time you want to add a new google sheet the flow requires you to select the google account to oauth in this will only work the first time. If you cancel out at any point or want to do the flow again to add another sheet, you will get stuck at the oauth step and get the swirling google loading wheel. Workaround is you have to close your browser completely and reopen and this should get you past that oauth screen and to the select your google sheet screen. If you want to add another sheet you will have to close the browser and reopen the browser for it to work a second time or third time.

  3. The third and most important issue I’ve found is when you select certain google sheet the [Create] button will work or will not work as its designed. What I’ve found the determining factor is how much data is in your google sheet. If I select an empty sheet the [Create] button works. If I choose a very large sheet with many tabs with a lot of data the [Create] button will not work. If you refresh the browser and go to My Data Sources you will see the [Create] button added the sheet but with no data and it is bugged as the Sync button will throw an error. Work around is to add an empty sheet, add your data to it and use the manual ‘Sync’ button. I have found what ever code updates the sheet behind the scenes is not reliable.

I hope this helps and wish the team the best as they address these issues. Happy Thunking to all!

1 Like
  1. This issue which there is not workaround for will ultimately cause your sheet to break and be un-useable, the GraphQL error. Once it happens the data will not load in Live test or the testing app. You will no longer be able to manual Sync. You have to start over with the steps in the previous post. @kushweez explains it in greater detail. I haven’t had any luck with his work around, the sheet remains broken.