Skip to main content

Python SDK for Amazon DynamoDB.

Project description

Getting Started

Installation

pip install aws-sdk-dynamodb

Usage

from aws_sdk_dynamodb import AsyncDynamoDBClient


async def main():
    async with AsyncDynamoDBClient() as s3:
        # Example: call the batch_execute_statement operation
        response = await s3.batch_execute_statement()
        print(response["responses"])

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_dynamodb import AsyncDynamoDBClient


async def main():
    async with AsyncDynamoDBClient() as s3:
        # Example: paginate over list_tables
        async for item in s3.iter_list_tables():
            print(item)

Waiters

Waiters poll an operation until a resource reaches a desired state. If the operation supports waiters it will have a wait_ prefixed method.

from aws_sdk_dynamodb import AsyncDynamoDBClient


async def main():
    async with AsyncDynamoDBClient() as s3:
        # Example: wait for table_not_exists
        await s3.wait_table_not_exists(max_wait_time=300)

Error Handling

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

from aws_sdk_dynamodb import AsyncDynamoDBClient
from aws_sdk_dynamodb.error import InternalServerError


async def main():
    async with AsyncDynamoDBClient() as s3:
        try:
            await s3.batch_execute_statement()
        except InternalServerError 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_dynamodb import AsyncDynamoDBClient


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

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

        # Disable retries for this call
        response = await s3.batch_execute_statement(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_dynamodb-0.4.0.tar.gz (294.8 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_dynamodb-0.4.0-py3-none-any.whl (632.4 kB view details)

Uploaded Python 3

File details

Details for the file aws_sdk_dynamodb-0.4.0.tar.gz.

File metadata

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

File hashes

Hashes for aws_sdk_dynamodb-0.4.0.tar.gz
Algorithm Hash digest
SHA256 6279f90945973144f9ca7d94d731513575b5abf1c9d7d81d40280554db93d676
MD5 0a0920129316acaa405db3f4067c3586
BLAKE2b-256 bd8f2c010ea1c57e73a995c21d906a4e81776299afddea408593d46fc10f7fa6

See more details on using hashes here.

Provenance

The following attestation bundles were made for aws_sdk_dynamodb-0.4.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_dynamodb-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_sdk_dynamodb-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0c3e3abedb1db83e40c04441c9428f36203df6002efed317ff6a6cc708c14ae8
MD5 35ae1e5d18b160d429cd0dad146bfce2
BLAKE2b-256 63b3a17d086c151fb43663a8873e2c67fc0cdc1d28a9698d6fd2f7083c5eb599

See more details on using hashes here.

Provenance

The following attestation bundles were made for aws_sdk_dynamodb-0.4.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