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.6MB
glibcpy 3.10–3.910 runs
installs and imports cleanly · install 3.4s · import 0.000s · 20MB
18MB installed
● package 18MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
SupportAppClient
✓ from mypy_boto3_support_app import SupportAppClient
✗ from mypy_boto3_support_app import SupportAppClient
This quickstart demonstrates how to initialize a typed `SupportAppClient` and make an API call using type-hinted request parameters. The `if TYPE_CHECKING:` guard ensures that type imports are only active during static analysis, preventing runtime dependencies.
import boto3
from typing import TYPE_CHECKING
import os
if TYPE_CHECKING:
from mypy_boto3_support_app.client import SupportAppClient
from mypy_boto3_support_app.type_defs import CreateCaseRequestRequestTypeDef
def create_support_case(
subject: str,
communication_body: str,
service_code: str,
category_code: str
) -> dict:
client: SupportAppClient = boto3.client(
"support-app",
region_name=os.environ.get('AWS_REGION', 'us-east-1'),
aws_access_key_id=os.environ.get('AWS_ACCESS_KEY_ID', ''),
aws_secret_access_key=os.environ.get('AWS_SECRET_ACCESS_KEY', '')
)
# Example: Defining a request payload with type hints
# Note: Replace with actual required parameters for CreateCase API
request_payload: CreateCaseRequestRequestTypeDef = {
'subject': subject,
'communicationBody': communication_body,
'serviceCode': service_code,
'categoryCode': category_code,
'severityCode': 'low',
'language': 'en'
}
try:
response = client.create_case(**request_payload)
print(f"Successfully created case: {response.get('caseId')}")
return response
except Exception as e:
print(f"Error creating case: {e}")
raise
# Example usage (ensure AWS credentials and region are set in environment variables)
# if __name__ == "__main__":
# # These values are placeholders and would need to be valid for your AWS account
# # For actual usage, retrieve service and category codes from AWS Support documentation
# sample_subject = "My application is experiencing an issue."
# sample_body = "Detailed description of the problem and steps to reproduce."
# sample_service_code = "amazon-ec2" # Example, replace with actual support service code
# sample_category_code = "instance-connect" # Example, replace with actual support category code
#
# # Uncomment to run the example
# # create_support_case(sample_subject, sample_body, sample_service_code, sample_category_code)
Debug
Known issues
breakingAs of `mypy-boto3-builder 8.12.0`, Python 3.8 is no longer supported. Projects must use Python 3.9 or higher.fixUpgrade your Python environment to 3.9 or newer.
affects: mypy-boto3-builder >= 8.12.0 and dependent packages
breakingVersion `8.9.0` of `mypy-boto3-builder` introduced breaking changes to `TypeDef` naming conventions. Argument `TypeDefs` now use shorter names, and conflicting `TypeDef` `Extra` postfixes are moved to the end. This can break existing explicit type annotations in your code.fixUpdate your explicit `TypeDef` imports and usage to reflect the new naming conventions. Refer to the `mypy-boto3` documentation or regenerate stubs if using the builder.
affects: mypy-boto3-builder >= 8.9.0 and dependent packages
gotchaAlways wrap `mypy-boto3` type imports within an `if TYPE_CHECKING:` block. This prevents the type stub packages from becoming runtime dependencies, keeping your production environment cleaner and lighter.fixEncapsulate type imports: `from typing import TYPE_CHECKING
if TYPE_CHECKING:
from mypy_boto3_support_app.client import SupportAppClient`. affects: All versions
gotchaWhen using PyCharm, performance issues with `Literal` overloads (`PY-40997`) can occur. It is recommended to use the `boto3-stubs-lite` version if you experience slow performance or high CPU usage.fixInstall `boto3-stubs-lite[support-app]` instead of the full `boto3-stubs[support-app]` package (`pip install 'boto3-stubs-lite[support-app]'`). This version might require more explicit type annotations.
affects: All versions
gotchaFor optimal type inference and auto-completion, especially in IDEs that might not fully support function overloads (e.g., older VSCode Python extensions), explicitly annotate `boto3.client()` and `boto3.session.client()` calls with the specific client type (e.g., `client: SupportAppClient = boto3.client("support-app")`).fixAdd explicit type hints to your `boto3.client` or `session.client` calls.
affects: All versions
gotchaBe aware that AWS service names can change or be deprecated. For example, `sms-voice` was replaced by `pinpoint-sms-voice`. While not specific to 'support-app', this indicates a pattern where service stub packages might be retired or renamed, requiring updates to your dependencies.fixRegularly check `mypy-boto3` release notes for service deprecations or renames and update your imports and installed packages accordingly.
affects: All versions (service-specific)
Upgrade
Version history
1.43.0latest on PyPI · released Apr 29, 2026
Audit
Dependencies
boto3requiredRuntime dependency for AWS SDK functionality. These are type stubs for boto3.
mypyoptionalStatic type checker to leverage the provided annotations.
pythonrequiredRequires Python 3.9 or higher.