Skip to main content

Getting Started

Installation

pip install capo-sso-oidc

Usage

from capo_sso_oidc import AsyncSSOOIDCClient


async def main():
    async with AsyncSSOOIDCClient() as ssooidc:
        # Example: call the create_token operation
        response = await ssooidc.create_token()
        print(response["access_token"])

Error Handling

The SDK raises exceptions for errors returned by the API. Catch them to handle failures gracefully.

from capo_sso_oidc import AsyncSSOOIDCClient
from capo_sso_oidc.error import AccessDeniedException


async def main():
    async with AsyncSSOOIDCClient() as ssooidc:
        try:
            await ssooidc.create_token()
        except AccessDeniedException as e:
            print(f"Error: {e}")
            print(e.data)  # additional error data

Retrying

The SDK retries failed operations automatically. Retry behaviour follows the Smithy specification: errors are retried based on their is_retryable and is_throttling_error attributes. Throttling errors use a longer base delay. Network-level failures (connection errors and timeouts) are also retried. Non-retryable errors, such as client errors without the @retryable trait, are raised immediately without further attempts.

The number of attempts defaults to 3 and can be changed at the client level via retry_max_attempts, or per call via config_overrides.

from capo_sso_oidc import AsyncSSOOIDCClient


async def main():
    async with AsyncSSOOIDCClient() as ssooidc:
        # Default: 3 attempts for every operation
        response = await ssooidc.create_token()

        # Override per operation
        response = await ssooidc.create_token(config_overrides={"retry_max_attempts": 5})

        # Disable retries for this call
        response = await ssooidc.create_token(config_overrides={"retry_max_attempts": 1})

Download files

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

Source Distribution

capo_sso_oidc-0.6.0.tar.gz (57.8 kB view details)

Uploaded Source

Built Distribution

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

capo_sso_oidc-0.6.0-py3-none-any.whl (93.9 kB view details)

Uploaded Python 3

File details

Details for the file capo_sso_oidc-0.6.0.tar.gz.

File metadata

  • Download URL: capo_sso_oidc-0.6.0.tar.gz
  • Upload date:
  • Size: 57.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for capo_sso_oidc-0.6.0.tar.gz
Algorithm Hash digest
SHA256 56ab9e8e359a892d328118d30a6230b2b8efc8f62b8ec82697b86f18581b7406
MD5 99b440fb4833e18154d0d80a3ff2ee2a
BLAKE2b-256 b1ce70135298fbecf8d7532d2c16c38a44405364b10e94cf0c45d3ee51be821a

See more details on using hashes here.

File details

Details for the file capo_sso_oidc-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: capo_sso_oidc-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 93.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for capo_sso_oidc-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 344ddac9cd2119cedf0eb4763d7d8a75e9eb6a0bb2991606ed16eaf0adbb3a27
MD5 9eafed422757d32b87aa937e911292e7
BLAKE2b-256 74b2698ceb5965f5c59bb6f666ca239c004eac84ea153a5277db0c9168040e58

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

Supported by

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