

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::AppSync::SourceApiAssociation
<a name="aws-resource-appsync-sourceapiassociation"></a>

Describes the configuration of a source API. A source API is a GraphQL API that is linked to a merged API. There can be multiple source APIs attached to each merged API. When linked to a merged API, the source API's schema, data sources, and resolvers will be combined with other linked source API data to form a new, singular API. Source APIs can originate from your account or from other accounts via Resource Access Manager. 

## Syntax
<a name="aws-resource-appsync-sourceapiassociation-syntax"></a>

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

### JSON
<a name="aws-resource-appsync-sourceapiassociation-syntax.json"></a>

```
{
  "Type" : "AWS::AppSync::SourceApiAssociation",
  "Properties" : {
      "[Description](#cfn-appsync-sourceapiassociation-description)" : String,
      "[MergedApiIdentifier](#cfn-appsync-sourceapiassociation-mergedapiidentifier)" : String,
      "[SourceApiAssociationConfig](#cfn-appsync-sourceapiassociation-sourceapiassociationconfig)" : SourceApiAssociationConfig,
      "[SourceApiIdentifier](#cfn-appsync-sourceapiassociation-sourceapiidentifier)" : String
    }
}
```

### YAML
<a name="aws-resource-appsync-sourceapiassociation-syntax.yaml"></a>

```
Type: AWS::AppSync::SourceApiAssociation
Properties:
  [Description](#cfn-appsync-sourceapiassociation-description): String
  [MergedApiIdentifier](#cfn-appsync-sourceapiassociation-mergedapiidentifier): String
  [SourceApiAssociationConfig](#cfn-appsync-sourceapiassociation-sourceapiassociationconfig): 
    SourceApiAssociationConfig
  [SourceApiIdentifier](#cfn-appsync-sourceapiassociation-sourceapiidentifier): String
```

## Properties
<a name="aws-resource-appsync-sourceapiassociation-properties"></a>

`Description`  <a name="cfn-appsync-sourceapiassociation-description"></a>
The description field of the association configuration.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MergedApiIdentifier`  <a name="cfn-appsync-sourceapiassociation-mergedapiidentifier"></a>
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs from other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SourceApiAssociationConfig`  <a name="cfn-appsync-sourceapiassociation-sourceapiassociationconfig"></a>
The `SourceApiAssociationConfig` object data.  
*Required*: No  
*Type*: [SourceApiAssociationConfig](aws-properties-appsync-sourceapiassociation-sourceapiassociationconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceApiIdentifier`  <a name="cfn-appsync-sourceapiassociation-sourceapiidentifier"></a>
The identifier of the AppSync Source API. This is generated by the AppSync service. In most cases, source APIs (especially in your account) only require the API ID value or ARN of the source API. However, source APIs from other accounts (cross-account use cases) strictly require the full resource ARN of the source API.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-appsync-sourceapiassociation-return-values"></a>

### Ref
<a name="aws-resource-appsync-sourceapiassociation-return-values-ref"></a>

When you pass the logical ID of an `AWS::AppSync::SourceApiAssociation` resource to the intrinsic `Ref` function, the function returns the ARN of the source API association.

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

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

`Fn::GetAtt` returns a value for a specified attribute of this type. The following are the available attributes and sample return values. 

For more information about using `Fn::GetAtt`, see [Fn::GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt). 

#### 
<a name="aws-resource-appsync-sourceapiassociation-return-values-fn--getatt-fn--getatt"></a>

`AssociationArn`  <a name="AssociationArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the source API association.

`AssociationId`  <a name="AssociationId-fn::getatt"></a>
The ID generated by the AppSync service for the source API association.

`LastSuccessfulMergeDate`  <a name="LastSuccessfulMergeDate-fn::getatt"></a>
The datetime value of the last successful merge of the source API association. The result will be in UTC format and your local time zone.

`MergedApiArn`  <a name="MergedApiArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the merged API.

`MergedApiId`  <a name="MergedApiId-fn::getatt"></a>
The ID of the merged API.

`SourceApiArn`  <a name="SourceApiArn-fn::getatt"></a>
The source API's Amazon Resource Name (ARN) value.

`SourceApiAssociationStatus`  <a name="SourceApiAssociationStatus-fn::getatt"></a>
The state of the source API association.  
The following values are valid:  
 `MERGE_SCHEDULED | MERGE_FAILED | MERGE_SUCCESS | MERGE_IN_PROGRESS | AUTO_MERGE_SCHEDULE_FAILED | DELETION_SCHEDULED | DELETION_IN_PROGRESS | DELETION_FAILED` 

`SourceApiAssociationStatusDetail`  <a name="SourceApiAssociationStatusDetail-fn::getatt"></a>
The message describing the state of the source API association.

`SourceApiId`  <a name="SourceApiId-fn::getatt"></a>
The ID of the source API.

# AWS::AppSync::SourceApiAssociation SourceApiAssociationConfig
<a name="aws-properties-appsync-sourceapiassociation-sourceapiassociationconfig"></a>

Describes properties used to specify configurations related to a source API. This is a property of the `AWS:AppSync:SourceApiAssociation` type.

## Syntax
<a name="aws-properties-appsync-sourceapiassociation-sourceapiassociationconfig-syntax"></a>

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

### JSON
<a name="aws-properties-appsync-sourceapiassociation-sourceapiassociationconfig-syntax.json"></a>

```
{
  "[MergeType](#cfn-appsync-sourceapiassociation-sourceapiassociationconfig-mergetype)" : String
}
```

### YAML
<a name="aws-properties-appsync-sourceapiassociation-sourceapiassociationconfig-syntax.yaml"></a>

```
  [MergeType](#cfn-appsync-sourceapiassociation-sourceapiassociationconfig-mergetype): String
```

## Properties
<a name="aws-properties-appsync-sourceapiassociation-sourceapiassociationconfig-properties"></a>

`MergeType`  <a name="cfn-appsync-sourceapiassociation-sourceapiassociationconfig-mergetype"></a>
The property that indicates which merging option is enabled in the source API association.  
Valid merge types are `MANUAL_MERGE` (default) and `AUTO_MERGE`. Manual merges are the default behavior and require the user to trigger any changes from the source APIs to the merged API manually. Auto merges subscribe the merged API to the changes performed on the source APIs so that any change in the source APIs are also made to the merged API. Auto merges use `MergedApiExecutionRoleArn` to perform merge operations.  
The following values are valid:  
 `MANUAL_MERGE | AUTO_MERGE`   
*Required*: No  
*Type*: String  
*Allowed values*: `AUTO_MERGE | MANUAL_MERGE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)