# Errors during Syncing with gramps\_web\_sync

**URL:** <https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287>\
**Category:** Gramps Web\
**Tags:** third-party-addon, websolutions, sync\_tool\
**Created:** [March 30, 2026, 12:15pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287 "2026-03-30T12:15:28Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [March 30, 2026, 12:15pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/1 "2026-03-30T12:15:28Z")

</div>

Hello everyone,

I am currently facing issues trying to sync my local tree to Gramps Web.  
I fill out my login credentials as usual:

 ![grafik](https://global.discourse-cdn.com/free1/uploads/gramps/original/2X/4/4d1ecf43b1d35396628a2fdddeb186ffd5fbd875.png)

After pressing next I get an error message. Log reads:

`877483: WARNING: grampswebsync.py: line 83: Keyring is not installed, cannot retrieve password.`  
`884931: ERROR: grampswebsync.py: line 483: Fehler 500 beim Herstellen der Verbindung zum Server.`

Happy for any tips or a possibly identifing this as a bug. Can give more details/provide translation of german bits if needed!

Thanks so much in advance!

Here’s all my version Info:

**gramps\_web\_sync**  
Version: 1.3.8

**Gramps Web** (using [grampshub.com](http://grampshub.com))  
Gramps 6.0.7  
Gramps Web API 3.9.0  
Gramps Web Frontend 26.3.1  
Gramps QL 0.4.0  
Sifts 1.3.0  
locale: en  
multi-tree: true  
task queue: true  
OCR: true  
chat: true

**Gramps Desktop**  
AIO64-6.0.7–1  
Python: 3.14.3  
sqlite: 3.52.0  
orjson: 3.11.7  
LANG: de\_DE.UTF-8  
OS: Windows

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [March 30, 2026, 12:22pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/2 "2026-03-30T12:22:13Z")

</div>

and here comes the debug report for grampswebsync (username redacted)

`7062: DEBUG: grampswebsync.py: line 103: Initializing Gramps Web Sync addon.`  
`8380: DEBUG: grampswebsync.py: line 79: Retrieving password for user XX`  
`8381: WARNING: grampswebsync.py: line 83: Keyring is not installed, cannot retrieve password.`  
`9384: DEBUG: grampswebsync.py: line 222: Moving to next page from page 0.`  
`9385: DEBUG: grampswebsync.py: line 222: Moving to next page from page 1.`  
`12091: DEBUG: grampswebsync.py: line 222: Moving to next page from page 1.`  
`13432: DEBUG: grampswebsync.py: line 222: Moving to next page from page 1.`  
`13432: DEBUG: grampswebsync.py: line 222: Moving to next page from page 2.`  
`13434: DEBUG: webapihandler.py: line 161: Fetching an access token from the server`  
`13563: DEBUG: webapihandler.py: line 161: Fetching an access token from the server`  
`13799: DEBUG: grampswebsync.py: line 222: Moving to next page from page 2.`  
`13801: INFO: grampswebsync.py: line 502: Downloading Gramps XML file.`  
`14840: ERROR: grampswebsync.py: line 483: Fehler 500 beim Herstellen der Verbindung zum Server.`

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [March 30, 2026, 12:44pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/3 "2026-03-30T12:44:21Z")

</div>

This seems to be a regression in Web API 3.8.0 or 3.9.0, see [Web sync issue · Issue #55 · DavidMStraub/gramps-web-sync · GitHub](https://github.com/DavidMStraub/gramps-web-sync/issues/55)

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [March 30, 2026, 2:22pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/4 "2026-03-30T14:22:52Z")

</div>

Hey David, thanks so much for the quick response and looking into it!

will report back when v3.9.1 is out 🙂

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [April 17, 2026, 11:04am UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/5 "2026-04-17T11:04:00Z")

</div>

Hello, just tried again. not completing, but also no error message from gramps anymore. just displaying Error 500.

see my version info + debug report below 🙂

let me know if can provide anything else for trying to tackle this 🙂

**Gramps Desktop**  
Python: 3.14.4  
sqlite: 3.53.0  
orjson: 3.11.8  
LANG: de\_DE.UTF-8  
OS: Windows

**Gramps Web (Grampshub)**  
Gramps 6.0.8  
Gramps Web API 3.11.1  
Gramps Web Frontend 26.4.1  
Gramps QL 0.4.0  
Sifts 1.3.0  
locale: en  
multi-tree: true  
task queue: true  
OCR: true  
chat: true

**Debug Log**

`2026-04-17 12:56:40.969: DEBUG: grampswebsync.py: line 103: Initializing Gramps Web Sync addon.`  
`2026-04-17 12:56:42.089: DEBUG: grampswebsync.py: line 79: Retrieving password for user XX`  
`2026-04-17 12:56:42.090: WARNING: grampswebsync.py: line 83: Keyring is not installed, cannot retrieve password.`  
`2026-04-17 12:56:43.361: DEBUG: grampswebsync.py: line 222: Moving to next page from page 0.`  
`2026-04-17 12:56:43.362: DEBUG: grampswebsync.py: line 222: Moving to next page from page 1.`  
`2026-04-17 12:56:46.682: DEBUG: grampswebsync.py: line 222: Moving to next page from page 1.`  
`2026-04-17 12:56:47.484: DEBUG: grampswebsync.py: line 222: Moving to next page from page 1.`  
`2026-04-17 12:56:47.484: DEBUG: grampswebsync.py: line 222: Moving to next page from page 2.`  
`2026-04-17 12:56:47.486: DEBUG: webapihandler.py: line 161: Fetching an access token from the server`  
`2026-04-17 12:56:47.621: DEBUG: webapihandler.py: line 161: Fetching an access token from the server`  
`2026-04-17 12:56:47.866: DEBUG: grampswebsync.py: line 222: Moving to next page from page 2.`  
`2026-04-17 12:56:47.868: INFO: grampswebsync.py: line 502: Downloading Gramps XML file.`  
`2026-04-17 12:56:48.976: WARNING: grampswebsync.py: line 483: Fehler 500 beim Herstellen der Verbindung zum Server.`  
`2026-04-17 12:56:48.976: DEBUG: grampswebsync.py: line 222: Moving to next page from page 2.`  
`2026-04-17 12:56:48.977: DEBUG: grampswebsync.py: line 224: Skipping to last page due to error.`  
`2026-04-17 12:56:50.818: DEBUG: grampswebsync.py: line 214: Closing Gramps Web Sync addon.`

Could maybe be related to another issue I’m facing?

> [@Gramps Web export issue \[XML - can only concatenate str (not "NoneType") to str\] & \[GEDCOM - HandleError()\]](https://gramps.discourse.group/t/gramps-web-export-issue-xml-can-only-concatenate-str-not-nonetype-to-str-gedcom-handleerror/4685/6):
>
> After retrying after some time, the issue is still there. Accessing Grampshub via Firefox on Win10 if that matters. Happy to give more detail/do some testing - but don’t have any software developement skills Cheers

might be a far stretch, as I have no real software/coding knowledge.

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [June 12, 2026, 9:45am UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/6 "2026-06-12T09:45:23Z")

</div>

Hello,

reporting back from my attempts to overcome my current data lock-in 😬

Even after some Gramps Web and API Updates, the same issues still occur as detailled in this thread as well as the one with exporting I wrote about [here](https://gramps.discourse.group/t/gramps-web-export-issue-xml-can-only-concatenate-str-not-nonetype-to-str-gedcom-handleerror/4685/6) (also see last post).

→ So what are my options right now?  
Is there any options to “manually” search for corrupted data?  
Or might it be best to manually add Gramps Web Changes to my Gramps Desktop and start over?  
(also haven’t tried exporting my data via other export options apart from Gramps XML - but as far as I know I’ll lose data when using them)

Thankful for any advice!

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 3, 2026, 1:57pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/7 "2026-07-03T13:57:20Z")

</div>

the problems persist 😕 … considering my options now:

Most export options are sucessful, but 2 produce errors: Gramps XML (`can only concatenate str (not "NoneType") to str`) and GEDCOM (`HandleError()`) are not working

Most likely i will have to make a plan on how to systematically see which changes were made compared to my desktop version and manually add them there. (Or even start completely from scratch to avoid carrying over corrupted data??)

@DavidMStraub Any clue you’ve got for this case, per chance? 🤞🏻

If not, so be it! After all I should have synced much more frequently after doing changes on Gramps Web. But I didn’t know at that time..

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [July 3, 2026, 2:20pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/8 "2026-07-03T14:20:15Z")

</div>

Hi,

Can you provide the celery log? That’s where the exception traceback is.

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 3, 2026, 2:47pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/9 "2026-07-03T14:47:49Z")

</div>

Hey, I unfortunately can’t provide any logs as I don’t host Gramps Web myself - I use Grampshub 🙂

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [July 3, 2026, 2:59pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/10 "2026-07-03T14:59:56Z")

</div>

Oh, that bloody service.

Then just provide me an exact sync time/date please 🙂

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 3, 2026, 9:26pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/11 "2026-07-03T21:26:13Z")

</div>

😉

Alright, just gave it another shot: sync attempted @ ~23:23

thank you!

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [July 4, 2026, 10:08am UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/12 "2026-07-04T10:08:35Z")

</div>

Really, 23:23 CEST? There is nothing in the log at all. Did the addon report an error 500?

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 4, 2026, 8:13pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/13 "2026-07-04T20:13:27Z")

</div>

Yes, yesterday I tried @ 23:23 CEST - addon reported error 500.

Confirmed reproducing error 500 by trying again around just before hitting send on this (around 22:12 CEST), just to be sure

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [July 4, 2026, 8:31pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/14 "2026-07-04T20:31:16Z")

</div>

Oh, I see the error now. It’s not in celery as it happens during export, so I was looking in the wrong place.

```python
[2026-07-04 20:11:30 +0000] [16654] [ERROR] Error handling request GET /api/exporters/gramps/file
Traceback (most recent call last):
  File "/venv/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 141, in handle
    self.handle_request(listener, req, client, addr)
    ~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 184, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/venv/lib/python3.13/site-packages/flask/app.py", line 1536, in __call__
    return self.wsgi_app(environ, start_response)
           ~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/flask/app.py", line 1514, in wsgi_app
    response = self.handle_exception(e)
  File "/venv/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/venv/lib/python3.13/site-packages/flask/app.py", line 919, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/venv/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/venv/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps_webapi/api/auth.py", line 44, in wrapper
    return func(*args, **kwargs)
  File "/venv/lib/python3.13/site-packages/flask/views.py", line 110, in view
    return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps_webapi/api/resources/ __init__.py", line 51, in dispatch_request
    return current_app.ensure_sync(meth)(*args, **kwargs)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/webargs/core.py", line 652, in wrapper
    return func(*args, **kwargs)
  File "/venv/lib/python3.13/site-packages/flask_smorest/arguments.py", line 85, in wrapper
    return current_app.ensure_sync(func)(*f_args, **f_kwargs)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps_webapi/api/resources/exporters.py", line 242, in get
    file_name, file_type = run_export(db_handle, extension, options)
                           ~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps_webapi/api/export.py", line 288, in run_export
    result = export_function(db_handle, file_path, user, options)
  File "/venv/lib/python3.13/site-packages/gramps/plugins/export/exportxml.py", line 1467, in export_data
    return g.write(filename)
           ~~~~~~~ ^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps/plugins/export/exportxml.py", line 1490, in write
    ret = GrampsXmlWriter.write(self, filename)
  File "/venv/lib/python3.13/site-packages/gramps/plugins/export/exportxml.py", line 200, in write
    self.write_xml_data()
    ~~~~~~~~~~~~~~~~~~~ ^^
  File "/venv/lib/python3.13/site-packages/gramps/plugins/export/exportxml.py", line 321, in write_xml_data
    self.write_person(person, 2)
    ~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps/plugins/export/exportxml.py", line 579, in write_person
    self.write_media_list(person.get_media_list(), index + 1)
    ~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/venv/lib/python3.13/site-packages/gramps/plugins/export/exportxml.py", line 1230, in write_media_list
    self.g.write('%s<objref hlink="%s"' % (sp, "_" + mobj_id))
                                               ~~~~^~~~~~~~~
TypeError: can only concatenate str (not "NoneType") to str

```

So you’re hitting this exact issue:

> <https://github.com/gramps-project/gramps-web-api/issues/479>
>
> If some objects contain invalid data, such as \`None\` as handle, Gramps XML expor…t can fail, which prevents backup as well as synchronization. We should have something like a "repair database" endpoint.

Can you please double-check your sync addon version?

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [July 4, 2026, 8:51pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/15 "2026-07-04T20:51:36Z")

</div>

And I assume you’ve already tried running check and repair in Gramps Web, right?

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 5, 2026, 10:03pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/16 "2026-07-05T22:03:13Z")

</div>

Oh, alright! thank you for taking the time to investigate 🔍

Checked my sync addon version (running 1.3.11) and check and repair in Gramps Web doesn’t bring up anything..

---

<div class="post-metadata">

**Author:** ![DavidMStraub](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/davidmstraub/32/7_2.png) [@DavidMStraub](https://gramps.discourse.group/u/DavidMStraub)\
**Post date:** [July 6, 2026, 5:32am UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/17 "2026-07-06T05:32:36Z")

</div>

Can you please update to 1.3.13 just to be sure?

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 6, 2026, 8:14am UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/18 "2026-07-06T08:14:47Z")

</div>

yes - I tried to update via built-in [addon manager](https://gramps-project.org/wiki/index.php/Gramps_Glossary#addon), but it will only offer me 1.3.11… Also tried manually installing from [github](https://github.com/gramps-project/addons/tree/master/gramps60) but that seems to be on 1.3.11 aswell.

Sorry for my incompetence .. 🫠 where do I retrieve v1.3.13?

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 20, 2026, 11:39pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/19 "2026-07-20T23:39:32Z")

</div>

found a file that seems to be a newer version of the web sync addon on [github](https://github.com/gramps-project/addons/tree/master/gramps61/download) - but I assume thats developed for Gramps versions 6.1.X, right?

So, no luck trying to update to 1.3.13 on Gramps Desktop V6.0.8 😕

Maybe I’m missing something?

---

<div class="post-metadata">

**Author:** ![gerox-5](https://avatars.discourse-cdn.com/v4/letter/g/848f3c/32.png) [@gerox-5](https://gramps.discourse.group/u/gerox-5)\
**Post date:** [July 30, 2026, 2:57pm UTC](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287/20 "2026-07-30T14:57:28Z")

</div>

Reporting back 🙂

… meanwhile, I was able to update to the sync addon to version 1.3.12, which I downloaded via built-in [Addon Manager](https://gramps-project.org/wiki/index.php/Gramps_Glossary#addon), which again, yielded error 500..

Also gave check&repair another try, but no errors were found.

[Next page](https://gramps.discourse.group/t/errors-during-syncing-with-gramps-web-sync/9287.md?page=2)
