core icon indicating copy to clipboard operation
core copied to clipboard

BMW Connected Drive - Requires continuous re-authentications and still, errors for Login requires captcha validation

Open Sanji78 opened this issue 3 months ago • 288 comments

The problem

BMW Connected Drive - Requires continuous re-authentications and still, errors for Login requires captcha validation

What version of Home Assistant Core has the issue?

core-2025-9-3

What was the last working version of Home Assistant Core?

none

What type of installation are you running?

Home Assistant Container

Integration causing the issue

BMW Connected Drive

Link to integration documentation on our website

No response

Diagnostics information

BMW Connected Drive - Requires continuous re-authentications and still, errors for Login requires captcha validation

Example YAML snippet


Anything in the logs that might be useful for us?

2025-09-25 11:23:39.308 ERROR (MainThread) [bimmer_connected.api.client] MyBMWQuotaError due to HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:49:41." }
2025-09-25 11:23:39.310 ERROR (MainThread) [homeassistant.components.bmw_connected_drive.coordinator] Error fetching bmw_connected_drive-XXXXXXXXXXX data: Error updating vehicle data. HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:49:41." }

Additional information

No response

Sanji78 avatar Sep 20 '25 07:09 Sanji78

Hey there @gerard33, @rikroe, mind taking a look at this issue as it has been labeled with an integration (bmw_connected_drive) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of bmw_connected_drive can trigger bot actions by commenting:

  • @home-assistant close Closes the issue.
  • @home-assistant rename Awesome new title Renames the issue.
  • @home-assistant reopen Reopen the issue.
  • @home-assistant unassign bmw_connected_drive Removes the current integration label and assignees on the issue, add the integration domain after the command.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


bmw_connected_drive documentation bmw_connected_drive source (message by IssueLinks)

home-assistant[bot] avatar Sep 23 '25 20:09 home-assistant[bot]

Same here ...

gino6888yang avatar Sep 24 '25 06:09 gino6888yang

+1

pl4za avatar Sep 24 '25 10:09 pl4za

2025-09-25 11:23:39.308 ERROR (MainThread) [bimmer_connected.api.client] MyBMWQuotaError due to HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:49:41." } 2025-09-25 11:23:39.310 ERROR (MainThread) [homeassistant.components.bmw_connected_drive.coordinator] Error fetching bmw_connected_drive-XXXXXXXXXXX data: Error updating vehicle data. HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:49:41." }

Sanji78 avatar Sep 25 '25 09:09 Sanji78

