Skip to main content

Tesla-API SDK

Project description

Getting Started with Tesla Fleet Management API

Introduction

Unofficial OpenAPI specification for Tesla Fleet Management Charging endpoints.

Install the Package

The package is compatible with Python versions 3.7+. Install the package from PyPi using the following pip command:

pip install tesla-api-sdk==1.0.4

You can also view the package at: https://pypi.python.org/pypi/tesla-api-sdk/1.0.4

Initialize the API Client

Note: Documentation for the client can be found here.

The following parameters are configurable for the API Client:

Parameter Type Description
environment Environment The API environment.
Default: Environment.PRODUCTION
http_client_instance Union[Session, HttpClientProvider] The Http Client passed from the sdk user for making requests
override_http_client_configuration bool The value which determines to override properties of the passed Http Client from the sdk user
http_call_back HttpCallBack The callback value that is invoked before and after an HTTP call is made to an endpoint
timeout float The value to use for connection timeout.
Default: 60
max_retries int The number of times to retry an endpoint call if it fails.
Default: 0
backoff_factor float A backoff factor to apply between attempts after the second try.
Default: 2
retry_statuses Array of int The http statuses on which retry is to be done.
Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524]
retry_methods Array of string The http methods on which retry is to be done.
Default: ["GET", "PUT"]
proxy_settings ProxySettings Optional proxy configuration to route HTTP requests through a proxy server.
logging_configuration LoggingConfiguration The SDK logging configuration for API calls
bearer_auth_credentials BearerAuthCredentials The credential object for OAuth 2 Bearer token
thirdpartytoken_credentials ThirdpartytokenCredentials The credential object for OAuth 2 Authorization Code Grant

The API client can be initialized as follows:

Code-Based Client Initialization

import logging

from teslafleetmanagementapi.configuration import Environment
from teslafleetmanagementapi.http.auth.bearer_auth import BearerAuthCredentials
from teslafleetmanagementapi.http.auth.thirdpartytoken import ThirdpartytokenCredentials
from teslafleetmanagementapi.logging.configuration.api_logging_configuration import LoggingConfiguration
from teslafleetmanagementapi.logging.configuration.api_logging_configuration import RequestLoggingConfiguration
from teslafleetmanagementapi.logging.configuration.api_logging_configuration import ResponseLoggingConfiguration
from teslafleetmanagementapi.models.o_auth_scope_thirdpartytoken import OAuthScopeThirdpartytoken
from teslafleetmanagementapi.teslafleetmanagementapi_client import TeslafleetmanagementapiClient

client = TeslafleetmanagementapiClient(
    bearer_auth_credentials=BearerAuthCredentials(
        access_token='AccessToken'
    ),
    thirdpartytoken_credentials=ThirdpartytokenCredentials(
        o_auth_client_id='OAuthClientId',
        o_auth_client_secret='OAuthClientSecret',
        o_auth_redirect_uri='OAuthRedirectUri',
        o_auth_scopes=[
            OAuthScopeThirdpartytoken.OPENID,
            OAuthScopeThirdpartytoken.OFFLINE_ACCESS
        ]
    ),
    environment=Environment.PRODUCTION,
    logging_configuration=LoggingConfiguration(
        log_level=logging.INFO,
        request_logging_config=RequestLoggingConfiguration(
            log_body=True
        ),
        response_logging_config=ResponseLoggingConfiguration(
            log_headers=True
        )
    )
)

Environment-Based Client Initialization

from teslafleetmanagementapi.teslafleetmanagementapi_client import TeslafleetmanagementapiClient

# Specify the path to your .env file if it’s located outside the project’s root directory.
client = TeslafleetmanagementapiClient.from_environment(dotenv_path='/path/to/.env')

See the Environment-Based Client Initialization section for details.

Authorization

This API uses the following authentication schemes.

List of APIs

SDK Infrastructure

Configuration

HTTP

Utilities

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tesla_api_sdk-1.0.4.tar.gz (55.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tesla_api_sdk-1.0.4-py3-none-any.whl (164.3 kB view details)

Uploaded Python 3

File details

Details for the file tesla_api_sdk-1.0.4.tar.gz.

File metadata

  • Download URL: tesla_api_sdk-1.0.4.tar.gz
  • Upload date:
  • Size: 55.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for tesla_api_sdk-1.0.4.tar.gz
Algorithm Hash digest
SHA256 a63c65d4ac448e9f7edbc2ec825b2d0a410c7ab73007bedaafe3958a98f211d3
MD5 27b34c7042a0db0ed60e05d55edb76a1
BLAKE2b-256 b5bc90aeca79c2cf352b7847fc990cfd7d0bce3eb5b747fdade2db3911c244a2

See more details on using hashes here.

File details

Details for the file tesla_api_sdk-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: tesla_api_sdk-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 164.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for tesla_api_sdk-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 48f1b8d9efa15db977018cbd84b11a06e38bdca262493208a97f5f0b111eff47
MD5 ff552fb3f320f77834d3a21991ffbfe7
BLAKE2b-256 60a7412664b2bdc3324a028af014ca4ad9cfa4a6ba608fd5a11cc18c23db9f5f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page