{"id":14985266,"url":"https://github.com/bimmerconnected/bimmer_connected","last_synced_at":"2026-03-07T19:00:55.259Z","repository":{"id":37722412,"uuid":"120950888","full_name":"bimmerconnected/bimmer_connected","owner":"bimmerconnected","description":"🚘 Library to query the status of your BMW or Mini from the ConnectedDrive portal","archived":false,"fork":false,"pushed_at":"2025-12-25T23:05:51.000Z","size":8097,"stargazers_count":472,"open_issues_count":0,"forks_count":89,"subscribers_count":26,"default_branch":"master","last_synced_at":"2026-02-19T17:17:04.155Z","etag":null,"topics":["bmw","bmw-connecteddrive","home-assistant","home-automation","mini","python3","vehicle"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bimmerconnected.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-02-09T20:12:53.000Z","updated_at":"2026-01-27T10:41:44.000Z","dependencies_parsed_at":"2023-09-22T05:39:21.329Z","dependency_job_id":"8f19ea10-9bf0-4602-bbc7-fc90cd10796a","html_url":"https://github.com/bimmerconnected/bimmer_connected","commit_stats":{"total_commits":366,"total_committers":26,"mean_commits":"14.076923076923077","dds":"0.47267759562841527","last_synced_commit":"a1c80cad2357aaa3b5e460910e44459a259c53d9"},"previous_names":[],"tags_count":179,"template":false,"template_full_name":null,"purl":"pkg:github/bimmerconnected/bimmer_connected","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bimmerconnected%2Fbimmer_connected","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bimmerconnected%2Fbimmer_connected/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bimmerconnected%2Fbimmer_connected/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bimmerconnected%2Fbimmer_connected/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bimmerconnected","download_url":"https://codeload.github.com/bimmerconnected/bimmer_connected/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bimmerconnected%2Fbimmer_connected/sbom","scorecard":{"id":238370,"data":{"date":"2025-08-11","repo":{"name":"github.com/bimmerconnected/bimmer_connected","commit":"e0e821aca7eaa02ef1db2b53b86be7d05c5fc534"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.6,"checks":[{"name":"Code-Review","score":2,"reason":"Found 7/30 approved changesets -- score normalized to 2","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/codeql-analysis.yml:1","Warn: no topLevel permission defined: .github/workflows/lock.yml:1","Warn: no topLevel permission defined: .github/workflows/pythonpublish.yml:1","Warn: no topLevel permission defined: .github/workflows/release-drafter.yml:1","Warn: no topLevel permission defined: .github/workflows/stale.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/codeql-analysis.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/codeql-analysis.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/codeql-analysis.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/codeql-analysis.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/lock.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/lock.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pythonpublish.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/pythonpublish.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pythonpublish.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/pythonpublish.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-drafter.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/release-drafter.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/stale.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/stale.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:48: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:89: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:91: update your workflow using https://app.stepsecurity.io/secureworkflow/bimmerconnected/bimmer_connected/test.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/pythonpublish.yml:21","Warn: pipCommand not pinned by hash: .github/workflows/pythonpublish.yml:22","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:28","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:29","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:30","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:57","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:80","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:81","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:100","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:101","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:102","Info:   0 out of  15 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of  12 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":0,"reason":"58 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2024-48 / GHSA-fj7x-q9j7-g6q6","Warn: Project is vulnerable to: PYSEC-2022-183 / GHSA-h8pj-cxx2-jfg2","Warn: Project is vulnerable to: GHSA-3c5c-7235-994j","Warn: Project is vulnerable to: GHSA-3f63-hfp8-52jq","Warn: Project is vulnerable to: PYSEC-2021-41 / GHSA-3wvg-mj6g-m9cv","Warn: Project is vulnerable to: PYSEC-2020-77 / GHSA-3xv8-3j54-hgrp","Warn: Project is vulnerable to: PYSEC-2020-80 / GHSA-43fq-w8qq-v88h","Warn: Project is vulnerable to: GHSA-44wm-f244-xhp3","Warn: Project is vulnerable to: GHSA-4fx9-vc88-q2xc","Warn: Project is vulnerable to: PYSEC-2021-35 / GHSA-57h3-9rgr-c24m","Warn: Project is vulnerable to: PYSEC-2020-172 / GHSA-5gm3-px64-rw72","Warn: Project is vulnerable to: PYSEC-2021-331 / GHSA-7534-mm45-c74v","Warn: Project is vulnerable to: PYSEC-2021-92 / GHSA-7r7m-5h27-29hp","Warn: Project is vulnerable to: PYSEC-2020-78 / GHSA-8843-m7mw-mxqm","Warn: Project is vulnerable to: PYSEC-2023-227 / GHSA-8ghj-p4vj-mr35","Warn: Project is vulnerable to: PYSEC-2014-87 / GHSA-8m9x-pxwq-j236","Warn: Project is vulnerable to: PYSEC-2022-10 / GHSA-8vj2-vxx3-667w","Warn: Project is vulnerable to: PYSEC-2021-36 / GHSA-8xjq-8fcg-g5hw","Warn: Project is vulnerable to: PYSEC-2016-6 / GHSA-8xjv-v9xq-m5h9","Warn: Project is vulnerable to: PYSEC-2021-42 / GHSA-95q3-8gr9-gm8w","Warn: Project is vulnerable to: PYSEC-2022-168 / GHSA-9j59-75qj-795w","Warn: Project is vulnerable to: PYSEC-2014-10 / GHSA-cfmr-38g9-f2h7","Warn: Project is vulnerable to: PYSEC-2020-76 / GHSA-cqhg-xjhh-p8hf","Warn: Project is vulnerable to: PYSEC-2021-40 / GHSA-f4w8-cv6p-x6r5","Warn: Project is vulnerable to: PYSEC-2021-69 / GHSA-f5g8-5qq7-938w","Warn: Project is vulnerable to: PYSEC-2021-139 / GHSA-g6rj-rv7j-xwp4","Warn: Project is vulnerable to: PYSEC-2015-16 / GHSA-h5rf-vgqx-wjv2","Warn: Project is vulnerable to: PYSEC-2016-5 / GHSA-hggx-3h72-49ww","Warn: Project is vulnerable to: PYSEC-2020-84 / GHSA-hj69-c76v-86wr","Warn: Project is vulnerable to: PYSEC-2016-7 / GHSA-hvr8-466p-75rh","Warn: Project is vulnerable to: PYSEC-2015-15 / GHSA-j6f7-g425-4gmx","Warn: Project is vulnerable to: GHSA-j7hp-h8jx-5ppr","Warn: Project is vulnerable to: PYSEC-2019-110 / GHSA-j7mj-748x-7p78","Warn: Project is vulnerable to: GHSA-jgpv-4h4c-xhw3","Warn: Project is vulnerable to: PYSEC-2022-42979 / GHSA-m2vv-5vj5-2hm7","Warn: Project is vulnerable to: PYSEC-2021-37 / GHSA-mvg9-xffr-p774","Warn: Project is vulnerable to: PYSEC-2020-83 / GHSA-p49h-hjvm-jg3h","Warn: Project is vulnerable to: PYSEC-2022-8 / GHSA-pw3c-h7wp-cvhx","Warn: Project is vulnerable to: PYSEC-2021-93 / GHSA-q5hq-fp76-qmrc","Warn: Project is vulnerable to: PYSEC-2020-82 / GHSA-r7rm-8j6h-r933","Warn: Project is vulnerable to: PYSEC-2014-23 / GHSA-r854-96gq-rfg3","Warn: Project is vulnerable to: PYSEC-2016-8 / GHSA-rwr3-c2q8-gm56","Warn: Project is vulnerable to: PYSEC-2020-81 / GHSA-vcqg-3p29-xw73","Warn: Project is vulnerable to: PYSEC-2020-79 / GHSA-vj42-xq3r-hr3r","Warn: Project is vulnerable to: PYSEC-2021-70 / GHSA-vqcj-wrf2-7v73","Warn: Project is vulnerable to: PYSEC-2016-9 / GHSA-w4vg-rf63-f3j3","Warn: Project is vulnerable to: PYSEC-2014-22 / GHSA-x895-2wrm-hvp7","Warn: Project is vulnerable to: PYSEC-2022-9 / GHSA-xrcv-f9gm-v42c","Warn: Project is vulnerable to: PYSEC-2021-137","Warn: Project is vulnerable to: PYSEC-2021-138","Warn: Project is vulnerable to: PYSEC-2021-317","Warn: Project is vulnerable to: PYSEC-2021-38","Warn: Project is vulnerable to: PYSEC-2021-39","Warn: Project is vulnerable to: PYSEC-2021-94","Warn: Project is vulnerable to: PYSEC-2023-175","Warn: Project is vulnerable to: PYSEC-2018-21 / GHSA-hgg3-g7gr-66r7","Warn: Project is vulnerable to: GHSA-j225-cvw7-qrx7","Warn: Project is vulnerable to: PYSEC-2022-202 / GHSA-ffqj-6fqr-9h24"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":9,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 29 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T06:10:34.259Z","repository_id":37722412,"created_at":"2025-08-17T06:10:34.259Z","updated_at":"2025-08-17T06:10:34.259Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30226744,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T18:12:09.766Z","status":"ssl_error","status_checked_at":"2026-03-07T18:11:58.786Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bmw","bmw-connecteddrive","home-assistant","home-automation","mini","python3","vehicle"],"created_at":"2024-09-24T14:10:37.167Z","updated_at":"2026-03-07T19:00:55.253Z","avatar_url":"https://github.com/bimmerconnected.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"bimmer_connected\n================\n\n.. image:: https://badge.fury.io/py/bimmer-connected.svg\n    :target: https://pypi.org/project/bimmer-connected\n.. image:: https://github.com/bimmerconnected/bimmer_connected/actions/workflows/test.yml/badge.svg?branch=master\n    :target: https://github.com/bimmerconnected/bimmer_connected/actions/workflows/test.yml?query=branch%3Amaster\n.. image:: https://readthedocs.org/projects/bimmer-connected/badge/?version=latest\n    :target: https://bimmer-connected.readthedocs.io/en/stable/?badge=latest\n.. image:: https://codecov.io/gh/bimmerconnected/bimmer_connected/branch/master/graph/badge.svg?token=qNT50j82f6\n    :target: https://codecov.io/gh/bimmerconnected/bimmer_connected\n.. image:: https://static.pepy.tech/badge/bimmer_connected/week\n    :target: https://pepy.tech/badge/bimmer-connected/week\n.. image:: https://static.pepy.tech/badge/bimmer_connected/month\n    :target: https://pepy.tech/project/bimmer-connected/month\n.. image:: https://static.pepy.tech/badge/bimmer_connected\n    :target: https://pepy.tech/project/bimmer-connected\n\nLibrary not working anymore due to changes at BMW side\n======================================================\nOn September 29, 2025, BMW has blocked third parties (i.e. this library used for the Home Assistant BMW Connected Drive integration) from executing requests against BMW servers. BMW enforced additional security checks within the MyBMW app to block third parties (not only this library, but also other companies such as energy providers).\n\nBMW has released BMW Cardata for EU users, see these custom integrations which can be used with Home Assistant or via MQTT with other domotica systems.\n\n* https://github.com/kvanbiesen/bmw-cardata-ha\n* https://github.com/dj0abr/bmw-mqtt-bridge\n* https://github.com/sincze/bmw-cardata-ha-mqtt\n* https://github.com/JoaoPedroBelo/bmw-wallbox-ha\n\n\nLibrary\n=======\nThis is a simple library to query and control the status of your BMW, Mini, or Toyota Supra vehicle from\nthe MyBMW portal.\n\n\nInstallation\n============\n:code:`bimmer_connected` is tested against **Python 3.8 or above**. Just install the latest release from `PyPI \u003chttps://pypi.org/project/bimmer-connected/\u003e`_\nusing :code:`pip3 install --upgrade bimmer_connected`.\n\nAlternatively, clone the project and execute :code:`pip install -e .` to install the current\n:code:`master` branch.\n\n.. note::\n    If you want to connect to a **chinese** server, you need to install the :code:`[china]` extra, e.g. :code:`pip3 install --upgrade bimmer_connected[china]`.\n\nUsage\n=====\nWhile this library is mainly written to be included in `Home Assistant \u003chttps://www.home-assistant.io/integrations/bmw_connected_drive/\u003e`_, it can be use on its own.\n\nAfter installation, execute :code:`bimmerconnected` from command line for usage instruction\nor see the full `CLI documentation \u003chttp://bimmer-connected.readthedocs.io/en/stable/#cli\u003e`_.\n\n.. warning::\n\n   Login to **north american** and **rest of world** accounts requires a captcha to be solved. See `Using Captchas \u003chttp://bimmer-connected.readthedocs.io/en/stable/captcha.html\u003e`_ for more information.\n\nPlease be aware that :code:`bimmer_connected` is an :code:`async` library when using it in Python code.\nThe description of the :code:`modules` can be found in the `module documentation\n\u003chttp://bimmer-connected.readthedocs.io/en/stable/#module\u003e`_.\n\nExample in an :code:`asyncio` event loop\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n::\n\n    import asyncio\n    from bimmer_connected.account import MyBMWAccount\n    from bimmer_connected.api.regions import Regions\n\n    async def main():\n        # hcaptcha_token is only required for the first login, see the captcha documentation\n        account = MyBMWAccount(USERNAME, PASSWORD, Regions.REST_OF_WORLD, hcaptcha_token=\"P1_eY...\")\n        await account.get_vehicles()\n        vehicle = account.get_vehicle(VIN)\n        print(vehicle.brand, vehicle.name, vehicle.vin)\n\n        result = await vehicle.remote_services.trigger_remote_light_flash()\n        print(result.state)\n\n    asyncio.run(main())\n\n\nExample in non-async code\n^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n::\n\n    import asyncio\n    from bimmer_connected.account import MyBMWAccount\n    from bimmer_connected.api.regions import Regions\n\n    # hcaptcha_token is only required for the first login, see the captcha documentation\n    account = MyBMWAccount(USERNAME, PASSWORD, Regions.REST_OF_WORLD, hcaptcha_token=\"P1_eY...\")\n    asyncio.run(account.get_vehicles())\n    vehicle = account.get_vehicle(VIN)\n    print(vehicle.brand, vehicle.name, vehicle.vin)\n\n    result = asyncio.run(vehicle.remote_services.trigger_remote_light_flash())\n    print(result.state)\n\n\nCompatibility\n=============\nThis works with BMW/Mini/Toyota Supra vehicles with a MyBMW account.\nSo far it is tested on vehicles with a 'MGU', 'NBTEvo', 'EntryEvo', 'NBT', or 'EntryNav'\nnavigation system. If you have any trouble with other navigation systems, please create\nan issue with your server responses (see next section).\n\nTo use this library, your BMW/Mini/Toyota Supra must have the remote services enabled for your vehicle.\nYou might need to book this in the MyBMW/Mini Connected/Supra Connect portal and this might cost\nsome money. In addition to that you need to enable the Remote Services in your infotainment\nsystem in the vehicle.\n\nDifferent models of vehicles and infotainment systems result in different types of attributes\nprovided by the server. So the experience with the library will certainly vary across the different\nvehicle models.\n\nData Contributions\n==================\nIf some features do not work for your vehicle, we would need the data\nreturned form the server to analyse this and potentially extend the code.\nDifferent models and head unit generations lead to different responses from\nthe server.\n\nIf you want to contribute your data, perform the following steps:\n\n::\n\n    # get the latest version of the library\n    pip3 install --upgrade bimmer_connected\n\n    # run the fingerprint function\n    bimmerconnected fingerprint \u003cusername\u003e \u003cpassword\u003e \u003cregion\u003e\n\nThis will create a set of log files in the \"vehicle_fingerprint\" folder.\nBefore sending the data to anyone please **check for any personal data** such as **dealer name** or **country**.\n\nThe following attributes are by default replaced with anonymized values:\n\n* :code:`vin` (Vehicle Identification Number)\n* :code:`lat` and :code:`lon` (GPS position)\n* :code:`licensePlate`\n* :code:`information of dealer`\n\nCreate a new\n`fingerprint data contribution \u003chttps://github.com/bimmerconnected/bimmer_connected/discussions/new?category_id=32000818\u003e`_\nand add the files as attachment to the discussion.\n\nPlease add your model and year to the title of the issue, to make it easier to organize.\nIf you know the \"chassis code\" of your car, you can include that too. (For example,\ngoogling \"2017 BMW X5\" will show a Wikipedia article entitled \"BMW X5 (F15)\". F15 is\ntherefore the chassis code of the car.)\n\n\n**Note:** We will then use this data as additional test cases. So we will publish\n(parts of) it (after checking for personal information again) and use\nthis as test cases for our library. If you do not want this, please\nlet us know in advance.\n\nCode Contributions\n==================\nContributions are welcome! Please make sure that your code passes the checks in :code:`.github/workflows/test.yml`.\nWe currently test with :code:`ruff`, :code:`mypy` (for both see, :code:`pyproject.toml`) and our own :code:`pytest` suite.\nAnd please add tests where it makes sense. The more the better.\n\nSee the `contributing guidelines \u003chttps://github.com/bimmerconnected/bimmer_connected/blob/master/CONTRIBUTING.md\u003e`_ for more details.\n\nThank you\n=========\n\nThank you to all `contributors \u003chttps://github.com/bimmerconnected/bimmer_connected/graphs/contributors\u003e`_ for your research and contributions! And thanks to everyone who shares the `fingerprint data \u003chttps://github.com/bimmerconnected/bimmer_connected#data-contributions\u003e`_ of their vehicles which we use to test the code.\nA special thanks to @HuChundong, @muxiachuixue, @vividmuse for figuring out how to solve login issues!\n\nThis library is basically a best-of of other similar solutions,\nyet none of them provided a ready to use library with a matching interface\nto be used in Home Assistant and is available on pypi.\n\n* https://github.com/edent/BMW-i-Remote\n* https://github.com/jupe76/bmwcdapi\n* https://github.com/frankjoke/iobroker.bmw\n* https://github.com/TA2k/ioBroker.bmw\n* https://gitee.com/ichuixue/bmw_shortcuts / https://www.icloud.com/shortcuts/eb064e89e6b647d2828a404227b91c4a\n\nThank you for your great software!\n\nLicense\n=======\nThe bimmer_connected library is licensed under the Apache License 2.0.\n\nDisclaimer\n==========\nThis library is not affiliated with or endorsed by BMW Group.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbimmerconnected%2Fbimmer_connected","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbimmerconnected%2Fbimmer_connected","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbimmerconnected%2Fbimmer_connected/lists"}