Can not use ankihub

I have anki, it is the most recent version and purchased a subcription on anki hub. I have installed the add on and when I click to sign in I receive this error.

Anki 24.04.1 (ccd9ca1a) (ao)
Python 3.9.18 Qt 6.6.2 PyQt 6.6.1
Platform: Windows-10-10.0.22631

Traceback (most recent call last):

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py”, line 247, in _send_request_with_retry
response = self._send_request_with_retry_inner(

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity_init_.py”, line 289, in wrapped_f
return self(f, *args, **kw)

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity_init_.py”, line 379, in call
do = self.iter(retry_state=retry_state)

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity_init_.py”, line 326, in iter
raise retry_exc from fut.exception()

tenacity.RetryError: RetryError[<Future at 0x1a255d00c40 state=finished raised SSLError>]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py”, line 255, in _send_request_with_retry
response = last_attempt.result()

File “concurrent.futures._base”, line 439, in result

File “concurrent.futures._base”, line 391, in __get_result

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity_init_.py”, line 382, in call
result = fn(*args, **kwargs)

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py”, line 270, in _send_request_with_retry_inner
response = session.send(request, stream=stream, timeout=timeout)

File “requests.sessions”, line 703, in send

File “requests.adapters”, line 517, in send

requests.exceptions.SSLError: HTTPSConnectionPool(host=‘app.ankihub.net’, port=443): Max retries exceeded with url: /api/login/ (Caused by SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)’)))

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\gui\menu.py”, line 186, in login
token = ankihub_client.login(credentials=credentials)

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py”, line 276, in login
response = self._send_request(“POST”, API.ANKIHUB, “/login/”, json=credentials)

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py”, line 229, in _send_request
response = self._send_request_with_retry(

File “C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py”, line 257, in _send_request_with_retry
raise AnkiHubRequestException(e) from e

1322529746.ankihub_client.ankihub_client.AnkiHubRequestException: AnkiHub request exception: HTTPSConnectionPool(host=‘app.ankihub.net’, port=443): Max retries exceeded with url: /api/login/ (Caused by SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)’)))

Error message (don't change this)
Anki 24.04.1 (ccd9ca1a)  (ao)
Python 3.9.18 Qt 6.6.2 PyQt 6.6.1
Platform: Windows-10-10.0.22631

Traceback (most recent call last):

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py", line 247, in _send_request_with_retry
    response = self._send_request_with_retry_inner(

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity\__init__.py", line 289, in wrapped_f
    return self(f, *args, **kw)

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity\__init__.py", line 379, in __call__
    do = self.iter(retry_state=retry_state)

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity\__init__.py", line 326, in iter
    raise retry_exc from fut.exception()

tenacity.RetryError: RetryError[<Future at 0x1a2578a9cd0 state=finished raised SSLError>]


During handling of the above exception, another exception occurred:


Traceback (most recent call last):

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py", line 255, in _send_request_with_retry
    response = last_attempt.result()

  File "concurrent.futures._base", line 439, in result

  File "concurrent.futures._base", line 391, in __get_result

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\lib\tenacity\__init__.py", line 382, in __call__
    result = fn(*args, **kwargs)

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py", line 270, in _send_request_with_retry_inner
    response = session.send(request, stream=stream, timeout=timeout)

  File "requests.sessions", line 703, in send

  File "requests.adapters", line 517, in send

requests.exceptions.SSLError: HTTPSConnectionPool(host='app.ankihub.net', port=443): Max retries exceeded with url: /api/login/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))


The above exception was the direct cause of the following exception:


Traceback (most recent call last):

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\gui\menu.py", line 186, in login
    token = ankihub_client.login(credentials=credentials)

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py", line 276, in login
    response = self._send_request("POST", API.ANKIHUB, "/login/", json=credentials)

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py", line 229, in _send_request
    response = self._send_request_with_retry(

  File "C:\Users\rynfr\AppData\Roaming\Anki2\addons21\1322529746\ankihub_client\ankihub_client.py", line 257, in _send_request_with_retry
    raise AnkiHubRequestException(e) from e

1322529746.ankihub_client.ankihub_client.AnkiHubRequestException: AnkiHub request exception: HTTPSConnectionPool(host='app.ankihub.net', port=443): Max retries exceeded with url: /api/login/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))

Sentry link (for developers)

Please try this fix: Trouble logging into AnkiHub - #14 by abdo.nh

Ahmed,

Thank you this fixed that issue and I was able to get into ankihub and download the cards. After downloading the cards, I do not have any images. Under anki hub media sync, it says idle. I have also clicked on browse → ankihub → reset all local changes to a deck. But I still have no images. This is the case for almost every card in the deck.

i found a few cards with images, like the one I am attached below.

However, 99% of cards appear like this:


How much storage do you have on your device?

Should be ok regarding space I assume.

1 Like

Did you ever get a prompt to upload or download from ankiweb? what did you click?

I know you’ve done this but can you try to reset local changes again? That should bring the images back

I just reset local changes again and this did not seem to change anything. I don’t recall what I selected, I think download from ankiweb, but after I first had the image issue, I erased all my ankiweb online decks as I thought the problem could be that. I seem to have the files saved on my desktop as shown below but in anki they are missing. Maybe I renamed a profile or deck and there is some incompatibility with the names?

You will need to click upload to ankiweb or nothing gets saved. Did you get that option after you resetted local changes or was this before?

I do not recall ever selecting that option. So how do I navigate to that option now?

It should appear after you reset local changes. Your sync button should be orange

This does not appear after I reset local changes. Nothing appears it just says local changes have been reset. The sync button also is not orange, I click sync and it asks me to sign it again (not sure if this typical that every time I hit sync it asks me to sign into ankiweb).


I have the same issue on anki web as you can below there’s no images.

I read elsewhere I can force a sync in one direction (upload to ankiweb). When I try this I get a loading bar and it seems to complete the sync with in seconds, but then screen becomes non responsive as shown below. I have to force quit and then open anki back up in order to use it. (it is completely non responsive or takes 30-60 seconds to respond to any click).

Or sometimes when I try to sync I will get this screen shown below and it the loading bar will be periodically moving but everything is nonresponsive.

Please use AnkiHub > Help > Upload logs and data and let us know the filename shown.

@abdo.nh let me know if you can help out with this

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.