Class: AWSCDK::Cognito::CfnUserPoolClient::AnalyticsConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
cognito/cfn_user_pool_client.rb

Overview

The settings for Amazon Pinpoint analytics configuration.

With an analytics configuration, your application can collect user-activity metrics for user notifications with a 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 .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(application_arn: nil, application_id: nil, external_id: nil, role_arn: nil, user_data_shared: nil) ⇒ AnalyticsConfigurationProperty

Returns a new instance of AnalyticsConfigurationProperty.

Parameters:

  • application_arn (String, nil) (defaults to: nil)

    The Amazon Resource Name (ARN) of an Amazon Pinpoint project that you want to connect to your user pool app client.

  • application_id (String, nil) (defaults to: nil)

    Your Amazon Pinpoint project ID.

  • external_id (String, nil) (defaults to: nil)

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

  • role_arn (String, nil) (defaults to: nil)

    The ARN of an AWS Identity and Access Management role that has the permissions required for Amazon Cognito to publish events to Amazon Pinpoint analytics.

  • user_data_shared (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

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



811
812
813
814
815
816
817
818
819
820
821
822
# File 'cognito/cfn_user_pool_client.rb', line 811

def initialize(application_arn: nil, application_id: nil, external_id: nil, role_arn: nil, user_data_shared: nil)
  @application_arn = application_arn
  Jsii::Type.check_type(@application_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "applicationArn") unless @application_arn.nil?
  @application_id = application_id
  Jsii::Type.check_type(@application_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "applicationId") unless @application_id.nil?
  @external_id = external_id
  Jsii::Type.check_type(@external_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "externalId") unless @external_id.nil?
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil?
  @user_data_shared = user_data_shared
  Jsii::Type.check_type(@user_data_shared, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "userDataShared") unless @user_data_shared.nil?
end

Instance Attribute Details

#application_arnString? (readonly)

The Amazon Resource Name (ARN) of an Amazon Pinpoint project that you want to connect to your user pool app client.

Amazon Cognito publishes events to the Amazon Pinpoint project that ApplicationArn declares. 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



830
831
832
# File 'cognito/cfn_user_pool_client.rb', line 830

def application_arn
  @application_arn
end

#application_idString? (readonly)

Your Amazon Pinpoint project ID.



835
836
837
# File 'cognito/cfn_user_pool_client.rb', line 835

def application_id
  @application_id
end

#external_idString? (readonly)

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



840
841
842
# File 'cognito/cfn_user_pool_client.rb', line 840

def external_id
  @external_id
end

#role_arnString? (readonly)

The ARN of an AWS Identity and Access Management role that has the permissions required for Amazon Cognito to publish events to Amazon Pinpoint analytics.



845
846
847
# File 'cognito/cfn_user_pool_client.rb', line 845

def role_arn
  @role_arn
end

#user_data_sharedBoolean, ... (readonly)

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



850
851
852
# File 'cognito/cfn_user_pool_client.rb', line 850

def user_data_shared
  @user_data_shared
end

Class Method Details

.jsii_propertiesObject



852
853
854
855
856
857
858
859
860
# File 'cognito/cfn_user_pool_client.rb', line 852

def self.jsii_properties
  {
    :application_arn => "applicationArn",
    :application_id => "applicationId",
    :external_id => "externalId",
    :role_arn => "roleArn",
    :user_data_shared => "userDataShared",
  }
end

Instance Method Details

#to_jsiiObject



862
863
864
865
866
867
868
869
870
871
872
# File 'cognito/cfn_user_pool_client.rb', line 862

def to_jsii
  result = {}
  result.merge!({
    "applicationArn" => @application_arn,
    "applicationId" => @application_id,
    "externalId" => @external_id,
    "roleArn" => @role_arn,
    "userDataShared" => @user_data_shared,
  })
  result.compact
end