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.3.0.tar.gz (301.5 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.3.0-py3-none-any.whl (637.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aws_sdk_dynamodb-0.3.0.tar.gz
  • Upload date:
  • Size: 301.5 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.3.0.tar.gz
Algorithm Hash digest
SHA256 1bade9df819f37d0c06b8f6791df7e87bdb76a8bcc8f866de73b4efe534bc6da
MD5 900ec523462022abeca5ae69d4df9b9c
BLAKE2b-256 6d0e34dc6a0b937bf1a19a528ff966a07c837a9ede55502de3b7f7d39099c407

See more details on using hashes here.

Provenance

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

Publisher: 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.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_sdk_dynamodb-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 222be798381e7b7862b98d3b99f695c4215817d7e0bf1407041ea8cda5e5df23
MD5 8d6dbc961c12b41cffc03c7cd2120afc
BLAKE2b-256 42bfabc8d25135611834ad1620bafba51fbf835b7a37a4248f428cd4e2077263

See more details on using hashes here.

Provenance

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

Publisher: 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