mypy-boto3-iotevents-data type annotations

1.42.3 · active · verified Sat Apr 11

mypy-boto3-iotevents-data provides type annotations for the `boto3` IoTEventsData service, ensuring type safety and improved autocompletion for Python developers. It is currently at version 1.42.3 and is part of the `mypy-boto3` family, with new releases frequently generated by `mypy-boto3-builder` to stay in sync with `boto3` updates.

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to use `mypy-boto3-iotevents-data` to get a typed client and send data to AWS IoT Events. It explicitly annotates the `boto3` client to leverage the provided type hints. Remember that `mypy-boto3-iotevents-data` provides type annotations, so `boto3` itself must be installed for runtime functionality.

import boto3
from mypy_boto3_iotevents_data.client import IoTEventsDataClient
from mypy_boto3_iotevents_data.type_defs import PutMessageRequestRequestTypeDef
import os

def send_iot_event_data(event_data: PutMessageRequestRequestTypeDef) -> dict:
    session = boto3.Session(region_name=os.environ.get('AWS_REGION', 'us-east-1'))
    client: IoTEventsDataClient = session.client('iotevents-data')
    response = client.put_message(messages=[event_data])
    print(f"Sent IoT Event Data: {response}")
    return response

if __name__ == "__main__":
    # Example usage - replace with actual event data
    # In a real scenario, you'd populate this with data for your detector model.
    sample_event = {
        "messageId": "my-unique-message-id",
        "inputName": "my-input",
        "payload": b'{"temperature": 25.5}' # Payload must be bytes
    }
    try:
        # Ensure AWS_REGION is set in environment, or provide it directly
        os.environ['AWS_REGION'] = os.environ.get('AWS_REGION', 'us-east-1')
        send_iot_event_data(sample_event)
    except Exception as e:
        print(f"Error sending IoT Event Data: {e}")

view raw JSON →