Skip to main content

IAM V2 client library for EaseCation services (Python port of @easecation/iam-client)

Project description

easecation-iam-client

Python port of @easecation/iam-client. IAM V2 API wrapper for EaseCation services.

Install

pip install easecation-iam-client

Or from repo:

pip install -e packages/iam-client-py

Usage

from easecation_iam_client import IamClient, create_iam_client_from_env

# From env (IAM_BASE_URL, IAM_CLIENT_ID, IAM_CLIENT_SECRET)
client = create_iam_client_from_env()

# Or explicit config
client = IamClient(
    iam_base_url="https://iamapi.easecation.net",
    client_id="YOUR_CLIENT_ID",
    client_secret="YOUR_CLIENT_SECRET",
)

# OAuth code exchange
tokens = client.exchange_oauth_code(code, redirect_uri)

# Verify access token
verify = client.verify_token(access_token)

# API key verification
api_key_data = client.verify_api_key(key_value)

# App session verification
valid = client.verify_app_session_token(app_session_token)

API

  • get_app_session_token(), invalidate_app_token()
  • exchange_oauth_code(code, redirect_uri)
  • verify_token(access_token), evict_from_verify_cache(access_token)
  • refresh_token(refresh_token), revoke_token(refresh_token)
  • get_jwks(), get_user_profile(access_token), get_user_bootstrap(...), get_hr_bootstrap_data(...)
  • verify_iam_callback_token(iam_token, ...), get_user_permissions(user_id, ...)
  • verify_api_key(key_value), evict_api_key_from_cache(key_value), clear_api_key_cache()
  • verify_app_session_token(app_session_token), clear_app_session_verify_cache()

ApiKeyRotationHelper for zero-downtime key rotation: create_new_key(...), revoke_key(key_id, ...), list_active_keys(owner_id?).

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

easecation_iam_client-1.3.2.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

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

easecation_iam_client-1.3.2-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file easecation_iam_client-1.3.2.tar.gz.

File metadata

  • Download URL: easecation_iam_client-1.3.2.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for easecation_iam_client-1.3.2.tar.gz
Algorithm Hash digest
SHA256 eabff289a240320db30d9fb6e3d0a9f9243978efef0e5452a52808f9e91a3959
MD5 56dd8f868f4a6fe71fcf9d65dc044319
BLAKE2b-256 acaa438994b711e13baec98706249cadc0d3c3a6242dd5973abef9cf9b14dc56

See more details on using hashes here.

File details

Details for the file easecation_iam_client-1.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for easecation_iam_client-1.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 704255078ed7db206e572bb301ab0cea701bf215c35a9b0fcb2d9e66b604553c
MD5 34f80ebd60205128af2184cc6e16f83f
BLAKE2b-256 83fad63d143299f5fb81c4ac64eac730da15a3b31d91a0517ebfd1d0db73f286

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