[GH-ISSUE #1945] Can't authenticate with the server (google drive) #1298

Closed
opened 2026-02-25 22:39:36 +03:00 by kerem · 8 comments
Owner

Originally created by @asherkory on GitHub (May 6, 2025).
Original GitHub issue: https://github.com/floccusaddon/floccus/issues/1945

Which version of floccus are you using?

5.5.3

How many bookmarks do you have, roughly?

10k

Are you using other means to sync bookmarks in parallel to floccus?

No

Sync method

Google Drive

Which browser are you using? In case you are using the phone App, specify the Android or iOS version and device please.

Firefox version 136.02, Android 15

Which version of Nextcloud Bookmarks are you using? (if relevant)

No response

Which version of Nextcloud? (if relevant)

No response

What kind of WebDAV server are you using? (if relevant)

No response

Describe the Bug

On multiple devices using Firefox, plus also the android app, I receive this error when trying to sync:
E018: Couldn't authenticate with the server.

Debug logs:

2025-05-06T17:09:09.113Z Starting sync process for account Google Drive: bookmarks.xbel
2025-05-06T17:09:09.128Z onSyncStart: begin
2025-05-06T17:09:12.456Z Failed to authenticate to Google API: [object Object]
2025-05-06T17:09:12.457Z Syncing failed with E018: Couldn't authenticate with the server.
2025-05-06T17:09:12.459Z onSyncFail

I tried deleting the existing profile and adding a new profile. Same result.

Expected Behavior

Syncing should work.

To Reproduce

Happens every time I try to sync, no matter whether I'm using the browser extension or android app.

Debug log provided

  • I have provided a debug log file
Originally created by @asherkory on GitHub (May 6, 2025). Original GitHub issue: https://github.com/floccusaddon/floccus/issues/1945 ### Which version of floccus are you using? 5.5.3 ### How many bookmarks do you have, roughly? 10k ### Are you using other means to sync bookmarks in parallel to floccus? No ### Sync method Google Drive ### Which browser are you using? In case you are using the phone App, specify the Android or iOS version and device please. Firefox version 136.02, Android 15 ### Which version of Nextcloud Bookmarks are you using? (if relevant) _No response_ ### Which version of Nextcloud? (if relevant) _No response_ ### What kind of WebDAV server are you using? (if relevant) _No response_ ### Describe the Bug On multiple devices using Firefox, plus also the android app, I receive this error when trying to sync: `E018: Couldn't authenticate with the server.` Debug logs: ``` 2025-05-06T17:09:09.113Z Starting sync process for account Google Drive: bookmarks.xbel 2025-05-06T17:09:09.128Z onSyncStart: begin 2025-05-06T17:09:12.456Z Failed to authenticate to Google API: [object Object] 2025-05-06T17:09:12.457Z Syncing failed with E018: Couldn't authenticate with the server. 2025-05-06T17:09:12.459Z onSyncFail ``` I tried deleting the existing profile and adding a new profile. Same result. ### Expected Behavior Syncing should work. ### To Reproduce Happens every time I try to sync, no matter whether I'm using the browser extension or android app. ### Debug log provided - [x] I have provided a debug log file
kerem 2026-02-25 22:39:36 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@github-actions[bot] commented on GitHub (May 6, 2025):

Hello 👋

Thank you for taking the time to open this issue with floccus. I know it's frustrating when software
causes problems. You have made the right choice to come here and open an issue to make sure your problem gets looked at
and if possible solved. Let me give you a short introduction on what to expect from this issue tracker to avoid misunderstandings.
I'm Marcel. I created floccus a few years ago, and have been maintaining it since. I currently work for Nextcloud
which leaves me with less time for side projects like this one than I used to have.
I still try to answer all issues and if possible fix all bugs here, but it sometimes takes a while until I get to it.
Until then, please be patient. It helps when you stick around to answer follow up questions I may have,
as very few bugs can be fixed directly from the first bug report, without any interaction. If information is missing in your bug report
and the issue cannot be solved without it, I will have to close the issue after a while.
Note also that GitHub in general is a place where people meet to make software better together. Nobody here is under any obligation
to help you, solve your problems or deliver on any expectations or demands you may have, but if enough people come together we can
collaborate to make this software better. For everyone.
Thus, if you can, you could also have a look at other issues to see whether you can help other people with your knowledge
and experience. If you have coding experience it would also be awesome if you could step up to dive into the code and
try to fix the odd bug yourself. Everyone will be thankful for extra helping hands!
If you cannot lend a helping hand, to continue the development and maintenance of this project in a sustainable way,
I ask that you donate to the project when opening an issue (or at least once your issue is solved), if you're not a donor already.
You can find donation options at https://floccus.org/donate/. Thank you!

One last word: If you feel, at any point, like you need to vent, this is not the place for it; you can go to the Nextcloud forum,
to twitter or somewhere else. But this is a technical issue tracker, so please make sure to
focus on the tech and keep your opinions to yourself.

Thank you for reading through this primer. I look forward to working with you on this issue!
Cheers 💙

<!-- gh-comment-id:2855451961 --> @github-actions[bot] commented on GitHub (May 6, 2025): Hello :wave: Thank you for taking the time to open this issue with floccus. I know it's frustrating when software causes problems. You have made the right choice to come here and open an issue to make sure your problem gets looked at and if possible solved. Let me give you a short introduction on what to expect from this issue tracker to avoid misunderstandings. I'm Marcel. I created floccus a few years ago, and have been maintaining it since. I currently work for Nextcloud which leaves me with less time for side projects like this one than I used to have. I still try to answer all issues and if possible fix all bugs here, but it sometimes takes a while until I get to it. Until then, please be patient. It helps when you stick around to answer follow up questions I may have, as very few bugs can be fixed directly from the first bug report, without any interaction. If information is missing in your bug report and the issue cannot be solved without it, I will have to close the issue after a while. Note also that GitHub in general is a place where people meet to make software better *together*. Nobody here is under any obligation to help you, solve your problems or deliver on any expectations or demands you may have, but if enough people come together we can collaborate to make this software better. For everyone. Thus, if you can, you could also have a look at other issues to see whether you can help other people with your knowledge and experience. If you have coding experience it would also be awesome if you could step up to dive into the code and try to fix the odd bug yourself. Everyone will be thankful for extra helping hands! If you cannot lend a helping hand, to continue the development and maintenance of this project in a sustainable way, I ask that you donate to the project when opening an issue (or at least once your issue is solved), if you're not a donor already. You can find donation options at <https://floccus.org/donate/>. Thank you! One last word: If you feel, at any point, like you need to vent, this is not the place for it; you can go to the Nextcloud forum, to twitter or somewhere else. But this is a technical issue tracker, so please make sure to focus on the tech and keep your opinions to yourself. Thank you for reading through this primer. I look forward to working with you on this issue! Cheers :blue_heart:
Author
Owner

@marcelklehr commented on GitHub (May 7, 2025):

Hey @asherkory
Thank you for giving feedback by opening this issue! I appreciate it! Google Drive authentication is known to cause issues that I haven't been able to reproduce so far (see #1562 ). The log you posted seems to be from the Android app, could you also upload the log from the Desktop version of floccus, it should give more details for the error.

Thank you for your cooperation!

<!-- gh-comment-id:2857746048 --> @marcelklehr commented on GitHub (May 7, 2025): Hey @asherkory Thank you for giving feedback by opening this issue! I appreciate it! Google Drive authentication is known to cause issues that I haven't been able to reproduce so far (see #1562 ). The log you posted seems to be from the Android app, could you also upload the log from the Desktop version of floccus, it should give more details for the error. Thank you for your cooperation!
Author
Owner

@asherkory commented on GitHub (May 7, 2025):

Thanks for linking to the known issue. Here's the desktop log -- doesn't seem to give much more info:

025-05-07T11:24:41.049Z Starting sync process for account primary
2025-05-07T11:24:41.053Z onSyncStart: begin
2025-05-07T11:24:44.836Z Failed to authenticate to Google API: [object Object]
2025-05-07T11:24:44.837Z Syncing failed with E018: Couldn't authenticate with the server.
2025-05-07T11:24:44.838Z onSyncFail

I tried debugging the network requests (as mentioned in the linked issue). Looks like the GET request to Google Drive is returning a 403. Here's the response:

{ code: 403, message: "This file has been identified as malware or spam and cannot be downloaded.", domain: "global", reason: "cannotDownloadAbusiveFile" }

When I try to manually download bookmarks.xbel from my google drive account, google drive thinks it's infected with a virus.

It looks like the POST oauth requests to authenticate are successful, as are the PATCH requests to update the bookmarks file. Indeed, on my google drive account I can see that the "last modified" timestamp does update to the current time.

Let me know if there's any other info I could provide.

edit: Did a little searching, looks like there might be a parameter you can pass to bypass the virus checking: acknowledgeAbuse=true. docs, similar issue

<!-- gh-comment-id:2858233843 --> @asherkory commented on GitHub (May 7, 2025): Thanks for linking to the known issue. Here's the desktop log -- doesn't seem to give much more info: ``` 025-05-07T11:24:41.049Z Starting sync process for account primary 2025-05-07T11:24:41.053Z onSyncStart: begin 2025-05-07T11:24:44.836Z Failed to authenticate to Google API: [object Object] 2025-05-07T11:24:44.837Z Syncing failed with E018: Couldn't authenticate with the server. 2025-05-07T11:24:44.838Z onSyncFail ``` I tried debugging the network requests (as mentioned in the linked issue). Looks like the GET request to Google Drive is returning a 403. Here's the response: ``` { code: 403, message: "This file has been identified as malware or spam and cannot be downloaded.", domain: "global", reason: "cannotDownloadAbusiveFile" } ``` When I try to manually download `bookmarks.xbel` from my google drive account, google drive thinks it's infected with a virus. It looks like the POST oauth requests to authenticate are successful, as are the PATCH requests to update the bookmarks file. Indeed, on my google drive account I can see that the "last modified" timestamp does update to the current time. Let me know if there's any other info I could provide. edit: Did a little searching, looks like there might be a parameter you can pass to bypass the virus checking: `acknowledgeAbuse=true`. [docs](https://developers.google.com/workspace/drive/api/guides/manage-downloads), [similar issue](https://github.com/prasmussen/gdrive/issues/234#issuecomment-394065039)
Author
Owner

@marcelklehr commented on GitHub (May 7, 2025):

Aha! Insightful! Thank you!

acknowledgeAbuse... headscratch Interesting parameter name choice.

<!-- gh-comment-id:2858922374 --> @marcelklehr commented on GitHub (May 7, 2025): Aha! Insightful! Thank you! acknowledgeAbuse... *headscratch* Interesting parameter name choice.
Author
Owner

@marcelklehr commented on GitHub (May 7, 2025):

Can you check if there is actually anything malicious in your bookmarks file, though? I'd rather not circumvent a legitimate issue.

<!-- gh-comment-id:2858926906 --> @marcelklehr commented on GitHub (May 7, 2025): Can you check if there is actually anything malicious in your bookmarks file, though? I'd rather not circumvent a legitimate issue.
Author
Owner

@asherkory commented on GitHub (May 7, 2025):

Okay, interesting -- I did some investigating and discovered that Google Drive's virus scanner was flagging one particular bookmark. The URL was a very normal website that none of my web browsers have an issue with, so who knows exactly why Drive had an issue with it. I removed the offending bookmark manually from bookmarks.xbel and was able to sync again on all my devices.
I know this technically resolves my issue, but I wonder if it would be nice to have some way to warn the user that their bookmarks file may be infected, allow them to bypass the warning and still sync or at least surface the error message in a more obvious way.

<!-- gh-comment-id:2859137366 --> @asherkory commented on GitHub (May 7, 2025): Okay, interesting -- I did some investigating and discovered that Google Drive's virus scanner was flagging one particular bookmark. The URL was a very normal website that none of my web browsers have an issue with, so who knows exactly why Drive had an issue with it. I removed the offending bookmark manually from `bookmarks.xbel` and was able to sync again on all my devices. I know this technically resolves my issue, but I wonder if it would be nice to have some way to warn the user that their bookmarks file may be infected, allow them to bypass the warning and still sync or at least surface the error message in a more obvious way.
Author
Owner

@marcelklehr commented on GitHub (May 9, 2025):

Interesting. Google suggests to warn the user with the option to continue with the download anyway, but enough users seem to be affected by this that I think Drive may be overreacting when it comes to floccus, so I think I'll just always add that GET parameter just in case and not lose sleep over this. Thanks for going the extra mile with this report!

<!-- gh-comment-id:2867154782 --> @marcelklehr commented on GitHub (May 9, 2025): Interesting. Google suggests to warn the user with the option to continue with the download anyway, but enough users seem to be affected by this that I think Drive may be overreacting when it comes to floccus, so I think I'll just always add that GET parameter just in case and not lose sleep over this. Thanks for going the extra mile with this report!
Author
Owner

@asherkory commented on GitHub (May 9, 2025):

Thanks for being so responsive!

<!-- gh-comment-id:2867241156 --> @asherkory commented on GitHub (May 9, 2025): Thanks for being so responsive!
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/floccus#1298
No description provided.