awscustomerprofiles

package
v1.153.0-devpreview Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2022 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnDomain_CFN_RESOURCE_TYPE_NAME

func CfnDomain_CFN_RESOURCE_TYPE_NAME() *string

func CfnDomain_IsCfnElement

func CfnDomain_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnDomain_IsCfnResource

func CfnDomain_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnDomain_IsConstruct

func CfnDomain_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnIntegration_CFN_RESOURCE_TYPE_NAME

func CfnIntegration_CFN_RESOURCE_TYPE_NAME() *string

func CfnIntegration_IsCfnElement

func CfnIntegration_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnIntegration_IsCfnResource

func CfnIntegration_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnIntegration_IsConstruct

func CfnIntegration_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnObjectType_CFN_RESOURCE_TYPE_NAME

func CfnObjectType_CFN_RESOURCE_TYPE_NAME() *string

func CfnObjectType_IsCfnElement

func CfnObjectType_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnObjectType_IsCfnResource

func CfnObjectType_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnObjectType_IsConstruct

func CfnObjectType_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func NewCfnDomain_Override

func NewCfnDomain_Override(c CfnDomain, scope awscdk.Construct, id *string, props *CfnDomainProps)

Create a new `AWS::CustomerProfiles::Domain`.

func NewCfnIntegration_Override

func NewCfnIntegration_Override(c CfnIntegration, scope awscdk.Construct, id *string, props *CfnIntegrationProps)

Create a new `AWS::CustomerProfiles::Integration`.

func NewCfnObjectType_Override

func NewCfnObjectType_Override(c CfnObjectType, scope awscdk.Construct, id *string, props *CfnObjectTypeProps)

Create a new `AWS::CustomerProfiles::ObjectType`.

Types

type CfnDomain

