Welcome to botocore

Botocore is a low-level interface to a growing number of Amazon Web Services. Botocore serves as the foundation for the AWS-CLI command line utilities. It will also play an important role in the boto3.x project.

The botocore package is compatible with Python versions 2.6.5, Python 2.7.x, and Python 3.3.x and higher.

Contents:

Upgrade Notes

Upgrading to 1.11.0

  • The vendored versions of requests and urllib3 are no longer being used and have been replaced with a direct dependency on upstream urllib3 and requests is no longer a dependency of botocore. While these vendored dependencies are still in the botocore package they should not be used as they will be removed in the future. Any code that imports from botocore.vendored.requests.* should be updated accordingly. Specifically, the use of botocore.vendored.requests.exceptions.* or botocore.vendored.requests.packages.urllib3.exceptions.* must be updated to the corresponding exception classes in botocore.exceptions.
  • The version of urllib3 used to make HTTP requests has been updated from v1.10.4 to the range >=1.20,<1.24.

Upgrading to 1.0.0rc1

  • The default argument to session.get_config_variable() has been removed. If you need this functionality you can use:

    value = session.get_config_variable() or 'default value'
    

Upgrading to 0.104.0

  • Warnings about imminent removal of service/operation objects are now printed to stderr by default. It is highly encouraged that you switch to clients as soon as possible, as the deprecated service/operation object is going away. See Upgrading to Clients for more information.

Upgrading to 0.66.0

  • The before-call and after-call events have been changed such that their model for the operation is sent instead of the operation object itself.
  • The interface to waiters via Service.get_waiter has changed. An endpoint is now required when creating the waiter via get_waiter() instead of when calling the waiter waiter.wait(endpoint, **kwargs).

Upgrading to 0.65.0

  • get_scoped_config() will now include credentials from the shared credentials file (~/.aws/credentials) if present.

Upgrading to 0.64.0

  • botocore.parameters has been split into several different modules (validate, serialize, and model). If you were using the Operation.call method, you are unaffected by this change.
  • A botocore.client module has been added. This is the preferred interface into botocore going forward.
  • Response keys that are no longer in the HTTP response are not mapped to default values in the response dict.
  • ResponseMetadata is now always added to any successful response
  • Errors has been switch from a list of errors to a single Error key. Also consistently populate the Error dict on errors.

Indices and tables