Skip to content

PyiCloudAPIResponseException('Service Temporarily Unavailable (503) #1176

@themcv

Description

@themcv

Overview

Unable to authenticate using icloudpd. Receive a 503 error when trying to authenticate.

Steps to Reproduce

  1. Install icloudpd
  2. Run the command "icloudpd --auth-only -u youremail@email.com"
  3. Authenticate

version:1.28.1, commit sha:ad1a381, commit timestamp:Sun Jun 8 14:28:20 2025 EDT
Rocky Linux 9.6 kernel 5.14.0-570.22.1.el9_6.x86_64

Expected Behavior

icloudPD authenticates correctly and the service starts pulling photos

Actual Behavior

After authenticating correctly, the following Traceback is dumped to console

2025-06-27 23:42:20 ERROR Service Temporarily Unavailable (503)
2025-06-27 23:42:20 ERROR Failed to login with srp, falling back to old raw password authentication. Error: ('Failed to initiate srp authentication.', PyiCloudAPIResponseException('Service Temporarily Unavailable (503)'))
2025-06-27 23:42:21 ERROR Service Temporarily Unavailable (503)
2025-06-27 23:42:21 ERROR Failed to login with raw password. Error: ('Invalid email/password combination.', PyiCloudAPIResponseException('Service Temporarily Unavailable (503)'))
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 289, in _authenticate_srp
response = self.session.post("%s/signin/init" % self.AUTH_ENDPOINT, data=json.dumps(data), headers=headers)
File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 637, in post
return self.request("POST", url, data=data, json=json, **kwargs)
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/session.py", line 123, in request
self._raise_error(str(response.status_code), response.reason)
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/session.py", line 197, in _raise_error
raise api_error
pyicloud_ipd.exceptions.PyiCloudAPIResponseException: Service Temporarily Unavailable (503)

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

Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 197, in authenticate
self._authenticate_srp()
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 294, in _authenticate_srp
raise PyiCloudFailedLoginException(msg, error) from error
pyicloud_ipd.exceptions.PyiCloudFailedLoginException: ('Failed to initiate srp authentication.', PyiCloudAPIResponseException('Service Temporarily Unavailable (503)'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 355, in _authenticate_raw_password
self.session.post(
File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 637, in post
return self.request("POST", url, data=data, json=json, **kwargs)
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/session.py", line 123, in request
self._raise_error(str(response.status_code), response.reason)
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/session.py", line 197, in _raise_error
raise api_error
pyicloud_ipd.exceptions.PyiCloudAPIResponseException: Service Temporarily Unavailable (503)

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

Traceback (most recent call last):
File "/usr/local/bin/icloudpd", line 8, in
sys.exit(main())
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1161, in call
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1082, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1443, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 788, in invoke
return _callback(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/icloudpd/base.py", line 794, in main
result = core(
File "/usr/local/lib/python3.9/site-packages/icloudpd/base.py", line 1257, in core
icloud = authenticator(
File "/usr/local/lib/python3.9/site-packages/icloudpd/authentication.py", line 53, in authenticate

icloud = PyiCloudService(
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 161, in init
self.authenticate()
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 204, in authenticate
raise error
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 201, in authenticate
self._authenticate_raw_password()
File "/usr/local/lib/python3.9/site-packages/pyicloud_ipd/base.py", line 363, in _authenticate_raw_password
raise PyiCloudFailedLoginException(msg, error) from error
pyicloud_ipd.exceptions.PyiCloudFailedLoginException: ('Invalid email/password combination.', PyiCloudAPIResponseException('Service Temporarily Unavailable (503)'))

Context

This seems to be triggered by a password change. My service was behaving normally on my old box until I had to reset the password.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions