

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS Data Exports
<a name="AWS_BCMDataExports"></a>

**Resource types**
+ [AWS::BCMDataExports::Export](aws-resource-bcmdataexports-export.md)

# AWS::BCMDataExports::Export
<a name="aws-resource-bcmdataexports-export"></a>

Creates a data export and specifies the data query, the delivery preference, and any optional resource tags.

A `DataQuery` consists of both a `QueryStatement` and `TableConfigurations`.

The `QueryStatement` is an SQL statement. Data Exports only supports a limited subset of the SQL syntax. For more information on the SQL syntax that is supported, see [Data query](https://docs.aws.amazon.com/cur/latest/userguide/de-data-query.html). To view the available tables and columns, see the [Data Exports table dictionary](https://docs.aws.amazon.com/cur/latest/userguide/de-table-dictionary.html).

The `TableConfigurations` is a collection of specified `TableProperties` for the table being queried in the `QueryStatement`. TableProperties are additional configurations you can provide to change the data and schema of a table. Each table can have different TableProperties. However, tables are not required to have any TableProperties. Each table property has a default value that it assumes if not specified. For more information on table configurations, see [Data query](https://docs.aws.amazon.com/cur/latest/userguide/de-data-query.html). To view the table properties available for each table, see the [Data Exports table dictionary](https://docs.aws.amazon.com/cur/latest/userguide/de-table-dictionary.html) or use the `ListTables` API to get a response of all tables and their available properties.

## Syntax
<a name="aws-resource-bcmdataexports-export-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bcmdataexports-export-syntax.json"></a>

```
{
  "Type" : "AWS::BCMDataExports::Export",
  "Properties" : {
      "[Export](#cfn-bcmdataexports-export-export)" : Export,
      "[Tags](#cfn-bcmdataexports-export-tags)" : [ ResourceTag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bcmdataexports-export-syntax.yaml"></a>

```
Type: AWS::BCMDataExports::Export
Properties:
  [Export](#cfn-bcmdataexports-export-export): 
    Export
  [Tags](#cfn-bcmdataexports-export-tags): 
    - ResourceTag
```

## Properties
<a name="aws-resource-bcmdataexports-export-properties"></a>

`Export`  <a name="cfn-bcmdataexports-export-export"></a>
The details that are available for an export.  
*Required*: Yes  
*Type*: [Export](aws-properties-bcmdataexports-export-export.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bcmdataexports-export-tags"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [ResourceTag](aws-properties-bcmdataexports-export-resourcetag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bcmdataexports-export-return-values"></a>

### Ref
<a name="aws-resource-bcmdataexports-export-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-bcmdataexports-export-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bcmdataexports-export-return-values-fn--getatt-fn--getatt"></a>

`Export.ExportArn`  <a name="Export.ExportArn-fn::getatt"></a>
The Amazon Resource Name (ARN) for this export.

`ExportArn`  <a name="ExportArn-fn::getatt"></a>
The Amazon Resource Name (ARN) for this export.

# AWS::BCMDataExports::Export DataQuery
<a name="aws-properties-bcmdataexports-export-dataquery"></a>

The SQL query of column selections and row filters from the data table you want.

## Syntax
<a name="aws-properties-bcmdataexports-export-dataquery-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-dataquery-syntax.json"></a>

```
{
  "[QueryStatement](#cfn-bcmdataexports-export-dataquery-querystatement)" : String,
  "[TableConfigurations](#cfn-bcmdataexports-export-dataquery-tableconfigurations)" : {Key: Value, ...}
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-dataquery-syntax.yaml"></a>

```
  [QueryStatement](#cfn-bcmdataexports-export-dataquery-querystatement): String
  [TableConfigurations](#cfn-bcmdataexports-export-dataquery-tableconfigurations): 
    Key: Value
```

## Properties
<a name="aws-properties-bcmdataexports-export-dataquery-properties"></a>

`QueryStatement`  <a name="cfn-bcmdataexports-export-dataquery-querystatement"></a>
The query statement.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[\S\s]*$`  
*Minimum*: `1`  
*Maximum*: `36000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TableConfigurations`  <a name="cfn-bcmdataexports-export-dataquery-tableconfigurations"></a>
The table configuration.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[\S\s]*$`  
*Minimum*: `0`  
*Maximum*: `16384`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::BCMDataExports::Export DestinationConfigurations
<a name="aws-properties-bcmdataexports-export-destinationconfigurations"></a>

The destinations used for data exports.

## Syntax
<a name="aws-properties-bcmdataexports-export-destinationconfigurations-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-destinationconfigurations-syntax.json"></a>

```
{
  "[S3Destination](#cfn-bcmdataexports-export-destinationconfigurations-s3destination)" : S3Destination
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-destinationconfigurations-syntax.yaml"></a>

```
  [S3Destination](#cfn-bcmdataexports-export-destinationconfigurations-s3destination): 
    S3Destination
```

## Properties
<a name="aws-properties-bcmdataexports-export-destinationconfigurations-properties"></a>

`S3Destination`  <a name="cfn-bcmdataexports-export-destinationconfigurations-s3destination"></a>
An object that describes the destination of the data exports file.  
*Required*: Yes  
*Type*: [S3Destination](aws-properties-bcmdataexports-export-s3destination.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::BCMDataExports::Export Export
<a name="aws-properties-bcmdataexports-export-export"></a>

The details that are available for an export.

## Syntax
<a name="aws-properties-bcmdataexports-export-export-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-export-syntax.json"></a>

```
{
  "[DataQuery](#cfn-bcmdataexports-export-export-dataquery)" : DataQuery,
  "[Description](#cfn-bcmdataexports-export-export-description)" : String,
  "[DestinationConfigurations](#cfn-bcmdataexports-export-export-destinationconfigurations)" : DestinationConfigurations,
  "[ExportArn](#cfn-bcmdataexports-export-export-exportarn)" : String,
  "[Name](#cfn-bcmdataexports-export-export-name)" : String,
  "[RefreshCadence](#cfn-bcmdataexports-export-export-refreshcadence)" : RefreshCadence
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-export-syntax.yaml"></a>

```
  [DataQuery](#cfn-bcmdataexports-export-export-dataquery): 
    DataQuery
  [Description](#cfn-bcmdataexports-export-export-description): String
  [DestinationConfigurations](#cfn-bcmdataexports-export-export-destinationconfigurations): 
    DestinationConfigurations
  [ExportArn](#cfn-bcmdataexports-export-export-exportarn): String
  [Name](#cfn-bcmdataexports-export-export-name): String
  [RefreshCadence](#cfn-bcmdataexports-export-export-refreshcadence): 
    RefreshCadence
```

## Properties
<a name="aws-properties-bcmdataexports-export-export-properties"></a>

`DataQuery`  <a name="cfn-bcmdataexports-export-export-dataquery"></a>
The data query for this specific data export.  
*Required*: Yes  
*Type*: [DataQuery](aws-properties-bcmdataexports-export-dataquery.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bcmdataexports-export-export-description"></a>
The description for this specific data export.  
*Required*: No  
*Type*: String  
*Pattern*: `^[\S\s]*$`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DestinationConfigurations`  <a name="cfn-bcmdataexports-export-export-destinationconfigurations"></a>
The destination configuration for this specific data export.  
*Required*: Yes  
*Type*: [DestinationConfigurations](aws-properties-bcmdataexports-export-destinationconfigurations.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExportArn`  <a name="cfn-bcmdataexports-export-export-exportarn"></a>
The Amazon Resource Name (ARN) for this export.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws[-a-z0-9]*:(bcm-data-exports):[-a-z0-9]*:[0-9]{12}:[-a-zA-Z0-9/:_]+$`  
*Minimum*: `20`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bcmdataexports-export-export-name"></a>
The name of this specific data export.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9A-Za-z\-_]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RefreshCadence`  <a name="cfn-bcmdataexports-export-export-refreshcadence"></a>
The cadence for AWS to update the export in your S3 bucket.  
*Required*: Yes  
*Type*: [RefreshCadence](aws-properties-bcmdataexports-export-refreshcadence.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::BCMDataExports::Export RefreshCadence
<a name="aws-properties-bcmdataexports-export-refreshcadence"></a>

The cadence for AWS to update the data export in your S3 bucket.

## Syntax
<a name="aws-properties-bcmdataexports-export-refreshcadence-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-refreshcadence-syntax.json"></a>

```
{
  "[Frequency](#cfn-bcmdataexports-export-refreshcadence-frequency)" : String
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-refreshcadence-syntax.yaml"></a>

```
  [Frequency](#cfn-bcmdataexports-export-refreshcadence-frequency): String
```

## Properties
<a name="aws-properties-bcmdataexports-export-refreshcadence-properties"></a>

`Frequency`  <a name="cfn-bcmdataexports-export-refreshcadence-frequency"></a>
The frequency that data exports are updated. The export refreshes each time the source data updates, up to three times daily.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SYNCHRONOUS`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::BCMDataExports::Export ResourceTag
<a name="aws-properties-bcmdataexports-export-resourcetag"></a>

The tag structure that contains a tag key and value.

## Syntax
<a name="aws-properties-bcmdataexports-export-resourcetag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-resourcetag-syntax.json"></a>

```
{
  "[Key](#cfn-bcmdataexports-export-resourcetag-key)" : String,
  "[Value](#cfn-bcmdataexports-export-resourcetag-value)" : String
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-resourcetag-syntax.yaml"></a>

```
  [Key](#cfn-bcmdataexports-export-resourcetag-key): String
  [Value](#cfn-bcmdataexports-export-resourcetag-value): String
```

## Properties
<a name="aws-properties-bcmdataexports-export-resourcetag-properties"></a>

`Key`  <a name="cfn-bcmdataexports-export-resourcetag-key"></a>
The key that's associated with the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bcmdataexports-export-resourcetag-value"></a>
The value that's associated with the tag.  
*Required*: Yes  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::BCMDataExports::Export S3Destination
<a name="aws-properties-bcmdataexports-export-s3destination"></a>

Describes the destination Amazon Simple Storage Service (Amazon S3) bucket name and object keys of a data exports file.

## Syntax
<a name="aws-properties-bcmdataexports-export-s3destination-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-s3destination-syntax.json"></a>

```
{
  "[S3Bucket](#cfn-bcmdataexports-export-s3destination-s3bucket)" : String,
  "[S3BucketOwner](#cfn-bcmdataexports-export-s3destination-s3bucketowner)" : String,
  "[S3OutputConfigurations](#cfn-bcmdataexports-export-s3destination-s3outputconfigurations)" : S3OutputConfigurations,
  "[S3Prefix](#cfn-bcmdataexports-export-s3destination-s3prefix)" : String,
  "[S3Region](#cfn-bcmdataexports-export-s3destination-s3region)" : String
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-s3destination-syntax.yaml"></a>

```
  [S3Bucket](#cfn-bcmdataexports-export-s3destination-s3bucket): String
  [S3BucketOwner](#cfn-bcmdataexports-export-s3destination-s3bucketowner): String
  [S3OutputConfigurations](#cfn-bcmdataexports-export-s3destination-s3outputconfigurations): 
    S3OutputConfigurations
  [S3Prefix](#cfn-bcmdataexports-export-s3destination-s3prefix): String
  [S3Region](#cfn-bcmdataexports-export-s3destination-s3region): String
```

## Properties
<a name="aws-properties-bcmdataexports-export-s3destination-properties"></a>

`S3Bucket`  <a name="cfn-bcmdataexports-export-s3destination-s3bucket"></a>
The name of the Amazon S3 bucket used as the destination of a data export file.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[\S\s]*$`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3BucketOwner`  <a name="cfn-bcmdataexports-export-s3destination-s3bucketowner"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9]{12}$`  
*Minimum*: `12`  
*Maximum*: `12`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3OutputConfigurations`  <a name="cfn-bcmdataexports-export-s3destination-s3outputconfigurations"></a>
The output configuration for the data export.  
*Required*: Yes  
*Type*: [S3OutputConfigurations](aws-properties-bcmdataexports-export-s3outputconfigurations.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3Prefix`  <a name="cfn-bcmdataexports-export-s3destination-s3prefix"></a>
The S3 path prefix you want prepended to the name of your data export.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[\S\s]*$`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3Region`  <a name="cfn-bcmdataexports-export-s3destination-s3region"></a>
The S3 bucket Region.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[\S\s]*$`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::BCMDataExports::Export S3OutputConfigurations
<a name="aws-properties-bcmdataexports-export-s3outputconfigurations"></a>

The compression type, file format, and overwrite preference for the data export.

## Syntax
<a name="aws-properties-bcmdataexports-export-s3outputconfigurations-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bcmdataexports-export-s3outputconfigurations-syntax.json"></a>

```
{
  "[Compression](#cfn-bcmdataexports-export-s3outputconfigurations-compression)" : String,
  "[Format](#cfn-bcmdataexports-export-s3outputconfigurations-format)" : String,
  "[OutputType](#cfn-bcmdataexports-export-s3outputconfigurations-outputtype)" : String,
  "[Overwrite](#cfn-bcmdataexports-export-s3outputconfigurations-overwrite)" : String
}
```

### YAML
<a name="aws-properties-bcmdataexports-export-s3outputconfigurations-syntax.yaml"></a>

```
  [Compression](#cfn-bcmdataexports-export-s3outputconfigurations-compression): String
  [Format](#cfn-bcmdataexports-export-s3outputconfigurations-format): String
  [OutputType](#cfn-bcmdataexports-export-s3outputconfigurations-outputtype): String
  [Overwrite](#cfn-bcmdataexports-export-s3outputconfigurations-overwrite): String
```

## Properties
<a name="aws-properties-bcmdataexports-export-s3outputconfigurations-properties"></a>

`Compression`  <a name="cfn-bcmdataexports-export-s3outputconfigurations-compression"></a>
The compression type for the data export.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `GZIP | PARQUET`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Format`  <a name="cfn-bcmdataexports-export-s3outputconfigurations-format"></a>
The file format for the data export.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `TEXT_OR_CSV | PARQUET`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputType`  <a name="cfn-bcmdataexports-export-s3outputconfigurations-outputtype"></a>
The output type for the data export.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `CUSTOM`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Overwrite`  <a name="cfn-bcmdataexports-export-s3outputconfigurations-overwrite"></a>
The rule to follow when generating a version of the data export file. You have the choice to overwrite the previous version or to be delivered in addition to the previous versions. Overwriting exports can save on Amazon S3 storage costs. Creating new export versions allows you to track the changes in cost and usage data over time.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `CREATE_NEW_REPORT | OVERWRITE_REPORT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)