# pyporscheconnectapi
A python library for Porsche Connect API
This library will let you access your car equipped with Porsche Connect. It does not work with the predecessor Porsche Car Connect.
Porsche Connect is available for the following Porsche models:
* Boxster & Cayman (718)
* 911 (from 992)
* Taycan
* Panamera (from 2021, G2 PA)
* Macan (EV, from 2024)
* Cayenne (from 2017, E3)
You can also take a look here, select your model and see if your model has support for Porsche Connect:
https://connect-store.porsche.com/
A Porsche Connect subscription alse needs to be active for it to work.
*NOTE:* This work is not officially supported by Porsche and functionality can stop working at any time without warning.
## Installation
The easiest method is to install using pip3/pip (venv is also a good idea).
```
pip install pyporscheconnectapi
```
to update to the latest version
```
pip install pyporscheconnectapi -U
```
Setup will add a cli under the name porschecli, see below for usage.
## CLI usage
A simple cli is provided with this library, it will cache tokens to a file to speed up invocations.
If no email or password is supplied as input arguments and no config file with those details is found you will be prompted.
```
usage: porschecli [-h] [-d] [-e EMAIL] [-p PASSWORD] [-s SESSION_FILE] [--nowait]
{list,token,capabilities,currentoverview,storedoverview,trip_statistics,pictures,location,climatise_on,climatise_off,direct_charge_on,direct_charge_off,flash_indicators,honk_and_flash,lock_vehicle,unlock_vehicle,vehicle_closed,doors_and_lids,tire_pressure_status,tire_pressures,chargingprofile}
...
Porsche Connect CLI
positional arguments:
{list,token,capabilities,currentoverview,storedoverview,trip_statistics,pictures,location,climatise_on,climatise_off,direct_charge_on,direct_charge_off,flash_indicators,honk_and_flash,lock_vehicle,unlock_vehicle,vehicle_closed,doors_and_lids,tire_pressure_status,tire_pressures,chargingprofile}
command help
battery Prints the main battery level (BEV)
capabilities Get vehicle capabilities
chargingprofile Update parameters in configured charging profile
climatise_off Stop remote climatisation
climatise_on Start remote climatisation
connected Check if vehicle is on-line
currentoverview Get stored overview for vehicle
direct_charge_off Disable direct charging
direct_charge_on Enable direct charging
doors_and_lids List status of all doors and lids
flash_indicators Flash indicators
honk_and_flash Flash indicators and sound the horn
location Show location of vehicle
lock_vehicle Lock vehicle
pictures Get vehicle pictures url
storedoverview Poll vehicle for current overview
tire_status Check if tire pressure are ok
tire_pressures Get tire pressure readings
trip_statistics Get trip statistics from backend
unlock_vehicle Unlock vehicle
vehicle_closed Check if all doors and lids are closed
options:
-h, --help show this help message and exit
-d, --debug
-e EMAIL, --email EMAIL
-p PASSWORD, --password PASSWORD
-s SESSION_FILE, --sessionfile SESSION_FILE
```
## Config file (for CLI)
A config file is searched for in ~/.porscheconnect.cfg and ./.porscheconnect.cfg
The format is:
```
[porsche]
email=<your email>
password=<your password>
session_file=<file to store session information>
```
## Library usage
Install pyporscheconnectapi using pip (requires python >= 3.10)
### Example client usage
Please refer to the examples provided in the repository.
Raw data
{
"_id": null,
"home_page": "https://github.com/cjne/pyporscheconnectapi",
"name": "pyporscheconnectapi",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": null,
"author": "Johan Isaksson",
"author_email": "johan@generatorhallen.se",
"download_url": "https://files.pythonhosted.org/packages/32/0e/c017e1b7cf78700b2c51ea79135fbe1c80f0d2930048afd31c3170f7cddc/pyporscheconnectapi-0.2.2.tar.gz",
"platform": null,
"description": "# pyporscheconnectapi\nA python library for Porsche Connect API\n\nThis library will let you access your car equipped with Porsche Connect. It does not work with the predecessor Porsche Car Connect.\nPorsche Connect is available for the following Porsche models:\n\n* Boxster & Cayman (718)\n* 911 (from 992)\n* Taycan\n* Panamera (from 2021, G2 PA)\n* Macan (EV, from 2024)\n* Cayenne (from 2017, E3)\n\nYou can also take a look here, select your model and see if your model has support for Porsche Connect:\nhttps://connect-store.porsche.com/\n\nA Porsche Connect subscription alse needs to be active for it to work.\n\n*NOTE:* This work is not officially supported by Porsche and functionality can stop working at any time without warning.\n\n## Installation\n\nThe easiest method is to install using pip3/pip (venv is also a good idea).\n```\npip install pyporscheconnectapi\n```\n\nto update to the latest version\n\n```\npip install pyporscheconnectapi -U\n```\n\nSetup will add a cli under the name porschecli, see below for usage.\n\n\n## CLI usage\n\nA simple cli is provided with this library, it will cache tokens to a file to speed up invocations.\n\nIf no email or password is supplied as input arguments and no config file with those details is found you will be prompted.\n```\nusage: porschecli [-h] [-d] [-e EMAIL] [-p PASSWORD] [-s SESSION_FILE] [--nowait]\n {list,token,capabilities,currentoverview,storedoverview,trip_statistics,pictures,location,climatise_on,climatise_off,direct_charge_on,direct_charge_off,flash_indicators,honk_and_flash,lock_vehicle,unlock_vehicle,vehicle_closed,doors_and_lids,tire_pressure_status,tire_pressures,chargingprofile}\n ...\n\nPorsche Connect CLI\n\npositional arguments:\n {list,token,capabilities,currentoverview,storedoverview,trip_statistics,pictures,location,climatise_on,climatise_off,direct_charge_on,direct_charge_off,flash_indicators,honk_and_flash,lock_vehicle,unlock_vehicle,vehicle_closed,doors_and_lids,tire_pressure_status,tire_pressures,chargingprofile}\n command help\n battery Prints the main battery level (BEV)\n capabilities Get vehicle capabilities\n chargingprofile Update parameters in configured charging profile\n climatise_off Stop remote climatisation\n climatise_on Start remote climatisation\n connected Check if vehicle is on-line\n currentoverview Get stored overview for vehicle\n direct_charge_off Disable direct charging\n direct_charge_on Enable direct charging\n doors_and_lids List status of all doors and lids\n flash_indicators Flash indicators\n honk_and_flash Flash indicators and sound the horn\n location Show location of vehicle\n lock_vehicle Lock vehicle\n pictures Get vehicle pictures url\n storedoverview Poll vehicle for current overview\n tire_status Check if tire pressure are ok\n tire_pressures Get tire pressure readings\n trip_statistics Get trip statistics from backend\n unlock_vehicle Unlock vehicle\n vehicle_closed Check if all doors and lids are closed\n\noptions:\n -h, --help show this help message and exit\n -d, --debug\n -e EMAIL, --email EMAIL\n -p PASSWORD, --password PASSWORD\n -s SESSION_FILE, --sessionfile SESSION_FILE\n\n```\n\n## Config file (for CLI)\n\nA config file is searched for in ~/.porscheconnect.cfg and ./.porscheconnect.cfg\nThe format is:\n\n```\n[porsche]\nemail=<your email>\npassword=<your password>\nsession_file=<file to store session information>\n```\n\n## Library usage\n\nInstall pyporscheconnectapi using pip (requires python >= 3.10)\n\n\n### Example client usage\n\nPlease refer to the examples provided in the repository.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python library and CLI for communicating with Porsche Connect API.",
"version": "0.2.2",
"project_urls": {
"Homepage": "https://github.com/cjne/pyporscheconnectapi"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c31dc34c8c3365e98d308965c781b205a6686884ed5ce0c39302f7af21cb0691",
"md5": "8b66df94de9c81b4389540ae7ecc1f23",
"sha256": "17e96eea8095af16d3929feb5acc08d77856958f5329d3ad94da3906d2ffd8c6"
},
"downloads": -1,
"filename": "pyporscheconnectapi-0.2.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8b66df94de9c81b4389540ae7ecc1f23",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 21458,
"upload_time": "2024-12-29T08:45:02",
"upload_time_iso_8601": "2024-12-29T08:45:02.469925Z",
"url": "https://files.pythonhosted.org/packages/c3/1d/c34c8c3365e98d308965c781b205a6686884ed5ce0c39302f7af21cb0691/pyporscheconnectapi-0.2.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "320ec017e1b7cf78700b2c51ea79135fbe1c80f0d2930048afd31c3170f7cddc",
"md5": "a3df8cc632ca268380e8e25746bf6a98",
"sha256": "0ea860c5e8fd5849576de0f3ae4de2ecd3b82be331db5da12ef146c02c1e64de"
},
"downloads": -1,
"filename": "pyporscheconnectapi-0.2.2.tar.gz",
"has_sig": false,
"md5_digest": "a3df8cc632ca268380e8e25746bf6a98",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 19354,
"upload_time": "2024-12-29T08:45:04",
"upload_time_iso_8601": "2024-12-29T08:45:04.789254Z",
"url": "https://files.pythonhosted.org/packages/32/0e/c017e1b7cf78700b2c51ea79135fbe1c80f0d2930048afd31c3170f7cddc/pyporscheconnectapi-0.2.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-29 08:45:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "cjne",
"github_project": "pyporscheconnectapi",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pyporscheconnectapi"
}