Metadata-Version: 2.4
Name: aws-sdk-s3
Version: 0.1.0
Summary: Add your description here
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Code Generators
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pywhatwgurl>=0.1.0
Requires-Dist: zapros>=0.12.0
Dynamic: license-file

# Getting Started

## Installation

```
pip install aws-s3
```

## Usage

```python
from aws_sdk_python import AsyncS3Client


async def main():
    async with AsyncS3Client() as s3:
        # Example: call the abort_multipart_upload operation
        response = await s3.abort_multipart_upload()
        print(response["request_charged"])
```

## 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.

```python
from aws_sdk_python import AsyncS3Client


async def main():
    async with AsyncS3Client() as s3:
        # Example: paginate over list_buckets
        async for item in s3.iter_list_buckets():
            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.

```python
from aws_sdk_python import AsyncS3Client


async def main():
    async with AsyncS3Client() as s3:
        # Example: wait for bucket_exists
        await s3.wait_bucket_exists(max_wait_time=300)
```

## Error Handling

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

```python
from aws_sdk_python import AsyncS3Client
from aws_sdk_python.error import NoSuchUpload


async def main():
    async with AsyncS3Client() as s3:
        try:
            await s3.abort_multipart_upload()
        except NoSuchUpload as e:
            print(f"Error: {e}")
            print(e.data)  # additional error data
```
