Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 86 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,88 @@
# AWS SDK for Python

--8<-- "README.md:2"
The AWS SDK for Python provides asynchronous clients for supported AWS services.
Each service has its own package.

!!! warning "Developer preview: Not for production use"

Use this SDK for evaluation and pre-production testing. Interfaces and
behavior may change before general availability. Use
[Boto3](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html)
for production workloads.

[Browse clients](clients/index.md){ .md-button .md-button--primary }
[View source](https://github.com/aws/aws-sdk-python){ .md-button }

## Features

- **Async operations.** Every service operation is an `async` method that works
with `asyncio`.
- **Per-service packages.** Install only the clients your application uses.
- **Type annotations.** Operations, input models, and response models include
type annotations, so editors and type checkers do not need separate stub
packages.
- **Streaming support.** Clients for streaming services support event streams
and bidirectional streaming.

The code generator builds each client from its service's
[Smithy](https://smithy.io/) model.

## Install a client

The clients require Python 3.12 or later.

=== "One client"

Install the Amazon DynamoDB client from its service package:

```bash
pip install aws-sdk-dynamodb
```

=== "Several clients"

The `aws-sdk-python` meta-package keeps its client dependencies on
compatible versions. Select the clients you need through package extras:

```bash
pip install "aws-sdk-python[bedrock_runtime,sts]"
```

The [available clients](clients/index.md) page lists every service package.

## List DynamoDB tables

After you [configure AWS credentials](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html)
and grant `dynamodb:ListTables` permission, use the
[Amazon DynamoDB client](clients/dynamodb/index.md) to list up to ten tables in
`us-east-1`:

```python
import asyncio

from aws_sdk_dynamodb.client import AsyncDynamoDBClient
from aws_sdk_dynamodb.config import AsyncDynamoDBConfig
from aws_sdk_dynamodb.models import ListTablesInput


async def main():
config = await AsyncDynamoDBConfig.resolve(region="us-east-1")
client = AsyncDynamoDBClient(config=config)

response = await client.list_tables(input=ListTablesInput(limit=10))
for table in response.table_names or []:
print(table)


asyncio.run(main())
```

`AsyncDynamoDBConfig.resolve()` loads credentials and other shared settings
from the standard AWS configuration sources. The `region` argument overrides
the configured region for this client.

## Documentation and support

- [Browse client API references](clients/index.md)
- [Contribute to the SDK](contributing.md)
- [Report a bug or request a feature](https://github.com/aws/aws-sdk-python/issues/new/choose)
26 changes: 26 additions & 0 deletions docs/stylesheets/extra.css
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,29 @@ p:has(span.breadcrumb) {
[data-md-color-scheme="default"] .md-header__button.md-logo img {
content: url('../assets/aws-logo-dark.svg');
}

/* Keep the Developer Preview announcement prominent across the docs site. */
.md-banner {
background-color: #ffe0a3;
color: #291b00;
}

[data-md-color-scheme="slate"] .md-banner {
background-color: #332407;
color: #fff4d6;
}

.md-banner__inner {
font-size: 0.72rem;
}

.md-banner__inner strong,
.md-banner__inner a {
font-weight: 700;
}

.md-banner__inner a {
color: inherit;
text-decoration: underline;
text-underline-offset: 0.1em;
}
8 changes: 8 additions & 0 deletions overrides/main.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{% extends "base.html" %}

{% block announce %}
<strong>Developer Preview:</strong>
This SDK is not for production use, and its APIs and behavior may change.
For production workloads, use
<a href="https://boto3.amazonaws.com/v1/documentation/api/latest/index.html">Boto3</a>.
{% endblock %}
7 changes: 7 additions & 0 deletions zensical.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,21 @@ nav = [
{ "Bedrock AgentCore" = "clients/bedrock-agentcore/index.md" },
{ "Bedrock AgentCore Control" = "clients/bedrock-agentcore-control/index.md" },
{ "Bedrock Data Automation" = "clients/bedrock-data-automation/index.md" },
{ "Bedrock Data Automation Runtime" = "clients/bedrock-data-automation-runtime/index.md" },
{ "Bedrock Runtime" = "clients/bedrock-runtime/index.md" },
{ "CloudTrail" = "clients/cloudtrail/index.md" },
{ "Cognito Identity" = "clients/cognito-identity/index.md" },
{ "ConnectHealth" = "clients/connecthealth/index.md" },
{ "DynamoDB" = "clients/dynamodb/index.md" },
{ "GuardDuty" = "clients/guardduty/index.md" },
{ "Lambda" = "clients/lambda/index.md" },
{ "Lex Runtime V2" = "clients/lex-runtime-v2/index.md" },
{ "Polly" = "clients/polly/index.md" },
{ "QBusiness" = "clients/qbusiness/index.md" },
{ "SageMaker Runtime HTTP2" = "clients/sagemaker-runtime-http2/index.md" },
{ "Secrets Manager" = "clients/secrets-manager/index.md" },
{ "SNS" = "clients/sns/index.md" },
{ "SQS" = "clients/sqs/index.md" },
{ "STS" = "clients/sts/index.md" },
{ "Transcribe Streaming" = "clients/transcribe-streaming/index.md" },
] },
Expand All @@ -55,6 +61,7 @@ extra_javascript = [{ path = "javascript/nav-expand.js", defer = true }]
# ----------------------------------------------------------------------------
[project.theme]
language = "en"
custom_dir = "overrides"

features = [
# Zensical includes an announcement bar. This feature allows users to
Expand Down