Skip to main content

A small useful Python module to abstract away the common auth header methods used by different software vendors. The output is a requests session with the authentication headers built in.

Project description

GitHub PayPal Ko-Fi

ezsession

A small useful Python module to abstract away the common auth header methods used by different software vendors. The output is a requests session with the authentication headers built in.

pip install ezsession

Auth Types and Required Inputs

  1. oauth - auth_uri, client_id, client_secret, audience
  2. oauth_basic - auth_uri, username, password
  3. oauth_password - auth_uri, username, password
  4. basic - username, password, auth_uri (optional)
  5. bearer - api_key
  6. ApiToken - api_key
  7. dell - auth_uri, client_id, client_secret

Examples

Example usage for getting a Datto RMM session:

from ezsession import get_session
def datto_rmm_session(api_key, api_secret, server):
    base_uri = f"https://{server}-api.centrastage.net"
    auth = {
        "type": "oauth_basic",
        "auth_uri": f"{base_uri}/auth/oauth/token",
        "username": api_key,
        "password": api_secret,
        "server": server,
    }
    return get_session(auth), base_uri

Example to initialize a Datto RMM session then get account variables.

drmm_user = "Your Datto RMM API Key"
drmm_pass = "Your Datto RMM API Secret"
drmm_server = "merlot" # Change to your Datto RMM server.
session, base_uri = datto_rmm_auth(drmm_user, drmm_pass, drmm_server)
response = session.get(f"{base_uri}/api/v2/account/variables")
variables = response.json()["variables"]

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

ezsession-0.0.16.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

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

ezsession-0.0.16-py3-none-any.whl (3.1 kB view details)

Uploaded Python 3

File details

Details for the file ezsession-0.0.16.tar.gz.

File metadata

  • Download URL: ezsession-0.0.16.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for ezsession-0.0.16.tar.gz
Algorithm Hash digest
SHA256 9d4bbc4310ed8b5a5157fcbb375cfa3113dea0863f6987e31f26277c10df1fdf
MD5 5e46a6b4ee1f0f2bd291aed0a10f5489
BLAKE2b-256 978a1a15ae467403e84f2b61285a61a7414f49549968601e5a7146982ad9ad84

See more details on using hashes here.

File details

Details for the file ezsession-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: ezsession-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for ezsession-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 a5442bc4eb43270f8b8b5f34e7b02e708e2333b8929633f0d29412ccc133fde8
MD5 61f1efe093a960b7541859939638bbf2
BLAKE2b-256 2ed0228e54e58289a02fbfbe10558bf5712f61ddbef4d7eba93fdead7605c996

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