Install & Compatibility
Where this runs
tested against v1.43.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.910 runs
installs and imports cleanly · install 0.0s · import 0.000s · 19.9MB
glibcpy 3.10–3.910 runs
installs and imports cleanly · install 3.1s · import 0.000s · 20MB
18MB installed
● package 18MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
SESClient
✓ from types_boto3_ses import SESClient
✗ from types_boto3_ses import SESClient
This example demonstrates how to initialize an SES client and use type annotations for both the client itself and its method responses. Type checkers will use `types-boto3-ses` to provide accurate suggestions and catch potential errors.
import os
from typing import TYPE_CHECKING
import boto3
# Conditionally import type hints only during type checking
if TYPE_CHECKING:
from types_boto3_ses.client import SESClient
from types_boto3_ses.type_defs import IdentityListResponseTypeDef
# Ensure AWS credentials are available for boto3
# For example, by setting AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables
# or configuring the AWS CLI.
def list_ses_identities() -> None:
# boto3.client returns a dynamically typed client. With types-boto3-ses installed,
# static analysis tools like mypy will correctly infer types.
# For explicit type hints, you can annotate the client:
client: SESClient = boto3.client("ses", region_name=os.environ.get('AWS_REGION', 'us-east-1'))
try:
# The response type will be correctly inferred by type checkers
response: IdentityListResponseTypeDef = client.list_identities(IdentityType='EmailAddress')
print("Verified SES Identities:")
for identity in response.get('Identities', []):
print(f"- {identity}")
except client.exceptions.ClientError as e:
print(f"Error listing SES identities: {e}")
if __name__ == "__main__":
# Set a dummy region if not running in an AWS environment
if 'AWS_REGION' not in os.environ:
os.environ['AWS_REGION'] = 'us-east-1'
list_ses_identities()
Debug
Known issues
breakingAs of mypy-boto3-builder version 8.12.0 (which generated types-boto3-ses 1.42.3), support for Python 3.8 has been explicitly removed. All `types-boto3` packages now require Python 3.9 or newer.fixUpgrade your Python environment to 3.9 or higher.
affects: mypy-boto3-builder >= 8.12.0, types-boto3-ses >= 1.42.0
breakingIn `mypy-boto3-builder` version 8.9.0, there were breaking changes to TypeDef naming conventions. Specifically, some TypeDef names were shortened (e.g., `CreateDistributionRequestRequestTypeDef` became `CreateDistributionRequestTypeDef`) and conflicting `Extra` postfixes were moved (`CreateDistributionExtraRequestTypeDef` to `CreateDistributionRequestExtraTypeDef`). While not specific to SES, this change affects all generated service TypeDefs.fixReview your codebase for direct imports and usage of TypeDef names and update them according to the new conventions.
affects: mypy-boto3-builder >= 8.9.0, types-boto3-ses >= 1.39.0
gotchaUsers of PyCharm may experience slow performance or high CPU usage when using `types-boto3` packages due to issues with PyCharm's type checker and `Literal` overloads. It is recommended to use `types-boto3-lite` for better performance or to configure PyCharm to use external type checkers like MyPy or Pyright.fixConsider installing `types-boto3-lite-ses` instead (e.g., `pip install types-boto3-lite-ses`) or disable PyCharm's internal type checker and use MyPy/Pyright.
affects: All versions
deprecatedWhile not directly affecting SES, the `sms-voice` service was removed from generation in `mypy-boto3-builder` version 8.11.0, recommending the use of `pinpoint-sms-voice` instead. This highlights a pattern of service renames or deprecations that can occur within the AWS ecosystem and the `types-boto3` project.fixAlways refer to the latest AWS documentation for service names and use the corresponding `types-boto3` package or builder options.
affects: mypy-boto3-builder >= 8.11.0
Upgrade
Version history
1.43.0latest on PyPI · released Apr 29, 2026
Audit
Dependencies
boto3requiredProvides the underlying AWS SDK for Python that these types annotate.
pythonrequiredRequires Python 3.9 or newer.