integrations
Creates, updates, deletes or gets an integration resource or lists integrations in a region
Overview
| Name | integrations |
| Type | Resource |
| Description | The resource schema for creating an Amazon Connect Customer Profiles Integration. |
| Id | awscc.customerprofiles.integrations |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
domain_name | string | The unique name of the domain. |
uri | string | The URI of the S3 bucket or any other type of data source. |
flow_definition | object | |
object_type_name | string | The name of the ObjectType defined for the 3rd party data in Profile Service |
created_at | string | The time of this integration got created |
last_updated_at | string | The time of this integration got last updated at |
tags | array | The tags (keys and values) associated with the integration |
object_type_names | array | The mapping between 3rd party event types and ObjectType names |
event_trigger_names | array | A list of unique names for active event triggers associated with the integration. |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
domain_name | string | The unique name of the domain. |
uri | string | The URI of the S3 bucket or any other type of data source. |
region | string | AWS region. |
For more information, see AWS::CustomerProfiles::Integration.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | integrations | INSERT | DomainName, region |
delete_resource | integrations | DELETE | Identifier, region |
update_resource | integrations | UPDATE | Identifier, PatchDocument, region |
list_resources | integrations_list_only | SELECT | region |
get_resource | integrations | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual integration.
SELECT
region,
domain_name,
uri,
flow_definition,
object_type_name,
created_at,
last_updated_at,
tags,
object_type_names,
event_trigger_names
FROM awscc.customerprofiles.integrations
WHERE
region = 'us-east-1' AND
Identifier = '{{ domain_name }}|{{ uri }}';
Lists all integrations in a region.
SELECT
region,
domain_name,
uri
FROM awscc.customerprofiles.integrations_list_only
WHERE
region = 'us-east-1';
INSERT example
Use the following StackQL query and manifest file to create a new integration resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.customerprofiles.integrations (
DomainName,
region
)
SELECT
'{{ domain_name }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.customerprofiles.integrations (
DomainName,
Uri,
FlowDefinition,
ObjectTypeName,
Tags,
ObjectTypeNames,
EventTriggerNames,
region
)
SELECT
'{{ domain_name }}',
'{{ uri }}',
'{{ flow_definition }}',
'{{ object_type_name }}',
'{{ tags }}',
'{{ object_type_names }}',
'{{ event_trigger_names }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: integration
props:
- name: domain_name
value: '{{ domain_name }}'
- name: uri
value: '{{ uri }}'
- name: flow_definition
value:
flow_name: '{{ flow_name }}'
description: '{{ description }}'
kms_arn: '{{ kms_arn }}'
tasks:
- connector_operator:
marketo: '{{ marketo }}'
s3: '{{ s3 }}'
salesforce: '{{ salesforce }}'
service_now: '{{ service_now }}'
zendesk: '{{ zendesk }}'
source_fields:
- '{{ source_fields[0] }}'
destination_field: '{{ destination_field }}'
task_type: '{{ task_type }}'
task_properties:
- operator_property_key: '{{ operator_property_key }}'
property: '{{ property }}'
trigger_config:
trigger_type: '{{ trigger_type }}'
trigger_properties:
scheduled:
schedule_expression: '{{ schedule_expression }}'
data_pull_mode: '{{ data_pull_mode }}'
schedule_start_time: null
schedule_end_time: null
timezone: '{{ timezone }}'
schedule_offset: '{{ schedule_offset }}'
first_execution_from: null
source_flow_config:
connector_type: '{{ connector_type }}'
connector_profile_name: '{{ connector_profile_name }}'
incremental_pull_config:
datetime_type_field_name: '{{ datetime_type_field_name }}'
source_connector_properties:
marketo:
object: '{{ object }}'
s3:
bucket_name: '{{ bucket_name }}'
bucket_prefix: '{{ bucket_prefix }}'
salesforce:
object: null
enable_dynamic_field_update: '{{ enable_dynamic_field_update }}'
include_deleted_records: '{{ include_deleted_records }}'
service_now:
object: null
zendesk:
object: null
- name: object_type_name
value: '{{ object_type_name }}'
- name: tags
value:
- key: '{{ key }}'
value: '{{ value }}'
- name: object_type_names
value:
- key: '{{ key }}'
value: '{{ value }}'
- name: event_trigger_names
value:
- '{{ event_trigger_names[0] }}'
UPDATE example
Use the following StackQL query and manifest file to update a integration resource, using stack-deploy.
/*+ update */
UPDATE awscc.customerprofiles.integrations
SET PatchDocument = string('{{ {
"FlowDefinition": flow_definition,
"ObjectTypeName": object_type_name,
"Tags": tags,
"ObjectTypeNames": object_type_names,
"EventTriggerNames": event_trigger_names
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ domain_name }}|{{ uri }}';
DELETE example
/*+ delete */
DELETE FROM awscc.customerprofiles.integrations
WHERE
Identifier = '{{ domain_name }}|{{ uri }}' AND
region = 'us-east-1';
Permissions
To operate on the integrations resource, the following permissions are required:
- Create
- Read
- Delete
- Update
- List
profile:GetIntegration,
profile:PutIntegration,
appflow:CreateFlow,
app-integrations:CreateEventIntegrationAssociation,
app-integrations:GetEventIntegration,
connect:DescribeInstance,
ds:DescribeDirectories,
events:ListTargetsByRule,
events:PutRule,
events:PutTargets,
events:PutEvents,
profile:TagResource
profile:GetIntegration
profile:DeleteIntegration,
appflow:DeleteFlow,
app-integrations:ListEventIntegrationAssociations,
app-integrations:DeleteEventIntegrationAssociation,
events:RemoveTargets,
events:ListTargetsByRule,
events:DeleteRule
profile:PutIntegration,
profile:GetIntegration,
appflow:CreateFlow,
app-integrations:GetEventIntegration,
app-integrations:CreateEventIntegrationAssociation,
app-integrations:ListEventIntegrationAssociations,
app-integrations:DeleteEventIntegrationAssociation,
events:ListTargetsByRule,
events:RemoveTargets,
events:DeleteRule,
events:PutRule,
events:PutTargets,
events:PutEvents,
profile:UntagResource,
profile:TagResource,
connect:DescribeInstance,
ds:DescribeDirectories
profile:ListIntegrations