AnalyticsConfiguration

class aws_cdk.aws_cognito.AnalyticsConfiguration(*, application=None, application_id=None, external_id=None, role=None, share_user_data=None)

Bases: object

The settings for Amazon Pinpoint analytics configuration.

With an analytics configuration, your application can collect user-activity metrics for user notifications with an Amazon Pinpoint campaign. Amazon Pinpoint isn’t available in all AWS Regions. For a list of available Regions, see Amazon Cognito and Amazon Pinpoint Region availability: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html#cognito-user-pools-find-region-mappings.

Parameters:
  • application (Optional[CfnApp]) – The Amazon Pinpoint project that you want to connect to your user pool app client. Amazon Cognito publishes events to the Amazon Pinpoint project. You can also configure your application to pass an endpoint ID in the AnalyticsMetadata parameter of sign-in operations. The endpoint ID is information about the destination for push notifications. Default: - no configuration, you need to specify either application or all of applicationId, externalId, and role.

  • application_id (Optional[str]) – Your Amazon Pinpoint project ID. Default: - no configuration, you need to specify either this property along with externalId and role or application.

  • external_id (Optional[str]) – The external ID of the role that Amazon Cognito assumes to send analytics data to Amazon Pinpoint. More info here: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html Default: - no configuration, you need to specify either this property along with applicationId and role or application.

  • role (Optional[IRole]) – The IAM role that has the permissions required for Amazon Cognito to publish events to Amazon Pinpoint analytics. Default: - no configuration, you need to specify either this property along with applicationId and externalId or application.

  • share_user_data (Optional[bool]) – If true, Amazon Cognito includes user data in the events that it publishes to Amazon Pinpoint analytics. Default: - false

ExampleMetadata:

infused

Example:

import aws_cdk.aws_pinpoint as pinpoint

# user_pool: cognito.UserPool
# pinpoint_app: pinpoint.CfnApp
# pinpoint_role: iam.Role


cognito.UserPoolClient(self, "Client",
    user_pool=user_pool,
    analytics=cognito.AnalyticsConfiguration(
        # Your Pinpoint project
        application=pinpoint_app,

        # Whether to include user data in analytics events
        share_user_data=True
    )
)

Attributes

application

The Amazon Pinpoint project that you want to connect to your user pool app client.

Amazon Cognito publishes events to the Amazon Pinpoint project. You can also configure your application to pass an endpoint ID in the AnalyticsMetadata parameter of sign-in operations. The endpoint ID is information about the destination for push notifications.

Default:
  • no configuration, you need to specify either application or all of applicationId, externalId, and role.

application_id

Your Amazon Pinpoint project ID.

Default:
  • no configuration, you need to specify either this property along with externalId and role or application.

external_id

The external ID of the role that Amazon Cognito assumes to send analytics data to Amazon Pinpoint.

More info here: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html

Default:
  • no configuration, you need to specify either this property along with applicationId and role or application.

role

The IAM role that has the permissions required for Amazon Cognito to publish events to Amazon Pinpoint analytics.

Default:
  • no configuration, you need to specify either this property along with applicationId and externalId or application.

share_user_data

If true, Amazon Cognito includes user data in the events that it publishes to Amazon Pinpoint analytics.

Default:
  • false