Skip to main content

Eniris API driver for Python

Project description

Eniris API driver for Python

This repository contains the official Eniris API driver for Python. This driver takes care of authentication as well as request retries and timeouts, in accordance with the authentication API documentation. It offers users an interface which is inspired by the popular requests library.

Installation

To install the latest stable version, use:

pip install eniris

Quick Example

from eniris import ApiDriver

driver = ApiDriver("myUsername", "myPassword")
http_response = driver.get("/v1/device")
response_body = http_response.json()
print(response_body['device'][:10])
driver.close()

Details

The driver constructor accepts the following arguments:

  • username (string, required)
  • password (string, required)
  • authUrl (string, optional, default: 'https://authentication.eniris.be'): URL of authentication endpoint
  • apiUrl (string, optional, default: 'https://api.eniris.be'): URL of api endpoint
  • timeoutS (int, optional, default: 60): Request timeout in seconds
  • maximumRetries (int, optional, default: 5): How many times to try again in case of a failure due to connection or unavailability problems
  • initialRetryDelayS (int, optional, default: 1): The initial delay between successive retries in seconds.
  • maximumRetryDelayS (int, optional, default: 60): The maximum delay between successive retries in seconds.
  • session (requests.Session, optional, default: requests.Session()): A session object to use for all API calls.

Furthermore, the following methods are exposed:

  • accesstoken: Get a currently valid accesstoken
  • get/delete: Send a HTTP GET/DELETE request. The following parameters are allowed:
    • path (string, required): Either a path relative to the apiUrl, or a full URL path
    • params (dict, optional, default: None): URL query parameters
  • post/put: Send a HTTP POST or PUT request. The following parameters are allowed:
    • path (string, required): Either a path relative to the apiUrl, or a full URL path
    • json (dict, optional, default: None): JSON body of the request. The json argument and the data argument cannot both be different from None
    • params (dict, optional, default: None): URL query parameters
    • data (string or dict, optional, default: None): Payload of the request. The json argument and the data argument cannot both be different from None

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

eniris-0.7.4.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

eniris-0.7.4-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file eniris-0.7.4.tar.gz.

File metadata

  • Download URL: eniris-0.7.4.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for eniris-0.7.4.tar.gz
Algorithm Hash digest
SHA256 482a5cb92fd0ee1e901cb602b74d82b50be2e80c06f8a9a540247d303ed4e8f3
MD5 ad6c1e94ea6b92230c02a99696462440
BLAKE2b-256 6a33b6e8716cbc25a0e17cdfd4b092fdc3c7ec8ac064e222decc09ab06b83f1e

See more details on using hashes here.

File details

Details for the file eniris-0.7.4-py3-none-any.whl.

File metadata

  • Download URL: eniris-0.7.4-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for eniris-0.7.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9db9ccbd4e1ea147542db63a1b45917425e0bcca2a0bdda0c083ff8e3e4e5579
MD5 c5d8071e80397739066087d7d4c81c91
BLAKE2b-256 65e6e452178ad0e08a6f805b6d51d84383af6af9a7775e8038dc75b30c15e988

See more details on using hashes here.

Supported by

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