type CfnDomain interface {
	awscdk.CfnResource
	awscdk.IInspectable
	// The timestamp of when the domain was created.
	AttrCreatedAt() *string
	// The timestamp of when the domain was most recently edited.
	AttrLastUpdatedAt() *string
	// Options for this resource, such as condition, update policy etc.
	// Experimental.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	// Experimental.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	// Experimental.
	CreationStack() *[]*string
	// The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
	//
	// You must set up a policy on the DeadLetterQueue for the SendMessage operation to enable Amazon Connect Customer Profiles to send messages to the DeadLetterQueue.
	DeadLetterQueueUrl() *string
	SetDeadLetterQueueUrl(val *string)
	// The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified.
	//
	// It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
	DefaultEncryptionKey() *string
	SetDefaultEncryptionKey(val *string)
	// The default number of days until the data within the domain expires.
	DefaultExpirationDays() *float64
	SetDefaultExpirationDays(val *float64)
	// The unique name of the domain.
	DomainName() *string
	SetDomainName(val *string)
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	// Experimental.
	LogicalId() *string
	// The construct tree node associated with this construct.
	// Experimental.
	Node() awscdk.ConstructNode
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	// Experimental.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	// Experimental.
	Stack() awscdk.Stack
	// The tags used to organize, track, or control access for this resource.
	Tags() awscdk.TagManager
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	// Experimental.
	UpdatedProperites() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	// Experimental.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	// Experimental.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	// Experimental.
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//    "GlobalSecondaryIndexes": [
	//      {
	//        "Projection": {
	//          "NonKeyAttributes": [ "myattribute" ]
	//          ...
	//        }
	//        ...
	//      },
	//      {
	//        "ProjectionType": "INCLUDE"
	//        ...
	//      },
	//    ]
	//    ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	// Experimental.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	// Experimental.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	// Experimental.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	// Experimental.
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	// Experimental.
	GetAtt(attributeName *string) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	// Experimental.
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	// Experimental.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	// Experimental.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	// Experimental.
	OnValidate() *[]*string
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	// Experimental.
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	// Experimental.
	ShouldSynthesize() *bool
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	// Experimental.
	Synthesize(session awscdk.ISynthesisSession)
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	// Experimental.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	// Experimental.
	Validate() *[]*string
	// Experimental.
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::CustomerProfiles::Domain`.

Specifies an Amazon Connect Customer Profiles Domain.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
cfnDomain := customerprofiles.NewCfnDomain(this, jsii.String("MyCfnDomain"), &cfnDomainProps{
	domainName: jsii.String("domainName"),

	// the properties below are optional
	deadLetterQueueUrl: jsii.String("deadLetterQueueUrl"),
	defaultEncryptionKey: jsii.String("defaultEncryptionKey"),
	defaultExpirationDays: jsii.Number(123),
	tags: []cfnTag{
		&cfnTag{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
})

func NewCfnDomain

func NewCfnDomain(scope awscdk.Construct, id *string, props *CfnDomainProps) CfnDomain

Create a new `AWS::CustomerProfiles::Domain`.

type CfnDomainProps

type CfnDomainProps struct {
	// The unique name of the domain.
	DomainName *string `json:"domainName" yaml:"domainName"`
	// The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
	//
	// You must set up a policy on the DeadLetterQueue for the SendMessage operation to enable Amazon Connect Customer Profiles to send messages to the DeadLetterQueue.
	DeadLetterQueueUrl *string `json:"deadLetterQueueUrl" yaml:"deadLetterQueueUrl"`
	// The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified.
	//
	// It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
	DefaultEncryptionKey *string `json:"defaultEncryptionKey" yaml:"defaultEncryptionKey"`
	// The default number of days until the data within the domain expires.
	DefaultExpirationDays *float64 `json:"defaultExpirationDays" yaml:"defaultExpirationDays"`
	// The tags used to organize, track, or control access for this resource.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
}

Properties for defining a `CfnDomain`.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
cfnDomainProps := &cfnDomainProps{
	domainName: jsii.String("domainName"),

	// the properties below are optional
	deadLetterQueueUrl: jsii.String("deadLetterQueueUrl"),
	defaultEncryptionKey: jsii.String("defaultEncryptionKey"),
	defaultExpirationDays: jsii.Number(123),
	tags: []cfnTag{
		&cfnTag{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
}

type CfnIntegration

type CfnIntegration interface {
	awscdk.CfnResource
	awscdk.IInspectable
	// The timestamp of when the integration was created.
	AttrCreatedAt() *string
	// The timestamp of when the integration was most recently edited.
	AttrLastUpdatedAt() *string
	// Options for this resource, such as condition, update policy etc.
	// Experimental.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	// Experimental.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	// Experimental.
	CreationStack() *[]*string
	// The unique name of the domain.
	DomainName() *string
	SetDomainName(val *string)
	// The configuration that controls how Customer Profiles retrieves data from the source.
	FlowDefinition() interface{}
	SetFlowDefinition(val interface{})
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	// Experimental.
	LogicalId() *string
	// The construct tree node associated with this construct.
	// Experimental.
	Node() awscdk.ConstructNode
	// The name of the profile object type mapping to use.
	ObjectTypeName() *string
	SetObjectTypeName(val *string)
	// The object type mapping.
	ObjectTypeNames() interface{}
	SetObjectTypeNames(val interface{})
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	// Experimental.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	// Experimental.
	Stack() awscdk.Stack
	// The tags used to organize, track, or control access for this resource.
	Tags() awscdk.TagManager
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	// Experimental.
	UpdatedProperites() *map[string]interface{}
	// The URI of the S3 bucket or any other type of data source.
	Uri() *string
	SetUri(val *string)
	// Syntactic sugar for `addOverride(path, undefined)`.
	// Experimental.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	// Experimental.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	// Experimental.
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//    "GlobalSecondaryIndexes": [
	//      {
	//        "Projection": {
	//          "NonKeyAttributes": [ "myattribute" ]
	//          ...
	//        }
	//        ...
	//      },
	//      {
	//        "ProjectionType": "INCLUDE"
	//        ...
	//      },
	//    ]
	//    ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	// Experimental.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	// Experimental.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	// Experimental.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	// Experimental.
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	// Experimental.
	GetAtt(attributeName *string) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	// Experimental.
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	// Experimental.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	// Experimental.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	// Experimental.
	OnValidate() *[]*string
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	// Experimental.
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	// Experimental.
	ShouldSynthesize() *bool
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	// Experimental.
	Synthesize(session awscdk.ISynthesisSession)
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	// Experimental.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	// Experimental.
	Validate() *[]*string
	// Experimental.
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::CustomerProfiles::Integration`.

Specifies an Amazon Connect Customer Profiles Integration.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
cfnIntegration := customerprofiles.NewCfnIntegration(this, jsii.String("MyCfnIntegration"), &cfnIntegrationProps{
	domainName: jsii.String("domainName"),

	// the properties below are optional
	flowDefinition: &flowDefinitionProperty{
		flowName: jsii.String("flowName"),
		kmsArn: jsii.String("kmsArn"),
		sourceFlowConfig: &sourceFlowConfigProperty{
			connectorType: jsii.String("connectorType"),
			sourceConnectorProperties: &sourceConnectorPropertiesProperty{
				marketo: &marketoSourcePropertiesProperty{
					object: jsii.String("object"),
				},
				s3: &s3SourcePropertiesProperty{
					bucketName: jsii.String("bucketName"),

					// the properties below are optional
					bucketPrefix: jsii.String("bucketPrefix"),
				},
				salesforce: &salesforceSourcePropertiesProperty{
					object: jsii.String("object"),

					// the properties below are optional
					enableDynamicFieldUpdate: jsii.Boolean(false),
					includeDeletedRecords: jsii.Boolean(false),
				},
				serviceNow: &serviceNowSourcePropertiesProperty{
					object: jsii.String("object"),
				},
				zendesk: &zendeskSourcePropertiesProperty{
					object: jsii.String("object"),
				},
			},

			// the properties below are optional
			connectorProfileName: jsii.String("connectorProfileName"),
			incrementalPullConfig: &incrementalPullConfigProperty{
				datetimeTypeFieldName: jsii.String("datetimeTypeFieldName"),
			},
		},
		tasks: []interface{}{
			&taskProperty{
				sourceFields: []*string{
					jsii.String("sourceFields"),
				},
				taskType: jsii.String("taskType"),

				// the properties below are optional
				connectorOperator: &connectorOperatorProperty{
					marketo: jsii.String("marketo"),
					s3: jsii.String("s3"),
					salesforce: jsii.String("salesforce"),
					serviceNow: jsii.String("serviceNow"),
					zendesk: jsii.String("zendesk"),
				},
				destinationField: jsii.String("destinationField"),
				taskProperties: []interface{}{
					&taskPropertiesMapProperty{
						operatorPropertyKey: jsii.String("operatorPropertyKey"),
						property: jsii.String("property"),
					},
				},
			},
		},
		triggerConfig: &triggerConfigProperty{
			triggerType: jsii.String("triggerType"),

			// the properties below are optional
			triggerProperties: &triggerPropertiesProperty{
				scheduled: &scheduledTriggerPropertiesProperty{
					scheduleExpression: jsii.String("scheduleExpression"),

					// the properties below are optional
					dataPullMode: jsii.String("dataPullMode"),
					firstExecutionFrom: jsii.Number(123),
					scheduleEndTime: jsii.Number(123),
					scheduleOffset: jsii.Number(123),
					scheduleStartTime: jsii.Number(123),
					timezone: jsii.String("timezone"),
				},
			},
		},

		// the properties below are optional
		description: jsii.String("description"),
	},
	objectTypeName: jsii.String("objectTypeName"),
	objectTypeNames: []interface{}{
		&objectTypeMappingProperty{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
	tags: []cfnTag{
		&cfnTag{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
	uri: jsii.String("uri"),
})

func NewCfnIntegration

func NewCfnIntegration(scope awscdk.Construct, id *string, props *CfnIntegrationProps) CfnIntegration

Create a new `AWS::CustomerProfiles::Integration`.

type CfnIntegrationProps

type CfnIntegrationProps struct {
	// The unique name of the domain.
	DomainName *string `json:"domainName" yaml:"domainName"`
	// The configuration that controls how Customer Profiles retrieves data from the source.
	FlowDefinition interface{} `json:"flowDefinition" yaml:"flowDefinition"`
	// The name of the profile object type mapping to use.
	ObjectTypeName *string `json:"objectTypeName" yaml:"objectTypeName"`
	// The object type mapping.
	ObjectTypeNames interface{} `json:"objectTypeNames" yaml:"objectTypeNames"`
	// The tags used to organize, track, or control access for this resource.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
	// The URI of the S3 bucket or any other type of data source.
	Uri *string `json:"uri" yaml:"uri"`
}

Properties for defining a `CfnIntegration`.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
cfnIntegrationProps := &cfnIntegrationProps{
	domainName: jsii.String("domainName"),

	// the properties below are optional
	flowDefinition: &flowDefinitionProperty{
		flowName: jsii.String("flowName"),
		kmsArn: jsii.String("kmsArn"),
		sourceFlowConfig: &sourceFlowConfigProperty{
			connectorType: jsii.String("connectorType"),
			sourceConnectorProperties: &sourceConnectorPropertiesProperty{
				marketo: &marketoSourcePropertiesProperty{
					object: jsii.String("object"),
				},
				s3: &s3SourcePropertiesProperty{
					bucketName: jsii.String("bucketName"),

					// the properties below are optional
					bucketPrefix: jsii.String("bucketPrefix"),
				},
				salesforce: &salesforceSourcePropertiesProperty{
					object: jsii.String("object"),

					// the properties below are optional
					enableDynamicFieldUpdate: jsii.Boolean(false),
					includeDeletedRecords: jsii.Boolean(false),
				},
				serviceNow: &serviceNowSourcePropertiesProperty{
					object: jsii.String("object"),
				},
				zendesk: &zendeskSourcePropertiesProperty{
					object: jsii.String("object"),
				},
			},

			// the properties below are optional
			connectorProfileName: jsii.String("connectorProfileName"),
			incrementalPullConfig: &incrementalPullConfigProperty{
				datetimeTypeFieldName: jsii.String("datetimeTypeFieldName"),
			},
		},
		tasks: []interface{}{
			&taskProperty{
				sourceFields: []*string{
					jsii.String("sourceFields"),
				},
				taskType: jsii.String("taskType"),

				// the properties below are optional
				connectorOperator: &connectorOperatorProperty{
					marketo: jsii.String("marketo"),
					s3: jsii.String("s3"),
					salesforce: jsii.String("salesforce"),
					serviceNow: jsii.String("serviceNow"),
					zendesk: jsii.String("zendesk"),
				},
				destinationField: jsii.String("destinationField"),
				taskProperties: []interface{}{
					&taskPropertiesMapProperty{
						operatorPropertyKey: jsii.String("operatorPropertyKey"),
						property: jsii.String("property"),
					},
				},
			},
		},
		triggerConfig: &triggerConfigProperty{
			triggerType: jsii.String("triggerType"),

			// the properties below are optional
			triggerProperties: &triggerPropertiesProperty{
				scheduled: &scheduledTriggerPropertiesProperty{
					scheduleExpression: jsii.String("scheduleExpression"),

					// the properties below are optional
					dataPullMode: jsii.String("dataPullMode"),
					firstExecutionFrom: jsii.Number(123),
					scheduleEndTime: jsii.Number(123),
					scheduleOffset: jsii.Number(123),
					scheduleStartTime: jsii.Number(123),
					timezone: jsii.String("timezone"),
				},
			},
		},

		// the properties below are optional
		description: jsii.String("description"),
	},
	objectTypeName: jsii.String("objectTypeName"),
	objectTypeNames: []interface{}{
		&objectTypeMappingProperty{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
	tags: []cfnTag{
		&cfnTag{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
	uri: jsii.String("uri"),
}

type CfnIntegration_ConnectorOperatorProperty

type CfnIntegration_ConnectorOperatorProperty struct {
	// The operation to be performed on the provided Marketo source fields.
	Marketo *string `json:"marketo" yaml:"marketo"`
	// The operation to be performed on the provided Amazon S3 source fields.
	S3 *string `json:"s3" yaml:"s3"`
	// The operation to be performed on the provided Salesforce source fields.
	Salesforce *string `json:"salesforce" yaml:"salesforce"`
	// The operation to be performed on the provided ServiceNow source fields.
	ServiceNow *string `json:"serviceNow" yaml:"serviceNow"`
	// The operation to be performed on the provided Zendesk source fields.
	Zendesk *string `json:"zendesk" yaml:"zendesk"`
}

The operation to be performed on the provided source fields.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
connectorOperatorProperty := &connectorOperatorProperty{
	marketo: jsii.String("marketo"),
	s3: jsii.String("s3"),
	salesforce: jsii.String("salesforce"),
	serviceNow: jsii.String("serviceNow"),
	zendesk: jsii.String("zendesk"),
}

type CfnIntegration_FlowDefinitionProperty

type CfnIntegration_FlowDefinitionProperty struct {
	// The specified name of the flow.
	//
	// Use underscores (_) or hyphens (-) only. Spaces are not allowed.
	FlowName *string `json:"flowName" yaml:"flowName"`
	// The Amazon Resource Name (ARN) of the AWS Key Management Service (KMS) key you provide for encryption.
	KmsArn *string `json:"kmsArn" yaml:"kmsArn"`
	// The configuration that controls how Customer Profiles retrieves data from the source.
	SourceFlowConfig interface{} `json:"sourceFlowConfig" yaml:"sourceFlowConfig"`
	// A list of tasks that Customer Profiles performs while transferring the data in the flow run.
	Tasks interface{} `json:"tasks" yaml:"tasks"`
	// The trigger settings that determine how and when the flow runs.
	TriggerConfig interface{} `json:"triggerConfig" yaml:"triggerConfig"`
	// A description of the flow you want to create.
	Description *string `json:"description" yaml:"description"`
}

The configurations that control how Customer Profiles retrieves data from the source, Amazon AppFlow.

Customer Profiles uses this information to create an AppFlow flow on behalf of customers.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
flowDefinitionProperty := &flowDefinitionProperty{
	flowName: jsii.String("flowName"),
	kmsArn: jsii.String("kmsArn"),
	sourceFlowConfig: &sourceFlowConfigProperty{
		connectorType: jsii.String("connectorType"),
		sourceConnectorProperties: &sourceConnectorPropertiesProperty{
			marketo: &marketoSourcePropertiesProperty{
				object: jsii.String("object"),
			},
			s3: &s3SourcePropertiesProperty{
				bucketName: jsii.String("bucketName"),

				// the properties below are optional
				bucketPrefix: jsii.String("bucketPrefix"),
			},
			salesforce: &salesforceSourcePropertiesProperty{
				object: jsii.String("object"),

				// the properties below are optional
				enableDynamicFieldUpdate: jsii.Boolean(false),
				includeDeletedRecords: jsii.Boolean(false),
			},
			serviceNow: &serviceNowSourcePropertiesProperty{
				object: jsii.String("object"),
			},
			zendesk: &zendeskSourcePropertiesProperty{
				object: jsii.String("object"),
			},
		},

		// the properties below are optional
		connectorProfileName: jsii.String("connectorProfileName"),
		incrementalPullConfig: &incrementalPullConfigProperty{
			datetimeTypeFieldName: jsii.String("datetimeTypeFieldName"),
		},
	},
	tasks: []interface{}{
		&taskProperty{
			sourceFields: []*string{
				jsii.String("sourceFields"),
			},
			taskType: jsii.String("taskType"),

			// the properties below are optional
			connectorOperator: &connectorOperatorProperty{
				marketo: jsii.String("marketo"),
				s3: jsii.String("s3"),
				salesforce: jsii.String("salesforce"),
				serviceNow: jsii.String("serviceNow"),
				zendesk: jsii.String("zendesk"),
			},
			destinationField: jsii.String("destinationField"),
			taskProperties: []interface{}{
				&taskPropertiesMapProperty{
					operatorPropertyKey: jsii.String("operatorPropertyKey"),
					property: jsii.String("property"),
				},
			},
		},
	},
	triggerConfig: &triggerConfigProperty{
		triggerType: jsii.String("triggerType"),

		// the properties below are optional
		triggerProperties: &triggerPropertiesProperty{
			scheduled: &scheduledTriggerPropertiesProperty{
				scheduleExpression: jsii.String("scheduleExpression"),

				// the properties below are optional
				dataPullMode: jsii.String("dataPullMode"),
				firstExecutionFrom: jsii.Number(123),
				scheduleEndTime: jsii.Number(123),
				scheduleOffset: jsii.Number(123),
				scheduleStartTime: jsii.Number(123),
				timezone: jsii.String("timezone"),
			},
		},
	},

	// the properties below are optional
	description: jsii.String("description"),
}

type CfnIntegration_IncrementalPullConfigProperty

type CfnIntegration_IncrementalPullConfigProperty struct {
	// A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.
	DatetimeTypeFieldName *string `json:"datetimeTypeFieldName" yaml:"datetimeTypeFieldName"`
}

Specifies the configuration used when importing incremental records from the source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
incrementalPullConfigProperty := &incrementalPullConfigProperty{
	datetimeTypeFieldName: jsii.String("datetimeTypeFieldName"),
}

type CfnIntegration_MarketoSourcePropertiesProperty

type CfnIntegration_MarketoSourcePropertiesProperty struct {
	// The object specified in the Marketo flow source.
	Object *string `json:"object" yaml:"object"`
}

The properties that are applied when Marketo is being used as a source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
marketoSourcePropertiesProperty := &marketoSourcePropertiesProperty{
	object: jsii.String("object"),
}

type CfnIntegration_ObjectTypeMappingProperty

type CfnIntegration_ObjectTypeMappingProperty struct {
	// The key.
	Key *string `json:"key" yaml:"key"`
	// The value.
	Value *string `json:"value" yaml:"value"`
}

A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an `ObjectTypeName` (template) used to ingest the event.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
objectTypeMappingProperty := &objectTypeMappingProperty{
	key: jsii.String("key"),
	value: jsii.String("value"),
}

type CfnIntegration_S3SourcePropertiesProperty

type CfnIntegration_S3SourcePropertiesProperty struct {
	// The Amazon S3 bucket name where the source files are stored.
	BucketName *string `json:"bucketName" yaml:"bucketName"`
	// The object key for the Amazon S3 bucket in which the source files are stored.
	BucketPrefix *string `json:"bucketPrefix" yaml:"bucketPrefix"`
}

The properties that are applied when Amazon S3 is being used as the flow source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
s3SourcePropertiesProperty := &s3SourcePropertiesProperty{
	bucketName: jsii.String("bucketName"),

	// the properties below are optional
	bucketPrefix: jsii.String("bucketPrefix"),
}

type CfnIntegration_SalesforceSourcePropertiesProperty

type CfnIntegration_SalesforceSourcePropertiesProperty struct {
	// The object specified in the Salesforce flow source.
	Object *string `json:"object" yaml:"object"`
	// The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.
	EnableDynamicFieldUpdate interface{} `json:"enableDynamicFieldUpdate" yaml:"enableDynamicFieldUpdate"`
	// Indicates whether Amazon AppFlow includes deleted files in the flow run.
	IncludeDeletedRecords interface{} `json:"includeDeletedRecords" yaml:"includeDeletedRecords"`
}

The properties that are applied when Salesforce is being used as a source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
salesforceSourcePropertiesProperty := &salesforceSourcePropertiesProperty{
	object: jsii.String("object"),

	// the properties below are optional
	enableDynamicFieldUpdate: jsii.Boolean(false),
	includeDeletedRecords: jsii.Boolean(false),
}

type CfnIntegration_ScheduledTriggerPropertiesProperty

type CfnIntegration_ScheduledTriggerPropertiesProperty struct {
	// The scheduling expression that determines the rate at which the schedule will run, for example rate (5 minutes).
	ScheduleExpression *string `json:"scheduleExpression" yaml:"scheduleExpression"`
	// Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.
	DataPullMode *string `json:"dataPullMode" yaml:"dataPullMode"`
	// Specifies the date range for the records to import from the connector in the first flow run.
	FirstExecutionFrom *float64 `json:"firstExecutionFrom" yaml:"firstExecutionFrom"`
	// Specifies the scheduled end time for a scheduled-trigger flow.
	ScheduleEndTime *float64 `json:"scheduleEndTime" yaml:"scheduleEndTime"`
	// Specifies the optional offset that is added to the time interval for a schedule-triggered flow.
	ScheduleOffset *float64 `json:"scheduleOffset" yaml:"scheduleOffset"`
	// Specifies the scheduled start time for a scheduled-trigger flow.
	ScheduleStartTime *float64 `json:"scheduleStartTime" yaml:"scheduleStartTime"`
	// Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York.
	Timezone *string `json:"timezone" yaml:"timezone"`
}

Specifies the configuration details of a scheduled-trigger flow that you define.

Currently, these settings only apply to the scheduled-trigger type.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
scheduledTriggerPropertiesProperty := &scheduledTriggerPropertiesProperty{
	scheduleExpression: jsii.String("scheduleExpression"),

	// the properties below are optional
	dataPullMode: jsii.String("dataPullMode"),
	firstExecutionFrom: jsii.Number(123),
	scheduleEndTime: jsii.Number(123),
	scheduleOffset: jsii.Number(123),
	scheduleStartTime: jsii.Number(123),
	timezone: jsii.String("timezone"),
}

type CfnIntegration_ServiceNowSourcePropertiesProperty

type CfnIntegration_ServiceNowSourcePropertiesProperty struct {
	// The object specified in the ServiceNow flow source.
	Object *string `json:"object" yaml:"object"`
}

The properties that are applied when ServiceNow is being used as a source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
serviceNowSourcePropertiesProperty := &serviceNowSourcePropertiesProperty{
	object: jsii.String("object"),
}

type CfnIntegration_SourceConnectorPropertiesProperty

type CfnIntegration_SourceConnectorPropertiesProperty struct {
	// The properties that are applied when Marketo is being used as a source.
	Marketo interface{} `json:"marketo" yaml:"marketo"`
	// The properties that are applied when Amazon S3 is being used as the flow source.
	S3 interface{} `json:"s3" yaml:"s3"`
	// The properties that are applied when Salesforce is being used as a source.
	Salesforce interface{} `json:"salesforce" yaml:"salesforce"`
	// The properties that are applied when ServiceNow is being used as a source.
	ServiceNow interface{} `json:"serviceNow" yaml:"serviceNow"`
	// The properties that are applied when using Zendesk as a flow source.
	Zendesk interface{} `json:"zendesk" yaml:"zendesk"`
}

Specifies the information that is required to query a particular Amazon AppFlow connector.

Customer Profiles supports Salesforce, Zendesk, Marketo, ServiceNow and Amazon S3.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
sourceConnectorPropertiesProperty := &sourceConnectorPropertiesProperty{
	marketo: &marketoSourcePropertiesProperty{
		object: jsii.String("object"),
	},
	s3: &s3SourcePropertiesProperty{
		bucketName: jsii.String("bucketName"),

		// the properties below are optional
		bucketPrefix: jsii.String("bucketPrefix"),
	},
	salesforce: &salesforceSourcePropertiesProperty{
		object: jsii.String("object"),

		// the properties below are optional
		enableDynamicFieldUpdate: jsii.Boolean(false),
		includeDeletedRecords: jsii.Boolean(false),
	},
	serviceNow: &serviceNowSourcePropertiesProperty{
		object: jsii.String("object"),
	},
	zendesk: &zendeskSourcePropertiesProperty{
		object: jsii.String("object"),
	},
}

type CfnIntegration_SourceFlowConfigProperty

type CfnIntegration_SourceFlowConfigProperty struct {
	// The type of connector, such as Salesforce, Marketo, and so on.
	ConnectorType *string `json:"connectorType" yaml:"connectorType"`
	// Specifies the information that is required to query a particular source connector.
	SourceConnectorProperties interface{} `json:"sourceConnectorProperties" yaml:"sourceConnectorProperties"`
	// The name of the Amazon AppFlow connector profile.
	//
	// This name must be unique for each connector profile in the AWS account .
	ConnectorProfileName *string `json:"connectorProfileName" yaml:"connectorProfileName"`
	// Defines the configuration for a scheduled incremental data pull.
	//
	// If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.
	IncrementalPullConfig interface{} `json:"incrementalPullConfig" yaml:"incrementalPullConfig"`
}

The configuration that controls how Customer Profiles retrieves data from the source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
sourceFlowConfigProperty := &sourceFlowConfigProperty{
	connectorType: jsii.String("connectorType"),
	sourceConnectorProperties: &sourceConnectorPropertiesProperty{
		marketo: &marketoSourcePropertiesProperty{
			object: jsii.String("object"),
		},
		s3: &s3SourcePropertiesProperty{
			bucketName: jsii.String("bucketName"),

			// the properties below are optional
			bucketPrefix: jsii.String("bucketPrefix"),
		},
		salesforce: &salesforceSourcePropertiesProperty{
			object: jsii.String("object"),

			// the properties below are optional
			enableDynamicFieldUpdate: jsii.Boolean(false),
			includeDeletedRecords: jsii.Boolean(false),
		},
		serviceNow: &serviceNowSourcePropertiesProperty{
			object: jsii.String("object"),
		},
		zendesk: &zendeskSourcePropertiesProperty{
			object: jsii.String("object"),
		},
	},

	// the properties below are optional
	connectorProfileName: jsii.String("connectorProfileName"),
	incrementalPullConfig: &incrementalPullConfigProperty{
		datetimeTypeFieldName: jsii.String("datetimeTypeFieldName"),
	},
}

type CfnIntegration_TaskPropertiesMapProperty

type CfnIntegration_TaskPropertiesMapProperty struct {
	// The task property key.
	OperatorPropertyKey *string `json:"operatorPropertyKey" yaml:"operatorPropertyKey"`
	// The task property value.
	Property *string `json:"property" yaml:"property"`
}

A map used to store task-related information.

The execution service looks for particular information based on the `TaskType` .

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
taskPropertiesMapProperty := &taskPropertiesMapProperty{
	operatorPropertyKey: jsii.String("operatorPropertyKey"),
	property: jsii.String("property"),
}

type CfnIntegration_TaskProperty

type CfnIntegration_TaskProperty struct {
	// The source fields to which a particular task is applied.
	SourceFields *[]*string `json:"sourceFields" yaml:"sourceFields"`
	// Specifies the particular task implementation that Amazon AppFlow performs.
	TaskType *string `json:"taskType" yaml:"taskType"`
	// The operation to be performed on the provided source fields.
	ConnectorOperator interface{} `json:"connectorOperator" yaml:"connectorOperator"`
	// A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.
	DestinationField *string `json:"destinationField" yaml:"destinationField"`
	// A map used to store task-related information.
	//
	// The service looks for particular information based on the TaskType.
	TaskProperties interface{} `json:"taskProperties" yaml:"taskProperties"`
}

The `Task` property type specifies the class for modeling different type of tasks.

Task implementation varies based on the TaskType.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
taskProperty := &taskProperty{
	sourceFields: []*string{
		jsii.String("sourceFields"),
	},
	taskType: jsii.String("taskType"),

	// the properties below are optional
	connectorOperator: &connectorOperatorProperty{
		marketo: jsii.String("marketo"),
		s3: jsii.String("s3"),
		salesforce: jsii.String("salesforce"),
		serviceNow: jsii.String("serviceNow"),
		zendesk: jsii.String("zendesk"),
	},
	destinationField: jsii.String("destinationField"),
	taskProperties: []interface{}{
		&taskPropertiesMapProperty{
			operatorPropertyKey: jsii.String("operatorPropertyKey"),
			property: jsii.String("property"),
		},
	},
}

type CfnIntegration_TriggerConfigProperty

type CfnIntegration_TriggerConfigProperty struct {
	// Specifies the type of flow trigger.
	//
	// It can be OnDemand, Scheduled, or Event.
	TriggerType *string `json:"triggerType" yaml:"triggerType"`
	// Specifies the configuration details of a schedule-triggered flow that you define.
	//
	// Currently, these settings only apply to the Scheduled trigger type.
	TriggerProperties interface{} `json:"triggerProperties" yaml:"triggerProperties"`
}

The trigger settings that determine how and when Amazon AppFlow runs the specified flow.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
triggerConfigProperty := &triggerConfigProperty{
	triggerType: jsii.String("triggerType"),

	// the properties below are optional
	triggerProperties: &triggerPropertiesProperty{
		scheduled: &scheduledTriggerPropertiesProperty{
			scheduleExpression: jsii.String("scheduleExpression"),

			// the properties below are optional
			dataPullMode: jsii.String("dataPullMode"),
			firstExecutionFrom: jsii.Number(123),
			scheduleEndTime: jsii.Number(123),
			scheduleOffset: jsii.Number(123),
			scheduleStartTime: jsii.Number(123),
			timezone: jsii.String("timezone"),
		},
	},
}

type CfnIntegration_TriggerPropertiesProperty

type CfnIntegration_TriggerPropertiesProperty struct {
	// Specifies the configuration details of a schedule-triggered flow that you define.
	Scheduled interface{} `json:"scheduled" yaml:"scheduled"`
}

Specifies the configuration details that control the trigger for a flow.

Currently, these settings only apply to the Scheduled trigger type.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
triggerPropertiesProperty := &triggerPropertiesProperty{
	scheduled: &scheduledTriggerPropertiesProperty{
		scheduleExpression: jsii.String("scheduleExpression"),

		// the properties below are optional
		dataPullMode: jsii.String("dataPullMode"),
		firstExecutionFrom: jsii.Number(123),
		scheduleEndTime: jsii.Number(123),
		scheduleOffset: jsii.Number(123),
		scheduleStartTime: jsii.Number(123),
		timezone: jsii.String("timezone"),
	},
}

type CfnIntegration_ZendeskSourcePropertiesProperty

type CfnIntegration_ZendeskSourcePropertiesProperty struct {
	// The object specified in the Zendesk flow source.
	Object *string `json:"object" yaml:"object"`
}

The properties that are applied when using Zendesk as a flow source.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
zendeskSourcePropertiesProperty := &zendeskSourcePropertiesProperty{
	object: jsii.String("object"),
}

type CfnObjectType

type CfnObjectType interface {
	awscdk.CfnResource
	awscdk.IInspectable
	// Indicates whether a profile should be created when data is received if one doesn’t exist for an object of this type.
	//
	// The default is `FALSE` . If the AllowProfileCreation flag is set to `FALSE` , then the service tries to fetch a standard profile and associate this object with the profile. If it is set to `TRUE` , and if no match is found, then the service creates a new standard profile.
	AllowProfileCreation() interface{}
	SetAllowProfileCreation(val interface{})
	// The timestamp of when the object type was created.
	AttrCreatedAt() *string
	// The timestamp of when the object type was most recently edited.
	AttrLastUpdatedAt() *string
	// Options for this resource, such as condition, update policy etc.
	// Experimental.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	// Experimental.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	// Experimental.
	CreationStack() *[]*string
	// The description of the profile object type mapping.
	Description() *string
	SetDescription(val *string)
	// The unique name of the domain.
	DomainName() *string
	SetDomainName(val *string)
	// The customer-provided key to encrypt the profile object that will be created in this profile object type mapping.
	//
	// If not specified the system will use the encryption key of the domain.
	EncryptionKey() *string
	SetEncryptionKey(val *string)
	// The number of days until the data of this type expires.
	ExpirationDays() *float64
	SetExpirationDays(val *float64)
	// A list of field definitions for the object type mapping.
	Fields() interface{}
	SetFields(val interface{})
	// A list of keys that can be used to map data to the profile or search for the profile.
	Keys() interface{}
	SetKeys(val interface{})
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	// Experimental.
	LogicalId() *string
	// The construct tree node associated with this construct.
	// Experimental.
	Node() awscdk.ConstructNode
	// The name of the profile object type.
	ObjectTypeName() *string
	SetObjectTypeName(val *string)
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	// Experimental.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	// Experimental.
	Stack() awscdk.Stack
	// The tags used to organize, track, or control access for this resource.
	Tags() awscdk.TagManager
	// A unique identifier for the template mapping.
	//
	// This can be used instead of specifying the Keys and Fields properties directly.
	TemplateId() *string
	SetTemplateId(val *string)
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	// Experimental.
	UpdatedProperites() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	// Experimental.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	// Experimental.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	// Experimental.
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//    "GlobalSecondaryIndexes": [
	//      {
	//        "Projection": {
	//          "NonKeyAttributes": [ "myattribute" ]
	//          ...
	//        }
	//        ...
	//      },
	//      {
	//        "ProjectionType": "INCLUDE"
	//        ...
	//      },
	//    ]
	//    ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	// Experimental.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	// Experimental.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	// Experimental.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	// Experimental.
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	// Experimental.
	GetAtt(attributeName *string) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	// Experimental.
	GetMetadata(key *string) interface{}
	// Examines the CloudFormation resource and discloses attributes.
	Inspect(inspector awscdk.TreeInspector)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	// Experimental.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	// Experimental.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	// Experimental.
	OnValidate() *[]*string
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	// Experimental.
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	// Experimental.
	ShouldSynthesize() *bool
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	// Experimental.
	Synthesize(session awscdk.ISynthesisSession)
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	// Experimental.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	// Experimental.
	Validate() *[]*string
	// Experimental.
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::CustomerProfiles::ObjectType`.

Specifies an Amazon Connect Customer Profiles Object Type Mapping.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
cfnObjectType := customerprofiles.NewCfnObjectType(this, jsii.String("MyCfnObjectType"), &cfnObjectTypeProps{
	domainName: jsii.String("domainName"),

	// the properties below are optional
	allowProfileCreation: jsii.Boolean(false),
	description: jsii.String("description"),
	encryptionKey: jsii.String("encryptionKey"),
	expirationDays: jsii.Number(123),
	fields: []interface{}{
		&fieldMapProperty{
			name: jsii.String("name"),
			objectTypeField: &objectTypeFieldProperty{
				contentType: jsii.String("contentType"),
				source: jsii.String("source"),
				target: jsii.String("target"),
			},
		},
	},
	keys: []interface{}{
		&keyMapProperty{
			name: jsii.String("name"),
			objectTypeKeyList: []interface{}{
				&objectTypeKeyProperty{
					fieldNames: []*string{
						jsii.String("fieldNames"),
					},
					standardIdentifiers: []*string{
						jsii.String("standardIdentifiers"),
					},
				},
			},
		},
	},
	objectTypeName: jsii.String("objectTypeName"),
	tags: []cfnTag{
		&cfnTag{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
	templateId: jsii.String("templateId"),
})

func NewCfnObjectType

func NewCfnObjectType(scope awscdk.Construct, id *string, props *CfnObjectTypeProps) CfnObjectType

Create a new `AWS::CustomerProfiles::ObjectType`.

type CfnObjectTypeProps

type CfnObjectTypeProps struct {
	// The unique name of the domain.
	DomainName *string `json:"domainName" yaml:"domainName"`
	// Indicates whether a profile should be created when data is received if one doesn’t exist for an object of this type.
	//
	// The default is `FALSE` . If the AllowProfileCreation flag is set to `FALSE` , then the service tries to fetch a standard profile and associate this object with the profile. If it is set to `TRUE` , and if no match is found, then the service creates a new standard profile.
	AllowProfileCreation interface{} `json:"allowProfileCreation" yaml:"allowProfileCreation"`
	// The description of the profile object type mapping.
	Description *string `json:"description" yaml:"description"`
	// The customer-provided key to encrypt the profile object that will be created in this profile object type mapping.
	//
	// If not specified the system will use the encryption key of the domain.
	EncryptionKey *string `json:"encryptionKey" yaml:"encryptionKey"`
	// The number of days until the data of this type expires.
	ExpirationDays *float64 `json:"expirationDays" yaml:"expirationDays"`
	// A list of field definitions for the object type mapping.
	Fields interface{} `json:"fields" yaml:"fields"`
	// A list of keys that can be used to map data to the profile or search for the profile.
	Keys interface{} `json:"keys" yaml:"keys"`
	// The name of the profile object type.
	ObjectTypeName *string `json:"objectTypeName" yaml:"objectTypeName"`
	// The tags used to organize, track, or control access for this resource.
	Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"`
	// A unique identifier for the template mapping.
	//
	// This can be used instead of specifying the Keys and Fields properties directly.
	TemplateId *string `json:"templateId" yaml:"templateId"`
}

Properties for defining a `CfnObjectType`.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
cfnObjectTypeProps := &cfnObjectTypeProps{
	domainName: jsii.String("domainName"),

	// the properties below are optional
	allowProfileCreation: jsii.Boolean(false),
	description: jsii.String("description"),
	encryptionKey: jsii.String("encryptionKey"),
	expirationDays: jsii.Number(123),
	fields: []interface{}{
		&fieldMapProperty{
			name: jsii.String("name"),
			objectTypeField: &objectTypeFieldProperty{
				contentType: jsii.String("contentType"),
				source: jsii.String("source"),
				target: jsii.String("target"),
			},
		},
	},
	keys: []interface{}{
		&keyMapProperty{
			name: jsii.String("name"),
			objectTypeKeyList: []interface{}{
				&objectTypeKeyProperty{
					fieldNames: []*string{
						jsii.String("fieldNames"),
					},
					standardIdentifiers: []*string{
						jsii.String("standardIdentifiers"),
					},
				},
			},
		},
	},
	objectTypeName: jsii.String("objectTypeName"),
	tags: []cfnTag{
		&cfnTag{
			key: jsii.String("key"),
			value: jsii.String("value"),
		},
	},
	templateId: jsii.String("templateId"),
}

type CfnObjectType_FieldMapProperty

type CfnObjectType_FieldMapProperty struct {
	// Name of the field.
	Name *string `json:"name" yaml:"name"`
	// Represents a field in a ProfileObjectType.
	ObjectTypeField interface{} `json:"objectTypeField" yaml:"objectTypeField"`
}

A map of the name and ObjectType field.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
fieldMapProperty := &fieldMapProperty{
	name: jsii.String("name"),
	objectTypeField: &objectTypeFieldProperty{
		contentType: jsii.String("contentType"),
		source: jsii.String("source"),
		target: jsii.String("target"),
	},
}

type CfnObjectType_KeyMapProperty

type CfnObjectType_KeyMapProperty struct {
	// Name of the key.
	Name *string `json:"name" yaml:"name"`
	// A list of ObjectTypeKey.
	ObjectTypeKeyList interface{} `json:"objectTypeKeyList" yaml:"objectTypeKeyList"`
}

A unique key map that can be used to map data to the profile.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
keyMapProperty := &keyMapProperty{
	name: jsii.String("name"),
	objectTypeKeyList: []interface{}{
		&objectTypeKeyProperty{
			fieldNames: []*string{
				jsii.String("fieldNames"),
			},
			standardIdentifiers: []*string{
				jsii.String("standardIdentifiers"),
			},
		},
	},
}

type CfnObjectType_ObjectTypeFieldProperty

type CfnObjectType_ObjectTypeFieldProperty struct {
	// The content type of the field.
	//
	// Used for determining equality when searching.
	ContentType *string `json:"contentType" yaml:"contentType"`
	// A field of a ProfileObject.
	//
	// For example: _source.FirstName, where “_source” is a ProfileObjectType of a Zendesk user and “FirstName” is a field in that ObjectType.
	Source *string `json:"source" yaml:"source"`
	// The location of the data in the standard ProfileObject model.
	//
	// For example: _profile.Address.PostalCode.
	Target *string `json:"target" yaml:"target"`
}

Represents a field in a ProfileObjectType.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
objectTypeFieldProperty := &objectTypeFieldProperty{
	contentType: jsii.String("contentType"),
	source: jsii.String("source"),
	target: jsii.String("target"),
}

type CfnObjectType_ObjectTypeKeyProperty

type CfnObjectType_ObjectTypeKeyProperty struct {
	// The reference for the key name of the fields map.
	FieldNames *[]*string `json:"fieldNames" yaml:"fieldNames"`
	// The types of keys that a ProfileObject can have.
	//
	// Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.
	StandardIdentifiers *[]*string `json:"standardIdentifiers" yaml:"standardIdentifiers"`
}

An object that defines the Key element of a ProfileObject.

A Key is a special element that can be used to search for a customer profile.

Example:

import awscdk "github.com/aws/aws-cdk-go/awscdk"import customerprofiles "github.com/aws/aws-cdk-go/awscdk/aws_customerprofiles"
objectTypeKeyProperty := &objectTypeKeyProperty{
	fieldNames: []*string{
		jsii.String("fieldNames"),
	},
	standardIdentifiers: []*string{
		jsii.String("standardIdentifiers"),
	},
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL