
The integration between Synerise and Amazon S3 Bucket opens up possibilities of exporting data collected in Synerise. By means of the Send file node, you can push data from Synerise to add it as a file a public cloud storage resource in Amazon Web Services. You can use this connection in various scenarios such as exporting transactions, event data, customer information (such as marketing agreements), results of metrics, aggregates, expressions, reports, and many more to Amazon S3 Bucket.

## Prerequisites
---
You must have an account on AWS.

## Node configuration
---
1. Click **Amazon S3 Bucket > Send File**. 
2. Click **Select connection**.  
3. From the dropdown list, select the connection.  
   - If no connections are available or you want to create a new one, see [Create a connection](#create-a-connection).
   - If you selected an existing connection, proceed to [defining the integration settings](#define-the-integration-settings).

### Create a connection
To allow the data exchange, establish a connection between Synerise and Amazon S3 Bucket.  

1. At the bottom of the **Select connection** dropdown list, click **Add connection**.  
2. In the **Access key** field, enter an access key identifier which you can find in the AWS panel.
3. In the **Secret key** field, enter the secret key which you can find in the AWS panel.
3. Confirm by clicking **Apply**.

### Define the integration settings
In this step, fill in the form that allows you to send data from Synerise to Amazon S3 Bucket.  

<figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/automation/_gfx/azure-send-file.png" class="large" alt="A blank configuration form for Send File (Amazon S3)"><figcaption>A blank configuration form for Send File (Amazon S3)</figcaption></figure>  


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Fields marked with the <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/icons/snippet-icon.png" alt="Snippet icon" class="icon" > icon accept [snippets](/docs/assets/snippets) or [inserts](/developers/inserts). But, you can’t use profile-related inserts.

</div></div></div>


2. In the **Container** field, enter the name of an existing container in your storage.  
3. In the **Path to directory** field, enter the path to the existing bucket in which the file will be saved. 
2. In the **File name** field, enter the name of the file you want to send to the storage. If the file already exists, the contents of the file will be overwritten.  
    In this field, you can use Jinjava.
3. From the **File format** dropdown list, select the format in which the file will be saved in the storage.
    If you select the **CSV [*.csv]** option, follow the instructions below:
    1. From the **Delimiter** dropdown, select the character that marks the end of a column.
    2. From the **Quotation mark** dropdown list, select the characters that contain the text.
    3. From the **Escape character** dropdown lists, select the character changes the default interpretation of a character or a string followed by the character.
    5. From the **Line ending** dropdown list, select:
        - **Line feed** - This option shifts the cursor to the next line vertically.
        - **Carriage return and line feed** - This option points the cursor to the beginning of the line horizontally and shifts the cursor to the next line vertically.
    6. The **No Byte Order Mark** option is currently unused.
    7. To wrap the values with characters selected in the **Quotation mark** field when the delimiter occurs in the value, select the **Quoting style only if required** option. For example, for the following values:  
            - one  
            - two,three,four  
        The output with the enabled **Quoting style only if required** option will be as follows: 
        - one,
        - "two,three,four"
4. Confirm by clicking **Apply**.    

## Example of use
---
As an example of use, you can create a workflow that is triggered one time in order to export the customer database (email addresses and newsletter agreements) to the storage.

As a prerequisite for this example, create a segmentation of customers who have email addresses and enabled newsletter agreement. This segmentation will be used in the [Get Profiles node](/docs/automation/actions/synerise-integrations/get-profiles) that will be a part of the workflow.  
    <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/automation/_gfx/segmentation-with-customers-and-agreements-example.png" class="large" alt="Example of the segmentation conditions"><figcaption>Example of the segmentation conditions</figcaption></figure>

In the configuration of the workflow:
1. Start the workflow with the **Scheduled Run** node. In the configuration of the node, set the **Run trigger** to **one time**. Select the **Immediately** tab. 
2. To retrieve customers data to the workflow, as the next node, select **Synerise > Get Profiles**. In the configuration of the node: 
    1. Select a segmentation from which you want to extract customers' data.
    2. Select the customer attributes to be exported. In this example, it's an email address and email marketing agreement.
4. To send the file with customers data, add **Amazon S3 Bucket > Send File**. Fill in the configuration form in the node.  
5. Add the **End** node.  
    **Result**:
    <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/automation/_gfx/amazon-s3-workflow.png" class="full" alt="Final configuration of the workflow"><figcaption>Final configuration of the workflow</figcaption></figure>