PutIntegration - Amazon Connect

PutIntegration

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.

To add or remove tags on an existing Integration, see TagResource / UntagResource.

Request Syntax

PUT /domains/DomainName/integrations HTTP/1.1 Content-type: application/json { "FlowDefinition": { "Description": "string", "FlowName": "string", "KmsArn": "string", "SourceFlowConfig": { "ConnectorProfileName": "string", "ConnectorType": "string", "IncrementalPullConfig": { "DatetimeTypeFieldName": "string" }, "SourceConnectorProperties": { "Marketo": { "Object": "string" }, "S3": { "BucketName": "string", "BucketPrefix": "string" }, "Salesforce": { "EnableDynamicFieldUpdate": boolean, "IncludeDeletedRecords": boolean, "Object": "string" }, "ServiceNow": { "Object": "string" }, "Zendesk": { "Object": "string" } } }, "Tasks": [ { "ConnectorOperator": { "Marketo": "string", "S3": "string", "Salesforce": "string", "ServiceNow": "string", "Zendesk": "string" }, "DestinationField": "string", "SourceFields": [ "string" ], "TaskProperties": { "string" : "string" }, "TaskType": "string" } ], "TriggerConfig": { "TriggerProperties": { "Scheduled": { "DataPullMode": "string", "FirstExecutionFrom": number, "ScheduleEndTime": number, "ScheduleExpression": "string", "ScheduleOffset": number, "ScheduleStartTime": number, "Timezone": "string" } }, "TriggerType": "string" } }, "ObjectTypeName": "string", "ObjectTypeNames": { "string" : "string" }, "RoleArn": "string", "Tags": { "string" : "string" }, "Uri": "string" }

URI Request Parameters

The request uses the following URI parameters.

DomainName

The unique name of the domain.

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_-]+$

Required: Yes

Request Body

The request accepts the following data in JSON format.

FlowDefinition

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

Type: FlowDefinition object

Required: No

ObjectTypeName

The name of the profile object type.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

Pattern: ^[a-zA-Z_][a-zA-Z_0-9-]*$

Required: No

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.

Type: String to string map

Key Length Constraints: Minimum length of 1. Maximum length of 255.

Value Length Constraints: Minimum length of 1. Maximum length of 255.

Value Pattern: ^[a-zA-Z_][a-zA-Z_0-9-]*$

Required: No

RoleArn

The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make Customer Profiles requests on your behalf.

Type: String

Length Constraints: Maximum length of 512.

Pattern: arn:aws:iam:.*:[0-9]+:.*

Required: No

Tags

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

Type: String to string map

Map Entries: Maximum number of 50 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$

Value Length Constraints: Maximum length of 256.

Required: No

Uri

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "CreatedAt": number, "DomainName": "string", "IsUnstructured": boolean, "LastUpdatedAt": number, "ObjectTypeName": "string", "ObjectTypeNames": { "string" : "string" }, "RoleArn": "string", "Tags": { "string" : "string" }, "Uri": "string", "WorkflowId": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

CreatedAt

The timestamp of when the domain was created.

Type: Timestamp

DomainName

The unique name of the domain.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_-]+$

IsUnstructured

Boolean that shows if the Flow that's associated with the Integration is created in Amazon Appflow, or with ObjectTypeName equals _unstructured via API/CLI in flowDefinition.

Type: Boolean

LastUpdatedAt

The timestamp of when the domain was most recently edited.

Type: Timestamp

ObjectTypeName

The name of the profile object type.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

Pattern: ^[a-zA-Z_][a-zA-Z_0-9-]*$

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.

Type: String to string map

Key Length Constraints: Minimum length of 1. Maximum length of 255.

Value Length Constraints: Minimum length of 1. Maximum length of 255.

Value Pattern: ^[a-zA-Z_][a-zA-Z_0-9-]*$

RoleArn

The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make Customer Profiles requests on your behalf.

Type: String

Length Constraints: Maximum length of 512.

Pattern: arn:aws:iam:.*:[0-9]+:.*

Tags

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

Type: String to string map

Map Entries: Maximum number of 50 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$

Value Length Constraints: Maximum length of 256.

Uri

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

WorkflowId

Unique identifier for the workflow.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 255.

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403

BadRequestException

The input you provided is invalid.

HTTP Status Code: 400

InternalServerException

An internal service error occurred.

HTTP Status Code: 500

ResourceNotFoundException

The requested resource does not exist, or access was denied.

HTTP Status Code: 404

ThrottlingException

You exceeded the maximum number of requests.

HTTP Status Code: 429

Examples

Example

This example illustrates one usage of PutIntegration.

Sample Request

PUT /domains/ExampleDomainName/integrations HTTP/1.1 Content-type: application/json { "ObjectTypeName": "MyCustomObject", "Uri": "arn:aws:flow:us-east-1:123456789012:URIOfIntegration1" }

Sample Response

Content-type: application/json { "CreatedAt": 1479249799770, "DomainName": "ExampleDomainName", "LastUpdatedAt": 1479249799770, "ObjectTypeName": "MyCustomObject", "Uri": "arn:aws:flow:us-east-1:123456789012:URIOfIntegration1" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: