Skip to main content

Getting Started

Installation

pip install capo-sts

Usage

from capo_sts import AsyncSTSClient


async def main():
    async with AsyncSTSClient() as sts:
        # Example: call the assume_role operation
        response = await sts.assume_role()
        print(response["credentials"])

Error Handling

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

from capo_sts import AsyncSTSClient
from capo_sts.error import ExpiredTokenException


async def main():
    async with AsyncSTSClient() as sts:
        try:
            await sts.assume_role()
        except ExpiredTokenException 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_sts import AsyncSTSClient


async def main():
    async with AsyncSTSClient() as sts:
        # Default: 3 attempts for every operation
        response = await sts.assume_role()

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

        # Disable retries for this call
        response = await sts.assume_role(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_sts-0.7.0.tar.gz (101.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_sts-0.7.0-py3-none-any.whl (171.3 kB view details)

Uploaded Python 3

File details

Details for the file capo_sts-0.7.0.tar.gz.

File metadata

  • Download URL: capo_sts-0.7.0.tar.gz
  • Upload date:
  • Size: 101.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_sts-0.7.0.tar.gz
Algorithm Hash digest
SHA256 3c4538d30ce65cc57292ad657dae5dc2a1a43054a5e9d5f82ec150328d13dba5
MD5 6d89d2756dfa2f93780334847a6a5190
BLAKE2b-256 27a2b68c1eda7e41cce1d3543e55133e95aa798cff5f38cd6953f2233aebacae

See more details on using hashes here.

File details

Details for the file capo_sts-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: capo_sts-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 171.3 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_sts-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 49ce882b53bb800d8c416c814369b54b6567eb6847385537bed044cb670172c1
MD5 37797d58f88de03374246a2b9b912fde
BLAKE2b-256 a239ec8adf38f53cfbdab26022a95e312479a6d2e961052f646ab5a40aba8b6c

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 files

0.6.0

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