Skip to main content

CarConnectivity Plugin for a REST API

GitHub sourcecode GitHub GitHub issues PyPI Downloads

CarConnectivity is a python API to connect to various car services. This plugin provides a REST API that allows other clients to interact with CarConnectivity's object tree.

Supported operations

  • GET data from CarConnectivity's object tree
  • PUT writable attributes (change values)
  • POST commands with their arguments

Installation

pip install carconnectivity-plugin-restapi

Configuration

Add the plugin to your carconnectivity.json configuration file:

{
    "carConnectivity": {
        "connectors": [...],
        "plugins": [
            {
                "type": "restapi",
                "config": {
                    "host": "0.0.0.0",
                    "port": 40000,
                    "username": "admin",
                    "password": "secretpassword"
                }
            }
        ]
    }
}

Multiple users

{
    "carConnectivity": {
        "plugins": [
            {
                "type": "restapi",
                "config": {
                    "port": 40000,
                    "users": [
                        {"username": "user1", "password": "pass1"},
                        {"username": "user2", "password": "pass2"}
                    ]
                }
            }
        ]
    }
}

HTTPS

{
    "carConnectivity": {
        "plugins": [
            {
                "type": "restapi",
                "config": {
                    "port": 40000,
                    "https": true,
                    "ssl_certificate_file": "/path/to/cert.pem",
                    "ssl_certificate_key_file": "/path/to/key.pem",
                    "username": "admin",
                    "password": "secret"
                }
            }
        ]
    }
}

API Usage

All endpoints require HTTP Basic Authentication.

GET — retrieve data

GET http://localhost:40000/<path>

Returns the object or attribute at <path> in the CarConnectivity object tree as JSON. An empty path (/) returns the entire tree.

Example:

curl -u admin:secret http://localhost:40000/garage/WVWZZZAUZLW123456/charging/connector/connection_state

PUT — set a writable attribute

PUT http://localhost:40000/<path>
Content-Type: application/json

{"value": <new_value>}

Example:

curl -u admin:secret -X PUT -H "Content-Type: application/json" \
     -d '{"value": 80}' \
     http://localhost:40000/garage/WVWZZZAUZLW123456/charging/settings/target_level

POST — execute a command

POST http://localhost:40000/<path>
Content-Type: application/json

{"value": <command_arguments>}

Example:

curl -u admin:secret -X POST -H "Content-Type: application/json" \
     -d '{"value": "start"}' \
     http://localhost:40000/garage/WVWZZZAUZLW123456/climatization/commands/start-stop

Configuration parameters

Parameter Description Default
host Host/IP to listen on 0.0.0.0
port Port to listen on 40000
username Single user username —
password Single user password —
users List of {username, password} objects —
https Enable HTTPS false
ssl_certificate_file Path to SSL certificate file —
ssl_certificate_key_file Path to SSL private key file —
log_level Log level (DEBUG, INFO, WARNING, ERROR) ERROR

Metadata

Release files for carconnectivity-plugin-restapi 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for carconnectivity-plugin-restapi 0.1
File Size Uploaded
carconnectivity_plugin_restapi-0.1.tar.gz 14.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for carconnectivity-plugin-restapi 0.1
File Interpreter ABI Platform
carconnectivity_plugin_restapi-0.1-py3-none-any.whl Python 3 none any Details

Total release size: 24.0 kB

Release files / carconnectivity_plugin_restapi-0.1.tar.gz

Download URL carconnectivity_plugin_restapi-0.1.tar.gz
Size 14.5 kB
Tags Source
SHA-256 checksum
How to use checksums
25c09ac43a9ec80d15b46c35221f85ca4a362bfa7ff08fa000148bfb78008fc5
BLAKE2b-256 checksum
How to use checksums
e4731063130437ed93b0ee54469c71917a4c771d61b01d90e784b5bb8991fff3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release files / carconnectivity_plugin_restapi-0.1-py3-none-any.whl

Download URL carconnectivity_plugin_restapi-0.1-py3-none-any.whl
Size 9.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
82f5251a647c722c83409d6444a27cf80095211a31f6295ac2ca075383902949
BLAKE2b-256 checksum
How to use checksums
e02b2fc887da27a8f2e68f43b2379fc630913a93e8dd8736599ebc674cc4ae44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page