

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Exemplo: Integrar programaticamente o S3 ao Amazon Connect Customer Profiles
<a name="customerprofiles-s3-integration"></a>

Usando a [PutIntegration](https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_PutIntegration.html)API Customer Profiles, você pode criar programaticamente integrações para S3, Salesforce, Marketo e muito mais. 

Neste tópico, mostramos como criar uma integração do S3 com um intervalo de sincronização de 15 minutos, o valor mínimo atualmente compatível. 

## Etapa 1: Criar um arquivo JSON
<a name="step1-cpintegration"></a>

Crie um arquivo JSON com o seguinte conteúdo:

```
{
    "DomainName": "your-domain",
    "ObjectTypeName": "your-object-name", 
    "FlowDefinition": {
        "FlowName": "your-flow-name",
        "KmsArn": "the key ARN is the same as your domain's key",
        "Description": "Created by Customer Profiles",
        "TriggerConfig": {
            "TriggerType": "Scheduled",
            "TriggerProperties": {
                "Scheduled": {
                    "ScheduleExpression": "rate(15minutes)",
                    "DataPullMode": "Incremental",
                    "ScheduleStartTime": 1634244800.435,
                    "FirstExecutionFrom": 1594166400
                }
            }
        },
        "SourceFlowConfig": {
            "ConnectorType":"S3",
            "SourceConnectorProperties": {
                "S3": {
                    "BucketName": "your-bucket",
                    "BucketPrefix": "your-prefix"
                }
            }
        },
        "Tasks": [
            {"TaskType":"Filter","SourceFields":["colA","colB"],"ConnectorOperator":{"S3":"PROJECTION"}},
            {"ConnectorOperator":{"S3":"NO_OP"},"DestinationField":"colA","TaskProperties":{},"SourceFields":["colA"],"TaskType":"Map"},
            {"ConnectorOperator":{"S3":"NO_OP"},"DestinationField":"colB","TaskProperties":{},"SourceFields":["colB"],"TaskType":"Map"}
        ]
    }
}
```

Para personalizar o JSON com seus próprios valores, siga estas diretrizes:
+ `FlowName`: pode ser STRING [a-zA-Z0-9][\$1w\$1@\$1.-]\$1
+ `ScheduleStartTime`: defina como `DateTime` atual \$1 5 minutos no horário da época.
+ `FirstExecutionFrom`: vá para o S3, veja a data do arquivo e use uma data anterior à data mais antiga.
+ `Tasks`: defina `TaskType`. No campo `Sourcefields`, você deve fornecer TODAS as colunas que tem em seu CSV nessa matriz. Em seguida, para cada um dos itens dessa matriz, você precisa especificar `ConnectorOperator`. Este exemplo é para um documento CSV com duas colunas: `colA` e `colB`.

## Etapa 2: chame a PutIntegration API
<a name="step2-cpintegration"></a>

Depois de criar e personalizar o arquivo JSON com seus valores, chame a [PutIntegration](https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_PutIntegration.html)API, conforme mostrado no exemplo a seguir:

```
aws customer-profiles put-integration --cli-input-json file:///put_integration_s3_cli.json --region us-west-2                    
```

A resposta de `PutIntegration` retorna um URI de fluxo. Por exemplo:

```
{
    "DomainName": "testDomain",
    "Uri": "arn:aws:appflow:us-west-2:9999999999999:flow/Customer_Profiles_testDomain_S3_Salesforce-Account_1634244122247",
    "ObjectTypeName": "your objec type",
    "CreatedAt": "2021-10-14T13:51:57.748000-07:00",
    "LastUpdatedAt": "2021-10-14T13:51:57.748000-07:00",
    "Tags": {}
}
```

## Etapa 3: chame a AppFlow StartFlow API da Amazon
<a name="step3-cpintegration"></a>

Use o URI de fluxo para chamar a AppFlow [StartFlow](https://docs.aws.amazon.com/appflow/1.0/APIReference/API_StartFlow.html)API da Amazon. Por exemplo:

```
aws appflow start-flow —flow-name uri --region us-west-2
```