Amazon Connect Customer Profiles

2022/02/21 - Amazon Connect Customer Profiles - 5 new4 updated api methods

Changes  This release introduces apis CreateIntegrationWorkflow, DeleteWorkflow, ListWorkflows, GetWorkflow and GetWorkflowSteps. These apis are used to manage and view integration workflows.

GetWorkflow (new) Link ¶

Get details of specified workflow.

See also: AWS API Documentation

Request Syntax

client.get_workflow(
    DomainName='string',
    WorkflowId='string'
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type WorkflowId:

string

param WorkflowId:

[REQUIRED]

Unique identifier for the workflow.

rtype:

dict

returns:

Response Syntax

{
    'WorkflowId': 'string',
    'WorkflowType': 'APPFLOW_INTEGRATION',
    'Status': 'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'FAILED'|'SPLIT'|'RETRY'|'CANCELLED',
    'ErrorDescription': 'string',
    'StartDate': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'Attributes': {
        'AppflowIntegration': {
            'SourceConnectorType': 'Salesforce'|'Marketo'|'Zendesk'|'Servicenow'|'S3',
            'ConnectorProfileName': 'string',
            'RoleArn': 'string'
        }
    },
    'Metrics': {
        'AppflowIntegration': {
            'RecordsProcessed': 123,
            'StepsCompleted': 123,
            'TotalSteps': 123
        }
    }
}

Response Structure

  • (dict) --

    • WorkflowId (string) --

      Unique identifier for the workflow.

    • WorkflowType (string) --

      The type of workflow. The only supported value is APPFLOW_INTEGRATION.

    • Status (string) --

      Status of workflow execution.

    • ErrorDescription (string) --

      Workflow error messages during execution (if any).

    • StartDate (datetime) --

      The timestamp that represents when workflow execution started.

    • LastUpdatedAt (datetime) --

      The timestamp that represents when workflow execution last updated.

    • Attributes (dict) --

      Attributes provided for workflow execution.

      • AppflowIntegration (dict) --

        Workflow attributes specific to APPFLOW_INTEGRATION workflow.

        • SourceConnectorType (string) --

          Specifies the source connector type, such as Salesforce, ServiceNow, and Marketo. Indicates source of ingestion.

        • ConnectorProfileName (string) --

          The name of the AppFlow connector profile used for ingestion.

        • RoleArn (string) --

          The Amazon Resource Name (ARN) of the IAM role. Customer Profiles assumes this role to create resources on your behalf as part of workflow execution.

    • Metrics (dict) --

      Workflow specific execution metrics.

      • AppflowIntegration (dict) --

        Workflow execution metrics for APPFLOW_INTEGRATION workflow.

        • RecordsProcessed (integer) --

          Number of records processed in APPFLOW_INTEGRATION workflow.

        • StepsCompleted (integer) --

          Total steps completed in APPFLOW_INTEGRATION workflow.

        • TotalSteps (integer) --

          Total steps in APPFLOW_INTEGRATION workflow.

CreateIntegrationWorkflow (new) Link ¶

Creates an integration workflow. An integration workflow is an async process which ingests historic data and sets up an integration for ongoing updates. The supported Amazon AppFlow sources are Salesforce, ServiceNow, and Marketo.

See also: AWS API Documentation

Request Syntax

client.create_integration_workflow(
    DomainName='string',
    WorkflowType='APPFLOW_INTEGRATION',
    IntegrationConfig={
        'AppflowIntegration': {
            'FlowDefinition': {
                'Description': 'string',
                'FlowName': 'string',
                'KmsArn': 'string',
                'SourceFlowConfig': {
                    'ConnectorProfileName': 'string',
                    'ConnectorType': 'Salesforce'|'Marketo'|'Zendesk'|'Servicenow'|'S3',
                    'IncrementalPullConfig': {
                        'DatetimeTypeFieldName': 'string'
                    },
                    'SourceConnectorProperties': {
                        'Marketo': {
                            'Object': 'string'
                        },
                        'S3': {
                            'BucketName': 'string',
                            'BucketPrefix': 'string'
                        },
                        'Salesforce': {
                            'Object': 'string',
                            'EnableDynamicFieldUpdate': True|False,
                            'IncludeDeletedRecords': True|False
                        },
                        'ServiceNow': {
                            'Object': 'string'
                        },
                        'Zendesk': {
                            'Object': 'string'
                        }
                    }
                },
                'Tasks': [
                    {
                        'ConnectorOperator': {
                            'Marketo': 'PROJECTION'|'LESS_THAN'|'GREATER_THAN'|'BETWEEN'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                            'S3': 'PROJECTION'|'LESS_THAN'|'GREATER_THAN'|'BETWEEN'|'LESS_THAN_OR_EQUAL_TO'|'GREATER_THAN_OR_EQUAL_TO'|'EQUAL_TO'|'NOT_EQUAL_TO'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                            'Salesforce': 'PROJECTION'|'LESS_THAN'|'CONTAINS'|'GREATER_THAN'|'BETWEEN'|'LESS_THAN_OR_EQUAL_TO'|'GREATER_THAN_OR_EQUAL_TO'|'EQUAL_TO'|'NOT_EQUAL_TO'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                            'ServiceNow': 'PROJECTION'|'CONTAINS'|'LESS_THAN'|'GREATER_THAN'|'BETWEEN'|'LESS_THAN_OR_EQUAL_TO'|'GREATER_THAN_OR_EQUAL_TO'|'EQUAL_TO'|'NOT_EQUAL_TO'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                            'Zendesk': 'PROJECTION'|'GREATER_THAN'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP'
                        },
                        'DestinationField': 'string',
                        'SourceFields': [
                            'string',
                        ],
                        'TaskProperties': {
                            'string': 'string'
                        },
                        'TaskType': 'Arithmetic'|'Filter'|'Map'|'Mask'|'Merge'|'Truncate'|'Validate'
                    },
                ],
                'TriggerConfig': {
                    'TriggerType': 'Scheduled'|'Event'|'OnDemand',
                    'TriggerProperties': {
                        'Scheduled': {
                            'ScheduleExpression': 'string',
                            'DataPullMode': 'Incremental'|'Complete',
                            'ScheduleStartTime': datetime(2015, 1, 1),
                            'ScheduleEndTime': datetime(2015, 1, 1),
                            'Timezone': 'string',
                            'ScheduleOffset': 123,
                            'FirstExecutionFrom': datetime(2015, 1, 1)
                        }
                    }
                }
            },
            'Batches': [
                {
                    'StartTime': datetime(2015, 1, 1),
                    'EndTime': datetime(2015, 1, 1)
                },
            ]
        }
    },
    ObjectTypeName='string',
    RoleArn='string',
    Tags={
        'string': 'string'
    }
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type WorkflowType:

string

param WorkflowType:

[REQUIRED]

The type of workflow. The only supported value is APPFLOW_INTEGRATION.

type IntegrationConfig:

dict

param IntegrationConfig:

[REQUIRED]

Configuration data for integration workflow.

  • AppflowIntegration (dict) --

    Configuration data for APPFLOW_INTEGRATION workflow type.

    • FlowDefinition (dict) -- [REQUIRED]

      The configurations that control how Customer Profiles retrieves data from the source, Amazon AppFlow. Customer Profiles uses this information to create an AppFlow flow on behalf of customers.

      • Description (string) --

        A description of the flow you want to create.

      • FlowName (string) -- [REQUIRED]

        The specified name of the flow. Use underscores (_) or hyphens (-) only. Spaces are not allowed.

      • KmsArn (string) -- [REQUIRED]

        The Amazon Resource Name of the AWS Key Management Service (KMS) key you provide for encryption.

      • SourceFlowConfig (dict) -- [REQUIRED]

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

        • ConnectorProfileName (string) --

          The name of the AppFlow connector profile. This name must be unique for each connector profile in the AWS account.

        • ConnectorType (string) -- [REQUIRED]

          The type of connector, such as Salesforce, Marketo, and so on.

        • IncrementalPullConfig (dict) --

          Defines the configuration for a scheduled incremental data pull. If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.

          • DatetimeTypeFieldName (string) --

            A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.

        • SourceConnectorProperties (dict) -- [REQUIRED]

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

          • Marketo (dict) --

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

            • Object (string) -- [REQUIRED]

              The object specified in the Marketo flow source.

          • S3 (dict) --

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

            • BucketName (string) -- [REQUIRED]

              The Amazon S3 bucket name where the source files are stored.

            • BucketPrefix (string) --

              The object key for the Amazon S3 bucket in which the source files are stored.

          • Salesforce (dict) --

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

            • Object (string) -- [REQUIRED]

              The object specified in the Salesforce flow source.

            • EnableDynamicFieldUpdate (boolean) --

              The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.

            • IncludeDeletedRecords (boolean) --

              Indicates whether Amazon AppFlow includes deleted files in the flow run.

          • ServiceNow (dict) --

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

            • Object (string) -- [REQUIRED]

              The object specified in the ServiceNow flow source.

          • Zendesk (dict) --

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

            • Object (string) -- [REQUIRED]

              The object specified in the Zendesk flow source.

      • Tasks (list) -- [REQUIRED]

        A list of tasks that Customer Profiles performs while transferring the data in the flow run.

        • (dict) --

          A class for modeling different type of tasks. Task implementation varies based on the TaskType.

          • ConnectorOperator (dict) --

            The operation to be performed on the provided source fields.

            • Marketo (string) --

              The operation to be performed on the provided Marketo source fields.

            • S3 (string) --

              The operation to be performed on the provided Amazon S3 source fields.

            • Salesforce (string) --

              The operation to be performed on the provided Salesforce source fields.

            • ServiceNow (string) --

              The operation to be performed on the provided ServiceNow source fields.

            • Zendesk (string) --

              The operation to be performed on the provided Zendesk source fields.

          • DestinationField (string) --

            A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.

          • SourceFields (list) -- [REQUIRED]

            The source fields to which a particular task is applied.

            • (string) --

          • TaskProperties (dict) --

            A map used to store task-related information. The service looks for particular information based on the TaskType.

            • (string) --

              • (string) --

          • TaskType (string) -- [REQUIRED]

            Specifies the particular task implementation that Amazon AppFlow performs.

      • TriggerConfig (dict) -- [REQUIRED]

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

        • TriggerType (string) -- [REQUIRED]

          Specifies the type of flow trigger. It can be OnDemand, Scheduled, or Event.

        • TriggerProperties (dict) --

          Specifies the configuration details of a schedule-triggered flow that you define. Currently, these settings only apply to the Scheduled trigger type.

          • Scheduled (dict) --

            Specifies the configuration details of a schedule-triggered flow that you define.

            • ScheduleExpression (string) -- [REQUIRED]

              The scheduling expression that determines the rate at which the schedule will run, for example rate (5 minutes).

            • DataPullMode (string) --

              Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.

            • ScheduleStartTime (datetime) --

              Specifies the scheduled start time for a scheduled-trigger flow.

            • ScheduleEndTime (datetime) --

              Specifies the scheduled end time for a scheduled-trigger flow.

            • Timezone (string) --

              Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York.

            • ScheduleOffset (integer) --

              Specifies the optional offset that is added to the time interval for a schedule-triggered flow.

            • FirstExecutionFrom (datetime) --

              Specifies the date range for the records to import from the connector in the first flow run.

    • Batches (list) --

      Batches in workflow of type APPFLOW_INTEGRATION.

      • (dict) --

        Batch defines the boundaries for ingestion for each step in APPFLOW_INTEGRATION workflow. APPFLOW_INTEGRATION workflow splits ingestion based on these boundaries.

        • StartTime (datetime) -- [REQUIRED]

          Start time of batch to split ingestion.

        • EndTime (datetime) -- [REQUIRED]

          End time of batch to split ingestion.

type ObjectTypeName:

string

param ObjectTypeName:

[REQUIRED]

The name of the profile object type.

type RoleArn:

string

param RoleArn:

[REQUIRED]

The Amazon Resource Name (ARN) of the IAM role. Customer Profiles assumes this role to create resources on your behalf as part of workflow execution.

type Tags:

dict

param Tags:

The tags used to organize, track, or control access for this resource.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'WorkflowId': 'string',
    'Message': 'string'
}

Response Structure

  • (dict) --

    • WorkflowId (string) --

      Unique identifier for the workflow.

    • Message (string) --

      A message indicating create request was received.

ListWorkflows (new) Link ¶

Query to list all workflows.

See also: AWS API Documentation

Request Syntax

client.list_workflows(
    DomainName='string',
    WorkflowType='APPFLOW_INTEGRATION',
    Status='NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'FAILED'|'SPLIT'|'RETRY'|'CANCELLED',
    QueryStartDate=datetime(2015, 1, 1),
    QueryEndDate=datetime(2015, 1, 1),
    NextToken='string',
    MaxResults=123
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type WorkflowType:

string

param WorkflowType:

The type of workflow. The only supported value is APPFLOW_INTEGRATION.

type Status:

string

param Status:

Status of workflow execution.

type QueryStartDate:

datetime

param QueryStartDate:

Retrieve workflows started after timestamp.

type QueryEndDate:

datetime

param QueryEndDate:

Retrieve workflows ended after timestamp.

type NextToken:

string

param NextToken:

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

type MaxResults:

integer

param MaxResults:

The maximum number of results to return per page.

rtype:

dict

returns:

Response Syntax

{
    'Items': [
        {
            'WorkflowType': 'APPFLOW_INTEGRATION',
            'WorkflowId': 'string',
            'Status': 'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'FAILED'|'SPLIT'|'RETRY'|'CANCELLED',
            'StatusDescription': 'string',
            'CreatedAt': datetime(2015, 1, 1),
            'LastUpdatedAt': datetime(2015, 1, 1)
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Items (list) --

      List containing workflow details.

      • (dict) --

        A workflow in list of workflows.

        • WorkflowType (string) --

          The type of workflow. The only supported value is APPFLOW_INTEGRATION.

        • WorkflowId (string) --

          Unique identifier for the workflow.

        • Status (string) --

          Status of workflow execution.

        • StatusDescription (string) --

          Description for workflow execution status.

        • CreatedAt (datetime) --

          Creation timestamp for workflow.

        • LastUpdatedAt (datetime) --

          Last updated timestamp for workflow.

    • NextToken (string) --

      If there are additional results, this is the token for the next set of results.

GetWorkflowSteps (new) Link ¶

Get granular list of steps in workflow.

See also: AWS API Documentation

Request Syntax

client.get_workflow_steps(
    DomainName='string',
    WorkflowId='string',
    NextToken='string',
    MaxResults=123
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type WorkflowId:

string

param WorkflowId:

[REQUIRED]

Unique identifier for the workflow.

type NextToken:

string

param NextToken:

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

type MaxResults:

integer

param MaxResults:

The maximum number of results to return per page.

rtype:

dict

returns:

Response Syntax

{
    'WorkflowId': 'string',
    'WorkflowType': 'APPFLOW_INTEGRATION',
    'Items': [
        {
            'AppflowIntegration': {
                'FlowName': 'string',
                'Status': 'NOT_STARTED'|'IN_PROGRESS'|'COMPLETE'|'FAILED'|'SPLIT'|'RETRY'|'CANCELLED',
                'ExecutionMessage': 'string',
                'RecordsProcessed': 123,
                'BatchRecordsStartTime': 'string',
                'BatchRecordsEndTime': 'string',
                'CreatedAt': datetime(2015, 1, 1),
                'LastUpdatedAt': datetime(2015, 1, 1)
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • WorkflowId (string) --

      Unique identifier for the workflow.

    • WorkflowType (string) --

      The type of workflow. The only supported value is APPFLOW_INTEGRATION.

    • Items (list) --

      List containing workflow step details.

      • (dict) --

        List containing steps in workflow.

        • AppflowIntegration (dict) --

          Workflow step information specific to APPFLOW_INTEGRATION workflow.

          • FlowName (string) --

            Name of the flow created during execution of workflow step. APPFLOW_INTEGRATION workflow type creates an appflow flow during workflow step execution on the customers behalf.

          • Status (string) --

            Workflow step status for APPFLOW_INTEGRATION workflow.

          • ExecutionMessage (string) --

            Message indicating execution of workflow step for APPFLOW_INTEGRATION workflow.

          • RecordsProcessed (integer) --

            Total number of records processed during execution of workflow step for APPFLOW_INTEGRATION workflow.

          • BatchRecordsStartTime (string) --

            Start datetime of records pulled in batch during execution of workflow step for APPFLOW_INTEGRATION workflow.

          • BatchRecordsEndTime (string) --

            End datetime of records pulled in batch during execution of workflow step for APPFLOW_INTEGRATION workflow.

          • CreatedAt (datetime) --

            Creation timestamp of workflow step for APPFLOW_INTEGRATION workflow.

          • LastUpdatedAt (datetime) --

            Last updated timestamp for workflow step for APPFLOW_INTEGRATION workflow.

    • NextToken (string) --

      If there are additional results, this is the token for the next set of results.

DeleteWorkflow (new) Link ¶

Deletes the specified workflow and all its corresponding resources. This is an async process.

See also: AWS API Documentation

Request Syntax

client.delete_workflow(
    DomainName='string',
    WorkflowId='string'
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type WorkflowId:

string

param WorkflowId:

[REQUIRED]

Unique identifier for the workflow.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

GetIntegration (updated) Link ¶
Changes (response)
{'WorkflowId': 'string'}

Returns an integration for a domain.

See also: AWS API Documentation

Request Syntax

client.get_integration(
    DomainName='string',
    Uri='string'
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type Uri:

string

param Uri:

[REQUIRED]

The URI of the S3 bucket or any other type of data source.

rtype:

dict

returns:

Response Syntax

{
    'DomainName': 'string',
    'Uri': 'string',
    'ObjectTypeName': 'string',
    'CreatedAt': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'Tags': {
        'string': 'string'
    },
    'ObjectTypeNames': {
        'string': 'string'
    },
    'WorkflowId': 'string'
}

Response Structure

  • (dict) --

    • DomainName (string) --

      The unique name of the domain.

    • Uri (string) --

      The URI of the S3 bucket or any other type of data source.

    • ObjectTypeName (string) --

      The name of the profile object type.

    • CreatedAt (datetime) --

      The timestamp of when the domain was created.

    • LastUpdatedAt (datetime) --

      The timestamp of when the domain was most recently edited.

    • Tags (dict) --

      The tags used to organize, track, or control access for this resource.

      • (string) --

        • (string) --

    • ObjectTypeNames (dict) --

      A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an ObjectTypeName (template) used to ingest the event. It supports the following event types: SegmentIdentify, ShopifyCreateCustomers, ShopifyUpdateCustomers, ShopifyCreateDraftOrders, ShopifyUpdateDraftOrders, ShopifyCreateOrders, and ShopifyUpdatedOrders.

      • (string) --

        • (string) --

    • WorkflowId (string) --

      Unique identifier for the workflow.

ListAccountIntegrations (updated) Link ¶
Changes (request, response)
Request
{'IncludeHidden': 'boolean'}
Response
{'Items': {'WorkflowId': 'string'}}

Lists all of the integrations associated to a specific URI in the AWS account.

See also: AWS API Documentation

Request Syntax

client.list_account_integrations(
    Uri='string',
    NextToken='string',
    MaxResults=123,
    IncludeHidden=True|False
)
type Uri:

string

param Uri:

[REQUIRED]

The URI of the S3 bucket or any other type of data source.

type NextToken:

string

param NextToken:

The pagination token from the previous ListAccountIntegrations API call.

type MaxResults:

integer

param MaxResults:

The maximum number of objects returned per page.

type IncludeHidden:

boolean

param IncludeHidden:

Boolean to indicate if hidden integration should be returned. Defaults to False.

rtype:

dict

returns:

Response Syntax

{
    'Items': [
        {
            'DomainName': 'string',
            'Uri': 'string',
            'ObjectTypeName': 'string',
            'CreatedAt': datetime(2015, 1, 1),
            'LastUpdatedAt': datetime(2015, 1, 1),
            'Tags': {
                'string': 'string'
            },
            'ObjectTypeNames': {
                'string': 'string'
            },
            'WorkflowId': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Items (list) --

      The list of ListAccountIntegration instances.

      • (dict) --

        An integration in list of integrations.

        • DomainName (string) --

          The unique name of the domain.

        • Uri (string) --

          The URI of the S3 bucket or any other type of data source.

        • ObjectTypeName (string) --

          The name of the profile object type.

        • CreatedAt (datetime) --

          The timestamp of when the domain was created.

        • LastUpdatedAt (datetime) --

          The timestamp of when the domain was most recently edited.

        • Tags (dict) --

          The tags used to organize, track, or control access for this resource.

          • (string) --

            • (string) --

        • ObjectTypeNames (dict) --

          A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an ObjectTypeName (template) used to ingest the event. It supports the following event types: SegmentIdentify, ShopifyCreateCustomers, ShopifyUpdateCustomers, ShopifyCreateDraftOrders, ShopifyUpdateDraftOrders, ShopifyCreateOrders, and ShopifyUpdatedOrders.

          • (string) --

            • (string) --

        • WorkflowId (string) --

          Unique identifier for the workflow.

    • NextToken (string) --

      The pagination token from the previous ListAccountIntegrations API call.

ListIntegrations (updated) Link ¶
Changes (request, response)
Request
{'IncludeHidden': 'boolean'}
Response
{'Items': {'WorkflowId': 'string'}}

Lists all of the integrations in your domain.

See also: AWS API Documentation

Request Syntax

client.list_integrations(
    DomainName='string',
    NextToken='string',
    MaxResults=123,
    IncludeHidden=True|False
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type NextToken:

string

param NextToken:

The pagination token from the previous ListIntegrations API call.

type MaxResults:

integer

param MaxResults:

The maximum number of objects returned per page.

type IncludeHidden:

boolean

param IncludeHidden:

Boolean to indicate if hidden integration should be returned. Defaults to False.

rtype:

dict

returns:

Response Syntax

{
    'Items': [
        {
            'DomainName': 'string',
            'Uri': 'string',
            'ObjectTypeName': 'string',
            'CreatedAt': datetime(2015, 1, 1),
            'LastUpdatedAt': datetime(2015, 1, 1),
            'Tags': {
                'string': 'string'
            },
            'ObjectTypeNames': {
                'string': 'string'
            },
            'WorkflowId': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Items (list) --

      The list of ListIntegrations instances.

      • (dict) --

        An integration in list of integrations.

        • DomainName (string) --

          The unique name of the domain.

        • Uri (string) --

          The URI of the S3 bucket or any other type of data source.

        • ObjectTypeName (string) --

          The name of the profile object type.

        • CreatedAt (datetime) --

          The timestamp of when the domain was created.

        • LastUpdatedAt (datetime) --

          The timestamp of when the domain was most recently edited.

        • Tags (dict) --

          The tags used to organize, track, or control access for this resource.

          • (string) --

            • (string) --

        • ObjectTypeNames (dict) --

          A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an ObjectTypeName (template) used to ingest the event. It supports the following event types: SegmentIdentify, ShopifyCreateCustomers, ShopifyUpdateCustomers, ShopifyCreateDraftOrders, ShopifyUpdateDraftOrders, ShopifyCreateOrders, and ShopifyUpdatedOrders.

          • (string) --

            • (string) --

        • WorkflowId (string) --

          Unique identifier for the workflow.

    • NextToken (string) --

      The pagination token from the previous ListIntegrations API call.

PutIntegration (updated) Link ¶
Changes (response)
{'WorkflowId': 'string'}

Adds an integration between the service and a third-party service, which includes Amazon AppFlow and Amazon Connect.

An integration can belong to only one domain.

See also: AWS API Documentation

Request Syntax

client.put_integration(
    DomainName='string',
    Uri='string',
    ObjectTypeName='string',
    Tags={
        'string': 'string'
    },
    FlowDefinition={
        'Description': 'string',
        'FlowName': 'string',
        'KmsArn': 'string',
        'SourceFlowConfig': {
            'ConnectorProfileName': 'string',
            'ConnectorType': 'Salesforce'|'Marketo'|'Zendesk'|'Servicenow'|'S3',
            'IncrementalPullConfig': {
                'DatetimeTypeFieldName': 'string'
            },
            'SourceConnectorProperties': {
                'Marketo': {
                    'Object': 'string'
                },
                'S3': {
                    'BucketName': 'string',
                    'BucketPrefix': 'string'
                },
                'Salesforce': {
                    'Object': 'string',
                    'EnableDynamicFieldUpdate': True|False,
                    'IncludeDeletedRecords': True|False
                },
                'ServiceNow': {
                    'Object': 'string'
                },
                'Zendesk': {
                    'Object': 'string'
                }
            }
        },
        'Tasks': [
            {
                'ConnectorOperator': {
                    'Marketo': 'PROJECTION'|'LESS_THAN'|'GREATER_THAN'|'BETWEEN'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                    'S3': 'PROJECTION'|'LESS_THAN'|'GREATER_THAN'|'BETWEEN'|'LESS_THAN_OR_EQUAL_TO'|'GREATER_THAN_OR_EQUAL_TO'|'EQUAL_TO'|'NOT_EQUAL_TO'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                    'Salesforce': 'PROJECTION'|'LESS_THAN'|'CONTAINS'|'GREATER_THAN'|'BETWEEN'|'LESS_THAN_OR_EQUAL_TO'|'GREATER_THAN_OR_EQUAL_TO'|'EQUAL_TO'|'NOT_EQUAL_TO'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                    'ServiceNow': 'PROJECTION'|'CONTAINS'|'LESS_THAN'|'GREATER_THAN'|'BETWEEN'|'LESS_THAN_OR_EQUAL_TO'|'GREATER_THAN_OR_EQUAL_TO'|'EQUAL_TO'|'NOT_EQUAL_TO'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP',
                    'Zendesk': 'PROJECTION'|'GREATER_THAN'|'ADDITION'|'MULTIPLICATION'|'DIVISION'|'SUBTRACTION'|'MASK_ALL'|'MASK_FIRST_N'|'MASK_LAST_N'|'VALIDATE_NON_NULL'|'VALIDATE_NON_ZERO'|'VALIDATE_NON_NEGATIVE'|'VALIDATE_NUMERIC'|'NO_OP'
                },
                'DestinationField': 'string',
                'SourceFields': [
                    'string',
                ],
                'TaskProperties': {
                    'string': 'string'
                },
                'TaskType': 'Arithmetic'|'Filter'|'Map'|'Mask'|'Merge'|'Truncate'|'Validate'
            },
        ],
        'TriggerConfig': {
            'TriggerType': 'Scheduled'|'Event'|'OnDemand',
            'TriggerProperties': {
                'Scheduled': {
                    'ScheduleExpression': 'string',
                    'DataPullMode': 'Incremental'|'Complete',
                    'ScheduleStartTime': datetime(2015, 1, 1),
                    'ScheduleEndTime': datetime(2015, 1, 1),
                    'Timezone': 'string',
                    'ScheduleOffset': 123,
                    'FirstExecutionFrom': datetime(2015, 1, 1)
                }
            }
        }
    },
    ObjectTypeNames={
        'string': 'string'
    }
)
type DomainName:

string

param DomainName:

[REQUIRED]

The unique name of the domain.

type Uri:

string

param Uri:

The URI of the S3 bucket or any other type of data source.

type ObjectTypeName:

string

param ObjectTypeName:

The name of the profile object type.

type Tags:

dict

param Tags:

The tags used to organize, track, or control access for this resource.

  • (string) --

    • (string) --

type FlowDefinition:

dict

param FlowDefinition:

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

  • Description (string) --

    A description of the flow you want to create.

  • FlowName (string) -- [REQUIRED]

    The specified name of the flow. Use underscores (_) or hyphens (-) only. Spaces are not allowed.

  • KmsArn (string) -- [REQUIRED]

    The Amazon Resource Name of the AWS Key Management Service (KMS) key you provide for encryption.

  • SourceFlowConfig (dict) -- [REQUIRED]

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

    • ConnectorProfileName (string) --

      The name of the AppFlow connector profile. This name must be unique for each connector profile in the AWS account.

    • ConnectorType (string) -- [REQUIRED]

      The type of connector, such as Salesforce, Marketo, and so on.

    • IncrementalPullConfig (dict) --

      Defines the configuration for a scheduled incremental data pull. If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.

      • DatetimeTypeFieldName (string) --

        A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.

    • SourceConnectorProperties (dict) -- [REQUIRED]

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

      • Marketo (dict) --

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

        • Object (string) -- [REQUIRED]

          The object specified in the Marketo flow source.

      • S3 (dict) --

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

        • BucketName (string) -- [REQUIRED]

          The Amazon S3 bucket name where the source files are stored.

        • BucketPrefix (string) --

          The object key for the Amazon S3 bucket in which the source files are stored.

      • Salesforce (dict) --

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

        • Object (string) -- [REQUIRED]

          The object specified in the Salesforce flow source.

        • EnableDynamicFieldUpdate (boolean) --

          The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.

        • IncludeDeletedRecords (boolean) --

          Indicates whether Amazon AppFlow includes deleted files in the flow run.

      • ServiceNow (dict) --

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

        • Object (string) -- [REQUIRED]

          The object specified in the ServiceNow flow source.

      • Zendesk (dict) --

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

        • Object (string) -- [REQUIRED]

          The object specified in the Zendesk flow source.

  • Tasks (list) -- [REQUIRED]

    A list of tasks that Customer Profiles performs while transferring the data in the flow run.

    • (dict) --

      A class for modeling different type of tasks. Task implementation varies based on the TaskType.

      • ConnectorOperator (dict) --

        The operation to be performed on the provided source fields.

        • Marketo (string) --

          The operation to be performed on the provided Marketo source fields.

        • S3 (string) --

          The operation to be performed on the provided Amazon S3 source fields.

        • Salesforce (string) --

          The operation to be performed on the provided Salesforce source fields.

        • ServiceNow (string) --

          The operation to be performed on the provided ServiceNow source fields.

        • Zendesk (string) --

          The operation to be performed on the provided Zendesk source fields.

      • DestinationField (string) --

        A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.

      • SourceFields (list) -- [REQUIRED]

        The source fields to which a particular task is applied.

        • (string) --

      • TaskProperties (dict) --

        A map used to store task-related information. The service looks for particular information based on the TaskType.

        • (string) --

          • (string) --

      • TaskType (string) -- [REQUIRED]

        Specifies the particular task implementation that Amazon AppFlow performs.

  • TriggerConfig (dict) -- [REQUIRED]

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

    • TriggerType (string) -- [REQUIRED]

      Specifies the type of flow trigger. It can be OnDemand, Scheduled, or Event.

    • TriggerProperties (dict) --

      Specifies the configuration details of a schedule-triggered flow that you define. Currently, these settings only apply to the Scheduled trigger type.

      • Scheduled (dict) --

        Specifies the configuration details of a schedule-triggered flow that you define.

        • ScheduleExpression (string) -- [REQUIRED]

          The scheduling expression that determines the rate at which the schedule will run, for example rate (5 minutes).

        • DataPullMode (string) --

          Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.

        • ScheduleStartTime (datetime) --

          Specifies the scheduled start time for a scheduled-trigger flow.

        • ScheduleEndTime (datetime) --

          Specifies the scheduled end time for a scheduled-trigger flow.

        • Timezone (string) --

          Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York.

        • ScheduleOffset (integer) --

          Specifies the optional offset that is added to the time interval for a schedule-triggered flow.

        • FirstExecutionFrom (datetime) --

          Specifies the date range for the records to import from the connector in the first flow run.

type ObjectTypeNames:

dict

param ObjectTypeNames:

A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an ObjectTypeName (template) used to ingest the event. It supports the following event types: SegmentIdentify, ShopifyCreateCustomers, ShopifyUpdateCustomers, ShopifyCreateDraftOrders, ShopifyUpdateDraftOrders, ShopifyCreateOrders, and ShopifyUpdatedOrders.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'DomainName': 'string',
    'Uri': 'string',
    'ObjectTypeName': 'string',
    'CreatedAt': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'Tags': {
        'string': 'string'
    },
    'ObjectTypeNames': {
        'string': 'string'
    },
    'WorkflowId': 'string'
}

Response Structure

  • (dict) --

    • DomainName (string) --

      The unique name of the domain.

    • Uri (string) --

      The URI of the S3 bucket or any other type of data source.

    • ObjectTypeName (string) --

      The name of the profile object type.

    • CreatedAt (datetime) --

      The timestamp of when the domain was created.

    • LastUpdatedAt (datetime) --

      The timestamp of when the domain was most recently edited.

    • Tags (dict) --

      The tags used to organize, track, or control access for this resource.

      • (string) --

        • (string) --

    • ObjectTypeNames (dict) --

      A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an ObjectTypeName (template) used to ingest the event. It supports the following event types: SegmentIdentify, ShopifyCreateCustomers, ShopifyUpdateCustomers, ShopifyCreateDraftOrders, ShopifyUpdateDraftOrders, ShopifyCreateOrders, and ShopifyUpdatedOrders.

      • (string) --

        • (string) --

    • WorkflowId (string) --

      Unique identifier for the workflow.