Skip to main content

Python SDK for AWS Key Management Service.

Project description

Getting Started

Installation

pip install aws-sdk-kms

Usage

from aws_sdk_kms import AsyncKMSClient


async def main():
    async with AsyncKMSClient() as s3:
        # Example: call the cancel_key_deletion operation
        response = await s3.cancel_key_deletion()
        print(response["key_id"])

Pagination

Some operations in this SDK support pagination. If the operation supports pagination it will have an iter_ prefixed method that returns an async iterator.

from aws_sdk_kms import AsyncKMSClient


async def main():
    async with AsyncKMSClient() as s3:
        # Example: paginate over describe_custom_key_stores
        async for item in s3.iter_describe_custom_key_stores():
            print(item)

Error Handling

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

from aws_sdk_kms import AsyncKMSClient
from aws_sdk_kms.error import DependencyTimeoutException


async def main():
    async with AsyncKMSClient() as s3:
        try:
            await s3.cancel_key_deletion()
        except DependencyTimeoutException 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 aws_sdk_kms import AsyncKMSClient


async def main():
    async with AsyncKMSClient() as s3:
        # Default: 3 attempts for every operation
        response = await s3.cancel_key_deletion()

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

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

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

aws_sdk_kms-0.3.0.tar.gz (263.6 kB view details)

Uploaded Source

Built Distribution

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

aws_sdk_kms-0.3.0-py3-none-any.whl (493.7 kB view details)

Uploaded Python 3

File details

Details for the file aws_sdk_kms-0.3.0.tar.gz.

File metadata

  • Download URL: aws_sdk_kms-0.3.0.tar.gz
  • Upload date:
  • Size: 263.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aws_sdk_kms-0.3.0.tar.gz
Algorithm Hash digest
SHA256 0d547c124b483582981b531536b218e08eed39126397018d61cbf7f1fa7fd551
MD5 800fef5e4654a74bff44903d99cc7552
BLAKE2b-256 d86147710fd2d099e5d5714e6dc7f3aa82aab279a0c70cc04b862f291f0817c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for aws_sdk_kms-0.3.0.tar.gz:

Publisher: auto-publish.yml on kap-sh/aws-sdk-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aws_sdk_kms-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: aws_sdk_kms-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 493.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for aws_sdk_kms-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 461ebe363c8700d14d73c6627ce14f3634cb3e5758e7c47bad1930e6d872691e
MD5 28531f311c73ff3ba31577470b2cab57
BLAKE2b-256 fe2099f7607f030987fafac75be2cbd3196c2d571bb90594e3d360e3893dac5e

See more details on using hashes here.

Provenance

The following attestation bundles were made for aws_sdk_kms-0.3.0-py3-none-any.whl:

Publisher: auto-publish.yml on kap-sh/aws-sdk-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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