# Amazon AppFlow Construct Library *Note:* this library is currently in technical preview. ## Introduction Amazon AppFlow is a service that enables creating managed, bi-directional data transfer integrations between various SaaS applications and AWS services. For more information, see the [Amazon AppFlow User Guide](https://docs.aws.amazon.com/appflow/latest/userguide/what-is-appflow.html). ## Example ```ts import { Bucket } from 'aws-cdk-lib/aws-s3'; import { ISecret } from 'aws-cdk-lib/aws-secretsmanager'; import { ISource, IDestination, Filter, FilterCondition, Mapping, OnDemandFlow, S3Destination, SalesforceConnectorProfile, SalesforceSource, Transform, Validation, ValidationAction, ValidationCondition, } from '@cdklabs/cdk-appflow'; declare const clientSecret: ISecret; declare const accessToken: string; declare const refreshToken: string; declare const instanceUrl: string; const profile = new SalesforceConnectorProfile(this, 'MyConnectorProfile', { oAuth: { accessToken: accessToken, flow: { refresTokenGrant: { refreshToken: refreshToken, client: clientSecret, }, }, }, instanceUrl: instanceUrl, isSandbox: false, }); const source = new SalesforceSource({ profile: profile, object: 'Account', }); const bucket = new Bucket(this, 'DestinationBucket'); const destination = new S3Destination({ location: { bucket }, }); new OnDemandFlow(this, 'SfAccountToS3', { source: source, destination: destination, mappings: [Mapping.mapAll()], transforms: [ Transform.mask({ name: 'Name' }, '*'), ], validations: [ Validation.when(ValidationCondition.isNull('Name'), ValidationAction.ignoreRecord()), ], filters: [ Filter.when(FilterCondition.timestampLessThanEquals({ name: 'LastModifiedDate', dataType: 'datetime' }, new Date(Date.parse('2022-02-02')))), ], }); ``` # Concepts Amazon AppFlow introduces several concepts that abstract away the technicalities of setting up and managing data integrations. An `Application` is any SaaS data integration component that can be either a *source* or a *destination* for Amazon AppFlow. A source is an application from which Amazon AppFlow will retrieve data, whereas a destination is an application to which Amazon AppFlow will send data. A `Flow` is Amazon AppFlow's integration between a source and a destination. A `ConnectorProfile` is Amazon AppFlow's abstraction over authentication/authorization with a particular SaaS application. The per-SaaS application permissions given to a particular `ConnectorProfile` will determine whether the connector profile can support the application as a source or as a destination (see whether a particular application is supported as either a source or a destination in [the documentation](https://docs.aws.amazon.com/appflow/latest/userguide/app-specific.html)). ## Types of Flows The library introduces three, separate types of flows: - `OnDemandFlow` - a construct representing a flow that can be triggered programmatically with the use of a [StartFlow API call](https://docs.aws.amazon.com/appflow/1.0/APIReference/API_StartFlow.html). - `OnEventFlow` - a construct representing a flow that is triggered by a SaaS application event published to AppFlow. At the time of writing only a Salesforce source is able to publish events that can be consumed by AppFlow flows. - `OnScheduleFlow` - a construct representing a flow that is triggered on a [`Schedule`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_events.Schedule.html) ## Tasks Tasks are steps that can be taken upon fields. Tasks compose higher level objects that in this library are named `Operations`. There are four operations identified: - Transforms - 1-1 transforms on source fields, like truncation or masking - Mappings - 1-1 or many-to-1 operations from source fields to a destination field - Filters - operations that limit the source data on a particular conditions - Validations - operations that work on a per-record level and can have either a record-level consequence (i.e. dropping the record) or a global one (terminating the flow). Each flow exposes dedicated properties to each of the operation types that one can use like in the example below: ```ts import { Filter, FilterCondition, IDestination, ISource, Mapping, OnDemandFlow, S3Destination, SalesforceConnectorProfile, SalesforceSource, Transform, Validation, ValidationAction, ValidationCondition, } from '@cdklabs/cdk-appflow'; declare const stack: Stack; declare const source: ISource; declare const destination: IDestination; const flow = new OnDemandFlow(stack, 'OnDemandFlow', { source: source, destination: destination, transforms: [ Transform.mask({ name: 'Name' }, '*'), ], mappings: [ Mapping.map({ name: 'Name', dataType: 'String' }, { name: 'Name', dataType: 'string' }), ], filters: [ Filter.when(FilterCondition.timestampLessThanEquals({ name: 'LastModifiedDate', dataType: 'datetime' }, new Date(Date.parse('2022-02-02')))), ], validations: [ Validation.when(ValidationCondition.isNull('Name'), ValidationAction.ignoreRecord()), ] }); ``` ## EventBridge notifications Each flow publishes events to the default EventBridge bus: - `onRunStarted` - `onRunCompleted` - `onDeactivated` (only for the `OnEventFlow` and the `OnScheduleFlow`) - `onStatus` (only for the `OnEventFlow` ) This way one can consume the notifications as in the example below: ```ts import { ITopic } from 'aws-cdk-lib/aws-sns'; import { SnsTopic } from 'aws-cdk-lib/aws-events-targets'; import { IFlow } from '@cdklabs/cdk-appflow'; declare const flow: IFlow; declare const myTopic: ITopic; flow.onRunCompleted('OnRunCompleted', { target: new SnsTopic(myTopic), }); ``` # Notable distinctions from CloudFormation specification ## `OnScheduleFlow` and `incrementalPullConfig` In CloudFormation the definition of the `incrementalPullConfig` (which effectively gives a name of the field used for tracking the last pulled timestamp) is on the [`SourceFlowConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appflow-flow-sourceflowconfig.html#cfn-appflow-flow-sourceflowconfig-incrementalpullconfig) property. In the library this has been moved to the `OnScheduleFlow` constructor properties. ## `S3Destination` and Glue Catalog Although in CloudFormation the Glue Catalog configuration is settable on the flow level - it works only when the destination is S3. That is why the library shifts the Glue Catalog properties definition to the `S3Destination`, which in turn requires using Lazy for populating `metadataCatalogConfig` in the flow. # Security considerations It is *recommended* to follow [data protection mechanisms for Amazon AppFlow](https://docs.aws.amazon.com/appflow/latest/userguide/data-protection.html). ## Confidential information Amazon AppFlow application integration is done using `ConnectionProfiles`. A `ConnectionProfile` requires providing sensitive information in the form of e.g. access and refresh tokens. It is *recommended* that such information is stored securely and passed to AWS CDK securely. All the sensitive fields are effectively `IResolvable` and this means they can be resolved at deploy time. With that one should follow the [best practices for credentials with CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/security-best-practices.html#creds). An example of using a predefined AWS Secrets Manager secret for storing the sensitive information can be found below: ```ts import { Secret } from 'aws-cdk-lib/aws-secretsmanager'; import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow'; declare const stack: Stack; const secret = Secret.fromSecretNameV2(stack, 'GA4Secret', 'appflow/ga4'); const profile = new GoogleAnalytics4ConnectorProfile(stack, 'GA4Connector', { oAuth: { flow: { refreshTokenGrant: { refreshToken: secret.secretValueFromJson('refreshToken').toString(), clientId: secret.secretValueFromJson('clientId').toString(), clientSecret: secret.secretValueFromJson('clientSecret').toString(), }, }, }, }); ``` ## An approach to managing permissions This library relies on an internal `AppFlowPermissionsManager` class to automatically infer and apply appropriate resource policy statements to the S3 Bucket, KMS Key, and Secrets Manager Secret resources. `AppFlowPermissionsManager` places the statements exactly once for the `appflow.amazonaws.com` principal no matter how many times a resource is reused in the code. ### Confused Deputy Problem Amazon AppFlow is an account-bound and a regional service. With this it is invurlnerable to the confused deputy problem (see, e.g. [here](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)). However, `AppFlowPermissionsManager` still introduces the `aws:SourceAccount` condtition to the resource policies as a *best practice*. # API Reference ## Constructs ### ConnectorProfileBase - *Implements:* IConnectorProfile #### Initializers ```typescript import { ConnectorProfileBase } from '@cdklabs/cdk-appflow' new ConnectorProfileBase(scope: Construct, id: string, props: ConnectorProfileProps, connectorType: ConnectorType) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | ConnectorProfileProps | *No description.* | | connectorType | ConnectorType | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* ConnectorProfileProps --- ##### `connectorType`Required - *Type:* ConnectorType --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | --- ##### ~~`isConstruct`~~ ```typescript import { ConnectorProfileBase } from '@cdklabs/cdk-appflow' ConnectorProfileBase.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { ConnectorProfileBase } from '@cdklabs/cdk-appflow' ConnectorProfileBase.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { ConnectorProfileBase } from '@cdklabs/cdk-appflow' ConnectorProfileBase.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### FlowBase - *Implements:* IFlow #### Initializers ```typescript import { FlowBase } from '@cdklabs/cdk-appflow' new FlowBase(scope: Construct, id: string, props: FlowBaseProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | FlowBaseProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* FlowBaseProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | onEvent | *No description.* | | onRunCompleted | *No description.* | | onRunStarted | *No description.* | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- ##### `onEvent` ```typescript public onEvent(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunCompleted` ```typescript public onRunCompleted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunStarted` ```typescript public onRunStarted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | --- ##### ~~`isConstruct`~~ ```typescript import { FlowBase } from '@cdklabs/cdk-appflow' FlowBase.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { FlowBase } from '@cdklabs/cdk-appflow' FlowBase.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { FlowBase } from '@cdklabs/cdk-appflow' FlowBase.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | type | FlowType | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ### GoogleAnalytics4ConnectorProfile #### Initializers ```typescript import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow' new GoogleAnalytics4ConnectorProfile(scope: Construct, id: string, props: GoogleAnalytics4ConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | GoogleAnalytics4ConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* GoogleAnalytics4ConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow' GoogleAnalytics4ConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow' GoogleAnalytics4ConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow' GoogleAnalytics4ConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow' GoogleAnalytics4ConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { GoogleAnalytics4ConnectorProfile } from '@cdklabs/cdk-appflow' GoogleAnalytics4ConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### MarketoConnectorProfile #### Initializers ```typescript import { MarketoConnectorProfile } from '@cdklabs/cdk-appflow' new MarketoConnectorProfile(scope: Construct, id: string, props: MarketoConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | MarketoConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* MarketoConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { MarketoConnectorProfile } from '@cdklabs/cdk-appflow' MarketoConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { MarketoConnectorProfile } from '@cdklabs/cdk-appflow' MarketoConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { MarketoConnectorProfile } from '@cdklabs/cdk-appflow' MarketoConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { MarketoConnectorProfile } from '@cdklabs/cdk-appflow' MarketoConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { MarketoConnectorProfile } from '@cdklabs/cdk-appflow' MarketoConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### MicrosoftSharepointOnlineConnectorProfile #### Initializers ```typescript import { MicrosoftSharepointOnlineConnectorProfile } from '@cdklabs/cdk-appflow' new MicrosoftSharepointOnlineConnectorProfile(scope: Construct, id: string, props: MicrosoftSharepointOnlineConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | MicrosoftSharepointOnlineConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* MicrosoftSharepointOnlineConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { MicrosoftSharepointOnlineConnectorProfile } from '@cdklabs/cdk-appflow' MicrosoftSharepointOnlineConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { MicrosoftSharepointOnlineConnectorProfile } from '@cdklabs/cdk-appflow' MicrosoftSharepointOnlineConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { MicrosoftSharepointOnlineConnectorProfile } from '@cdklabs/cdk-appflow' MicrosoftSharepointOnlineConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { MicrosoftSharepointOnlineConnectorProfile } from '@cdklabs/cdk-appflow' MicrosoftSharepointOnlineConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { MicrosoftSharepointOnlineConnectorProfile } from '@cdklabs/cdk-appflow' MicrosoftSharepointOnlineConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### OnDemandFlow - *Implements:* IFlow #### Initializers ```typescript import { OnDemandFlow } from '@cdklabs/cdk-appflow' new OnDemandFlow(scope: Construct, id: string, props: OnDemandFlowProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | OnDemandFlowProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* OnDemandFlowProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | onEvent | *No description.* | | onRunCompleted | *No description.* | | onRunStarted | *No description.* | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- ##### `onEvent` ```typescript public onEvent(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunCompleted` ```typescript public onRunCompleted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunStarted` ```typescript public onRunStarted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | --- ##### ~~`isConstruct`~~ ```typescript import { OnDemandFlow } from '@cdklabs/cdk-appflow' OnDemandFlow.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { OnDemandFlow } from '@cdklabs/cdk-appflow' OnDemandFlow.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { OnDemandFlow } from '@cdklabs/cdk-appflow' OnDemandFlow.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | type | FlowType | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ### OnEventFlow - *Implements:* IFlow #### Initializers ```typescript import { OnEventFlow } from '@cdklabs/cdk-appflow' new OnEventFlow(scope: Construct, id: string, props: OnEventFlowProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | OnEventFlowProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* OnEventFlowProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | onEvent | *No description.* | | onRunCompleted | *No description.* | | onRunStarted | *No description.* | | onDeactivated | *No description.* | | onStatus | *No description.* | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- ##### `onEvent` ```typescript public onEvent(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunCompleted` ```typescript public onRunCompleted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunStarted` ```typescript public onRunStarted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onDeactivated` ```typescript public onDeactivated(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onStatus` ```typescript public onStatus(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | --- ##### ~~`isConstruct`~~ ```typescript import { OnEventFlow } from '@cdklabs/cdk-appflow' OnEventFlow.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { OnEventFlow } from '@cdklabs/cdk-appflow' OnEventFlow.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { OnEventFlow } from '@cdklabs/cdk-appflow' OnEventFlow.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | type | FlowType | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ### OnScheduleFlow - *Implements:* IFlow #### Initializers ```typescript import { OnScheduleFlow } from '@cdklabs/cdk-appflow' new OnScheduleFlow(scope: Construct, id: string, props: OnScheduleFlowProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | OnScheduleFlowProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* OnScheduleFlowProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | onEvent | *No description.* | | onRunCompleted | *No description.* | | onRunStarted | *No description.* | | onDeactivated | *No description.* | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- ##### `onEvent` ```typescript public onEvent(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunCompleted` ```typescript public onRunCompleted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunStarted` ```typescript public onRunStarted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onDeactivated` ```typescript public onDeactivated(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | --- ##### ~~`isConstruct`~~ ```typescript import { OnScheduleFlow } from '@cdklabs/cdk-appflow' OnScheduleFlow.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { OnScheduleFlow } from '@cdklabs/cdk-appflow' OnScheduleFlow.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { OnScheduleFlow } from '@cdklabs/cdk-appflow' OnScheduleFlow.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | type | FlowType | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ### RedshiftConnectorProfile #### Initializers ```typescript import { RedshiftConnectorProfile } from '@cdklabs/cdk-appflow' new RedshiftConnectorProfile(scope: Construct, id: string, props: RedshiftConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | RedshiftConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* RedshiftConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { RedshiftConnectorProfile } from '@cdklabs/cdk-appflow' RedshiftConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { RedshiftConnectorProfile } from '@cdklabs/cdk-appflow' RedshiftConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { RedshiftConnectorProfile } from '@cdklabs/cdk-appflow' RedshiftConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { RedshiftConnectorProfile } from '@cdklabs/cdk-appflow' RedshiftConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { RedshiftConnectorProfile } from '@cdklabs/cdk-appflow' RedshiftConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### SalesforceConnectorProfile #### Initializers ```typescript import { SalesforceConnectorProfile } from '@cdklabs/cdk-appflow' new SalesforceConnectorProfile(scope: Construct, id: string, props: SalesforceConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SalesforceConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SalesforceConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { SalesforceConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { SalesforceConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { SalesforceConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { SalesforceConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { SalesforceConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### SalesforceMarketingCloudConnectorProfile #### Initializers ```typescript import { SalesforceMarketingCloudConnectorProfile } from '@cdklabs/cdk-appflow' new SalesforceMarketingCloudConnectorProfile(scope: Construct, id: string, props: SalesforceMarketingCloudConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SalesforceMarketingCloudConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SalesforceMarketingCloudConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { SalesforceMarketingCloudConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceMarketingCloudConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { SalesforceMarketingCloudConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceMarketingCloudConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { SalesforceMarketingCloudConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceMarketingCloudConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { SalesforceMarketingCloudConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceMarketingCloudConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { SalesforceMarketingCloudConnectorProfile } from '@cdklabs/cdk-appflow' SalesforceMarketingCloudConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### SAPOdataConnectorProfile #### Initializers ```typescript import { SAPOdataConnectorProfile } from '@cdklabs/cdk-appflow' new SAPOdataConnectorProfile(scope: Construct, id: string, props: SAPOdataConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SAPOdataConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SAPOdataConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { SAPOdataConnectorProfile } from '@cdklabs/cdk-appflow' SAPOdataConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { SAPOdataConnectorProfile } from '@cdklabs/cdk-appflow' SAPOdataConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { SAPOdataConnectorProfile } from '@cdklabs/cdk-appflow' SAPOdataConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { SAPOdataConnectorProfile } from '@cdklabs/cdk-appflow' SAPOdataConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { SAPOdataConnectorProfile } from '@cdklabs/cdk-appflow' SAPOdataConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### ServiceNowConnectorProfile #### Initializers ```typescript import { ServiceNowConnectorProfile } from '@cdklabs/cdk-appflow' new ServiceNowConnectorProfile(scope: Construct, id: string, props: ServiceNowConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | ServiceNowConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* ServiceNowConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { ServiceNowConnectorProfile } from '@cdklabs/cdk-appflow' ServiceNowConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { ServiceNowConnectorProfile } from '@cdklabs/cdk-appflow' ServiceNowConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { ServiceNowConnectorProfile } from '@cdklabs/cdk-appflow' ServiceNowConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { ServiceNowConnectorProfile } from '@cdklabs/cdk-appflow' ServiceNowConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { ServiceNowConnectorProfile } from '@cdklabs/cdk-appflow' ServiceNowConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### SlackConnectorProfile #### Initializers ```typescript import { SlackConnectorProfile } from '@cdklabs/cdk-appflow' new SlackConnectorProfile(scope: Construct, id: string, props: SlackConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SlackConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SlackConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { SlackConnectorProfile } from '@cdklabs/cdk-appflow' SlackConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { SlackConnectorProfile } from '@cdklabs/cdk-appflow' SlackConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { SlackConnectorProfile } from '@cdklabs/cdk-appflow' SlackConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { SlackConnectorProfile } from '@cdklabs/cdk-appflow' SlackConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { SlackConnectorProfile } from '@cdklabs/cdk-appflow' SlackConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### TriggeredFlowBase - *Implements:* IFlow #### Initializers ```typescript import { TriggeredFlowBase } from '@cdklabs/cdk-appflow' new TriggeredFlowBase(scope: Construct, id: string, props: FlowBaseProps, autoActivate?: boolean) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | FlowBaseProps | *No description.* | | autoActivate | boolean | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* FlowBaseProps --- ##### `autoActivate`Optional - *Type:* boolean --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | | onEvent | *No description.* | | onRunCompleted | *No description.* | | onRunStarted | *No description.* | | onDeactivated | *No description.* | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- ##### `onEvent` ```typescript public onEvent(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunCompleted` ```typescript public onRunCompleted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunStarted` ```typescript public onRunStarted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onDeactivated` ```typescript public onDeactivated(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | --- ##### ~~`isConstruct`~~ ```typescript import { TriggeredFlowBase } from '@cdklabs/cdk-appflow' TriggeredFlowBase.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { TriggeredFlowBase } from '@cdklabs/cdk-appflow' TriggeredFlowBase.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { TriggeredFlowBase } from '@cdklabs/cdk-appflow' TriggeredFlowBase.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | type | FlowType | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ### ZendeskConnectorProfile #### Initializers ```typescript import { ZendeskConnectorProfile } from '@cdklabs/cdk-appflow' new ZendeskConnectorProfile(scope: Construct, id: string, props: ZendeskConnectorProfileProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | ZendeskConnectorProfileProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* ZendeskConnectorProfileProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | applyRemovalPolicy | Apply the given removal policy to this resource. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `applyRemovalPolicy` ```typescript public applyRemovalPolicy(policy: RemovalPolicy): void ``` Apply the given removal policy to this resource. 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`). ###### `policy`Required - *Type:* aws-cdk-lib.RemovalPolicy --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | isOwnedResource | Returns true if the construct was created by CDK, and false otherwise. | | isResource | Check whether the given construct is a Resource. | | fromConnectionProfileArn | *No description.* | | fromConnectionProfileName | *No description.* | --- ##### ~~`isConstruct`~~ ```typescript import { ZendeskConnectorProfile } from '@cdklabs/cdk-appflow' ZendeskConnectorProfile.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `isOwnedResource` ```typescript import { ZendeskConnectorProfile } from '@cdklabs/cdk-appflow' ZendeskConnectorProfile.isOwnedResource(construct: IConstruct) ``` Returns true if the construct was created by CDK, and false otherwise. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `isResource` ```typescript import { ZendeskConnectorProfile } from '@cdklabs/cdk-appflow' ZendeskConnectorProfile.isResource(construct: IConstruct) ``` Check whether the given construct is a Resource. ###### `construct`Required - *Type:* constructs.IConstruct --- ##### `fromConnectionProfileArn` ```typescript import { ZendeskConnectorProfile } from '@cdklabs/cdk-appflow' ZendeskConnectorProfile.fromConnectionProfileArn(scope: Construct, id: string, arn: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `arn`Required - *Type:* string --- ##### `fromConnectionProfileName` ```typescript import { ZendeskConnectorProfile } from '@cdklabs/cdk-appflow' ZendeskConnectorProfile.fromConnectionProfileName(scope: Construct, id: string, name: string) ``` ###### `scope`Required - *Type:* constructs.Construct --- ###### `id`Required - *Type:* string --- ###### `name`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ## Structs ### ConnectorProfileProps #### Initializer ```typescript import { ConnectorProfileProps } from '@cdklabs/cdk-appflow' const connectorProfileProps: ConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ### DataPullConfig #### Initializer ```typescript import { DataPullConfig } from '@cdklabs/cdk-appflow' const dataPullConfig: DataPullConfig = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | mode | DataPullMode | *No description.* | | timestampField | string | The name of the field to use as a timestamp for recurring incremental flows. | --- ##### `mode`Required ```typescript public readonly mode: DataPullMode; ``` - *Type:* DataPullMode --- ##### `timestampField`Optional ```typescript public readonly timestampField: string; ``` - *Type:* string The name of the field to use as a timestamp for recurring incremental flows. The default field is set per particular @see ISource. --- ### ErrorHandlingConfiguration #### Initializer ```typescript import { ErrorHandlingConfiguration } from '@cdklabs/cdk-appflow' const errorHandlingConfiguration: ErrorHandlingConfiguration = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | errorLocation | S3Location | *No description.* | | failOnFirstError | boolean | *No description.* | --- ##### `errorLocation`Optional ```typescript public readonly errorLocation: S3Location; ``` - *Type:* S3Location --- ##### `failOnFirstError`Optional ```typescript public readonly failOnFirstError: boolean; ``` - *Type:* boolean --- ### EventBridgeDestinationProps #### Initializer ```typescript import { EventBridgeDestinationProps } from '@cdklabs/cdk-appflow' const eventBridgeDestinationProps: EventBridgeDestinationProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | partnerBus | string | *No description.* | | errorHandling | ErrorHandlingConfiguration | *No description.* | --- ##### `partnerBus`Required ```typescript public readonly partnerBus: string; ``` - *Type:* string --- ##### `errorHandling`Optional ```typescript public readonly errorHandling: ErrorHandlingConfiguration; ``` - *Type:* ErrorHandlingConfiguration --- ### Field #### Initializer ```typescript import { Field } from '@cdklabs/cdk-appflow' const field: Field = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | name | string | *No description.* | | dataType | string | *No description.* | --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `dataType`Optional ```typescript public readonly dataType: string; ``` - *Type:* string --- ### FlowBaseProps #### Initializer ```typescript import { FlowBaseProps } from '@cdklabs/cdk-appflow' const flowBaseProps: FlowBaseProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | destination | IDestination | *No description.* | | mappings | IMapping[] | *No description.* | | source | ISource | *No description.* | | description | string | *No description.* | | filters | IFilter[] | *No description.* | | key | aws-cdk-lib.aws_kms.IKey | *No description.* | | name | string | *No description.* | | transforms | ITransform[] | *No description.* | | validations | IValidation[] | *No description.* | | type | FlowType | *No description.* | | triggerConfig | TriggerConfig | *No description.* | --- ##### `destination`Required ```typescript public readonly destination: IDestination; ``` - *Type:* IDestination --- ##### `mappings`Required ```typescript public readonly mappings: IMapping[]; ``` - *Type:* IMapping[] --- ##### `source`Required ```typescript public readonly source: ISource; ``` - *Type:* ISource --- ##### `description`Optional ```typescript public readonly description: string; ``` - *Type:* string --- ##### `filters`Optional ```typescript public readonly filters: IFilter[]; ``` - *Type:* IFilter[] --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `transforms`Optional ```typescript public readonly transforms: ITransform[]; ``` - *Type:* ITransform[] --- ##### `validations`Optional ```typescript public readonly validations: IValidation[]; ``` - *Type:* IValidation[] --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ##### `triggerConfig`Optional ```typescript public readonly triggerConfig: TriggerConfig; ``` - *Type:* TriggerConfig --- ### FlowProps #### Initializer ```typescript import { FlowProps } from '@cdklabs/cdk-appflow' const flowProps: FlowProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | destination | IDestination | *No description.* | | mappings | IMapping[] | *No description.* | | source | ISource | *No description.* | | description | string | *No description.* | | filters | IFilter[] | *No description.* | | key | aws-cdk-lib.aws_kms.IKey | *No description.* | | name | string | *No description.* | | transforms | ITransform[] | *No description.* | | validations | IValidation[] | *No description.* | --- ##### `destination`Required ```typescript public readonly destination: IDestination; ``` - *Type:* IDestination --- ##### `mappings`Required ```typescript public readonly mappings: IMapping[]; ``` - *Type:* IMapping[] --- ##### `source`Required ```typescript public readonly source: ISource; ``` - *Type:* ISource --- ##### `description`Optional ```typescript public readonly description: string; ``` - *Type:* string --- ##### `filters`Optional ```typescript public readonly filters: IFilter[]; ``` - *Type:* IFilter[] --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `transforms`Optional ```typescript public readonly transforms: ITransform[]; ``` - *Type:* ITransform[] --- ##### `validations`Optional ```typescript public readonly validations: IValidation[]; ``` - *Type:* IValidation[] --- ### GoogleAnalytics4ConnectorProfileProps #### Initializer ```typescript import { GoogleAnalytics4ConnectorProfileProps } from '@cdklabs/cdk-appflow' const googleAnalytics4ConnectorProfileProps: GoogleAnalytics4ConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | oAuth | GoogleAnalytics4OAuthSettings | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: GoogleAnalytics4OAuthSettings; ``` - *Type:* GoogleAnalytics4OAuthSettings --- ### GoogleAnalytics4OAuthEndpointsSettings #### Initializer ```typescript import { GoogleAnalytics4OAuthEndpointsSettings } from '@cdklabs/cdk-appflow' const googleAnalytics4OAuthEndpointsSettings: GoogleAnalytics4OAuthEndpointsSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | authorization | string | *No description.* | | token | string | *No description.* | --- ##### `authorization`Optional ```typescript public readonly authorization: string; ``` - *Type:* string --- ##### `token`Optional ```typescript public readonly token: string; ``` - *Type:* string --- ### GoogleAnalytics4OAuthFlow #### Initializer ```typescript import { GoogleAnalytics4OAuthFlow } from '@cdklabs/cdk-appflow' const googleAnalytics4OAuthFlow: GoogleAnalytics4OAuthFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | refreshTokenGrant | GoogleAnalytics4RefreshTokenGrantFlow | *No description.* | --- ##### `refreshTokenGrant`Required ```typescript public readonly refreshTokenGrant: GoogleAnalytics4RefreshTokenGrantFlow; ``` - *Type:* GoogleAnalytics4RefreshTokenGrantFlow --- ### GoogleAnalytics4OAuthSettings #### Initializer ```typescript import { GoogleAnalytics4OAuthSettings } from '@cdklabs/cdk-appflow' const googleAnalytics4OAuthSettings: GoogleAnalytics4OAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | accessToken | string | The access token to be used when interacting with Google Analytics 4. | | endpoints | GoogleAnalytics4OAuthEndpointsSettings | *No description.* | | flow | GoogleAnalytics4OAuthFlow | *No description.* | --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string The access token to be used when interacting with Google Analytics 4. Note that if only the access token is provided AppFlow is not able to retrieve a fresh access token when the current one is expired --- ##### `endpoints`Optional ```typescript public readonly endpoints: GoogleAnalytics4OAuthEndpointsSettings; ``` - *Type:* GoogleAnalytics4OAuthEndpointsSettings --- ##### `flow`Optional ```typescript public readonly flow: GoogleAnalytics4OAuthFlow; ``` - *Type:* GoogleAnalytics4OAuthFlow --- ### GoogleAnalytics4RefreshTokenGrantFlow #### Initializer ```typescript import { GoogleAnalytics4RefreshTokenGrantFlow } from '@cdklabs/cdk-appflow' const googleAnalytics4RefreshTokenGrantFlow: GoogleAnalytics4RefreshTokenGrantFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientId | string | *No description.* | | clientSecret | string | *No description.* | | refreshToken | string | *No description.* | --- ##### `clientId`Optional ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Optional ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ##### `refreshToken`Optional ```typescript public readonly refreshToken: string; ``` - *Type:* string --- ### GoogleAnalytics4SourceProps Properties of a Google Analytics v4 Source. #### Initializer ```typescript import { GoogleAnalytics4SourceProps } from '@cdklabs/cdk-appflow' const googleAnalytics4SourceProps: GoogleAnalytics4SourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | apiVersion | string | *No description.* | | object | string | *No description.* | | profile | GoogleAnalytics4ConnectorProfile | *No description.* | --- ##### `apiVersion`Required ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: GoogleAnalytics4ConnectorProfile; ``` - *Type:* GoogleAnalytics4ConnectorProfile --- ### MapAllConfig A helper interface. #### Initializer ```typescript import { MapAllConfig } from '@cdklabs/cdk-appflow' const mapAllConfig: MapAllConfig = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | exclude | string[] | *No description.* | --- ##### `exclude`Required ```typescript public readonly exclude: string[]; ``` - *Type:* string[] --- ### MarketoConnectorProfileProps #### Initializer ```typescript import { MarketoConnectorProfileProps } from '@cdklabs/cdk-appflow' const marketoConnectorProfileProps: MarketoConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | instanceUrl | string | *No description.* | | oAuth | MarketoOAuthSettings | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `instanceUrl`Required ```typescript public readonly instanceUrl: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: MarketoOAuthSettings; ``` - *Type:* MarketoOAuthSettings --- ### MarketoOAuthClientCredentialsFlow #### Initializer ```typescript import { MarketoOAuthClientCredentialsFlow } from '@cdklabs/cdk-appflow' const marketoOAuthClientCredentialsFlow: MarketoOAuthClientCredentialsFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientId | string | *No description.* | | clientSecret | string | *No description.* | --- ##### `clientId`Required ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Required ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ### MarketoOAuthFlow #### Initializer ```typescript import { MarketoOAuthFlow } from '@cdklabs/cdk-appflow' const marketoOAuthFlow: MarketoOAuthFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientCredentials | MarketoOAuthClientCredentialsFlow | *No description.* | --- ##### `clientCredentials`Required ```typescript public readonly clientCredentials: MarketoOAuthClientCredentialsFlow; ``` - *Type:* MarketoOAuthClientCredentialsFlow --- ### MarketoOAuthSettings #### Initializer ```typescript import { MarketoOAuthSettings } from '@cdklabs/cdk-appflow' const marketoOAuthSettings: MarketoOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | flow | MarketoOAuthFlow | *No description.* | | accessToken | string | *No description.* | --- ##### `flow`Required ```typescript public readonly flow: MarketoOAuthFlow; ``` - *Type:* MarketoOAuthFlow --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string --- ### MarketoSourceProps #### Initializer ```typescript import { MarketoSourceProps } from '@cdklabs/cdk-appflow' const marketoSourceProps: MarketoSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | *No description.* | | profile | MarketoConnectorProfile | *No description.* | | apiVersion | string | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: MarketoConnectorProfile; ``` - *Type:* MarketoConnectorProfile --- ##### `apiVersion`Optional ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ### MicrosoftSharepointOnlineConnectorProfileProps #### Initializer ```typescript import { MicrosoftSharepointOnlineConnectorProfileProps } from '@cdklabs/cdk-appflow' const microsoftSharepointOnlineConnectorProfileProps: MicrosoftSharepointOnlineConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | oAuth | MicrosoftSharepointOnlineOAuthSettings | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: MicrosoftSharepointOnlineOAuthSettings; ``` - *Type:* MicrosoftSharepointOnlineOAuthSettings --- ### MicrosoftSharepointOnlineOAuthEndpointsSettings #### Initializer ```typescript import { MicrosoftSharepointOnlineOAuthEndpointsSettings } from '@cdklabs/cdk-appflow' const microsoftSharepointOnlineOAuthEndpointsSettings: MicrosoftSharepointOnlineOAuthEndpointsSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | token | string | *No description.* | --- ##### `token`Required ```typescript public readonly token: string; ``` - *Type:* string --- ### MicrosoftSharepointOnlineOAuthFlow #### Initializer ```typescript import { MicrosoftSharepointOnlineOAuthFlow } from '@cdklabs/cdk-appflow' const microsoftSharepointOnlineOAuthFlow: MicrosoftSharepointOnlineOAuthFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | refreshTokenGrant | MicrosoftSharepointOnlineRefreshTokenGrantFlow | *No description.* | --- ##### `refreshTokenGrant`Required ```typescript public readonly refreshTokenGrant: MicrosoftSharepointOnlineRefreshTokenGrantFlow; ``` - *Type:* MicrosoftSharepointOnlineRefreshTokenGrantFlow --- ### MicrosoftSharepointOnlineOAuthSettings #### Initializer ```typescript import { MicrosoftSharepointOnlineOAuthSettings } from '@cdklabs/cdk-appflow' const microsoftSharepointOnlineOAuthSettings: MicrosoftSharepointOnlineOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | endpoints | MicrosoftSharepointOnlineOAuthEndpointsSettings | *No description.* | | accessToken | string | The access token to be used when interacting with Google Analytics 4. | | flow | MicrosoftSharepointOnlineOAuthFlow | *No description.* | --- ##### `endpoints`Required ```typescript public readonly endpoints: MicrosoftSharepointOnlineOAuthEndpointsSettings; ``` - *Type:* MicrosoftSharepointOnlineOAuthEndpointsSettings --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string The access token to be used when interacting with Google Analytics 4. Note that if only the access token is provided AppFlow is not able to retrieve a fresh access token when the current one is expired --- ##### `flow`Optional ```typescript public readonly flow: MicrosoftSharepointOnlineOAuthFlow; ``` - *Type:* MicrosoftSharepointOnlineOAuthFlow --- ### MicrosoftSharepointOnlineRefreshTokenGrantFlow #### Initializer ```typescript import { MicrosoftSharepointOnlineRefreshTokenGrantFlow } from '@cdklabs/cdk-appflow' const microsoftSharepointOnlineRefreshTokenGrantFlow: MicrosoftSharepointOnlineRefreshTokenGrantFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientId | string | *No description.* | | clientSecret | string | *No description.* | | refreshToken | string | *No description.* | --- ##### `clientId`Optional ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Optional ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ##### `refreshToken`Optional ```typescript public readonly refreshToken: string; ``` - *Type:* string --- ### MicrosoftSharepointOnlineSourceProps Properties of a Google Analytics v4 Source. #### Initializer ```typescript import { MicrosoftSharepointOnlineSourceProps } from '@cdklabs/cdk-appflow' const microsoftSharepointOnlineSourceProps: MicrosoftSharepointOnlineSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | apiVersion | string | *No description.* | | object | string | *No description.* | | profile | MicrosoftSharepointOnlineConnectorProfile | *No description.* | --- ##### `apiVersion`Required ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: MicrosoftSharepointOnlineConnectorProfile; ``` - *Type:* MicrosoftSharepointOnlineConnectorProfile --- ### OnDemandFlowProps #### Initializer ```typescript import { OnDemandFlowProps } from '@cdklabs/cdk-appflow' const onDemandFlowProps: OnDemandFlowProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | destination | IDestination | *No description.* | | mappings | IMapping[] | *No description.* | | source | ISource | *No description.* | | description | string | *No description.* | | filters | IFilter[] | *No description.* | | key | aws-cdk-lib.aws_kms.IKey | *No description.* | | name | string | *No description.* | | transforms | ITransform[] | *No description.* | | validations | IValidation[] | *No description.* | --- ##### `destination`Required ```typescript public readonly destination: IDestination; ``` - *Type:* IDestination --- ##### `mappings`Required ```typescript public readonly mappings: IMapping[]; ``` - *Type:* IMapping[] --- ##### `source`Required ```typescript public readonly source: ISource; ``` - *Type:* ISource --- ##### `description`Optional ```typescript public readonly description: string; ``` - *Type:* string --- ##### `filters`Optional ```typescript public readonly filters: IFilter[]; ``` - *Type:* IFilter[] --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `transforms`Optional ```typescript public readonly transforms: ITransform[]; ``` - *Type:* ITransform[] --- ##### `validations`Optional ```typescript public readonly validations: IValidation[]; ``` - *Type:* IValidation[] --- ### OnEventFlowProps #### Initializer ```typescript import { OnEventFlowProps } from '@cdklabs/cdk-appflow' const onEventFlowProps: OnEventFlowProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | destination | IDestination | *No description.* | | mappings | IMapping[] | *No description.* | | source | ISource | *No description.* | | description | string | *No description.* | | filters | IFilter[] | *No description.* | | key | aws-cdk-lib.aws_kms.IKey | *No description.* | | name | string | *No description.* | | transforms | ITransform[] | *No description.* | | validations | IValidation[] | *No description.* | | autoActivate | boolean | *No description.* | --- ##### `destination`Required ```typescript public readonly destination: IDestination; ``` - *Type:* IDestination --- ##### `mappings`Required ```typescript public readonly mappings: IMapping[]; ``` - *Type:* IMapping[] --- ##### `source`Required ```typescript public readonly source: ISource; ``` - *Type:* ISource --- ##### `description`Optional ```typescript public readonly description: string; ``` - *Type:* string --- ##### `filters`Optional ```typescript public readonly filters: IFilter[]; ``` - *Type:* IFilter[] --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `transforms`Optional ```typescript public readonly transforms: ITransform[]; ``` - *Type:* ITransform[] --- ##### `validations`Optional ```typescript public readonly validations: IValidation[]; ``` - *Type:* IValidation[] --- ##### `autoActivate`Optional ```typescript public readonly autoActivate: boolean; ``` - *Type:* boolean --- ### OnScheduleFlowProps #### Initializer ```typescript import { OnScheduleFlowProps } from '@cdklabs/cdk-appflow' const onScheduleFlowProps: OnScheduleFlowProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | destination | IDestination | *No description.* | | mappings | IMapping[] | *No description.* | | source | ISource | *No description.* | | description | string | *No description.* | | filters | IFilter[] | *No description.* | | key | aws-cdk-lib.aws_kms.IKey | *No description.* | | name | string | *No description.* | | transforms | ITransform[] | *No description.* | | validations | IValidation[] | *No description.* | | autoActivate | boolean | *No description.* | | pullConfig | DataPullConfig | *No description.* | | schedule | aws-cdk-lib.aws_events.Schedule | *No description.* | | scheduleProperties | ScheduleProperties | *No description.* | --- ##### `destination`Required ```typescript public readonly destination: IDestination; ``` - *Type:* IDestination --- ##### `mappings`Required ```typescript public readonly mappings: IMapping[]; ``` - *Type:* IMapping[] --- ##### `source`Required ```typescript public readonly source: ISource; ``` - *Type:* ISource --- ##### `description`Optional ```typescript public readonly description: string; ``` - *Type:* string --- ##### `filters`Optional ```typescript public readonly filters: IFilter[]; ``` - *Type:* IFilter[] --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `transforms`Optional ```typescript public readonly transforms: ITransform[]; ``` - *Type:* ITransform[] --- ##### `validations`Optional ```typescript public readonly validations: IValidation[]; ``` - *Type:* IValidation[] --- ##### `autoActivate`Optional ```typescript public readonly autoActivate: boolean; ``` - *Type:* boolean --- ##### `pullConfig`Required ```typescript public readonly pullConfig: DataPullConfig; ``` - *Type:* DataPullConfig --- ##### `schedule`Required ```typescript public readonly schedule: Schedule; ``` - *Type:* aws-cdk-lib.aws_events.Schedule --- ##### `scheduleProperties`Optional ```typescript public readonly scheduleProperties: ScheduleProperties; ``` - *Type:* ScheduleProperties --- ### RedshiftConnectorBasicCredentials #### Initializer ```typescript import { RedshiftConnectorBasicCredentials } from '@cdklabs/cdk-appflow' const redshiftConnectorBasicCredentials: RedshiftConnectorBasicCredentials = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | password | string | *No description.* | | username | string | *No description.* | --- ##### `password`Optional ```typescript public readonly password: string; ``` - *Type:* string --- ##### `username`Optional ```typescript public readonly username: string; ``` - *Type:* string --- ### RedshiftConnectorProfileProps #### Initializer ```typescript import { RedshiftConnectorProfileProps } from '@cdklabs/cdk-appflow' const redshiftConnectorProfileProps: RedshiftConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | basicAuth | RedshiftConnectorBasicCredentials | *No description.* | | cluster | @aws-cdk/aws-redshift-alpha.ICluster | The Redshift cluster to use this connector profile with. | | databaseName | string | The name of the database which the RedshiftConnectorProfile will be working with. | | intermediateLocation | S3Location | An intermediate location for the data retrieved from the flow source that will be further transferred to the Redshfit database. | | bucketAccessRole | aws-cdk-lib.aws_iam.IRole | An IAM Role that the Redshift cluster will assume to get data from the intermiediate S3 Bucket. | | dataApiRole | aws-cdk-lib.aws_iam.IRole | An IAM Role that AppFlow will assume to interact with the Redshift cluster's Data API. | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `basicAuth`Required ```typescript public readonly basicAuth: RedshiftConnectorBasicCredentials; ``` - *Type:* RedshiftConnectorBasicCredentials --- ##### `cluster`Required ```typescript public readonly cluster: ICluster; ``` - *Type:* @aws-cdk/aws-redshift-alpha.ICluster The Redshift cluster to use this connector profile with. --- ##### `databaseName`Required ```typescript public readonly databaseName: string; ``` - *Type:* string The name of the database which the RedshiftConnectorProfile will be working with. --- ##### `intermediateLocation`Required ```typescript public readonly intermediateLocation: S3Location; ``` - *Type:* S3Location An intermediate location for the data retrieved from the flow source that will be further transferred to the Redshfit database. --- ##### `bucketAccessRole`Optional ```typescript public readonly bucketAccessRole: IRole; ``` - *Type:* aws-cdk-lib.aws_iam.IRole An IAM Role that the Redshift cluster will assume to get data from the intermiediate S3 Bucket. --- ##### `dataApiRole`Optional ```typescript public readonly dataApiRole: IRole; ``` - *Type:* aws-cdk-lib.aws_iam.IRole - *Default:* autogenerated IAM role An IAM Role that AppFlow will assume to interact with the Redshift cluster's Data API. --- ### RedshiftDestinationObject #### Initializer ```typescript import { RedshiftDestinationObject } from '@cdklabs/cdk-appflow' const redshiftDestinationObject: RedshiftDestinationObject = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | table | string \| @aws-cdk/aws-redshift-alpha.ITable | *No description.* | | schema | string | *No description.* | --- ##### `table`Required ```typescript public readonly table: string | ITable; ``` - *Type:* string | @aws-cdk/aws-redshift-alpha.ITable --- ##### `schema`Optional ```typescript public readonly schema: string; ``` - *Type:* string - *Default:* public --- ### RedshiftDestinationProps #### Initializer ```typescript import { RedshiftDestinationProps } from '@cdklabs/cdk-appflow' const redshiftDestinationProps: RedshiftDestinationProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | RedshiftDestinationObject | A Redshift table object (optionally with the schema). | | profile | RedshiftConnectorProfile | An instance of the @type RedshiftConnectorProfile. | | errorHandling | ErrorHandlingConfiguration | The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. | --- ##### `object`Required ```typescript public readonly object: RedshiftDestinationObject; ``` - *Type:* RedshiftDestinationObject A Redshift table object (optionally with the schema). --- ##### `profile`Required ```typescript public readonly profile: RedshiftConnectorProfile; ``` - *Type:* RedshiftConnectorProfile An instance of the @type RedshiftConnectorProfile. --- ##### `errorHandling`Optional ```typescript public readonly errorHandling: ErrorHandlingConfiguration; ``` - *Type:* ErrorHandlingConfiguration The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. --- ### S3Catalog #### Initializer ```typescript import { S3Catalog } from '@cdklabs/cdk-appflow' const s3Catalog: S3Catalog = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | database | @aws-cdk/aws-glue-alpha.Database | *No description.* | | tablePrefix | string | *No description.* | --- ##### `database`Required ```typescript public readonly database: Database; ``` - *Type:* @aws-cdk/aws-glue-alpha.Database --- ##### `tablePrefix`Required ```typescript public readonly tablePrefix: string; ``` - *Type:* string --- ### S3DestinationProps #### Initializer ```typescript import { S3DestinationProps } from '@cdklabs/cdk-appflow' const s3DestinationProps: S3DestinationProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | location | S3Location | *No description.* | | catalog | S3Catalog | *No description.* | | formatting | S3OutputFormatting | *No description.* | --- ##### `location`Required ```typescript public readonly location: S3Location; ``` - *Type:* S3Location --- ##### `catalog`Optional ```typescript public readonly catalog: S3Catalog; ``` - *Type:* S3Catalog --- ##### `formatting`Optional ```typescript public readonly formatting: S3OutputFormatting; ``` - *Type:* S3OutputFormatting --- ### S3FileAggregation #### Initializer ```typescript import { S3FileAggregation } from '@cdklabs/cdk-appflow' const s3FileAggregation: S3FileAggregation = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | fileSize | number | The maximum size, in MB, of the file containing portion of incoming data. | | type | S3OutputAggregationType | *No description.* | --- ##### `fileSize`Optional ```typescript public readonly fileSize: number; ``` - *Type:* number The maximum size, in MB, of the file containing portion of incoming data. --- ##### `type`Optional ```typescript public readonly type: S3OutputAggregationType; ``` - *Type:* S3OutputAggregationType --- ### S3InputFormat #### Initializer ```typescript import { S3InputFormat } from '@cdklabs/cdk-appflow' const s3InputFormat: S3InputFormat = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | type | S3InputFileType | *No description.* | --- ##### `type`Required ```typescript public readonly type: S3InputFileType; ``` - *Type:* S3InputFileType --- ### S3Location #### Initializer ```typescript import { S3Location } from '@cdklabs/cdk-appflow' const s3Location: S3Location = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | bucket | aws-cdk-lib.aws_s3.IBucket | *No description.* | | prefix | string | *No description.* | --- ##### `bucket`Required ```typescript public readonly bucket: IBucket; ``` - *Type:* aws-cdk-lib.aws_s3.IBucket --- ##### `prefix`Optional ```typescript public readonly prefix: string; ``` - *Type:* string --- ### S3OutputFilePrefix #### Initializer ```typescript import { S3OutputFilePrefix } from '@cdklabs/cdk-appflow' const s3OutputFilePrefix: S3OutputFilePrefix = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | format | S3OutputFilePrefixFormat | *No description.* | | hierarchy | S3OutputFilePrefixHierarchy[] | *No description.* | | type | S3OutputFilePrefixType | *No description.* | --- ##### `format`Optional ```typescript public readonly format: S3OutputFilePrefixFormat; ``` - *Type:* S3OutputFilePrefixFormat --- ##### `hierarchy`Optional ```typescript public readonly hierarchy: S3OutputFilePrefixHierarchy[]; ``` - *Type:* S3OutputFilePrefixHierarchy[] --- ##### `type`Optional ```typescript public readonly type: S3OutputFilePrefixType; ``` - *Type:* S3OutputFilePrefixType --- ### S3OutputFormatting #### Initializer ```typescript import { S3OutputFormatting } from '@cdklabs/cdk-appflow' const s3OutputFormatting: S3OutputFormatting = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | aggregation | S3FileAggregation | *No description.* | | filePrefix | S3OutputFilePrefix | *No description.* | | fileType | S3OutputFileType | *No description.* | | preserveSourceDataTypes | boolean | *No description.* | --- ##### `aggregation`Optional ```typescript public readonly aggregation: S3FileAggregation; ``` - *Type:* S3FileAggregation --- ##### `filePrefix`Optional ```typescript public readonly filePrefix: S3OutputFilePrefix; ``` - *Type:* S3OutputFilePrefix --- ##### `fileType`Optional ```typescript public readonly fileType: S3OutputFileType; ``` - *Type:* S3OutputFileType --- ##### `preserveSourceDataTypes`Optional ```typescript public readonly preserveSourceDataTypes: boolean; ``` - *Type:* boolean --- ### S3SourceProps #### Initializer ```typescript import { S3SourceProps } from '@cdklabs/cdk-appflow' const s3SourceProps: S3SourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | bucket | aws-cdk-lib.aws_s3.IBucket | *No description.* | | prefix | string | *No description.* | | format | S3InputFormat | *No description.* | --- ##### `bucket`Required ```typescript public readonly bucket: IBucket; ``` - *Type:* aws-cdk-lib.aws_s3.IBucket --- ##### `prefix`Required ```typescript public readonly prefix: string; ``` - *Type:* string --- ##### `format`Optional ```typescript public readonly format: S3InputFormat; ``` - *Type:* S3InputFormat --- ### SalesforceConnectorProfileProps #### Initializer ```typescript import { SalesforceConnectorProfileProps } from '@cdklabs/cdk-appflow' const salesforceConnectorProfileProps: SalesforceConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | instanceUrl | string | *No description.* | | oAuth | SalesforceOAuthSettings | *No description.* | | isSandbox | boolean | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `instanceUrl`Required ```typescript public readonly instanceUrl: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: SalesforceOAuthSettings; ``` - *Type:* SalesforceOAuthSettings --- ##### `isSandbox`Optional ```typescript public readonly isSandbox: boolean; ``` - *Type:* boolean - *Default:* false --- ### SalesforceDestinationProps #### Initializer ```typescript import { SalesforceDestinationProps } from '@cdklabs/cdk-appflow' const salesforceDestinationProps: SalesforceDestinationProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | The Salesforce object for which the operation is to be set. | | operation | WriteOperation | *No description.* | | profile | SalesforceConnectorProfile | *No description.* | | dataTransferApi | SalesforceDataTransferApi | Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. | | errorHandling | ErrorHandlingConfiguration | The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string The Salesforce object for which the operation is to be set. --- ##### `operation`Required ```typescript public readonly operation: WriteOperation; ``` - *Type:* WriteOperation --- ##### `profile`Required ```typescript public readonly profile: SalesforceConnectorProfile; ``` - *Type:* SalesforceConnectorProfile --- ##### `dataTransferApi`Optional ```typescript public readonly dataTransferApi: SalesforceDataTransferApi; ``` - *Type:* SalesforceDataTransferApi Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. --- ##### `errorHandling`Optional ```typescript public readonly errorHandling: ErrorHandlingConfiguration; ``` - *Type:* ErrorHandlingConfiguration The settings that determine how Amazon AppFlow handles an error when placing data in the Salesforce destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. --- ### SalesforceMarketingCloudConnectorProfileProps #### Initializer ```typescript import { SalesforceMarketingCloudConnectorProfileProps } from '@cdklabs/cdk-appflow' const salesforceMarketingCloudConnectorProfileProps: SalesforceMarketingCloudConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | instanceUrl | string | *No description.* | | oAuth | SalesforceMarketingCloudOAuthSettings | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `instanceUrl`Required ```typescript public readonly instanceUrl: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: SalesforceMarketingCloudOAuthSettings; ``` - *Type:* SalesforceMarketingCloudOAuthSettings --- ### SalesforceMarketingCloudFlowSettings #### Initializer ```typescript import { SalesforceMarketingCloudFlowSettings } from '@cdklabs/cdk-appflow' const salesforceMarketingCloudFlowSettings: SalesforceMarketingCloudFlowSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientCredentials | SalesforceMarketingCloudOAuthClientSettings | *No description.* | --- ##### `clientCredentials`Required ```typescript public readonly clientCredentials: SalesforceMarketingCloudOAuthClientSettings; ``` - *Type:* SalesforceMarketingCloudOAuthClientSettings --- ### SalesforceMarketingCloudOAuthClientSettings #### Initializer ```typescript import { SalesforceMarketingCloudOAuthClientSettings } from '@cdklabs/cdk-appflow' const salesforceMarketingCloudOAuthClientSettings: SalesforceMarketingCloudOAuthClientSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientId | string | *No description.* | | clientSecret | string | *No description.* | --- ##### `clientId`Required ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Required ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ### SalesforceMarketingCloudOAuthEndpoints #### Initializer ```typescript import { SalesforceMarketingCloudOAuthEndpoints } from '@cdklabs/cdk-appflow' const salesforceMarketingCloudOAuthEndpoints: SalesforceMarketingCloudOAuthEndpoints = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | token | string | *No description.* | --- ##### `token`Required ```typescript public readonly token: string; ``` - *Type:* string --- ### SalesforceMarketingCloudOAuthSettings #### Initializer ```typescript import { SalesforceMarketingCloudOAuthSettings } from '@cdklabs/cdk-appflow' const salesforceMarketingCloudOAuthSettings: SalesforceMarketingCloudOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | endpoints | SalesforceMarketingCloudOAuthEndpoints | *No description.* | | accessToken | string | *No description.* | | flow | SalesforceMarketingCloudFlowSettings | *No description.* | --- ##### `endpoints`Required ```typescript public readonly endpoints: SalesforceMarketingCloudOAuthEndpoints; ``` - *Type:* SalesforceMarketingCloudOAuthEndpoints --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string --- ##### `flow`Optional ```typescript public readonly flow: SalesforceMarketingCloudFlowSettings; ``` - *Type:* SalesforceMarketingCloudFlowSettings --- ### SalesforceMarketingCloudSourceProps Properties of a Salesforce Marketing Cloud Source. #### Initializer ```typescript import { SalesforceMarketingCloudSourceProps } from '@cdklabs/cdk-appflow' const salesforceMarketingCloudSourceProps: SalesforceMarketingCloudSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | apiVersion | string | *No description.* | | object | string | *No description.* | | profile | SalesforceMarketingCloudConnectorProfile | *No description.* | --- ##### `apiVersion`Required ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: SalesforceMarketingCloudConnectorProfile; ``` - *Type:* SalesforceMarketingCloudConnectorProfile --- ### SalesforceOAuthFlow #### Initializer ```typescript import { SalesforceOAuthFlow } from '@cdklabs/cdk-appflow' const salesforceOAuthFlow: SalesforceOAuthFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | refresTokenGrant | SalesforceOAuthRefreshTokenGrantFlow | *No description.* | --- ##### `refresTokenGrant`Required ```typescript public readonly refresTokenGrant: SalesforceOAuthRefreshTokenGrantFlow; ``` - *Type:* SalesforceOAuthRefreshTokenGrantFlow --- ### SalesforceOAuthRefreshTokenGrantFlow #### Initializer ```typescript import { SalesforceOAuthRefreshTokenGrantFlow } from '@cdklabs/cdk-appflow' const salesforceOAuthRefreshTokenGrantFlow: SalesforceOAuthRefreshTokenGrantFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | client | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | | refreshToken | string | *No description.* | --- ##### `client`Optional ```typescript public readonly client: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ##### `refreshToken`Optional ```typescript public readonly refreshToken: string; ``` - *Type:* string --- ### SalesforceOAuthSettings #### Initializer ```typescript import { SalesforceOAuthSettings } from '@cdklabs/cdk-appflow' const salesforceOAuthSettings: SalesforceOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | accessToken | string | *No description.* | | flow | SalesforceOAuthFlow | *No description.* | --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string --- ##### `flow`Optional ```typescript public readonly flow: SalesforceOAuthFlow; ``` - *Type:* SalesforceOAuthFlow --- ### SalesforceSourceProps #### Initializer ```typescript import { SalesforceSourceProps } from '@cdklabs/cdk-appflow' const salesforceSourceProps: SalesforceSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | *No description.* | | profile | SalesforceConnectorProfile | *No description.* | | apiVersion | string | *No description.* | | enableDynamicFieldUpdate | boolean | *No description.* | | includeDeletedRecords | boolean | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: SalesforceConnectorProfile; ``` - *Type:* SalesforceConnectorProfile --- ##### `apiVersion`Optional ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ##### `enableDynamicFieldUpdate`Optional ```typescript public readonly enableDynamicFieldUpdate: boolean; ``` - *Type:* boolean --- ##### `includeDeletedRecords`Optional ```typescript public readonly includeDeletedRecords: boolean; ``` - *Type:* boolean --- ### SAPOdataBasicAuthSettings #### Initializer ```typescript import { SAPOdataBasicAuthSettings } from '@cdklabs/cdk-appflow' const sAPOdataBasicAuthSettings: SAPOdataBasicAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | password | string | *No description.* | | username | string | *No description.* | --- ##### `password`Required ```typescript public readonly password: string; ``` - *Type:* string --- ##### `username`Required ```typescript public readonly username: string; ``` - *Type:* string --- ### SAPOdataConnectorProfileProps #### Initializer ```typescript import { SAPOdataConnectorProfileProps } from '@cdklabs/cdk-appflow' const sAPOdataConnectorProfileProps: SAPOdataConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | applicationHostUrl | string | *No description.* | | applicationServicePath | string | *No description.* | | clientNumber | string | *No description.* | | logonLanguage | string | *No description.* | | basicAuth | SAPOdataBasicAuthSettings | *No description.* | | oAuth | SAPOdataOAuthSettings | *No description.* | | portNumber | number | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `applicationHostUrl`Required ```typescript public readonly applicationHostUrl: string; ``` - *Type:* string --- ##### `applicationServicePath`Required ```typescript public readonly applicationServicePath: string; ``` - *Type:* string --- ##### `clientNumber`Required ```typescript public readonly clientNumber: string; ``` - *Type:* string --- ##### `logonLanguage`Required ```typescript public readonly logonLanguage: string; ``` - *Type:* string --- ##### `basicAuth`Optional ```typescript public readonly basicAuth: SAPOdataBasicAuthSettings; ``` - *Type:* SAPOdataBasicAuthSettings --- ##### `oAuth`Optional ```typescript public readonly oAuth: SAPOdataOAuthSettings; ``` - *Type:* SAPOdataOAuthSettings --- ##### `portNumber`Optional ```typescript public readonly portNumber: number; ``` - *Type:* number --- ### SAPOdataDestinationProps #### Initializer ```typescript import { SAPOdataDestinationProps } from '@cdklabs/cdk-appflow' const sAPOdataDestinationProps: SAPOdataDestinationProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | The SAPOdata object for which the operation is to be set. | | operation | WriteOperation | *No description.* | | profile | SAPOdataConnectorProfile | *No description.* | | errorHandling | ErrorHandlingConfiguration | The settings that determine how Amazon AppFlow handles an error when placing data in the SAPOdata destination. | | successResponseHandling | SAPOdataSuccessResponseHandlingConfiguration | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string The SAPOdata object for which the operation is to be set. --- ##### `operation`Required ```typescript public readonly operation: WriteOperation; ``` - *Type:* WriteOperation --- ##### `profile`Required ```typescript public readonly profile: SAPOdataConnectorProfile; ``` - *Type:* SAPOdataConnectorProfile --- ##### `errorHandling`Optional ```typescript public readonly errorHandling: ErrorHandlingConfiguration; ``` - *Type:* ErrorHandlingConfiguration The settings that determine how Amazon AppFlow handles an error when placing data in the SAPOdata destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. --- ##### `successResponseHandling`Optional ```typescript public readonly successResponseHandling: SAPOdataSuccessResponseHandlingConfiguration; ``` - *Type:* SAPOdataSuccessResponseHandlingConfiguration --- ### SAPOdataOAuthEndpoints #### Initializer ```typescript import { SAPOdataOAuthEndpoints } from '@cdklabs/cdk-appflow' const sAPOdataOAuthEndpoints: SAPOdataOAuthEndpoints = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | token | string | *No description.* | --- ##### `token`Required ```typescript public readonly token: string; ``` - *Type:* string --- ### SAPOdataOAuthFlows #### Initializer ```typescript import { SAPOdataOAuthFlows } from '@cdklabs/cdk-appflow' const sAPOdataOAuthFlows: SAPOdataOAuthFlows = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | refreshTokenGrant | SAPOdataOAuthRefreshTokenGrantFlow | *No description.* | --- ##### `refreshTokenGrant`Required ```typescript public readonly refreshTokenGrant: SAPOdataOAuthRefreshTokenGrantFlow; ``` - *Type:* SAPOdataOAuthRefreshTokenGrantFlow --- ### SAPOdataOAuthRefreshTokenGrantFlow #### Initializer ```typescript import { SAPOdataOAuthRefreshTokenGrantFlow } from '@cdklabs/cdk-appflow' const sAPOdataOAuthRefreshTokenGrantFlow: SAPOdataOAuthRefreshTokenGrantFlow = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientId | string | *No description.* | | clientSecret | string | *No description.* | | refreshToken | string | *No description.* | --- ##### `clientId`Required ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Required ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ##### `refreshToken`Optional ```typescript public readonly refreshToken: string; ``` - *Type:* string --- ### SAPOdataOAuthSettings #### Initializer ```typescript import { SAPOdataOAuthSettings } from '@cdklabs/cdk-appflow' const sAPOdataOAuthSettings: SAPOdataOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | accessToken | string | *No description.* | | endpoints | SAPOdataOAuthEndpoints | *No description.* | | flow | SAPOdataOAuthFlows | *No description.* | --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string --- ##### `endpoints`Optional ```typescript public readonly endpoints: SAPOdataOAuthEndpoints; ``` - *Type:* SAPOdataOAuthEndpoints --- ##### `flow`Optional ```typescript public readonly flow: SAPOdataOAuthFlows; ``` - *Type:* SAPOdataOAuthFlows --- ### SAPOdataSourceProps #### Initializer ```typescript import { SAPOdataSourceProps } from '@cdklabs/cdk-appflow' const sAPOdataSourceProps: SAPOdataSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | *No description.* | | profile | SAPOdataConnectorProfile | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: SAPOdataConnectorProfile; ``` - *Type:* SAPOdataConnectorProfile --- ### SAPOdataSuccessResponseHandlingConfiguration #### Initializer ```typescript import { SAPOdataSuccessResponseHandlingConfiguration } from '@cdklabs/cdk-appflow' const sAPOdataSuccessResponseHandlingConfiguration: SAPOdataSuccessResponseHandlingConfiguration = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | location | S3Location | *No description.* | --- ##### `location`Required ```typescript public readonly location: S3Location; ``` - *Type:* S3Location --- ### ScheduleProperties #### Initializer ```typescript import { ScheduleProperties } from '@cdklabs/cdk-appflow' const scheduleProperties: ScheduleProperties = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | endTime | Date | *No description.* | | firstExecutionFrom | Date | Timestamp for the records to import from the connector in the first flow run. | | offset | aws-cdk-lib.Duration | *No description.* | | startTime | Date | *No description.* | | timezone | string | *No description.* | --- ##### `endTime`Optional ```typescript public readonly endTime: Date; ``` - *Type:* Date --- ##### `firstExecutionFrom`Optional ```typescript public readonly firstExecutionFrom: Date; ``` - *Type:* Date - *Default:* 30 days back from the initial frow run Timestamp for the records to import from the connector in the first flow run. --- ##### `offset`Optional ```typescript public readonly offset: Duration; ``` - *Type:* aws-cdk-lib.Duration --- ##### `startTime`Optional ```typescript public readonly startTime: Date; ``` - *Type:* Date --- ##### `timezone`Optional ```typescript public readonly timezone: string; ``` - *Type:* string --- ### ServiceNowBasicSettings #### Initializer ```typescript import { ServiceNowBasicSettings } from '@cdklabs/cdk-appflow' const serviceNowBasicSettings: ServiceNowBasicSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | password | string | *No description.* | | username | string | *No description.* | --- ##### `password`Required ```typescript public readonly password: string; ``` - *Type:* string --- ##### `username`Required ```typescript public readonly username: string; ``` - *Type:* string --- ### ServiceNowConnectorProfileProps #### Initializer ```typescript import { ServiceNowConnectorProfileProps } from '@cdklabs/cdk-appflow' const serviceNowConnectorProfileProps: ServiceNowConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | basicAuth | ServiceNowBasicSettings | *No description.* | | instanceUrl | string | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `basicAuth`Required ```typescript public readonly basicAuth: ServiceNowBasicSettings; ``` - *Type:* ServiceNowBasicSettings --- ##### `instanceUrl`Required ```typescript public readonly instanceUrl: string; ``` - *Type:* string --- ### ServiceNowSourceProps #### Initializer ```typescript import { ServiceNowSourceProps } from '@cdklabs/cdk-appflow' const serviceNowSourceProps: ServiceNowSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | *No description.* | | profile | ServiceNowConnectorProfile | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: ServiceNowConnectorProfile; ``` - *Type:* ServiceNowConnectorProfile --- ### SlackConnectorProfileProps #### Initializer ```typescript import { SlackConnectorProfileProps } from '@cdklabs/cdk-appflow' const slackConnectorProfileProps: SlackConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | instanceUrl | string | *No description.* | | oAuth | SlackOAuthSettings | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `instanceUrl`Required ```typescript public readonly instanceUrl: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: SlackOAuthSettings; ``` - *Type:* SlackOAuthSettings --- ### SlackOAuthSettings #### Initializer ```typescript import { SlackOAuthSettings } from '@cdklabs/cdk-appflow' const slackOAuthSettings: SlackOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | accessToken | string | *No description.* | | clientId | string | *No description.* | | clientSecret | string | *No description.* | --- ##### `accessToken`Required ```typescript public readonly accessToken: string; ``` - *Type:* string --- ##### `clientId`Optional ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Optional ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ### SlackSourceProps #### Initializer ```typescript import { SlackSourceProps } from '@cdklabs/cdk-appflow' const slackSourceProps: SlackSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | *No description.* | | profile | SlackConnectorProfile | *No description.* | | apiVersion | string | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: SlackConnectorProfile; ``` - *Type:* SlackConnectorProfile --- ##### `apiVersion`Optional ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ### TaskConnectorOperator A pair that represents the (typically source) connector, and a task operation to be performed in the context of the connector. #### Initializer ```typescript import { TaskConnectorOperator } from '@cdklabs/cdk-appflow' const taskConnectorOperator: TaskConnectorOperator = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | operation | string | *No description.* | | type | ConnectorType | *No description.* | --- ##### `operation`Required ```typescript public readonly operation: string; ``` - *Type:* string --- ##### `type`Optional ```typescript public readonly type: ConnectorType; ``` - *Type:* ConnectorType --- ### TaskProperties A generic bucket for the task properties. #### Initializer ```typescript import { TaskProperties } from '@cdklabs/cdk-appflow' const taskProperties: TaskProperties = { ... } ``` ### TriggerConfig #### Initializer ```typescript import { TriggerConfig } from '@cdklabs/cdk-appflow' const triggerConfig: TriggerConfig = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | properties | TriggerProperties | *No description.* | --- ##### `properties`Optional ```typescript public readonly properties: TriggerProperties; ``` - *Type:* TriggerProperties --- ### TriggeredFlowBaseProps #### Initializer ```typescript import { TriggeredFlowBaseProps } from '@cdklabs/cdk-appflow' const triggeredFlowBaseProps: TriggeredFlowBaseProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | destination | IDestination | *No description.* | | mappings | IMapping[] | *No description.* | | source | ISource | *No description.* | | description | string | *No description.* | | filters | IFilter[] | *No description.* | | key | aws-cdk-lib.aws_kms.IKey | *No description.* | | name | string | *No description.* | | transforms | ITransform[] | *No description.* | | validations | IValidation[] | *No description.* | | autoActivate | boolean | *No description.* | --- ##### `destination`Required ```typescript public readonly destination: IDestination; ``` - *Type:* IDestination --- ##### `mappings`Required ```typescript public readonly mappings: IMapping[]; ``` - *Type:* IMapping[] --- ##### `source`Required ```typescript public readonly source: ISource; ``` - *Type:* ISource --- ##### `description`Optional ```typescript public readonly description: string; ``` - *Type:* string --- ##### `filters`Optional ```typescript public readonly filters: IFilter[]; ``` - *Type:* IFilter[] --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `transforms`Optional ```typescript public readonly transforms: ITransform[]; ``` - *Type:* ITransform[] --- ##### `validations`Optional ```typescript public readonly validations: IValidation[]; ``` - *Type:* IValidation[] --- ##### `autoActivate`Optional ```typescript public readonly autoActivate: boolean; ``` - *Type:* boolean --- ### TriggerProperties #### Initializer ```typescript import { TriggerProperties } from '@cdklabs/cdk-appflow' const triggerProperties: TriggerProperties = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | dataPullConfig | DataPullConfig | *No description.* | | schedule | aws-cdk-lib.aws_events.Schedule | *No description.* | | flowErrorDeactivationThreshold | number | *No description.* | | properties | ScheduleProperties | *No description.* | --- ##### `dataPullConfig`Required ```typescript public readonly dataPullConfig: DataPullConfig; ``` - *Type:* DataPullConfig --- ##### `schedule`Required ```typescript public readonly schedule: Schedule; ``` - *Type:* aws-cdk-lib.aws_events.Schedule --- ##### `flowErrorDeactivationThreshold`Optional ```typescript public readonly flowErrorDeactivationThreshold: number; ``` - *Type:* number --- ##### `properties`Optional ```typescript public readonly properties: ScheduleProperties; ``` - *Type:* ScheduleProperties --- ### ZendeskConnectorProfileProps #### Initializer ```typescript import { ZendeskConnectorProfileProps } from '@cdklabs/cdk-appflow' const zendeskConnectorProfileProps: ZendeskConnectorProfileProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | key | aws-cdk-lib.aws_kms.IKey | TODO: think if this should be here as not all connector profiles have that. | | name | string | *No description.* | | instanceUrl | string | *No description.* | | oAuth | ZendeskOAuthSettings | *No description.* | --- ##### `key`Optional ```typescript public readonly key: IKey; ``` - *Type:* aws-cdk-lib.aws_kms.IKey TODO: think if this should be here as not all connector profiles have that. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string --- ##### `instanceUrl`Required ```typescript public readonly instanceUrl: string; ``` - *Type:* string --- ##### `oAuth`Required ```typescript public readonly oAuth: ZendeskOAuthSettings; ``` - *Type:* ZendeskOAuthSettings --- ### ZendeskOAuthSettings #### Initializer ```typescript import { ZendeskOAuthSettings } from '@cdklabs/cdk-appflow' const zendeskOAuthSettings: ZendeskOAuthSettings = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | clientId | string | *No description.* | | clientSecret | string | *No description.* | | accessToken | string | *No description.* | --- ##### `clientId`Required ```typescript public readonly clientId: string; ``` - *Type:* string --- ##### `clientSecret`Required ```typescript public readonly clientSecret: string; ``` - *Type:* string --- ##### `accessToken`Optional ```typescript public readonly accessToken: string; ``` - *Type:* string --- ### ZendeskSourceProps #### Initializer ```typescript import { ZendeskSourceProps } from '@cdklabs/cdk-appflow' const zendeskSourceProps: ZendeskSourceProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | object | string | *No description.* | | profile | ZendeskConnectorProfile | *No description.* | | apiVersion | string | *No description.* | --- ##### `object`Required ```typescript public readonly object: string; ``` - *Type:* string --- ##### `profile`Required ```typescript public readonly profile: ZendeskConnectorProfile; ``` - *Type:* ZendeskConnectorProfile --- ##### `apiVersion`Optional ```typescript public readonly apiVersion: string; ``` - *Type:* string --- ## Classes ### ConnectorType #### Initializers ```typescript import { ConnectorType } from '@cdklabs/cdk-appflow' new ConnectorType(name: string, isCustom: boolean) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | name | string | *No description.* | | isCustom | boolean | *No description.* | --- ##### `name`Required - *Type:* string --- ##### `isCustom`Required - *Type:* boolean --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | asProfileConnectorType | string | *No description.* | | asTaskConnectorOperatorOrigin | string | *No description.* | | isCustom | boolean | *No description.* | | asProfileConnectorLabel | string | *No description.* | --- ##### `asProfileConnectorType`Required ```typescript public readonly asProfileConnectorType: string; ``` - *Type:* string --- ##### `asTaskConnectorOperatorOrigin`Required ```typescript public readonly asTaskConnectorOperatorOrigin: string; ``` - *Type:* string --- ##### `isCustom`Required ```typescript public readonly isCustom: boolean; ``` - *Type:* boolean --- ##### `asProfileConnectorLabel`Optional ```typescript public readonly asProfileConnectorLabel: string; ``` - *Type:* string --- ### EventBridgeDestination - *Implements:* IDestination #### Initializers ```typescript import { EventBridgeDestination } from '@cdklabs/cdk-appflow' new EventBridgeDestination(props: EventBridgeDestinationProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | EventBridgeDestinationProps | *No description.* | --- ##### `props`Required - *Type:* EventBridgeDestinationProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): DestinationFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### EventSources #### Initializers ```typescript import { EventSources } from '@cdklabs/cdk-appflow' new EventSources() ``` | **Name** | **Type** | **Description** | | --- | --- | --- | --- #### Static Functions | **Name** | **Description** | | --- | --- | | salesforceEventSource | *No description.* | --- ##### `salesforceEventSource` ```typescript import { EventSources } from '@cdklabs/cdk-appflow' EventSources.salesforceEventSource(suffix?: string) ``` ###### `suffix`Optional - *Type:* string --- ### Filter - *Implements:* IFilter A representation of a mapping operation, that is an operation filtering records at the source. #### Initializers ```typescript import { Filter } from '@cdklabs/cdk-appflow' new Filter(condition: FilterCondition) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | condition | FilterCondition | *No description.* | --- ##### `condition`Required - *Type:* FilterCondition --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty[] ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- #### Static Functions | **Name** | **Description** | | --- | --- | | when | Builds a filter operation on source. | --- ##### `when` ```typescript import { Filter } from '@cdklabs/cdk-appflow' Filter.when(condition: FilterCondition) ``` Builds a filter operation on source. > [FilterCondition instance](FilterCondition instance) ###### `condition`Required - *Type:* FilterCondition a. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | condition | FilterCondition | *No description.* | --- ##### `condition`Required ```typescript public readonly condition: FilterCondition; ``` - *Type:* FilterCondition --- ### FilterCondition A representation of a filter operation condtiion on a source record field. #### Initializers ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' new FilterCondition(field: Field, filter: string, properties: TaskProperties) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | field | Field | *No description.* | | filter | string | *No description.* | | properties | TaskProperties | *No description.* | --- ##### `field`Required - *Type:* Field --- ##### `filter`Required - *Type:* string --- ##### `properties`Required - *Type:* TaskProperties --- #### Static Functions | **Name** | **Description** | | --- | --- | | booleanEquals | *No description.* | | booleanNotEquals | *No description.* | | numberEquals | *No description.* | | numberGreaterThan | *No description.* | | numberGreaterThanEquals | *No description.* | | numberLessThan | *No description.* | | numberLessThanEquals | *No description.* | | numberNotEquals | *No description.* | | stringContains | A condition testing whether a string-type source field contains the given value(s). | | stringEquals | A condition testing whether a string-type source field equals the given value(s). | | stringNotEquals | A condition testing whether a string-type source field does not equal the given value(s). | | timestampBetween | *No description.* | | timestampEquals | *No description.* | | timestampGreaterThan | *No description.* | | timestampGreaterThanEquals | *No description.* | | timestampLessThan | *No description.* | | timestampLessThanEquals | *No description.* | | timestampNotEquals | *No description.* | --- ##### `booleanEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.booleanEquals(field: Field, val: boolean | boolean[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* boolean | boolean[] --- ##### `booleanNotEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.booleanNotEquals(field: Field, val: boolean | boolean[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* boolean | boolean[] --- ##### `numberEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.numberEquals(field: Field, val: number | number[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* number | number[] --- ##### `numberGreaterThan` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.numberGreaterThan(field: Field, val: number) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* number --- ##### `numberGreaterThanEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.numberGreaterThanEquals(field: Field, val: number) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* number --- ##### `numberLessThan` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.numberLessThan(field: Field, val: number) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* number --- ##### `numberLessThanEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.numberLessThanEquals(field: Field, val: number) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* number --- ##### `numberNotEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.numberNotEquals(field: Field, val: number | number[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* number | number[] --- ##### `stringContains` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.stringContains(field: Field, val: string | string[]) ``` A condition testing whether a string-type source field contains the given value(s). NOTE: When multiple values are passed the evaluation is resolved as logical OR > [FilterCondition](FilterCondition) ###### `field`Required - *Type:* Field a source field of a string type. --- ###### `val`Required - *Type:* string | string[] a value (or values) to be contained by the field value. --- ##### `stringEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.stringEquals(field: Field, val: string | string[]) ``` A condition testing whether a string-type source field equals the given value(s). NOTE: When multiple values are passed the evaluation is resolved as logical OR > [FilterCondition](FilterCondition) ###### `field`Required - *Type:* Field a source field of a string type. --- ###### `val`Required - *Type:* string | string[] a value (or values) to be contained by the field value. --- ##### `stringNotEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.stringNotEquals(field: Field, val: string | string[]) ``` A condition testing whether a string-type source field does not equal the given value(s). NOTE: When multiple values are passed the evaluation is resolved as logical OR > [FilterCondition](FilterCondition) ###### `field`Required - *Type:* Field a source field of a string type. --- ###### `val`Required - *Type:* string | string[] a value (or values) to be contained by the field value. --- ##### `timestampBetween` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampBetween(field: Field, lower: Date, upper: Date) ``` ###### `field`Required - *Type:* Field --- ###### `lower`Required - *Type:* Date --- ###### `upper`Required - *Type:* Date --- ##### `timestampEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampEquals(field: Field, val: Date | Date[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* Date | Date[] --- ##### `timestampGreaterThan` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampGreaterThan(field: Field, val: Date | Date[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* Date | Date[] --- ##### `timestampGreaterThanEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampGreaterThanEquals(field: Field, val: Date | Date[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* Date | Date[] --- ##### `timestampLessThan` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampLessThan(field: Field, val: Date | Date[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* Date | Date[] --- ##### `timestampLessThanEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampLessThanEquals(field: Field, val: Date | Date[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* Date | Date[] --- ##### `timestampNotEquals` ```typescript import { FilterCondition } from '@cdklabs/cdk-appflow' FilterCondition.timestampNotEquals(field: Field, val: Date | Date[]) ``` ###### `field`Required - *Type:* Field --- ###### `val`Required - *Type:* Date | Date[] --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | field | Field | *No description.* | | filter | string | *No description.* | | properties | TaskProperties | *No description.* | --- ##### `field`Required ```typescript public readonly field: Field; ``` - *Type:* Field --- ##### `filter`Required ```typescript public readonly filter: string; ``` - *Type:* string --- ##### `properties`Required ```typescript public readonly properties: TaskProperties; ``` - *Type:* TaskProperties --- ### GoogleAnalytics4Source - *Implements:* ISource A class that represents a Google Analytics v4 Source. #### Initializers ```typescript import { GoogleAnalytics4Source } from '@cdklabs/cdk-appflow' new GoogleAnalytics4Source(props: GoogleAnalytics4SourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | GoogleAnalytics4SourceProps | *No description.* | --- ##### `props`Required - *Type:* GoogleAnalytics4SourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): SourceFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### Mapping - *Implements:* IMapping A representation of an instance of a mapping operation, that is an operation translating source to destination fields. #### Initializers ```typescript import { Mapping } from '@cdklabs/cdk-appflow' new Mapping(tasks: ITask[]) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | tasks | ITask[] | *No description.* | --- ##### `tasks`Required - *Type:* ITask[] --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty[] ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- #### Static Functions | **Name** | **Description** | | --- | --- | | add | Specifies an addition mapping of two numeric values from asource to a destination. | | concat | A mapping definition building concatenation of source fields into a destination field. | | divide | Specifies a division mapping of two numeric values from a source to a destination. | | map | *No description.* | | mapAll | *No description.* | | multiply | Specifies a multiplication mapping of two numeric values from a source to a destination. | | subtract | Specifies a subtraction mapping of two numeric values from a source to a destination. | --- ##### `add` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.add(sourceField1: Field, sourceField2: Field, to: Field) ``` Specifies an addition mapping of two numeric values from asource to a destination. ###### `sourceField1`Required - *Type:* Field a numeric value. --- ###### `sourceField2`Required - *Type:* Field a numeric value. --- ###### `to`Required - *Type:* Field a numeric value. --- ##### `concat` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.concat(from: Field[], to: Field, format: string) ``` A mapping definition building concatenation of source fields into a destination field. ###### `from`Required - *Type:* Field[] an array of source fields. --- ###### `to`Required - *Type:* Field a desintation field. --- ###### `format`Required - *Type:* string a format. --- ##### `divide` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.divide(sourceField1: Field, sourceField2: Field, to: Field) ``` Specifies a division mapping of two numeric values from a source to a destination. ###### `sourceField1`Required - *Type:* Field a numeric value. --- ###### `sourceField2`Required - *Type:* Field a numeric value. --- ###### `to`Required - *Type:* Field a numeric value. --- ##### `map` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.map(from: Field, to: Field) ``` ###### `from`Required - *Type:* Field --- ###### `to`Required - *Type:* Field --- ##### `mapAll` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.mapAll(config?: MapAllConfig) ``` ###### `config`Optional - *Type:* MapAllConfig --- ##### `multiply` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.multiply(sourceField1: Field, sourceField2: Field, to: Field) ``` Specifies a multiplication mapping of two numeric values from a source to a destination. ###### `sourceField1`Required - *Type:* Field a numeric value. --- ###### `sourceField2`Required - *Type:* Field a numeric value. --- ###### `to`Required - *Type:* Field a numeric value. --- ##### `subtract` ```typescript import { Mapping } from '@cdklabs/cdk-appflow' Mapping.subtract(sourceField1: Field, sourceField2: Field, to: Field) ``` Specifies a subtraction mapping of two numeric values from a source to a destination. ###### `sourceField1`Required - *Type:* Field a numeric value. --- ###### `sourceField2`Required - *Type:* Field a numeric value. --- ###### `to`Required - *Type:* Field a numeric value. --- ### MarketoInstanceUrlBuilder #### Initializers ```typescript import { MarketoInstanceUrlBuilder } from '@cdklabs/cdk-appflow' new MarketoInstanceUrlBuilder() ``` | **Name** | **Type** | **Description** | | --- | --- | --- | --- #### Static Functions | **Name** | **Description** | | --- | --- | | buildFromAccount | *No description.* | --- ##### `buildFromAccount` ```typescript import { MarketoInstanceUrlBuilder } from '@cdklabs/cdk-appflow' MarketoInstanceUrlBuilder.buildFromAccount(account: string) ``` ###### `account`Required - *Type:* string --- ### MarketoSource - *Implements:* ISource #### Initializers ```typescript import { MarketoSource } from '@cdklabs/cdk-appflow' new MarketoSource(props: MarketoSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | MarketoSourceProps | *No description.* | --- ##### `props`Required - *Type:* MarketoSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): SourceFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### MicrosoftSharepointOnlineSource - *Implements:* ISource A class that represents a Google Analytics v4 Source. #### Initializers ```typescript import { MicrosoftSharepointOnlineSource } from '@cdklabs/cdk-appflow' new MicrosoftSharepointOnlineSource(props: MicrosoftSharepointOnlineSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | MicrosoftSharepointOnlineSourceProps | *No description.* | --- ##### `props`Required - *Type:* MicrosoftSharepointOnlineSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): SourceFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### MicrosoftSharepointOnlineTokenUrlBuilder #### Initializers ```typescript import { MicrosoftSharepointOnlineTokenUrlBuilder } from '@cdklabs/cdk-appflow' new MicrosoftSharepointOnlineTokenUrlBuilder() ``` | **Name** | **Type** | **Description** | | --- | --- | --- | --- #### Static Functions | **Name** | **Description** | | --- | --- | | buildFromTenant | *No description.* | --- ##### `buildFromTenant` ```typescript import { MicrosoftSharepointOnlineTokenUrlBuilder } from '@cdklabs/cdk-appflow' MicrosoftSharepointOnlineTokenUrlBuilder.buildFromTenant(tenantId: string) ``` ###### `tenantId`Required - *Type:* string --- ### OperationBase - *Implements:* IOperation A base class for all operations. #### Initializers ```typescript import { OperationBase } from '@cdklabs/cdk-appflow' new OperationBase(tasks: ITask[]) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | tasks | ITask[] | *No description.* | --- ##### `tasks`Required - *Type:* ITask[] --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty[] ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- ### RedshiftDestination - *Implements:* IDestination #### Initializers ```typescript import { RedshiftDestination } from '@cdklabs/cdk-appflow' new RedshiftDestination(props: RedshiftDestinationProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | RedshiftDestinationProps | *No description.* | --- ##### `props`Required - *Type:* RedshiftDestinationProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): DestinationFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### S3Destination - *Implements:* IDestination #### Initializers ```typescript import { S3Destination } from '@cdklabs/cdk-appflow' new S3Destination(props: S3DestinationProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | S3DestinationProps | *No description.* | --- ##### `props`Required - *Type:* S3DestinationProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): DestinationFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### S3Source - *Implements:* ISource #### Initializers ```typescript import { S3Source } from '@cdklabs/cdk-appflow' new S3Source(props: S3SourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | S3SourceProps | *No description.* | --- ##### `props`Required - *Type:* S3SourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): SourceFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### SalesforceDestination - *Implements:* IDestination #### Initializers ```typescript import { SalesforceDestination } from '@cdklabs/cdk-appflow' new SalesforceDestination(props: SalesforceDestinationProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | SalesforceDestinationProps | *No description.* | --- ##### `props`Required - *Type:* SalesforceDestinationProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): DestinationFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### SalesforceMarketingCloudSource - *Implements:* ISource A class that represents a Salesforce Marketing Cloud Source. #### Initializers ```typescript import { SalesforceMarketingCloudSource } from '@cdklabs/cdk-appflow' new SalesforceMarketingCloudSource(props: SalesforceMarketingCloudSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | SalesforceMarketingCloudSourceProps | *No description.* | --- ##### `props`Required - *Type:* SalesforceMarketingCloudSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): SourceFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### SalesforceSource - *Implements:* ISource #### Initializers ```typescript import { SalesforceSource } from '@cdklabs/cdk-appflow' new SalesforceSource(props: SalesforceSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | SalesforceSourceProps | *No description.* | --- ##### `props`Required - *Type:* SalesforceSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): SourceFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### SAPOdataDestination - *Implements:* IDestination #### Initializers ```typescript import { SAPOdataDestination } from '@cdklabs/cdk-appflow' new SAPOdataDestination(props: SAPOdataDestinationProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | SAPOdataDestinationProps | *No description.* | --- ##### `props`Required - *Type:* SAPOdataDestinationProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): DestinationFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### SAPOdataSource - *Implements:* ISource #### Initializers ```typescript import { SAPOdataSource } from '@cdklabs/cdk-appflow' new SAPOdataSource(props: SAPOdataSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | SAPOdataSourceProps | *No description.* | --- ##### `props`Required - *Type:* SAPOdataSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): SourceFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### ServiceNowInstanceUrlBuilder #### Initializers ```typescript import { ServiceNowInstanceUrlBuilder } from '@cdklabs/cdk-appflow' new ServiceNowInstanceUrlBuilder() ``` | **Name** | **Type** | **Description** | | --- | --- | --- | --- #### Static Functions | **Name** | **Description** | | --- | --- | | buildFromDomain | *No description.* | --- ##### `buildFromDomain` ```typescript import { ServiceNowInstanceUrlBuilder } from '@cdklabs/cdk-appflow' ServiceNowInstanceUrlBuilder.buildFromDomain(domain: string) ``` ###### `domain`Required - *Type:* string --- ### ServiceNowSource - *Implements:* ISource #### Initializers ```typescript import { ServiceNowSource } from '@cdklabs/cdk-appflow' new ServiceNowSource(props: ServiceNowSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | ServiceNowSourceProps | *No description.* | --- ##### `props`Required - *Type:* ServiceNowSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): SourceFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### SlackInstanceUrlBuilder #### Initializers ```typescript import { SlackInstanceUrlBuilder } from '@cdklabs/cdk-appflow' new SlackInstanceUrlBuilder() ``` | **Name** | **Type** | **Description** | | --- | --- | --- | --- #### Static Functions | **Name** | **Description** | | --- | --- | | buildFromWorkspace | *No description.* | --- ##### `buildFromWorkspace` ```typescript import { SlackInstanceUrlBuilder } from '@cdklabs/cdk-appflow' SlackInstanceUrlBuilder.buildFromWorkspace(workspace: string) ``` ###### `workspace`Required - *Type:* string --- ### SlackSource - *Implements:* ISource #### Initializers ```typescript import { SlackSource } from '@cdklabs/cdk-appflow' new SlackSource(props: SlackSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | SlackSourceProps | *No description.* | --- ##### `props`Required - *Type:* SlackSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): SourceFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### Task - *Implements:* ITask A representation of a unitary action on the record fields. #### Initializers ```typescript import { Task } from '@cdklabs/cdk-appflow' new Task(type: string, sourceFields: string[], connectorOperator: TaskConnectorOperator, properties: TaskProperties, destinationField?: string) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | type | string | *No description.* | | sourceFields | string[] | *No description.* | | connectorOperator | TaskConnectorOperator | *No description.* | | properties | TaskProperties | *No description.* | | destinationField | string | *No description.* | --- ##### `type`Required - *Type:* string --- ##### `sourceFields`Required - *Type:* string[] --- ##### `connectorOperator`Required - *Type:* TaskConnectorOperator --- ##### `properties`Required - *Type:* TaskProperties --- ##### `destinationField`Optional - *Type:* string --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(_flow: IFlow, source: ISource): TaskProperty ``` ###### `_flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- ### Transform - *Implements:* ITransform A representation of a transform operation, that is an operation modifying source fields. #### Initializers ```typescript import { Transform } from '@cdklabs/cdk-appflow' new Transform(tasks: ITask[]) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | tasks | ITask[] | *No description.* | --- ##### `tasks`Required - *Type:* ITask[] --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty[] ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- #### Static Functions | **Name** | **Description** | | --- | --- | | mask | Masks the field with a specified mask. | | maskEnd | *No description.* | | maskStart | *No description.* | | truncate | Truncates the field to a specified length. | --- ##### `mask` ```typescript import { Transform } from '@cdklabs/cdk-appflow' Transform.mask(field: string | Field, mask?: string) ``` Masks the field with a specified mask. > [Transform instance](Transform instance) ###### `field`Required - *Type:* string | Field a source field to mask. --- ###### `mask`Optional - *Type:* string a mask character. --- ##### `maskEnd` ```typescript import { Transform } from '@cdklabs/cdk-appflow' Transform.maskEnd(field: string | Field, length: number, mask?: string) ``` ###### `field`Required - *Type:* string | Field --- ###### `length`Required - *Type:* number --- ###### `mask`Optional - *Type:* string --- ##### `maskStart` ```typescript import { Transform } from '@cdklabs/cdk-appflow' Transform.maskStart(field: string | Field, length: number, mask?: string) ``` ###### `field`Required - *Type:* string | Field --- ###### `length`Required - *Type:* number --- ###### `mask`Optional - *Type:* string --- ##### `truncate` ```typescript import { Transform } from '@cdklabs/cdk-appflow' Transform.truncate(field: string | Field, length: number) ``` Truncates the field to a specified length. > [Transform instance](Transform instance) ###### `field`Required - *Type:* string | Field a source field to truncate. --- ###### `length`Required - *Type:* number the maximum length after truncation. --- ### Validation - *Implements:* IValidation A representation of a validation operation, that is an operation testing records and acting on the test results. #### Initializers ```typescript import { Validation } from '@cdklabs/cdk-appflow' new Validation(condition: ValidationCondition, action: ValidationAction) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | condition | ValidationCondition | *No description.* | | action | ValidationAction | *No description.* | --- ##### `condition`Required - *Type:* ValidationCondition --- ##### `action`Required - *Type:* ValidationAction --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty[] ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- #### Static Functions | **Name** | **Description** | | --- | --- | | when | *No description.* | --- ##### `when` ```typescript import { Validation } from '@cdklabs/cdk-appflow' Validation.when(condition: ValidationCondition, action: ValidationAction) ``` > [ValidationAction for the validation](ValidationAction for the validation) ###### `condition`Required - *Type:* ValidationCondition a. --- ###### `action`Required - *Type:* ValidationAction a. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | action | ValidationAction | *No description.* | | condition | ValidationCondition | *No description.* | --- ##### `action`Required ```typescript public readonly action: ValidationAction; ``` - *Type:* ValidationAction --- ##### `condition`Required ```typescript public readonly condition: ValidationCondition; ``` - *Type:* ValidationCondition --- ### ValidationAction #### Initializers ```typescript import { ValidationAction } from '@cdklabs/cdk-appflow' new ValidationAction(action: string) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | action | string | *No description.* | --- ##### `action`Required - *Type:* string --- #### Static Functions | **Name** | **Description** | | --- | --- | | ignoreRecord | *No description.* | | terminateFlow | *No description.* | --- ##### `ignoreRecord` ```typescript import { ValidationAction } from '@cdklabs/cdk-appflow' ValidationAction.ignoreRecord() ``` > [ValidationAction that removes a record from the flow execution result](ValidationAction that removes a record from the flow execution result) ##### `terminateFlow` ```typescript import { ValidationAction } from '@cdklabs/cdk-appflow' ValidationAction.terminateFlow() ``` > [ValidationAction that terminates the whole flow execution](ValidationAction that terminates the whole flow execution) #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | action | string | *No description.* | --- ##### `action`Required ```typescript public readonly action: string; ``` - *Type:* string --- ### ValidationCondition A representation of a validation condition on a particular field in a flow execution. #### Initializers ```typescript import { ValidationCondition } from '@cdklabs/cdk-appflow' new ValidationCondition(field: string, validation: string) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | field | string | *No description.* | | validation | string | *No description.* | --- ##### `field`Required - *Type:* string --- ##### `validation`Required - *Type:* string --- #### Static Functions | **Name** | **Description** | | --- | --- | | isDefault | *No description.* | | isNegative | Validates whether a particular field in an execution is negative. | | isNotNull | *No description.* | | isNull | Validates whether a particular field has no value. | --- ##### `isDefault` ```typescript import { ValidationCondition } from '@cdklabs/cdk-appflow' ValidationCondition.isDefault(field: string | Field) ``` > [ValidationCondition instance](ValidationCondition instance) ###### `field`Required - *Type:* string | Field a field for which the validation will be performed. --- ##### `isNegative` ```typescript import { ValidationCondition } from '@cdklabs/cdk-appflow' ValidationCondition.isNegative(field: string | Field) ``` Validates whether a particular field in an execution is negative. > [ValidationCondition instance](ValidationCondition instance) ###### `field`Required - *Type:* string | Field a field for which the validation will be performed. --- ##### `isNotNull` ```typescript import { ValidationCondition } from '@cdklabs/cdk-appflow' ValidationCondition.isNotNull(field: string | Field) ``` > [ValidationCondition instance](ValidationCondition instance) ###### `field`Required - *Type:* string | Field a field for which the validation will be performed. --- ##### `isNull` ```typescript import { ValidationCondition } from '@cdklabs/cdk-appflow' ValidationCondition.isNull(field: string | Field) ``` Validates whether a particular field has no value. > [ValidationCondition instance](ValidationCondition instance) ###### `field`Required - *Type:* string | Field a field for which the validation will be performed. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | field | string | *No description.* | | validation | string | *No description.* | --- ##### `field`Required ```typescript public readonly field: string; ``` - *Type:* string --- ##### `validation`Required ```typescript public readonly validation: string; ``` - *Type:* string --- ### WriteOperation #### Initializers ```typescript import { WriteOperation } from '@cdklabs/cdk-appflow' new WriteOperation(type: WriteOperationType, ids?: string[]) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | type | WriteOperationType | *No description.* | | ids | string[] | *No description.* | --- ##### `type`Required - *Type:* WriteOperationType --- ##### `ids`Optional - *Type:* string[] --- #### Static Functions | **Name** | **Description** | | --- | --- | | delete | *No description.* | | insert | *No description.* | | update | *No description.* | | upsert | *No description.* | --- ##### `delete` ```typescript import { WriteOperation } from '@cdklabs/cdk-appflow' WriteOperation.delete(ids?: string[]) ``` ###### `ids`Optional - *Type:* string[] --- ##### `insert` ```typescript import { WriteOperation } from '@cdklabs/cdk-appflow' WriteOperation.insert(ids?: string[]) ``` ###### `ids`Optional - *Type:* string[] --- ##### `update` ```typescript import { WriteOperation } from '@cdklabs/cdk-appflow' WriteOperation.update(ids?: string[]) ``` ###### `ids`Optional - *Type:* string[] --- ##### `upsert` ```typescript import { WriteOperation } from '@cdklabs/cdk-appflow' WriteOperation.upsert(ids?: string[]) ``` ###### `ids`Optional - *Type:* string[] --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | type | WriteOperationType | *No description.* | | ids | string[] | *No description.* | --- ##### `type`Required ```typescript public readonly type: WriteOperationType; ``` - *Type:* WriteOperationType --- ##### `ids`Optional ```typescript public readonly ids: string[]; ``` - *Type:* string[] --- ### ZendeskInstanceUrlBuilder #### Initializers ```typescript import { ZendeskInstanceUrlBuilder } from '@cdklabs/cdk-appflow' new ZendeskInstanceUrlBuilder() ``` | **Name** | **Type** | **Description** | | --- | --- | --- | --- #### Static Functions | **Name** | **Description** | | --- | --- | | buildFromAccount | *No description.* | --- ##### `buildFromAccount` ```typescript import { ZendeskInstanceUrlBuilder } from '@cdklabs/cdk-appflow' ZendeskInstanceUrlBuilder.buildFromAccount(account: string) ``` ###### `account`Required - *Type:* string --- ### ZendeskSource - *Implements:* ISource #### Initializers ```typescript import { ZendeskSource } from '@cdklabs/cdk-appflow' new ZendeskSource(props: ZendeskSourceProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | props | ZendeskSourceProps | *No description.* | --- ##### `props`Required - *Type:* ZendeskSourceProps --- #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow): SourceFlowConfigProperty ``` ###### `flow`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ## Protocols ### IConnectorProfile - *Extends:* aws-cdk-lib.IResource - *Implemented By:* ConnectorProfileBase, GoogleAnalytics4ConnectorProfile, MarketoConnectorProfile, MicrosoftSharepointOnlineConnectorProfile, RedshiftConnectorProfile, SAPOdataConnectorProfile, SalesforceConnectorProfile, SalesforceMarketingCloudConnectorProfile, ServiceNowConnectorProfile, SlackConnectorProfile, ZendeskConnectorProfile, IConnectorProfile #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | credentials | aws-cdk-lib.aws_secretsmanager.ISecret | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `credentials`Optional ```typescript public readonly credentials: ISecret; ``` - *Type:* aws-cdk-lib.aws_secretsmanager.ISecret --- ### IDestination - *Extends:* IVertex - *Implemented By:* EventBridgeDestination, RedshiftDestination, S3Destination, SAPOdataDestination, SalesforceDestination, IDestination A destination of an AppFlow flow. #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): DestinationFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### IFilter - *Extends:* IOperation - *Implemented By:* Filter, IFilter A representation of a mapping operation, that is an operation filtering records at the source. ### IFlow - *Extends:* aws-cdk-lib.IResource - *Implemented By:* FlowBase, OnDemandFlow, OnEventFlow, OnScheduleFlow, TriggeredFlowBase, IFlow #### Methods | **Name** | **Description** | | --- | --- | | onRunCompleted | *No description.* | | onRunStarted | *No description.* | --- ##### `onRunCompleted` ```typescript public onRunCompleted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- ##### `onRunStarted` ```typescript public onRunStarted(id: string, options?: OnEventOptions): Rule ``` ###### `id`Required - *Type:* string --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_events.OnEventOptions --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | env | aws-cdk-lib.ResourceEnvironment | The environment this resource belongs to. | | stack | aws-cdk-lib.Stack | The stack in which this resource is defined. | | arn | string | *No description.* | | name | string | *No description.* | | type | FlowType | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `env`Required ```typescript public readonly env: ResourceEnvironment; ``` - *Type:* aws-cdk-lib.ResourceEnvironment The environment this resource belongs to. For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into. --- ##### `stack`Required ```typescript public readonly stack: Stack; ``` - *Type:* aws-cdk-lib.Stack The stack in which this resource is defined. --- ##### `arn`Required ```typescript public readonly arn: string; ``` - *Type:* string --- ##### `name`Required ```typescript public readonly name: string; ``` - *Type:* string --- ##### `type`Required ```typescript public readonly type: FlowType; ``` - *Type:* FlowType --- ### IMapping - *Extends:* IOperation - *Implemented By:* Mapping, IMapping A representation of a mapping operation, that is an operation translating source to destination fields. ### IOperation - *Implemented By:* Filter, Mapping, OperationBase, Transform, Validation, IFilter, IMapping, IOperation, ITransform, IValidation A representation of a set of tasks that deliver complete operation. #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty[] ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- ### ISource - *Extends:* IVertex - *Implemented By:* GoogleAnalytics4Source, MarketoSource, MicrosoftSharepointOnlineSource, S3Source, SAPOdataSource, SalesforceMarketingCloudSource, SalesforceSource, ServiceNowSource, SlackSource, ZendeskSource, ISource A source of an AppFlow flow. #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(scope: IFlow): SourceFlowConfigProperty ``` ###### `scope`Required - *Type:* IFlow --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ### ITask - *Implemented By:* Task, ITask A representation of a unitary action on the record fields. #### Methods | **Name** | **Description** | | --- | --- | | bind | *No description.* | --- ##### `bind` ```typescript public bind(flow: IFlow, source: ISource): TaskProperty ``` ###### `flow`Required - *Type:* IFlow --- ###### `source`Required - *Type:* ISource --- ### ITransform - *Extends:* IOperation - *Implemented By:* Transform, ITransform A representation of a transform operation, that is an operation modifying source fields. ### IValidation - *Extends:* IOperation - *Implemented By:* Validation, IValidation A representation of a validation operation, that is an operation testing records and acting on the test results. ### IVertex - *Implemented By:* EventBridgeDestination, GoogleAnalytics4Source, MarketoSource, MicrosoftSharepointOnlineSource, RedshiftDestination, S3Destination, S3Source, SAPOdataDestination, SAPOdataSource, SalesforceDestination, SalesforceMarketingCloudSource, SalesforceSource, ServiceNowSource, SlackSource, ZendeskSource, IDestination, ISource, IVertex An interface representing a vertex, i.e. a source or a destination of an AppFlow flow. #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | connectorType | ConnectorType | The AppFlow type of the connector that this source is implemented for. | --- ##### `connectorType`Required ```typescript public readonly connectorType: ConnectorType; ``` - *Type:* ConnectorType The AppFlow type of the connector that this source is implemented for. --- ## Enums ### ConnectionMode #### Members | **Name** | **Description** | | --- | --- | | PUBLIC | *No description.* | | PRIVATE | *No description.* | --- ##### `PUBLIC` --- ##### `PRIVATE` --- ### ConnectorAuthenticationType #### Members | **Name** | **Description** | | --- | --- | | APIKEY | *No description.* | | BASIC | *No description.* | | CUSTOM | *No description.* | | OAUTH2 | *No description.* | --- ##### `APIKEY` --- ##### `BASIC` --- ##### `CUSTOM` --- ##### `OAUTH2` --- ### DataPullMode #### Members | **Name** | **Description** | | --- | --- | | COMPLETE | *No description.* | | INCREMENTAL | *No description.* | --- ##### `COMPLETE` --- ##### `INCREMENTAL` --- ### FlowType #### Members | **Name** | **Description** | | --- | --- | | EVENT | *No description.* | | ON_DEMAND | *No description.* | | SCHEDULED | *No description.* | --- ##### `EVENT` --- ##### `ON_DEMAND` --- ##### `SCHEDULED` --- ### GoogleAnalytics4ApiVersion #### Members | **Name** | **Description** | | --- | --- | | V1BETA | *No description.* | --- ##### `V1BETA` --- ### MicrosoftSharepointOnlineApiVersion #### Members | **Name** | **Description** | | --- | --- | | V1 | *No description.* | --- ##### `V1` --- ### OAuth2GrantType #### Members | **Name** | **Description** | | --- | --- | | CLIENT_CREDENTIALS | *No description.* | | AUTHORIZATION_CODE | *No description.* | --- ##### `CLIENT_CREDENTIALS` --- ##### `AUTHORIZATION_CODE` --- ### S3InputFileType The file type that Amazon AppFlow gets from your Amazon S3 bucket. #### Members | **Name** | **Description** | | --- | --- | | CSV | *No description.* | | JSON | *No description.* | --- ##### `CSV` --- ##### `JSON` --- ### S3OutputAggregationType #### Members | **Name** | **Description** | | --- | --- | | NONE | *No description.* | | SINGLE_FILE | *No description.* | --- ##### `NONE` --- ##### `SINGLE_FILE` --- ### S3OutputFilePrefixFormat #### Members | **Name** | **Description** | | --- | --- | | DAY | *No description.* | | HOUR | *No description.* | | MINUTE | *No description.* | | MONTH | *No description.* | | YEAR | *No description.* | --- ##### `DAY` --- ##### `HOUR` --- ##### `MINUTE` --- ##### `MONTH` --- ##### `YEAR` --- ### S3OutputFilePrefixHierarchy #### Members | **Name** | **Description** | | --- | --- | | EXECUTION_ID | *No description.* | | SCHEMA_VERSION | *No description.* | --- ##### `EXECUTION_ID` --- ##### `SCHEMA_VERSION` --- ### S3OutputFilePrefixType #### Members | **Name** | **Description** | | --- | --- | | FILENAME | *No description.* | | PATH | *No description.* | | PATH_AND_FILE | *No description.* | --- ##### `FILENAME` --- ##### `PATH` --- ##### `PATH_AND_FILE` --- ### S3OutputFileType #### Members | **Name** | **Description** | | --- | --- | | CSV | *No description.* | | JSON | *No description.* | | PARQUET | *No description.* | --- ##### `CSV` --- ##### `JSON` --- ##### `PARQUET` --- ### SalesforceDataTransferApi The default. Amazon AppFlow selects which API to use based on the number of records that your flow transfers to Salesforce. If your flow transfers fewer than 1,000 records, Amazon AppFlow uses Salesforce REST API. If your flow transfers 1,000 records or more, Amazon AppFlow uses Salesforce Bulk API 2.0. Each of these Salesforce APIs structures data differently. If Amazon AppFlow selects the API automatically, be aware that, for recurring flows, the data output might vary from one flow run to the next. For example, if a flow runs daily, it might use REST API on one day to transfer 900 records, and it might use Bulk API 2.0 on the next day to transfer 1,100 records. For each of these flow runs, the respective Salesforce API formats the data differently. Some of the differences include how dates are formatted and null values are represented. Also, Bulk API 2.0 doesn't transfer Salesforce compound fields. By choosing this option, you optimize flow performance for both small and large data transfers, but the tradeoff is inconsistent formatting in the output. #### Members | **Name** | **Description** | | --- | --- | | AUTOMATIC | *No description.* | | BULKV2 | *No description.* | | REST_SYNC | *No description.* | --- ##### `AUTOMATIC` --- ##### `BULKV2` --- ##### `REST_SYNC` --- ### SalesforceMarketingCloudApiVersions A helper enum for SFMC api version. #### Members | **Name** | **Description** | | --- | --- | | V1 | *No description.* | --- ##### `V1` --- ### WriteOperationType #### Members | **Name** | **Description** | | --- | --- | | DELETE | *No description.* | | INSERT | *No description.* | | UPDATE | *No description.* | | UPSERT | *No description.* | --- ##### `DELETE` --- ##### `INSERT` --- ##### `UPDATE` --- ##### `UPSERT` ---