Skip to main content

boto3 with auto-complete and dataclasses not dicts

Project description



The Objective

I want to be able to write boto3 code with my favourite IDE (PyCharm) telling me that the s3 service has methods called list_buckets and list_objects_v2 and they take certain arguments and return objects of this or that type which has these attributes of these types.

autoboto allows me to do that:

from import s3

s3_client = s3.Client()

for bucket in s3_client.list_buckets().buckets:
    print(f"= {} =")
    for obj in s3_client.list_objects_v2(
        print(f"  - {obj.key}")


pip install autoboto

Code Generation

When you install autoboto from, it already contains generated code for all the services that boto3 supports.

This is only useful if you’re changing the generated code and want to experiment with autoboto.

python -m autoboto.builder --services s3,cloudformation,lambda




# Check everything generates well without formatting
python -m autoboto.builder --yapf-style "" --services "*"

# Generate with formatting
python -m autoboto.builder --yapf-style "facebook" --services "*"

python sdist bdist_wheel

twine upload --repository-url dist/*

twine upload dist/*

# tag the release

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

autoboto-0.1.0.tar.gz (3.1 MB view hashes)

Uploaded source

Built Distribution

autoboto-0.1.0-py3-none-any.whl (3.2 MB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page