Skip to main content

This API Product provides the option to manage charging at all public Shell Recharge locations. The end points provides control to start, stop and get status of the charging session.

Project description

Getting Started with Shell EV

Introduction

This API Product provides the list of all Shell Recharge locations. The list includes all Shell Recharge network and all locations available through our roaming partners.

Supported Functions

  • Get the list of all the locations and its details.
  • Get the details of a particular location.
  • Get the list of locations nearby using the latitude and longitude.
  • Get the list of locations for a given set of bounds with different zoom levels.

The Charging endpoints provides control to start, stop and get status of the charging session.

Supported Functions

  • Start a charging session\n
  • Stop a charging session \n
  • Retrieve the status of a charging session \n
  • Retrieve the list of all active sessions for a card

Go to the Shell Developer Portal: https://developer.shell.com

Install the Package

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

pip install ev-recharge-sdk==2.2.0

You can also view the package at: https://pypi.python.org/pypi/ev-recharge-sdk/2.2.0

Test the SDK

You can test the generated SDK and the server with test cases. unittest is used as the testing framework and pytest is used as the test runner. You can run the tests as follows:

Navigate to the root directory of the SDK and run the following commands

pip install -r test-requirements.txt pytest

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.SIT
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.
client_credentials_auth_credentials ClientCredentialsAuthCredentials The credential object for OAuth 2 Client Credentials Grant

The API client can be initialized as follows:

Code-Based Client Initialization

from shellev.configuration import Environment
from shellev.http.auth.o_auth_2 import ClientCredentialsAuthCredentials
from shellev.shellev_client import ShellevClient

client = ShellevClient(
    client_credentials_auth_credentials=ClientCredentialsAuthCredentials(
        o_auth_client_id='OAuthClientId',
        o_auth_client_secret='OAuthClientSecret'
    ),
    environment=Environment.SIT
)

Environment-Based Client Initialization

from shellev.shellev_client import ShellevClient

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

See the Environment-Based Client Initialization section for details.

Environments

The SDK can be configured to use a different environment for making API calls. Available environments are:

Fields

Name Description
SIT Default
PRODUCTION -

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

ev_recharge_sdk-2.2.0.tar.gz (52.0 kB view details)

Uploaded Source

Built Distribution

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

ev_recharge_sdk-2.2.0-py3-none-any.whl (130.7 kB view details)

Uploaded Python 3

File details

Details for the file ev_recharge_sdk-2.2.0.tar.gz.

File metadata

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

File hashes

Hashes for ev_recharge_sdk-2.2.0.tar.gz
Algorithm Hash digest
SHA256 259585b67cfe23978a579fc087dc3ee2b8abb5da486eb8d295421065fb46af0e
MD5 ee3f9c03cdb4e4678d21bee0b0722cf4
BLAKE2b-256 394226b33ea45f55ad4574f67aa51614d99ca3f339efd586512160b5e93f3ccb

See more details on using hashes here.

File details

Details for the file ev_recharge_sdk-2.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ev_recharge_sdk-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 17583b0d392b2dd6912d251a9489a96836e4a088495382b5efcbbe45a3994a5d
MD5 98cb13d7d6dd959e70076b9ec4df8594
BLAKE2b-256 de1f9d2e2cc16b960ddf3841f45c5045a387a8626fe7c11a8bc665a0f9b27b50

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