

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::DataPipeline::Pipeline
<a name="aws-resource-datapipeline-pipeline"></a>

The AWS::DataPipeline::Pipeline resource specifies a data pipeline that you can use to automate the movement and transformation of data.

**Important**  
AWS Data Pipeline is no longer available to new customers. Existing customers of AWS Data Pipeline can continue to use the service as normal. [Learn more](https://aws.amazon.com/blogs/big-data/migrate-workloads-from-aws-data-pipeline/)

In each pipeline, you define pipeline objects, such as activities, schedules, data nodes, and resources.

The `AWS::DataPipeline::Pipeline` resource adds tasks, schedules, and preconditions to the specified pipeline. You can use `PutPipelineDefinition` to populate a new pipeline.

`PutPipelineDefinition` also validates the configuration as it adds it to the pipeline. Changes to the pipeline are saved unless one of the following validation errors exist in the pipeline. 
+ An object is missing a name or identifier field.
+ A string or reference field is empty.
+ The number of objects in the pipeline exceeds the allowed maximum number of objects.
+ The pipeline is in a FINISHED state.

 Pipeline object definitions are passed to the [PutPipelineDefinition](https://docs.aws.amazon.com/datapipeline/latest/APIReference/API_PutPipelineDefinition.html) action and returned by the [GetPipelineDefinition](https://docs.aws.amazon.com/datapipeline/latest/APIReference/API_GetPipelineDefinition.html) action. 

## Syntax
<a name="aws-resource-datapipeline-pipeline-syntax"></a>

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

### JSON
<a name="aws-resource-datapipeline-pipeline-syntax.json"></a>

```
{
  "Type" : "AWS::DataPipeline::Pipeline",
  "Properties" : {
      "[Activate](#cfn-datapipeline-pipeline-activate)" : Boolean,
      "[Description](#cfn-datapipeline-pipeline-description)" : String,
      "[Name](#cfn-datapipeline-pipeline-name)" : String,
      "[ParameterObjects](#cfn-datapipeline-pipeline-parameterobjects)" : [ ParameterObject, ... ],
      "[ParameterValues](#cfn-datapipeline-pipeline-parametervalues)" : [ ParameterValue, ... ],
      "[PipelineObjects](#cfn-datapipeline-pipeline-pipelineobjects)" : [ PipelineObject, ... ],
      "[PipelineTags](#cfn-datapipeline-pipeline-pipelinetags)" : [ PipelineTag, ... ]
    }
}
```

### YAML
<a name="aws-resource-datapipeline-pipeline-syntax.yaml"></a>

```
Type: AWS::DataPipeline::Pipeline
Properties:
  [Activate](#cfn-datapipeline-pipeline-activate): Boolean
  [Description](#cfn-datapipeline-pipeline-description): String
  [Name](#cfn-datapipeline-pipeline-name): String
  [ParameterObjects](#cfn-datapipeline-pipeline-parameterobjects): 
    - ParameterObject
  [ParameterValues](#cfn-datapipeline-pipeline-parametervalues): 
    - ParameterValue
  [PipelineObjects](#cfn-datapipeline-pipeline-pipelineobjects): 
    - PipelineObject
  [PipelineTags](#cfn-datapipeline-pipeline-pipelinetags): 
    - PipelineTag
```

## Properties
<a name="aws-resource-datapipeline-pipeline-properties"></a>

`Activate`  <a name="cfn-datapipeline-pipeline-activate"></a>
Indicates whether to validate and start the pipeline or stop an active pipeline. By default, the value is set to `true`.  
*Required*: No  
*Type*: Boolean  
*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-datapipeline-pipeline-description"></a>
A description of the pipeline.  
*Required*: No  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `0`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Name`  <a name="cfn-datapipeline-pipeline-name"></a>
The name of the pipeline.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\n\t]*`  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ParameterObjects`  <a name="cfn-datapipeline-pipeline-parameterobjects"></a>
The parameter objects used with the pipeline.  
*Required*: No  
*Type*: Array of [ParameterObject](aws-properties-datapipeline-pipeline-parameterobject.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ParameterValues`  <a name="cfn-datapipeline-pipeline-parametervalues"></a>
The parameter values used with the pipeline.  
*Required*: No  
*Type*: Array of [ParameterValue](aws-properties-datapipeline-pipeline-parametervalue.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PipelineObjects`  <a name="cfn-datapipeline-pipeline-pipelineobjects"></a>
The objects that define the pipeline. These objects overwrite the existing pipeline definition. Not all objects, fields, and values can be updated. For information about restrictions, see [Editing Your Pipeline](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-manage-pipeline-modify-console.html) in the *AWS Data Pipeline Developer Guide*.  
*Required*: No  
*Type*: Array of [PipelineObject](aws-properties-datapipeline-pipeline-pipelineobject.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PipelineTags`  <a name="cfn-datapipeline-pipeline-pipelinetags"></a>
A list of arbitrary tags (key-value pairs) to associate with the pipeline, which you can use to control permissions. For more information, see [Controlling Access to Pipelines and Resources](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) in the *AWS Data Pipeline Developer Guide*.  
*Required*: No  
*Type*: Array of [PipelineTag](aws-properties-datapipeline-pipeline-pipelinetag.md)  
*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-datapipeline-pipeline-return-values"></a>

### Ref
<a name="aws-resource-datapipeline-pipeline-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the pipeline ID.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

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

#### 
<a name="aws-resource-datapipeline-pipeline-return-values-fn--getatt-fn--getatt"></a>

`PipelineId`  <a name="PipelineId-fn::getatt"></a>
The ID of the pipeline.

## Examples
<a name="aws-resource-datapipeline-pipeline--examples"></a>

The following data pipeline backs up data from an Amazon DynamoDB table to an Amazon S3 bucket. The pipeline uses the `HiveCopyActivity` activity to copy the data, and runs it once a day. The [roles](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-iam-roles.html) for the pipeline and the pipeline resource are declared elsewhere in the same template.

**Topics**
+ [](#aws-resource-datapipeline-pipeline--examples--)
+ [](#aws-resource-datapipeline-pipeline--examples--)

### 
<a name="aws-resource-datapipeline-pipeline--examples--"></a>

#### JSON
<a name="aws-resource-datapipeline-pipeline--examples----json"></a>

```
"DynamoDBInputS3OutputHive": {
  "Type": "AWS::DataPipeline::Pipeline",
  "Properties": {
    "Name": "DynamoDBInputS3OutputHive",
    "Description": "Pipeline to backup DynamoDB data to S3",
    "Activate": "true",
    "ParameterObjects": [
      {
        "Id": "myDDBReadThroughputRatio",
        "Attributes": [
          {
            "Key": "description",
            "StringValue": "DynamoDB read throughput ratio"
          },
          {
            "Key": "type",
            "StringValue": "Double"
          },
          {
            "Key": "default",
            "StringValue": "0.2"
          }
        ]
      },
      {
        "Id": "myOutputS3Loc",
        "Attributes": [
          {
            "Key": "description",
            "StringValue": "S3 output bucket"
          },
          {
            "Key": "type",
            "StringValue": "AWS::S3::ObjectKey"
          },
          {
            "Key": "default",
            "StringValue": { "Fn::Join" : [ "", [ "s3://", { "Ref": "S3OutputLoc" } ] ] }
          }
        ]
      },
      {
        "Id": "myDDBTableName",
        "Attributes": [
          {
            "Key": "description",
            "StringValue": "DynamoDB Table Name "
          },
          {
            "Key": "type",
            "StringValue": "String"
          }
        ]
      }
    ],
    "ParameterValues": [
      {
        "Id": "myDDBTableName",
        "StringValue": { "Ref": "TableName" }
      }
    ],
    "PipelineObjects": [
      {
        "Id": "S3BackupLocation",
        "Name": "Copy data to this S3 location",
        "Fields": [
          {
            "Key": "type",
            "StringValue": "S3DataNode"
          },
          {
            "Key": "dataFormat",
            "RefValue": "DDBExportFormat"
          },
          {
            "Key": "directoryPath",
            "StringValue": "#{myOutputS3Loc}/#{format(@scheduledStartTime, 'YYYY-MM-dd-HH-mm-ss')}"
          }
        ]
      },
      {
        "Id": "DDBSourceTable",
        "Name": "DDBSourceTable",
        "Fields": [
          {
            "Key": "tableName",
            "StringValue": "#{myDDBTableName}"
          },
          {
            "Key": "type",
            "StringValue": "DynamoDBDataNode"
          },
          {
            "Key": "dataFormat",
            "RefValue": "DDBExportFormat"
          },
          {
            "Key": "readThroughputPercent",
            "StringValue": "#{myDDBReadThroughputRatio}"
          }
        ]
      },
      {
        "Id": "DDBExportFormat",
        "Name": "DDBExportFormat",
        "Fields": [
          {
            "Key": "type",
            "StringValue": "DynamoDBExportDataFormat"
          }
        ]
      },
      {
        "Id": "TableBackupActivity",
        "Name": "TableBackupActivity",
        "Fields": [
          {
            "Key": "resizeClusterBeforeRunning",
            "StringValue": "true"
          },
          {
            "Key": "type",
            "StringValue": "HiveCopyActivity"
          },
          {
            "Key": "input",
            "RefValue": "DDBSourceTable"
          },
          {
            "Key": "runsOn",
            "RefValue": "EmrClusterForBackup"
          },
          {
            "Key": "output",
            "RefValue": "S3BackupLocation"
          }
        ]
      },
      {
        "Id": "DefaultSchedule",
        "Name": "RunOnce",
        "Fields": [
          {
            "Key": "occurrences",
            "StringValue": "1"
          },
          {
            "Key": "startAt",
            "StringValue": "FIRST_ACTIVATION_DATE_TIME"
          },
          {
            "Key": "type",
            "StringValue": "Schedule"
          },
          {
            "Key": "period",
            "StringValue": "1 Day"
          }
        ]
      },
      {
        "Id": "Default",
        "Name": "Default",
        "Fields": [
          {
            "Key": "type",
            "StringValue": "Default"
          },
          {
            "Key": "scheduleType",
            "StringValue": "cron"
          },
          {
            "Key": "failureAndRerunMode",
            "StringValue": "CASCADE"
          },
          {
            "Key": "role",
            "StringValue": "DataPipelineDefaultRole"
          },
          {
            "Key": "resourceRole",
            "StringValue": "DataPipelineDefaultResourceRole"
          },
          {
            "Key": "schedule",
            "RefValue": "DefaultSchedule"
          }
        ]
      },
      {
        "Id": "EmrClusterForBackup",
        "Name": "EmrClusterForBackup",
        "Fields": [
          {
            "Key": "terminateAfter",
            "StringValue": "2 Hours"
          },
          {
            "Key": "amiVersion",
            "StringValue": "3.3.2"
          },
          {
            "Key": "masterInstanceType",
            "StringValue": "m1.medium"
          },
          {
            "Key": "coreInstanceType",
            "StringValue": "m1.medium"
          },
          {
            "Key": "coreInstanceCount",
            "StringValue": "1"
          },
          {
            "Key": "type",
            "StringValue": "EmrCluster"
          }
        ]
      }
    ]
  }
}
```

### 
<a name="aws-resource-datapipeline-pipeline--examples--"></a>

#### YAML
<a name="aws-resource-datapipeline-pipeline--examples----yaml"></a>

```
DynamoDBInputS3OutputHive: 
  Type: AWS::DataPipeline::Pipeline
  Properties: 
    Name: DynamoDBInputS3OutputHive
    Description: "Pipeline to backup DynamoDB data to S3"
    Activate: true
    ParameterObjects: 
      - 
        Id: "myDDBReadThroughputRatio"
        Attributes: 
          - 
            Key: "description"
            StringValue: "DynamoDB read throughput ratio"
          - 
            Key: "type"
            StringValue: "Double"
          - 
            Key: "default"
            StringValue: "0.2"
      - 
        Id: "myOutputS3Loc"
        Attributes: 
          - 
            Key: "description"
            StringValue: "S3 output bucket"
          - 
            Key: "type"
            StringValue: "AWS::S3::ObjectKey"
          - 
            Key: "default"
            StringValue: 
              Fn::Join: 
                - ""
                - 
                  - "s3://"
                  - 
                    Ref: "S3OutputLoc"
      - 
        Id: "myDDBTableName"
        Attributes: 
          - 
            Key: "description"
            StringValue: "DynamoDB Table Name "
          - 
            Key: "type"
            StringValue: "String"
    ParameterValues: 
      - 
        Id: "myDDBTableName"
        StringValue: 
          Ref: "TableName"
    PipelineObjects: 
      - 
        Id: "S3BackupLocation"
        Name: "Copy data to this S3 location"
        Fields: 
          - 
            Key: "type"
            StringValue: "S3DataNode"
          - 
            Key: "dataFormat"
            RefValue: "DDBExportFormat"
          - 
            Key: "directoryPath"
            StringValue: "#{myOutputS3Loc}/#{format(@scheduledStartTime, 'YYYY-MM-dd-HH-mm-ss')}"
      - 
        Id: "DDBSourceTable"
        Name: "DDBSourceTable"
        Fields: 
          - 
            Key: "tableName"
            StringValue: "#{myDDBTableName}"
          - 
            Key: "type"
            StringValue: "DynamoDBDataNode"
          - 
            Key: "dataFormat"
            RefValue: "DDBExportFormat"
          - 
            Key: "readThroughputPercent"
            StringValue: "#{myDDBReadThroughputRatio}"
      - 
        Id: "DDBExportFormat"
        Name: "DDBExportFormat"
        Fields: 
          - 
            Key: "type"
            StringValue: "DynamoDBExportDataFormat"
      - 
        Id: "TableBackupActivity"
        Name: "TableBackupActivity"
        Fields: 
          - 
            Key: "resizeClusterBeforeRunning"
            StringValue: "true"
          - 
            Key: "type"
            StringValue: "HiveCopyActivity"
          - 
            Key: "input"
            RefValue: "DDBSourceTable"
          - 
            Key: "runsOn"
            RefValue: "EmrClusterForBackup"
          - 
            Key: "output"
            RefValue: "S3BackupLocation"
      - 
        Id: "DefaultSchedule"
        Name: "RunOnce"
        Fields: 
          - 
            Key: "occurrences"
            StringValue: "1"
          - 
            Key: "startAt"
            StringValue: "FIRST_ACTIVATION_DATE_TIME"
          - 
            Key: "type"
            StringValue: "Schedule"
          - 
            Key: "period"
            StringValue: "1 Day"
      - 
        Id: "Default"
        Name: "Default"
        Fields: 
          - 
            Key: "type"
            StringValue: "Default"
          - 
            Key: "scheduleType"
            StringValue: "cron"
          - 
            Key: "failureAndRerunMode"
            StringValue: "CASCADE"
          - 
            Key: "role"
            StringValue: "DataPipelineDefaultRole"
          - 
            Key: "resourceRole"
            StringValue: "DataPipelineDefaultResourceRole"
          - 
            Key: "schedule"
            RefValue: "DefaultSchedule"
      - 
        Id: "EmrClusterForBackup"
        Name: "EmrClusterForBackup"
        Fields: 
          - 
            Key: "terminateAfter"
            StringValue: "2 Hours"
          - 
            Key: "amiVersion"
            StringValue: "3.3.2"
          - 
            Key: "masterInstanceType"
            StringValue: "m1.medium"
          - 
            Key: "coreInstanceType"
            StringValue: "m1.medium"
          - 
            Key: "coreInstanceCount"
            StringValue: "1"
          - 
            Key: "type"
            StringValue: "EmrCluster"
```

## See also
<a name="aws-resource-datapipeline-pipeline--seealso"></a>
+ [Pipeline Object Reference](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-pipeline-objects.html) in the *AWS Data Pipeline Developer Guide*.
+ [PutPipelineDefinition](https://docs.aws.amazon.com/datapipeline/latest/APIReference/API_PutPipelineDefinition.html) in the *AWS Data Pipeline API Reference*.



# AWS::DataPipeline::Pipeline Field
<a name="aws-properties-datapipeline-pipeline-field"></a>

A key-value pair that describes a property of a `PipelineObject`. The value is specified as either a string value (`StringValue`) or a reference to another object (`RefValue`) but not as both. To view fields for a data pipeline object, see [Pipeline Object Reference](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-pipeline-objects.html) in the *AWS Data Pipeline Developer Guide*.

## Syntax
<a name="aws-properties-datapipeline-pipeline-field-syntax"></a>

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

### JSON
<a name="aws-properties-datapipeline-pipeline-field-syntax.json"></a>

```
{
  "[Key](#cfn-datapipeline-pipeline-field-key)" : String,
  "[RefValue](#cfn-datapipeline-pipeline-field-refvalue)" : String,
  "[StringValue](#cfn-datapipeline-pipeline-field-stringvalue)" : String
}
```

### YAML
<a name="aws-properties-datapipeline-pipeline-field-syntax.yaml"></a>

```
  [Key](#cfn-datapipeline-pipeline-field-key): String
  [RefValue](#cfn-datapipeline-pipeline-field-refvalue): String
  [StringValue](#cfn-datapipeline-pipeline-field-stringvalue): 
    String
```

## Properties
<a name="aws-properties-datapipeline-pipeline-field-properties"></a>

`Key`  <a name="cfn-datapipeline-pipeline-field-key"></a>
Specifies the name of a field for a particular object. To view valid values for a particular field, see [Pipeline Object Reference](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-pipeline-objects.html) in the *AWS Data Pipeline Developer Guide*.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RefValue`  <a name="cfn-datapipeline-pipeline-field-refvalue"></a>
A field value that you specify as an identifier of another object in the same pipeline definition.  
You can specify the field value as either a string value (`StringValue`) or a reference to another object (`RefValue`), but not both.
Required if the key that you are using requires it.   
*Required*: Conditional  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StringValue`  <a name="cfn-datapipeline-pipeline-field-stringvalue"></a>
A field value that you specify as a string. To view valid values for a particular field, see [Pipeline Object Reference](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-pipeline-objects.html) in the *AWS Data Pipeline Developer Guide*.  
You can specify the field value as either a string value (`StringValue`) or a reference to another object (`RefValue`), but not both.
Required if the key that you are using requires it.  
*Required*: Conditional  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `0`  
*Maximum*: `10240`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataPipeline::Pipeline ParameterAttribute
<a name="aws-properties-datapipeline-pipeline-parameterattribute"></a>

`Attribute` is a property of `ParameterObject` that defines the attributes of a parameter object as key-value pairs.

## Syntax
<a name="aws-properties-datapipeline-pipeline-parameterattribute-syntax"></a>

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

### JSON
<a name="aws-properties-datapipeline-pipeline-parameterattribute-syntax.json"></a>

```
{
  "[Key](#cfn-datapipeline-pipeline-parameterattribute-key)" : String,
  "[StringValue](#cfn-datapipeline-pipeline-parameterattribute-stringvalue)" : String
}
```

### YAML
<a name="aws-properties-datapipeline-pipeline-parameterattribute-syntax.yaml"></a>

```
  [Key](#cfn-datapipeline-pipeline-parameterattribute-key): String
  [StringValue](#cfn-datapipeline-pipeline-parameterattribute-stringvalue): 
    String
```

## Properties
<a name="aws-properties-datapipeline-pipeline-parameterattribute-properties"></a>

`Key`  <a name="cfn-datapipeline-pipeline-parameterattribute-key"></a>
The field identifier.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StringValue`  <a name="cfn-datapipeline-pipeline-parameterattribute-stringvalue"></a>
The field value, expressed as a String.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `0`  
*Maximum*: `10240`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataPipeline::Pipeline ParameterObject
<a name="aws-properties-datapipeline-pipeline-parameterobject"></a>

Contains information about a parameter object.

## Syntax
<a name="aws-properties-datapipeline-pipeline-parameterobject-syntax"></a>

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

### JSON
<a name="aws-properties-datapipeline-pipeline-parameterobject-syntax.json"></a>

```
{
  "[Attributes](#cfn-datapipeline-pipeline-parameterobject-attributes)" : [ ParameterAttribute, ... ],
  "[Id](#cfn-datapipeline-pipeline-parameterobject-id)" : String
}
```

### YAML
<a name="aws-properties-datapipeline-pipeline-parameterobject-syntax.yaml"></a>

```
  [Attributes](#cfn-datapipeline-pipeline-parameterobject-attributes): 
    - ParameterAttribute
  [Id](#cfn-datapipeline-pipeline-parameterobject-id): String
```

## Properties
<a name="aws-properties-datapipeline-pipeline-parameterobject-properties"></a>

`Attributes`  <a name="cfn-datapipeline-pipeline-parameterobject-attributes"></a>
The attributes of the parameter object.  
*Required*: Yes  
*Type*: Array of [ParameterAttribute](aws-properties-datapipeline-pipeline-parameterattribute.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Id`  <a name="cfn-datapipeline-pipeline-parameterobject-id"></a>
The ID of the parameter object.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `1`  
*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::DataPipeline::Pipeline ParameterValue
<a name="aws-properties-datapipeline-pipeline-parametervalue"></a>

A value or list of parameter values.

## Syntax
<a name="aws-properties-datapipeline-pipeline-parametervalue-syntax"></a>

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

### JSON
<a name="aws-properties-datapipeline-pipeline-parametervalue-syntax.json"></a>

```
{
  "[Id](#cfn-datapipeline-pipeline-parametervalue-id)" : String,
  "[StringValue](#cfn-datapipeline-pipeline-parametervalue-stringvalue)" : String
}
```

### YAML
<a name="aws-properties-datapipeline-pipeline-parametervalue-syntax.yaml"></a>

```
  [Id](#cfn-datapipeline-pipeline-parametervalue-id): String
  [StringValue](#cfn-datapipeline-pipeline-parametervalue-stringvalue): 
    String
```

## Properties
<a name="aws-properties-datapipeline-pipeline-parametervalue-properties"></a>

`Id`  <a name="cfn-datapipeline-pipeline-parametervalue-id"></a>
The ID of the parameter value.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StringValue`  <a name="cfn-datapipeline-pipeline-parametervalue-stringvalue"></a>
The field value, expressed as a String.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*`  
*Minimum*: `0`  
*Maximum*: `10240`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::DataPipeline::Pipeline PipelineObject
<a name="aws-properties-datapipeline-pipeline-pipelineobject"></a>

PipelineObject is property of the AWS::DataPipeline::Pipeline resource that contains information about a pipeline object. This can be a logical, physical, or physical attempt pipeline object. The complete set of components of a pipeline defines the pipeline.

## Syntax
<a name="aws-properties-datapipeline-pipeline-pipelineobject-syntax"></a>

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

### JSON
<a name="aws-properties-datapipeline-pipeline-pipelineobject-syntax.json"></a>

```
{
  "[Fields](#cfn-datapipeline-pipeline-pipelineobject-fields)" : [ Field, ... ],
  "[Id](#cfn-datapipeline-pipeline-pipelineobject-id)" : String,
  "[Name](#cfn-datapipeline-pipeline-pipelineobject-name)" : String
}
```

### YAML
<a name="aws-properties-datapipeline-pipeline-pipelineobject-syntax.yaml"></a>

```
  [Fields](#cfn-datapipeline-pipeline-pipelineobject-fields): 
    - Field
  [Id](#cfn-datapipeline-pipeline-pipelineobject-id): String
  [Name](#cfn-datapipeline-pipeline-pipelineobject-name): String
```

## Properties
<a name="aws-properties-datapipeline-pipeline-pipelineobject-properties"></a>

`Fields`  <a name="cfn-datapipeline-pipeline-pipelineobject-fields"></a>
Key-value pairs that define the properties of the object.  
*Required*: Yes  
*Type*: Array of [Field](aws-properties-datapipeline-pipeline-field.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Id`  <a name="cfn-datapipeline-pipeline-pipelineobject-id"></a>
The ID of the object.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\n\t]*`  
*Minimum*: `1`  
*Maximum*: `1024`  
*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-datapipeline-pipeline-pipelineobject-name"></a>
The name of the object.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\n\t]*`  
*Minimum*: `1`  
*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::DataPipeline::Pipeline PipelineTag
<a name="aws-properties-datapipeline-pipeline-pipelinetag"></a>

A list of arbitrary tags (key-value pairs) to associate with the pipeline, which you can use to control permissions. For more information, see [Controlling Access to Pipelines and Resources](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html) in the *AWS Data Pipeline Developer Guide*. 

## Syntax
<a name="aws-properties-datapipeline-pipeline-pipelinetag-syntax"></a>

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

### JSON
<a name="aws-properties-datapipeline-pipeline-pipelinetag-syntax.json"></a>

```
{
  "[Key](#cfn-datapipeline-pipeline-pipelinetag-key)" : String,
  "[Value](#cfn-datapipeline-pipeline-pipelinetag-value)" : String
}
```

### YAML
<a name="aws-properties-datapipeline-pipeline-pipelinetag-syntax.yaml"></a>

```
  [Key](#cfn-datapipeline-pipeline-pipelinetag-key): String
  [Value](#cfn-datapipeline-pipeline-pipelinetag-value): String
```

## Properties
<a name="aws-properties-datapipeline-pipeline-pipelinetag-properties"></a>

`Key`  <a name="cfn-datapipeline-pipeline-pipelinetag-key"></a>
The key name of a tag.  
*Required*: Yes  
*Type*: String  
*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-datapipeline-pipeline-pipelinetag-value"></a>
The value to associate with the key name.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)