Type annotations for boto3 MarketplaceCommerceAnalytics

1.42.3 · active · verified Sat Apr 11

This package provides static type annotations for the `boto3` Marketplace Commerce Analytics service, enhancing developer experience by enabling IDE autocompletion, type checking with `mypy` or `pyright`, and early detection of potential API usage errors. It is generated by `mypy-boto3-builder 8.12.0` and currently supports `boto3` version `1.42.3`.

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to create a type-hinted `MarketplaceCommerceAnalyticsClient` and call the `generate_data_set` method with a type-hinted request payload. It uses `os.environ.get` for AWS credentials and region, making it runnable after setting appropriate environment variables. Replace placeholder values with your actual AWS resource ARNs and bucket names.

import os
from datetime import datetime

import boto3
from mypy_boto3_marketplacecommerceanalytics.client import MarketplaceCommerceAnalyticsClient
from mypy_boto3_marketplacecommerceanalytics.type_defs import GenerateDataSetRequestTypeDef, GenerateDataSetResponseTypeDef


def get_marketplace_analytics_client() -> MarketplaceCommerceAnalyticsClient:
    """Returns a type-annotated MarketplaceCommerceAnalytics client."""
    session = boto3.Session(
        aws_access_key_id=os.environ.get('AWS_ACCESS_KEY_ID', 'DUMMY_KEY'),
        aws_secret_access_key=os.environ.get('AWS_SECRET_ACCESS_KEY', 'DUMMY_SECRET'),
        region_name=os.environ.get('AWS_DEFAULT_REGION', 'us-east-1')
    )
    return session.client("marketplacecommerceanalytics")


if __name__ == "__main__":
    client: MarketplaceCommerceAnalyticsClient = get_marketplace_analytics_client()

    request_params: GenerateDataSetRequestTypeDef = {
        "DataSetType": "example-data-set-type",
        "DataSetPublicationDate": datetime(2023, 1, 1),
        "RoleNameArn": "arn:aws:iam::123456789012:role/MyMarketplaceAnalyticsRole",
        "DestinationS3BucketName": "my-marketplace-data-bucket",
        "DestinationS3Prefix": "marketplace-analytics/",
        "SnsTopicArn": "arn:aws:sns:us-east-1:123456789012:MyMarketplaceAnalyticsTopic",
        "CustomerDefinedValues": {"key1": "value1"}
    }

    try:
        response: GenerateDataSetResponseTypeDef = client.generate_data_set(**request_params)
        print(f"Data set generation started. Status: {response.get('DataSetRequestId')}")
    except client.exceptions.ClientError as e:
        print(f"Error generating data set: {e}")
    except Exception as e:
        print(f"An unexpected error occurred: {e}")

view raw JSON →