Skip to main content

Getting Started

Installation

pip install capo-sts

Usage

from capo_sts import AsyncSTSClient


async def main():
    async with AsyncSTSClient() as s3:
        # Example: call the assume_role operation
        response = await s3.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 s3:
        try:
            await s3.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 s3:
        # Default: 3 attempts for every operation
        response = await s3.assume_role()

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

        # Disable retries for this call
        response = await s3.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.2.0.tar.gz (100.4 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.2.0-py3-none-any.whl (168.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: capo_sts-0.2.0.tar.gz
  • Upload date:
  • Size: 100.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.2.0.tar.gz
Algorithm Hash digest
SHA256 953d262ef43a7905bf740b85c2012e719b62588efc29d0ca47a3e491bc73ecf8
MD5 f711f01557f3f7ed47da37c4b611d1e9
BLAKE2b-256 c47657f26f5c469fed809c6f826067e67de9dbdd46c14df6c8f25b1e2174bd20

See more details on using hashes here.

File details

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

File metadata

  • Download URL: capo_sts-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 168.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d3b9cf754688639eeaca13ab91a7e76cbecb0c799810fedf15cdfc584b169a4b
MD5 70ff7a820c1e9fa65fa8088bd089afb3
BLAKE2b-256 51aa53f6665ed668f574d7e7a402e5e060f93769bdd4bed51e2baa1908582bcc

See more details on using hashes here.

Release history Release notifications | RSS feed

0.7.0

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

This release

0.2.0 This release

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