[31m2025-09-25 12:15:11.124 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed[0m
[33m2025-09-25 12:15:11.126 WARNING (MainThread) [homeassistant.config_entries] Config entry '<email>' for bmw_connected_drive integration could not authenticate: Login requires captcha validation[0m

[31m2025-09-25 12:18:29.638 ERROR (MainThread) [bimmer_connected.api.client] MyBMWQuotaError due to HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:41:31." }[0m
[31m2025-09-25 12:18:35.172 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed[0m
[33m2025-09-25 12:18:35.176 WARNING (MainThread) [homeassistant.config_entries] Config entry '<email>' for bmw_connected_drive integration could not authenticate: Login requires captcha validation[0m

[31m2025-09-25 12:19:16.327 ERROR (MainThread) [bimmer_connected.api.client] MyBMWQuotaError due to HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:40:44." }[0m
[31m2025-09-25 12:19:22.081 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed[0m
[33m2025-09-25 12:19:22.082 WARNING (MainThread) [homeassistant.config_entries] Config entry '<email>' for bmw_connected_drive integration could not authenticate: Login requires captcha validation[0m

I'll disable my integration for a couple hours before trying again, to see if I got temp blocked due to repeated requests.

araemo avatar Sep 25 '25 16:09 araemo

New error (not out of quota request) - just responds with Blocked.

[31m2025-09-26 12:57:46.376 ERROR (MainThread) [bimmer_connected.account] Unable to get details for vehicle WBAxxxxxxxxxx - (MyBMWAPIError) HTTPStatusError: Blocked[0m [31m2025-09-26 12:57:46.376 ERROR (MainThread) [homeassistant.components.bmw_connected_drive.coordinator] Error fetching [email protected] data: Error updating vehicle data. HTTPStatusError: Blocked[0m

jim-downie avatar Sep 26 '25 13:09 jim-downie

Same here, I think its a new issue...

matejhusek avatar Sep 26 '25 13:09 matejhusek

Same here (UK based) . App allows access though.

davebarrett1959 avatar Sep 26 '25 13:09 davebarrett1959

I re-enabled my integration this morning, got prompted to re-auth, did the re-auth/re-captcha, and I'm in this morning.

araemo avatar Sep 26 '25 13:09 araemo

Same issue here since an hour ago. MyBMWAPIError due to HTTPStatusError: Blocked

jcarroquino avatar Sep 26 '25 13:09 jcarroquino

Same here / Germany (rest of world)

mibo-wb-gh avatar Sep 26 '25 13:09 mibo-wb-gh

Same here, just "Blocked" Germany (rest of world)

Focke84 avatar Sep 26 '25 13:09 Focke84

In italy "Blocked"

Registratore: homeassistant.components.bmw_connected_drive.coordinator Fonte: helpers/update_coordinator.py:424 Integrazione: BMW Connected Drive (documentazione, problemi) Prima occorrenza: 07:35:41 (2 occorrenze) Ultimo accesso: 13:57:38

Error fetching [email protected] data: Error updating vehicle data. HTTPStatusError: {"message":"Request Timeout","statusCode":408} Error fetching [email protected] data: Error updating vehicle data. HTTPStatusError: Blocked

voyagerft avatar Sep 26 '25 14:09 voyagerft

Same for me in Belgium :(

Auka84 avatar Sep 26 '25 14:09 Auka84

Just got the same error here. Location The Netherlands.

SilencerNL avatar Sep 26 '25 14:09 SilencerNL

Here we go again: https://github.com/home-assistant/core/issues/149750 To confirm: the workaround in this issue does not work now. http blocked occurs even if the string is randomised again. BMW if you're reading this: Please stop what you're doing and restore access to paying customers.

SGXander avatar Sep 26 '25 14:09 SGXander

Same problem, but it works perfect for my petrol BMW and not for my hybrid BMW. As soon as I retrieve information from the hybrid it requires re-authentication.

Nickdejonghe avatar Sep 26 '25 15:09 Nickdejonghe

Changing to unique user agent (other than official integration fix) also not working as solution for me

DieterC1984 avatar Sep 26 '25 15:09 DieterC1984

@DieterC1984 tried that as well, no joy :(

mibo-wb-gh avatar Sep 26 '25 15:09 mibo-wb-gh

Same in Portugal.

Disabled for now. I will try again after midnight, but I'm afraid BMW is expending more resources in blocking paying costumers like us.

RuiSSousa avatar Sep 26 '25 15:09 RuiSSousa

Same here, it was working fine, then stopped after I restarted HA

renaudallard avatar Sep 26 '25 16:09 renaudallard

As my logs are different from op, thought I'd post them:

Logger: bimmer_connected.api.client
Source: components/bmw_connected_drive/coordinator.py:74
First occurred: 16:22:21 (2 occurrences)
Last logged: 16:22:22
MyBMWAPIError due to HTTPStatusError: Blocked
Logger: bimmer_connected.account
Source: components/bmw_connected_drive/coordinator.py:74
First occurred: 16:22:21 (2 occurrences)
Last logged: 16:22:22

    Unable to get details for vehicle ******************* - (MyBMWAPIError) HTTPStatusError: Blocked
    Unable to get details for vehicle ******************* - (MyBMWAPIError) HTTPStatusError: Blocked

MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed
Logger: homeassistant.config_entries
Source: config_entries.py:779
First occurred: 16:18:16 (2 occurrences)
Last logged: 16:22:27

    Config entry '********@***********' for bmw_connected_drive integration could not authenticate: missing_captcha
    Config entry '********@***********' for bmw_connected_drive integration could not authenticate: Login requires captcha validation

Hard to tell from this if it's just actively blocked or the captcha has changed again or both.

SGXander avatar Sep 26 '25 16:09 SGXander

I think they changed their request throttling. After leaving my integration disabled long enough for the quota to expire, it worked for about 2 and a half hours:

At 9:30 AM (EST) this morning I re-authed, and it was working At about 12:09 PM (EST) it started reporting errors due to quota and all the entities went back to unavailable:

[31m2025-09-26 12:11:12.293 ERROR (MainThread) [bimmer_connected.api.client] MyBMWQuotaError due to HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:48:48." }[0m
[31m2025-09-26 12:11:12.294 ERROR (MainThread) [aiohttp.server] Error handling request from 10.0.0.50
Traceback (most recent call last):
  File "/usr/local/lib/python3.13/site-packages/bimmer_connected/api/client.py", line 77, in raise_for_status_event_handler
    response.raise_for_status()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/local/lib/python3.13/site-packages/httpx/_models.py", line 829, in raise_for_status
    raise HTTPStatusError(message, request=request, response=self)
httpx.HTTPStatusError: Client error '403 Quota Exceeded' for url 'https://cocoapi.bmwgroup.us/eadrax-vcs/v5/vehicle-list'
For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/403

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

Traceback (most recent call last):
  File "/usr/local/lib/python3.13/site-packages/aiohttp/web_protocol.py", line 510, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/aiohttp/web_app.py", line 569, in _handle
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 86, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 41, in headers_middleware
    response = await handler(request)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
    result = await handler(request, **request.match_info)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/diagnostics/__init__.py", line 294, in get
    data = await info.config_entry_diagnostics(hass, config_entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/bmw_connected_drive/diagnostics.py", line 57, in async_get_config_entry_diagnostics
    await coordinator.account.get_vehicles(force_init=True)
  File "/usr/local/lib/python3.13/site-packages/bimmer_connected/account.py", line 114, in get_vehicles
    await self._init_vehicles()
  File "/usr/local/lib/python3.13/site-packages/bimmer_connected/account.py", line 86, in _init_vehicles
    vehicle_list_response = await client.post(
                            ^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
    )
    ^
  File "/usr/local/lib/python3.13/site-packages/httpx/_client.py", line 1859, in post
    return await self.request(
           ^^^^^^^^^^^^^^^^^^^
    ...<13 lines>...
    )
    ^
  File "/usr/local/lib/python3.13/site-packages/httpx/_client.py", line 1540, in request
    return await self.send(request, auth=auth, follow_redirects=follow_redirects)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/httpx/_client.py", line 1629, in send
    response = await self._send_handling_auth(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<4 lines>...
    )
    ^
  File "/usr/local/lib/python3.13/site-packages/httpx/_client.py", line 1657, in _send_handling_auth
    response = await self._send_handling_redirects(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<3 lines>...
    )
    ^
  File "/usr/local/lib/python3.13/site-packages/httpx/_client.py", line 1715, in _send_handling_redirects
    raise exc
  File "/usr/local/lib/python3.13/site-packages/httpx/_client.py", line 1697, in _send_handling_redirects
    await hook(response)
  File "/usr/local/lib/python3.13/site-packages/bimmer_connected/api/client.py", line 79, in raise_for_status_event_handler
    await handle_httpstatuserror(ex, log_handler=_LOGGER)
  File "/usr/local/lib/python3.13/site-packages/bimmer_connected/api/utils.py", line 89, in handle_httpstatuserror
    raise _ex_to_raise(_err_message) from ex
bimmer_connected.models.MyBMWQuotaError: HTTPStatusError: { "statusCode": 403, "message": "Out of call volume quota. Quota will be replenished in 01:48:48." }[0m

araemo avatar Sep 26 '25 16:09 araemo

I also have the error again from Spain, since today it has stopped working again.

2025-09-26 18:12:54.056 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed 2025-09-26 18:12:54.058 WARNING (MainThread) [homeassistant.config_entries] Config entry '<EMAIL_01>' for bmw_connected_drive integration could not authenticate: missing_captcha 2025-09-26 18:12:56.646 WARNING (MainThread) [aioamazondevices] Sensors data not available [/api/phoenix error 'Miscellaneous Persistent Warning'], skipping 2025-09-26 18:12:57.456 WARNING (MainThread) [aioamazondevices] Unknown device type '<DEVICE_TYPE_01>' for <NAME_01>'s BMW Group – Amazon Alexa Car Integration: please read https://github.com/chemelli74/aioamazondevices/wiki/Unknown-Device-Types 2025-09-26 18:12:57.457 WARNING (MainThread) [aioamazondevices] Unknown device type '<DEVICE_TYPE_01>' for <NAME_01>'s BMW Group – Amazon Alexa Car Integration: please read https://github.com/chemelli74/aioamazondevices/wiki/Unknown-Device-Types 2025-09-26 18:12:57.458 WARNING (MainThread) [aioamazondevices] Unknown device type '<DEVICE_TYPE_01>' for <NAME_01>'s BMW Group – Amazon Alexa Car Integration: please read https://github.com/chemelli74/aioamazondevices/wiki/Unknown-Device-Types 2025-09-26 18:12:57.459 WARNING (MainThread) [aioamazondevices] Unknown device type '<DEVICE_TYPE_01>' for <NAME_01>'s BMW Group – Amazon Alexa Car Integration: please read https://github.com/chemelli74/aioamazondevices/wiki/Unknown-Device-Types 2025-09-26 18:12:57.460 WARNING (MainThread) [aioamazondevices] Unknown device type '<DEVICE_TYPE_01>' for <NAME_01>'s BMW Group – Amazon Alexa Car Integration: please read https://github.com/chemelli74/aioamazondevices/wiki/Unknown-Device-Types 2025-09-26 18:13:47.549 ERROR (MainThread) [bimmer_connected.api.client] MyBMWAPIError due to HTTPStatusError: Blocked 2025-09-26 18:13:47.551 ERROR (MainThread) [bimmer_connected.account] Unable to get details for vehicle <VIN_01> - (MyBMWAPIError) HTTPStatusError: Blocked 2025-09-26 18:13:53.563 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed 2025-09-26 18:13:53.565 WARNING (MainThread) [homeassistant.config_entries] Config entry '<EMAIL_01>' for bmw_connected_drive integration could not authenticate: missing_captcha 2025-09-26 18:20:35.717 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed 2025-09-26 18:20:35.719 WARNING (MainThread) [homeassistant.config_entries] Config entry '<EMAIL_01>' for bmw_connected_drive integration could not authenticate: missing_captcha 2025-09-26 18:20:53.521 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed 2025-09-26 18:20:53.523 WARNING (MainThread) [homeassistant.config_entries] Config entry '<EMAIL_01>' for bmw_connected_drive integration could not authenticate: missing_captcha 2025-09-26 18:22:00.289 DEBUG (MainThread) [bimmer_connected.api.authentication] Authenticating with MyBMW flow for North America & Rest of World. 2025-09-26 18:22:00.932 DEBUG (MainThread) [bimmer_connected.account] Getting vehicle list 2025-09-26 18:22:00.932 DEBUG (MainThread) [bimmer_connected.account] Getting vehicle list 2025-09-26 18:22:00.933 DEBUG (MainThread) [bimmer_connected.api.authentication] Authenticating with refresh token for North America & Rest of World. 2025-09-26 18:22:01.862 DEBUG (MainThread) [bimmer_connected.vehicle.vehicle] Getting vehicle list 2025-09-26 18:22:02.752 ERROR (MainThread) [bimmer_connected.api.client] MyBMWAPIError due to HTTPStatusError: Blocked 2025-09-26 18:22:02.753 ERROR (MainThread) [bimmer_connected.account] Unable to get details for vehicle <VIN_01> - (MyBMWAPIError) HTTPStatusError: Blocked 2025-09-26 18:22:02.753 DEBUG (MainThread) [homeassistant.components.bmw_connected_drive.coordinator] Finished fetching bmw_connected_drive-<EMAIL_01> data in 1.821 seconds (success: False) 2025-09-26 18:22:08.168 DEBUG (MainThread) [bimmer_connected.account] Getting vehicle list 2025-09-26 18:22:08.169 DEBUG (MainThread) [bimmer_connected.account] Getting vehicle list 2025-09-26 18:22:08.171 DEBUG (MainThread) [bimmer_connected.api.authentication] Authenticating with refresh token for North America & Rest of World. 2025-09-26 18:22:08.358 ERROR (MainThread) [bimmer_connected.api.authentication] MyBMWAuthError due to HTTPStatusError: invalid_request - The request is missing a required parameter, includes an unsupported parameter value (other than grant type), repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the client, or is otherwise malformed 2025-09-26 18:22:08.360 DEBUG (MainThread) [bimmer_connected.api.authentication] Unable to get access token using refresh token, falling back to username/password. 2025-09-26 18:22:08.360 DEBUG (MainThread) [bimmer_connected.api.authentication] Authenticating with MyBMW flow for North America & Rest of World. 2025-09-26 18:22:08.361 DEBUG (MainThread) [homeassistant.components.bmw_connected_drive.coordinator] Finished fetching bmw_connected_drive-<EMAIL_01> data in 0.192 seconds (success: False) 2025-09-26 18:22:08.361 WARNING (MainThread) [homeassistant.config_entries] Config entry '<EMAIL_01>' for bmw_connected_drive integration could not authenticate: missing_captcha

ivanvilches1976 avatar Sep 26 '25 16:09 ivanvilches1976

Same here in Germany. As soon as I connect it authenticates fine and then within seconds it throws an error. Got a PHEV connected to it.

sQeezz avatar Sep 26 '25 16:09 sQeezz

Same problem in The Netherlands. Hopefully there is a quick solution.

Qonsaides avatar Sep 26 '25 16:09 Qonsaides

Same here (also in Germany). 2025-09-26 18:58:58.722 ERROR (MainThread) [bimmer_connected.account] Unable to get details for vehicle WBXXXXXXXX435 - (MyBMWAPIError) HTTPStatusError: Blocked 2025-09-26 18:58:58.722 DEBUG (MainThread) [homeassistant.components.bmw_connected_drive.coordinator] Finished fetching [email protected] data in 2.332 seconds (success: False)

RalfEs73 avatar Sep 26 '25 17:09 RalfEs73

My Engie app informed me that API of BMW changed today and that I had to login again. So at least they were prepared for this. Wonder if there might be an Engie integration to read out my iX3 SOC 😂

DieterC1984 avatar Sep 26 '25 17:09 DieterC1984

Blocked in England too. Bmw may make good cars but they are cr&p at software and supporting their customers. Guess my next ev will be Chinese.

GSV3MiaC avatar Sep 26 '25 21:09 GSV3MiaC

For posterity:

❯ bimmerconnected status $USERNAME $PASSWORD $REGION
MyBMWAPIError due to HTTPStatusError: Blocked
Unable to get details for vehicle xxx - (MyBMWAPIError) HTTPStatusError: Blocked
MyBMWAPIError: HTTPStatusError: Blocked

sshaikh avatar Sep 26 '25 22:09 sshaikh