

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 App Runner
<a name="AWS_AppRunner"></a>

**Resource types**
+ [AWS::AppRunner::AutoScalingConfiguration](aws-resource-apprunner-autoscalingconfiguration.md)
+ [AWS::AppRunner::ObservabilityConfiguration](aws-resource-apprunner-observabilityconfiguration.md)
+ [AWS::AppRunner::Service](aws-resource-apprunner-service.md)
+ [AWS::AppRunner::VpcConnector](aws-resource-apprunner-vpcconnector.md)
+ [AWS::AppRunner::VpcIngressConnection](aws-resource-apprunner-vpcingressconnection.md)

# AWS::AppRunner::AutoScalingConfiguration
<a name="aws-resource-apprunner-autoscalingconfiguration"></a>

The `AWS::AppRunner::AutoScalingConfiguration` resource is an AWS App Runner resource type that specifies an App Runner automatic scaling configuration.

App Runner requires this resource to set non-default auto scaling settings for instances used to process the web requests. You can share an auto scaling configuration across multiple services.

Create multiple revisions of a configuration by calling this action multiple times using the same `AutoScalingConfigurationName`. The call returns incremental `AutoScalingConfigurationRevision` values. When you create a service and configure an auto scaling configuration resource, the service uses the latest active revision of the auto scaling configuration by default. You can optionally configure the service to use a specific revision.

Configure a higher `MinSize` to increase the spread of your App Runner service over more Availability Zones in the AWS Region. The tradeoff is a higher minimal cost.

Configure a lower `MaxSize` to control your cost. The tradeoff is lower responsiveness during peak demand.

## Syntax
<a name="aws-resource-apprunner-autoscalingconfiguration-syntax"></a>

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

### JSON
<a name="aws-resource-apprunner-autoscalingconfiguration-syntax.json"></a>

```
{
  "Type" : "AWS::AppRunner::AutoScalingConfiguration",
  "Properties" : {
      "[AutoScalingConfigurationName](#cfn-apprunner-autoscalingconfiguration-autoscalingconfigurationname)" : String,
      "[MaxConcurrency](#cfn-apprunner-autoscalingconfiguration-maxconcurrency)" : Integer,
      "[MaxSize](#cfn-apprunner-autoscalingconfiguration-maxsize)" : Integer,
      "[MinSize](#cfn-apprunner-autoscalingconfiguration-minsize)" : Integer,
      "[Tags](#cfn-apprunner-autoscalingconfiguration-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-apprunner-autoscalingconfiguration-syntax.yaml"></a>

```
Type: AWS::AppRunner::AutoScalingConfiguration
Properties:
  [AutoScalingConfigurationName](#cfn-apprunner-autoscalingconfiguration-autoscalingconfigurationname): String
  [MaxConcurrency](#cfn-apprunner-autoscalingconfiguration-maxconcurrency): Integer
  [MaxSize](#cfn-apprunner-autoscalingconfiguration-maxsize): Integer
  [MinSize](#cfn-apprunner-autoscalingconfiguration-minsize): Integer
  [Tags](#cfn-apprunner-autoscalingconfiguration-tags): 
    - Tag
```

## Properties
<a name="aws-resource-apprunner-autoscalingconfiguration-properties"></a>

`AutoScalingConfigurationName`  <a name="cfn-apprunner-autoscalingconfiguration-autoscalingconfigurationname"></a>
The customer-provided auto scaling configuration name. It can be used in multiple revisions of a configuration.  
*Required*: No  
*Type*: String  
*Pattern*: `[A-Za-z0-9][A-Za-z0-9\-_]{3,31}`  
*Minimum*: `4`  
*Maximum*: `32`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MaxConcurrency`  <a name="cfn-apprunner-autoscalingconfiguration-maxconcurrency"></a>
The maximum number of concurrent requests that an instance processes. If the number of concurrent requests exceeds this limit, App Runner scales the service up.  
*Required*: No  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MaxSize`  <a name="cfn-apprunner-autoscalingconfiguration-maxsize"></a>
The maximum number of instances that a service scales up to. At most `MaxSize` instances actively serve traffic for your service.  
*Required*: No  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MinSize`  <a name="cfn-apprunner-autoscalingconfiguration-minsize"></a>
The minimum number of instances that App Runner provisions for a service. The service always has at least `MinSize` provisioned instances. Some of them actively serve traffic. The rest of them (provisioned and inactive instances) are a cost-effective compute capacity reserve and are ready to be quickly activated. You pay for memory usage of all the provisioned instances. You pay for CPU usage of only the active subset.  
App Runner temporarily doubles the number of provisioned instances during deployments, to maintain the same capacity for both old and new code.  
*Required*: No  
*Type*: Integer  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-apprunner-autoscalingconfiguration-tags"></a>
A list of metadata items that you can associate with your auto scaling configuration resource. A tag is a key-value pair.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-apprunner-autoscalingconfiguration-tag.md)  
*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-apprunner-autoscalingconfiguration-return-values"></a>

### Ref
<a name="aws-resource-apprunner-autoscalingconfiguration-return-values-ref"></a>

When the logical ID of this resource is provided to the `Ref` intrinsic function, `Ref` returns the resource name.

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-apprunner-autoscalingconfiguration-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function 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 the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-apprunner-autoscalingconfiguration-return-values-fn--getatt-fn--getatt"></a>

`AutoScalingConfigurationArn`  <a name="AutoScalingConfigurationArn-fn::getatt"></a>
 The Amazon Resource Name (ARN) of this auto scaling configuration. 

`AutoScalingConfigurationRevision`  <a name="AutoScalingConfigurationRevision-fn::getatt"></a>
 The revision of this auto scaling configuration. It's unique among all the active configurations that share the same `AutoScalingConfigurationName`. 

`Latest`  <a name="Latest-fn::getatt"></a>
 It's set to true for the configuration with the highest `Revision` among all configurations that share the same `AutoScalingConfigurationName`. It's set to false otherwise. App Runner temporarily doubles the number of provisioned instances during deployments, to maintain the same capacity for both old and new code. 

## Examples
<a name="aws-resource-apprunner-autoscalingconfiguration--examples"></a>

### Auto Scaling configuration
<a name="aws-resource-apprunner-autoscalingconfiguration--examples--Auto_Scaling_configuration"></a>

This example illustrates setting up an automatic scaling configuration for your App Runner service.

#### JSON
<a name="aws-resource-apprunner-autoscalingconfiguration--examples--Auto_Scaling_configuration--json"></a>

```
{
  "Type": "AWS::AppRunner::AutoScalingConfiguration",
  "Properties": {
    "AutoScalingConfigurationName": "AUTO_SCALING_CONFIGURATION_NAME",
    "MaxConcurrency": 100,
    "MaxSize": 25,
    "MinSize": 1
  }
}
```

#### YAML
<a name="aws-resource-apprunner-autoscalingconfiguration--examples--Auto_Scaling_configuration--yaml"></a>

```
Type: AWS::AppRunner::AutoScalingConfiguration
Properties:
  AutoScalingConfigurationName: "AUTO_SCALING_CONFIGURATION_NAME"
  MaxConcurrency: 100
  MaxSize: 25
  MinSize: 1
```

## See also
<a name="aws-resource-apprunner-autoscalingconfiguration--seealso"></a>
+ [Managing App Runner automatic scaling](https://docs.aws.amazon.com/apprunner/latest/dg/manage-autoscaling.html) in the *AWS App Runner Developer Guide*

# AWS::AppRunner::AutoScalingConfiguration Tag
<a name="aws-properties-apprunner-autoscalingconfiguration-tag"></a>

Describes a tag that is applied to an AWS App Runner resource. A tag is a metadata item consisting of a key-value pair.

## Syntax
<a name="aws-properties-apprunner-autoscalingconfiguration-tag-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-autoscalingconfiguration-tag-syntax.json"></a>

```
{
  "[Key](#cfn-apprunner-autoscalingconfiguration-tag-key)" : String,
  "[Value](#cfn-apprunner-autoscalingconfiguration-tag-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-autoscalingconfiguration-tag-syntax.yaml"></a>

```
  [Key](#cfn-apprunner-autoscalingconfiguration-tag-key): String
  [Value](#cfn-apprunner-autoscalingconfiguration-tag-value): String
```

## Properties
<a name="aws-properties-apprunner-autoscalingconfiguration-tag-properties"></a>

`Key`  <a name="cfn-apprunner-autoscalingconfiguration-tag-key"></a>
The key of the tag assigned to the `AutoScalingConfiguration` resource of the App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?!aws:).+`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-apprunner-autoscalingconfiguration-tag-value"></a>
The value of the tag assigned to the `AutoScalingConfiguration` resource of the App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::AppRunner::ObservabilityConfiguration
<a name="aws-resource-apprunner-observabilityconfiguration"></a>

The `AWS::AppRunner::ObservabilityConfiguration` resource is an AWS App Runner resource type that specifies an App Runner observability configuration.

App Runner requires this resource when you specify App Runner services and you want to enable non-default observability features. You can share an observability configuration across multiple services.

Create multiple revisions of a configuration by specifying this resource multiple times using the same `ObservabilityConfigurationName`. App Runner creates multiple resources with incremental `ObservabilityConfigurationRevision` values. When you specify a service and configure an observability configuration resource, the service uses the latest active revision of the observability configuration by default. You can optionally configure the service to use a specific revision.

The observability configuration resource is designed to configure multiple features (currently one feature, tracing). This resource takes optional parameters that describe the configuration of these features (currently one parameter, `TraceConfiguration`). If you don't specify a feature parameter, App Runner doesn't enable the feature.

## Syntax
<a name="aws-resource-apprunner-observabilityconfiguration-syntax"></a>

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

### JSON
<a name="aws-resource-apprunner-observabilityconfiguration-syntax.json"></a>

```
{
  "Type" : "AWS::AppRunner::ObservabilityConfiguration",
  "Properties" : {
      "[ObservabilityConfigurationName](#cfn-apprunner-observabilityconfiguration-observabilityconfigurationname)" : String,
      "[Tags](#cfn-apprunner-observabilityconfiguration-tags)" : [ Tag, ... ],
      "[TraceConfiguration](#cfn-apprunner-observabilityconfiguration-traceconfiguration)" : TraceConfiguration
    }
}
```

### YAML
<a name="aws-resource-apprunner-observabilityconfiguration-syntax.yaml"></a>

```
Type: AWS::AppRunner::ObservabilityConfiguration
Properties:
  [ObservabilityConfigurationName](#cfn-apprunner-observabilityconfiguration-observabilityconfigurationname): String
  [Tags](#cfn-apprunner-observabilityconfiguration-tags): 
    - Tag
  [TraceConfiguration](#cfn-apprunner-observabilityconfiguration-traceconfiguration): 
    TraceConfiguration
```

## Properties
<a name="aws-resource-apprunner-observabilityconfiguration-properties"></a>

`ObservabilityConfigurationName`  <a name="cfn-apprunner-observabilityconfiguration-observabilityconfigurationname"></a>
A name for the observability configuration. When you use it for the first time in an AWS Region, App Runner creates revision number `1` of this name. When you use the same name in subsequent calls, App Runner creates incremental revisions of the configuration.  
The name `DefaultConfiguration` is reserved. You can't use it to create a new observability configuration, and you can't create a revision of it.  
When you want to use your own observability configuration for your App Runner service, *create a configuration with a different name*, and then provide it when you create or update your service.
If you don't specify a name, CloudFormation generates a name for your observability configuration.  
*Required*: No  
*Type*: String  
*Pattern*: `[A-Za-z0-9][A-Za-z0-9\-_]{3,31}`  
*Minimum*: `4`  
*Maximum*: `32`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-apprunner-observabilityconfiguration-tags"></a>
A list of metadata items that you can associate with your observability configuration resource. A tag is a key-value pair.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-apprunner-observabilityconfiguration-tag.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TraceConfiguration`  <a name="cfn-apprunner-observabilityconfiguration-traceconfiguration"></a>
The configuration of the tracing feature within this observability configuration. If you don't specify it, App Runner doesn't enable tracing.  
*Required*: No  
*Type*: [TraceConfiguration](aws-properties-apprunner-observabilityconfiguration-traceconfiguration.md)  
*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-apprunner-observabilityconfiguration-return-values"></a>

### Ref
<a name="aws-resource-apprunner-observabilityconfiguration-return-values-ref"></a>

When the logical ID of this resource is provided to the `Ref` intrinsic function, `Ref` returns the resource name.

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-apprunner-observabilityconfiguration-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function 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 the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-apprunner-observabilityconfiguration-return-values-fn--getatt-fn--getatt"></a>

`Latest`  <a name="Latest-fn::getatt"></a>
It's set to `true` for the configuration with the highest `Revision` among all configurations that share the same `ObservabilityConfigurationName`. It's set to `false` otherwise.

`ObservabilityConfigurationArn`  <a name="ObservabilityConfigurationArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of this observability configuration.

`ObservabilityConfigurationRevision`  <a name="ObservabilityConfigurationRevision-fn::getatt"></a>
The revision of this observability configuration. It's unique among all the active configurations (`"Status": "ACTIVE"`) that share the same `ObservabilityConfigurationName`.

## Examples
<a name="aws-resource-apprunner-observabilityconfiguration--examples"></a>

### Observability configuration to enable tracing
<a name="aws-resource-apprunner-observabilityconfiguration--examples--Observability_configuration_to_enable_tracing"></a>

This example illustrates creating an observability configuration that enables tracing using AWS X-Ray.

#### JSON
<a name="aws-resource-apprunner-observabilityconfiguration--examples--Observability_configuration_to_enable_tracing--json"></a>

```
{
  "Type": "AWS::AppRunner::ObservabilityConfiguration",
  "Properties": {
    "ObservabilityConfigurationName": "xray-tracing",
    "TraceConfiguration": {
      "Vendor": "AWSXRAY"
    }
  }
}
```

#### YAML
<a name="aws-resource-apprunner-observabilityconfiguration--examples--Observability_configuration_to_enable_tracing--yaml"></a>

```
Type: AWS::AppRunner::ObservabilityConfiguration
Properties:
  ObservabilityConfigurationName: xray-tracing
  TraceConfiguration:
    Vendor: AWSXRAY
```

## See also
<a name="aws-resource-apprunner-observabilityconfiguration--seealso"></a>
+ [Tracing for your App Runner application with X-Ray](https://docs.aws.amazon.com/apprunner/latest/dg/monitor-xray.html) in the *AWS App Runner Developer Guide*

# AWS::AppRunner::ObservabilityConfiguration Tag
<a name="aws-properties-apprunner-observabilityconfiguration-tag"></a>

Describes a tag that is applied to an AWS App Runner resource. A tag is a metadata item consisting of a key-value pair.

## Syntax
<a name="aws-properties-apprunner-observabilityconfiguration-tag-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-observabilityconfiguration-tag-syntax.json"></a>

```
{
  "[Key](#cfn-apprunner-observabilityconfiguration-tag-key)" : String,
  "[Value](#cfn-apprunner-observabilityconfiguration-tag-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-observabilityconfiguration-tag-syntax.yaml"></a>

```
  [Key](#cfn-apprunner-observabilityconfiguration-tag-key): String
  [Value](#cfn-apprunner-observabilityconfiguration-tag-value): String
```

## Properties
<a name="aws-properties-apprunner-observabilityconfiguration-tag-properties"></a>

`Key`  <a name="cfn-apprunner-observabilityconfiguration-tag-key"></a>
The key of the tag.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?!aws:).+`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-apprunner-observabilityconfiguration-tag-value"></a>
The value of the tag.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::AppRunner::ObservabilityConfiguration TraceConfiguration
<a name="aws-properties-apprunner-observabilityconfiguration-traceconfiguration"></a>

Describes the configuration of the tracing feature within an AWS App Runner observability configuration.

## Syntax
<a name="aws-properties-apprunner-observabilityconfiguration-traceconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-observabilityconfiguration-traceconfiguration-syntax.json"></a>

```
{
  "[Vendor](#cfn-apprunner-observabilityconfiguration-traceconfiguration-vendor)" : String
}
```

### YAML
<a name="aws-properties-apprunner-observabilityconfiguration-traceconfiguration-syntax.yaml"></a>

```
  [Vendor](#cfn-apprunner-observabilityconfiguration-traceconfiguration-vendor): String
```

## Properties
<a name="aws-properties-apprunner-observabilityconfiguration-traceconfiguration-properties"></a>

`Vendor`  <a name="cfn-apprunner-observabilityconfiguration-traceconfiguration-vendor"></a>
The implementation provider chosen for tracing App Runner services.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `AWSXRAY`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::AppRunner::Service
<a name="aws-resource-apprunner-service"></a>

The `AWS::AppRunner::Service` resource is an AWS App Runner resource type that specifies an App Runner service.

## Syntax
<a name="aws-resource-apprunner-service-syntax"></a>

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

### JSON
<a name="aws-resource-apprunner-service-syntax.json"></a>

```
{
  "Type" : "AWS::AppRunner::Service",
  "Properties" : {
      "[AutoScalingConfigurationArn](#cfn-apprunner-service-autoscalingconfigurationarn)" : String,
      "[EncryptionConfiguration](#cfn-apprunner-service-encryptionconfiguration)" : EncryptionConfiguration,
      "[HealthCheckConfiguration](#cfn-apprunner-service-healthcheckconfiguration)" : HealthCheckConfiguration,
      "[InstanceConfiguration](#cfn-apprunner-service-instanceconfiguration)" : InstanceConfiguration,
      "[NetworkConfiguration](#cfn-apprunner-service-networkconfiguration)" : NetworkConfiguration,
      "[ObservabilityConfiguration](#cfn-apprunner-service-observabilityconfiguration)" : ServiceObservabilityConfiguration,
      "[ServiceName](#cfn-apprunner-service-servicename)" : String,
      "[SourceConfiguration](#cfn-apprunner-service-sourceconfiguration)" : SourceConfiguration,
      "[Tags](#cfn-apprunner-service-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-apprunner-service-syntax.yaml"></a>

```
Type: AWS::AppRunner::Service
Properties:
  [AutoScalingConfigurationArn](#cfn-apprunner-service-autoscalingconfigurationarn): String
  [EncryptionConfiguration](#cfn-apprunner-service-encryptionconfiguration): 
    EncryptionConfiguration
  [HealthCheckConfiguration](#cfn-apprunner-service-healthcheckconfiguration): 
    HealthCheckConfiguration
  [InstanceConfiguration](#cfn-apprunner-service-instanceconfiguration): 
    InstanceConfiguration
  [NetworkConfiguration](#cfn-apprunner-service-networkconfiguration): 
    NetworkConfiguration
  [ObservabilityConfiguration](#cfn-apprunner-service-observabilityconfiguration): 
    ServiceObservabilityConfiguration
  [ServiceName](#cfn-apprunner-service-servicename): String
  [SourceConfiguration](#cfn-apprunner-service-sourceconfiguration): 
    SourceConfiguration
  [Tags](#cfn-apprunner-service-tags): 
    - Tag
```

## Properties
<a name="aws-resource-apprunner-service-properties"></a>

`AutoScalingConfigurationArn`  <a name="cfn-apprunner-service-autoscalingconfigurationarn"></a>
The Amazon Resource Name (ARN) of an App Runner automatic scaling configuration resource that you want to associate with your service. If not provided, App Runner associates the latest revision of a default auto scaling configuration.  
Specify an ARN with a name and a revision number to associate that revision. For example: `arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/3`  
Specify just the name to associate the latest revision. For example: `arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability`  
*Required*: No  
*Type*: String  
*Pattern*: `arn:aws(-[\w]+)*:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[0-9]{12}:(\w|\/|-){1,1011}`  
*Minimum*: `1`  
*Maximum*: `1011`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`EncryptionConfiguration`  <a name="cfn-apprunner-service-encryptionconfiguration"></a>
An optional custom encryption key that App Runner uses to encrypt the copy of your source repository that it maintains and your service logs. By default, App Runner uses an AWS managed key.  
*Required*: No  
*Type*: [EncryptionConfiguration](aws-properties-apprunner-service-encryptionconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`HealthCheckConfiguration`  <a name="cfn-apprunner-service-healthcheckconfiguration"></a>
The settings for the health check that AWS App Runner performs to monitor the health of the App Runner service.  
*Required*: No  
*Type*: [HealthCheckConfiguration](aws-properties-apprunner-service-healthcheckconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InstanceConfiguration`  <a name="cfn-apprunner-service-instanceconfiguration"></a>
The runtime configuration of instances (scaling units) of your service.  
*Required*: No  
*Type*: [InstanceConfiguration](aws-properties-apprunner-service-instanceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NetworkConfiguration`  <a name="cfn-apprunner-service-networkconfiguration"></a>
Configuration settings related to network traffic of the web application that the App Runner service runs.  
*Required*: No  
*Type*: [NetworkConfiguration](aws-properties-apprunner-service-networkconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ObservabilityConfiguration`  <a name="cfn-apprunner-service-observabilityconfiguration"></a>
The observability configuration of your service.  
*Required*: No  
*Type*: [ServiceObservabilityConfiguration](aws-properties-apprunner-service-serviceobservabilityconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServiceName`  <a name="cfn-apprunner-service-servicename"></a>
A name for the App Runner service. It must be unique across all the running App Runner services in your AWS account in the AWS Region.  
If you don't specify a name, CloudFormation generates a name for your service.  
*Required*: No  
*Type*: String  
*Pattern*: `[A-Za-z0-9][A-Za-z0-9-_]{3,39}`  
*Minimum*: `4`  
*Maximum*: `40`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SourceConfiguration`  <a name="cfn-apprunner-service-sourceconfiguration"></a>
The source to deploy to the App Runner service. It can be a code or an image repository.  
*Required*: Yes  
*Type*: [SourceConfiguration](aws-properties-apprunner-service-sourceconfiguration.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-apprunner-service-tags"></a>
An optional list of metadata items that you can associate with the App Runner service resource. A tag is a key-value pair.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-apprunner-service-tag.md)  
*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-apprunner-service-return-values"></a>

### Ref
<a name="aws-resource-apprunner-service-return-values-ref"></a>

When the logical ID of this resource is provided to the `Ref` intrinsic function, `Ref` returns the ARN of the App Runner service.

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-apprunner-service-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function 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 the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-apprunner-service-return-values-fn--getatt-fn--getatt"></a>

`ServiceArn`  <a name="ServiceArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of this service.

`ServiceId`  <a name="ServiceId-fn::getatt"></a>
An ID that App Runner generated for this service. It's unique within the AWS Region.

`ServiceUrl`  <a name="ServiceUrl-fn::getatt"></a>
A subdomain URL that App Runner generated for this service. You can use this URL to access your service web application.

`Status`  <a name="Status-fn::getatt"></a>
The current state of the App Runner service. These particular values mean the following.  
+ `CREATE_FAILED` – The service failed to create. The failed service isn't usable, and still counts towards your service quota. To troubleshoot this failure, read the failure events and logs, change any parameters that need to be fixed, and rebuild your service using `UpdateService`.
+ `DELETE_FAILED` – The service failed to delete and can't be successfully recovered. Retry the service deletion call to ensure that all related resources are removed.

## Examples
<a name="aws-resource-apprunner-service--examples"></a>

**Topics**
+ [Service based on source code](#aws-resource-apprunner-service--examples--Service_based_on_source_code)
+ [Service based on source image](#aws-resource-apprunner-service--examples--Service_based_on_source_image)

### Service based on source code
<a name="aws-resource-apprunner-service--examples--Service_based_on_source_code"></a>

This example illustrates creating a service based on a Python source code repository.

#### JSON
<a name="aws-resource-apprunner-service--examples--Service_based_on_source_code--json"></a>

```
{
  "Type": "AWS::AppRunner::Service",
  "Properties": {
    "ServiceName": "python-app",
    "SourceConfiguration": {
      "AuthenticationConfiguration": {
        "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e"
      },
      "AutoDeploymentsEnabled": true,
      "CodeRepository": {
        "RepositoryUrl": "https://github.com/my-account/python-hello",
        "SourceCodeVersion": {
          "Type": "BRANCH",
          "Value": "main"
        },
        "CodeConfiguration": {
          "ConfigurationSource": "API",
          "CodeConfigurationValues": {
            "Runtime": "PYTHON_3",
            "BuildCommand": "pip install -r requirements.txt",
            "StartCommand": "python server.py",
            "Port": "8080",
            "RuntimeEnvironmentVariables": [
              {
                "Name": "NAME",
                "Value": "Jane"
              }
            ]
          }
        }
      }
    },
    "InstanceConfiguration": {
      "Cpu": "1 vCPU",
      "Memory": "3 GB"
    }
  }
}
```

#### YAML
<a name="aws-resource-apprunner-service--examples--Service_based_on_source_code--yaml"></a>

```
Type: AWS::AppRunner::Service
Properties:
  ServiceName: python-app
  SourceConfiguration:
    AuthenticationConfiguration:
      ConnectionArn: "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e"
    AutoDeploymentsEnabled: true
    CodeRepository:
      RepositoryUrl: "https://github.com/my-account/python-hello"
      SourceCodeVersion:
        Type: BRANCH
        Value: main
      CodeConfiguration:
        ConfigurationSource: API
        CodeConfigurationValues:
          Runtime: PYTHON_3
          BuildCommand: "pip install -r requirements.txt"
          StartCommand: "python server.py"
          Port: 8080
          RuntimeEnvironmentVariables:
            -
              Name: NAME
              Value: Jane
  InstanceConfiguration:
    Cpu: 1 vCPU
    Memory: 3 GB
```

### Service based on source image
<a name="aws-resource-apprunner-service--examples--Service_based_on_source_image"></a>

This example illustrates creating a service based on an image stored in Amazon Elastic Container Registry (Amazon ECR).

#### JSON
<a name="aws-resource-apprunner-service--examples--Service_based_on_source_image--json"></a>

```
{
  "Type": "AWS::AppRunner::Service",
  "Properties": {
    "ServiceName": "golang-container-app",
    "SourceConfiguration": {
      "AuthenticationConfiguration": {
        "AccessRoleArn": "arn:aws:iam::123456789012:role/my-ecr-role"
      },
      "AutoDeploymentsEnabled": true,
      "ImageRepository": {
        "ImageIdentifier": "123456789012.dkr.ecr.us-east-1.amazonaws.com/golang-app:latest",
        "ImageRepositoryType": "ECR",
        "ImageConfiguration": {
          "Port": "8080",
          "RuntimeEnvironmentVariables": [
            {
              "Name": "NAME",
              "Value": "Jane"
            }
          ]
        }
      }
    },
    "InstanceConfiguration": {
      "Cpu": "1 vCPU",
      "Memory": "3 GB"
    }
  }
}
```

#### YAML
<a name="aws-resource-apprunner-service--examples--Service_based_on_source_image--yaml"></a>

```
Type: AWS::AppRunner::Service
Properties:
  ServiceName: golang-container-app
  SourceConfiguration:
    AuthenticationConfiguration:
      AccessRoleArn: "arn:aws:iam::123456789012:role/my-ecr-role"
    AutoDeploymentsEnabled: true
    ImageRepository:
      ImageIdentifier: "123456789012.dkr.ecr.us-east-1.amazonaws.com/golang-app:latest"
      ImageRepositoryType: ECR
      ImageConfiguration:
        Port: 8080
        RuntimeEnvironmentVariables:
          -
            Name: NAME
            Value: Jane
  InstanceConfiguration:
    Cpu: 1 vCPU
    Memory: 3 GB
```

## See also
<a name="aws-resource-apprunner-service--seealso"></a>
+ [Creating an App Runner service](https://docs.aws.amazon.com/apprunner/latest/dg/manage-create.html) in the *AWS App Runner Developer Guide*
+ [Deploying a new application version to App Runner](https://docs.aws.amazon.com/apprunner/latest/dg/manage-deploy.html) in the *AWS App Runner Developer Guide*
+ [Configuring an App Runner service](https://docs.aws.amazon.com/apprunner/latest/dg/manage-configure.html) in the *AWS App Runner Developer Guide*

# AWS::AppRunner::Service AuthenticationConfiguration
<a name="aws-properties-apprunner-service-authenticationconfiguration"></a>

Describes resources needed to authenticate access to some source repositories. The specific resource depends on the repository provider.

## Syntax
<a name="aws-properties-apprunner-service-authenticationconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-authenticationconfiguration-syntax.json"></a>

```
{
  "[AccessRoleArn](#cfn-apprunner-service-authenticationconfiguration-accessrolearn)" : String,
  "[ConnectionArn](#cfn-apprunner-service-authenticationconfiguration-connectionarn)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-authenticationconfiguration-syntax.yaml"></a>

```
  [AccessRoleArn](#cfn-apprunner-service-authenticationconfiguration-accessrolearn): String
  [ConnectionArn](#cfn-apprunner-service-authenticationconfiguration-connectionarn): String
```

## Properties
<a name="aws-properties-apprunner-service-authenticationconfiguration-properties"></a>

`AccessRoleArn`  <a name="cfn-apprunner-service-authenticationconfiguration-accessrolearn"></a>
The Amazon Resource Name (ARN) of the IAM role that grants the App Runner service access to a source repository. It's required for ECR image repositories (but not for ECR Public repositories).  
*Required*: No  
*Type*: String  
*Pattern*: `arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):iam::[0-9]{12}:role/[\w+=,.@-]{1,64}`  
*Minimum*: `29`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ConnectionArn`  <a name="cfn-apprunner-service-authenticationconfiguration-connectionarn"></a>
The Amazon Resource Name (ARN) of the App Runner connection that enables the App Runner service to connect to a source repository. It's required for GitHub code repositories.  
*Required*: No  
*Type*: String  
*Pattern*: `arn:aws(-[\w]+)*:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[0-9]{12}:(\w|\/|-){1,1011}`  
*Minimum*: `1`  
*Maximum*: `1011`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service CodeConfiguration
<a name="aws-properties-apprunner-service-codeconfiguration"></a>

Describes the configuration that AWS App Runner uses to build and run an App Runner service from a source code repository.

## Syntax
<a name="aws-properties-apprunner-service-codeconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-codeconfiguration-syntax.json"></a>

```
{
  "[CodeConfigurationValues](#cfn-apprunner-service-codeconfiguration-codeconfigurationvalues)" : CodeConfigurationValues,
  "[ConfigurationSource](#cfn-apprunner-service-codeconfiguration-configurationsource)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-codeconfiguration-syntax.yaml"></a>

```
  [CodeConfigurationValues](#cfn-apprunner-service-codeconfiguration-codeconfigurationvalues): 
    CodeConfigurationValues
  [ConfigurationSource](#cfn-apprunner-service-codeconfiguration-configurationsource): String
```

## Properties
<a name="aws-properties-apprunner-service-codeconfiguration-properties"></a>

`CodeConfigurationValues`  <a name="cfn-apprunner-service-codeconfiguration-codeconfigurationvalues"></a>
The basic configuration for building and running the App Runner service. Use it to quickly launch an App Runner service without providing a `apprunner.yaml` file in the source code repository (or ignoring the file if it exists).  
*Required*: No  
*Type*: [CodeConfigurationValues](aws-properties-apprunner-service-codeconfigurationvalues.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ConfigurationSource`  <a name="cfn-apprunner-service-codeconfiguration-configurationsource"></a>
The source of the App Runner configuration. Values are interpreted as follows:  
+ `REPOSITORY` – App Runner reads configuration values from the `apprunner.yaml` file in the source code repository and ignores `CodeConfigurationValues`.
+ `API` – App Runner uses configuration values provided in `CodeConfigurationValues` and ignores the `apprunner.yaml` file in the source code repository.
*Required*: Yes  
*Type*: String  
*Allowed values*: `REPOSITORY | API`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service CodeConfigurationValues
<a name="aws-properties-apprunner-service-codeconfigurationvalues"></a>

Describes the basic configuration needed for building and running an AWS App Runner service. This type doesn't support the full set of possible configuration options. Fur full configuration capabilities, use a `apprunner.yaml` file in the source code repository.

## Syntax
<a name="aws-properties-apprunner-service-codeconfigurationvalues-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-codeconfigurationvalues-syntax.json"></a>

```
{
  "[BuildCommand](#cfn-apprunner-service-codeconfigurationvalues-buildcommand)" : String,
  "[Port](#cfn-apprunner-service-codeconfigurationvalues-port)" : String,
  "[Runtime](#cfn-apprunner-service-codeconfigurationvalues-runtime)" : String,
  "[RuntimeEnvironmentSecrets](#cfn-apprunner-service-codeconfigurationvalues-runtimeenvironmentsecrets)" : [ KeyValuePair, ... ],
  "[RuntimeEnvironmentVariables](#cfn-apprunner-service-codeconfigurationvalues-runtimeenvironmentvariables)" : [ KeyValuePair, ... ],
  "[StartCommand](#cfn-apprunner-service-codeconfigurationvalues-startcommand)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-codeconfigurationvalues-syntax.yaml"></a>

```
  [BuildCommand](#cfn-apprunner-service-codeconfigurationvalues-buildcommand): String
  [Port](#cfn-apprunner-service-codeconfigurationvalues-port): String
  [Runtime](#cfn-apprunner-service-codeconfigurationvalues-runtime): String
  [RuntimeEnvironmentSecrets](#cfn-apprunner-service-codeconfigurationvalues-runtimeenvironmentsecrets): 
    - KeyValuePair
  [RuntimeEnvironmentVariables](#cfn-apprunner-service-codeconfigurationvalues-runtimeenvironmentvariables): 
    - KeyValuePair
  [StartCommand](#cfn-apprunner-service-codeconfigurationvalues-startcommand): String
```

## Properties
<a name="aws-properties-apprunner-service-codeconfigurationvalues-properties"></a>

`BuildCommand`  <a name="cfn-apprunner-service-codeconfigurationvalues-buildcommand"></a>
The command App Runner runs to build your application.  
*Required*: No  
*Type*: String  
*Pattern*: `[^\x0a\x0d]+`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Port`  <a name="cfn-apprunner-service-codeconfigurationvalues-port"></a>
The port that your application listens to in the container.  
Default: `8080`  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `51200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Runtime`  <a name="cfn-apprunner-service-codeconfigurationvalues-runtime"></a>
A runtime environment type for building and running an App Runner service. It represents a programming language runtime.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `PYTHON_3 | NODEJS_12 | NODEJS_14 | CORRETTO_8 | CORRETTO_11 | NODEJS_16 | GO_1 | DOTNET_6 | PHP_81 | RUBY_31 | PYTHON_311 | NODEJS_18 | NODEJS_22`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuntimeEnvironmentSecrets`  <a name="cfn-apprunner-service-codeconfigurationvalues-runtimeenvironmentsecrets"></a>
An array of key-value pairs representing the secrets and parameters that get referenced to your service as an environment variable. The supported values are either the full Amazon Resource Name (ARN) of the AWS Secrets Manager secret or the full ARN of the parameter in the AWS Systems Manager Parameter Store.  
+  If the AWS Systems Manager Parameter Store parameter exists in the same AWS Region as the service that you're launching, you can use either the full ARN or name of the secret. If the parameter exists in a different Region, then the full ARN must be specified. 
+  Currently, cross account referencing of AWS Systems Manager Parameter Store parameter is not supported. 
*Required*: No  
*Type*: Array of [KeyValuePair](aws-properties-apprunner-service-keyvaluepair.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuntimeEnvironmentVariables`  <a name="cfn-apprunner-service-codeconfigurationvalues-runtimeenvironmentvariables"></a>
The environment variables that are available to your running AWS App Runner service. An array of key-value pairs.  
*Required*: No  
*Type*: Array of [KeyValuePair](aws-properties-apprunner-service-keyvaluepair.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StartCommand`  <a name="cfn-apprunner-service-codeconfigurationvalues-startcommand"></a>
The command App Runner runs to start your application.  
*Required*: No  
*Type*: String  
*Pattern*: `[^\x0a\x0d]+`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service CodeRepository
<a name="aws-properties-apprunner-service-coderepository"></a>

Describes a source code repository.

## Syntax
<a name="aws-properties-apprunner-service-coderepository-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-coderepository-syntax.json"></a>

```
{
  "[CodeConfiguration](#cfn-apprunner-service-coderepository-codeconfiguration)" : CodeConfiguration,
  "[RepositoryUrl](#cfn-apprunner-service-coderepository-repositoryurl)" : String,
  "[SourceCodeVersion](#cfn-apprunner-service-coderepository-sourcecodeversion)" : SourceCodeVersion,
  "[SourceDirectory](#cfn-apprunner-service-coderepository-sourcedirectory)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-coderepository-syntax.yaml"></a>

```
  [CodeConfiguration](#cfn-apprunner-service-coderepository-codeconfiguration): 
    CodeConfiguration
  [RepositoryUrl](#cfn-apprunner-service-coderepository-repositoryurl): String
  [SourceCodeVersion](#cfn-apprunner-service-coderepository-sourcecodeversion): 
    SourceCodeVersion
  [SourceDirectory](#cfn-apprunner-service-coderepository-sourcedirectory): String
```

## Properties
<a name="aws-properties-apprunner-service-coderepository-properties"></a>

`CodeConfiguration`  <a name="cfn-apprunner-service-coderepository-codeconfiguration"></a>
Configuration for building and running the service from a source code repository.  
`CodeConfiguration` is required only for `CreateService` request.
*Required*: No  
*Type*: [CodeConfiguration](aws-properties-apprunner-service-codeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RepositoryUrl`  <a name="cfn-apprunner-service-coderepository-repositoryurl"></a>
The location of the repository that contains the source code.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `51200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceCodeVersion`  <a name="cfn-apprunner-service-coderepository-sourcecodeversion"></a>
The version that should be used within the source code repository.  
*Required*: Yes  
*Type*: [SourceCodeVersion](aws-properties-apprunner-service-sourcecodeversion.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceDirectory`  <a name="cfn-apprunner-service-coderepository-sourcedirectory"></a>
The path of the directory that stores source code and configuration files. The build and start commands also execute from here. The path is absolute from root and, if not specified, defaults to the repository root.  
*Required*: No  
*Type*: String  
*Pattern*: `[^\x00]+`  
*Minimum*: `1`  
*Maximum*: `4096`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service EgressConfiguration
<a name="aws-properties-apprunner-service-egressconfiguration"></a>

Describes configuration settings related to outbound network traffic of an AWS App Runner service.

## Syntax
<a name="aws-properties-apprunner-service-egressconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-egressconfiguration-syntax.json"></a>

```
{
  "[EgressType](#cfn-apprunner-service-egressconfiguration-egresstype)" : String,
  "[VpcConnectorArn](#cfn-apprunner-service-egressconfiguration-vpcconnectorarn)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-egressconfiguration-syntax.yaml"></a>

```
  [EgressType](#cfn-apprunner-service-egressconfiguration-egresstype): String
  [VpcConnectorArn](#cfn-apprunner-service-egressconfiguration-vpcconnectorarn): String
```

## Properties
<a name="aws-properties-apprunner-service-egressconfiguration-properties"></a>

`EgressType`  <a name="cfn-apprunner-service-egressconfiguration-egresstype"></a>
The type of egress configuration.  
Set to `DEFAULT` for access to resources hosted on public networks.  
Set to `VPC` to associate your service to a custom VPC specified by `VpcConnectorArn`.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `DEFAULT | VPC`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VpcConnectorArn`  <a name="cfn-apprunner-service-egressconfiguration-vpcconnectorarn"></a>
The Amazon Resource Name (ARN) of the App Runner VPC connector that you want to associate with your App Runner service. Only valid when `EgressType = VPC`.  
*Required*: No  
*Type*: String  
*Pattern*: `arn:aws(-[\w]+)*:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[0-9]{12}:(\w|\/|-){1,1011}`  
*Minimum*: `44`  
*Maximum*: `1011`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service EncryptionConfiguration
<a name="aws-properties-apprunner-service-encryptionconfiguration"></a>

Describes a custom encryption key that AWS App Runner uses to encrypt copies of the source repository and service logs.

## Syntax
<a name="aws-properties-apprunner-service-encryptionconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-encryptionconfiguration-syntax.json"></a>

```
{
  "[KmsKey](#cfn-apprunner-service-encryptionconfiguration-kmskey)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-encryptionconfiguration-syntax.yaml"></a>

```
  [KmsKey](#cfn-apprunner-service-encryptionconfiguration-kmskey): String
```

## Properties
<a name="aws-properties-apprunner-service-encryptionconfiguration-properties"></a>

`KmsKey`  <a name="cfn-apprunner-service-encryptionconfiguration-kmskey"></a>
The ARN of the KMS key that's used for encryption.  
*Required*: Yes  
*Type*: String  
*Pattern*: `arn:aws(-[\w]+)*:kms:[a-z\-]+-[0-9]{1}:[0-9]{12}:key\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::AppRunner::Service HealthCheckConfiguration
<a name="aws-properties-apprunner-service-healthcheckconfiguration"></a>

Describes the settings for the health check that AWS App Runner performs to monitor the health of a service.

## Syntax
<a name="aws-properties-apprunner-service-healthcheckconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-healthcheckconfiguration-syntax.json"></a>

```
{
  "[HealthyThreshold](#cfn-apprunner-service-healthcheckconfiguration-healthythreshold)" : Integer,
  "[Interval](#cfn-apprunner-service-healthcheckconfiguration-interval)" : Integer,
  "[Path](#cfn-apprunner-service-healthcheckconfiguration-path)" : String,
  "[Protocol](#cfn-apprunner-service-healthcheckconfiguration-protocol)" : String,
  "[Timeout](#cfn-apprunner-service-healthcheckconfiguration-timeout)" : Integer,
  "[UnhealthyThreshold](#cfn-apprunner-service-healthcheckconfiguration-unhealthythreshold)" : Integer
}
```

### YAML
<a name="aws-properties-apprunner-service-healthcheckconfiguration-syntax.yaml"></a>

```
  [HealthyThreshold](#cfn-apprunner-service-healthcheckconfiguration-healthythreshold): Integer
  [Interval](#cfn-apprunner-service-healthcheckconfiguration-interval): Integer
  [Path](#cfn-apprunner-service-healthcheckconfiguration-path): String
  [Protocol](#cfn-apprunner-service-healthcheckconfiguration-protocol): String
  [Timeout](#cfn-apprunner-service-healthcheckconfiguration-timeout): Integer
  [UnhealthyThreshold](#cfn-apprunner-service-healthcheckconfiguration-unhealthythreshold): Integer
```

## Properties
<a name="aws-properties-apprunner-service-healthcheckconfiguration-properties"></a>

`HealthyThreshold`  <a name="cfn-apprunner-service-healthcheckconfiguration-healthythreshold"></a>
The number of consecutive checks that must succeed before App Runner decides that the service is healthy.  
Default: `1`  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Interval`  <a name="cfn-apprunner-service-healthcheckconfiguration-interval"></a>
The time interval, in seconds, between health checks.  
Default: `5`  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Path`  <a name="cfn-apprunner-service-healthcheckconfiguration-path"></a>
The URL that health check requests are sent to.  
`Path` is only applicable when you set `Protocol` to `HTTP`.  
Default: `"/"`  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Protocol`  <a name="cfn-apprunner-service-healthcheckconfiguration-protocol"></a>
The IP protocol that App Runner uses to perform health checks for your service.  
If you set `Protocol` to `HTTP`, App Runner sends health check requests to the HTTP path specified by `Path`.  
Default: `TCP`  
*Required*: No  
*Type*: String  
*Allowed values*: `TCP | HTTP`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Timeout`  <a name="cfn-apprunner-service-healthcheckconfiguration-timeout"></a>
The time, in seconds, to wait for a health check response before deciding it failed.  
Default: `2`  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UnhealthyThreshold`  <a name="cfn-apprunner-service-healthcheckconfiguration-unhealthythreshold"></a>
The number of consecutive checks that must fail before App Runner decides that the service is unhealthy.  
Default: `5`  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service ImageConfiguration
<a name="aws-properties-apprunner-service-imageconfiguration"></a>

Describes the configuration that AWS App Runner uses to run an App Runner service using an image pulled from a source image repository.

## Syntax
<a name="aws-properties-apprunner-service-imageconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-imageconfiguration-syntax.json"></a>

```
{
  "[Port](#cfn-apprunner-service-imageconfiguration-port)" : String,
  "[RuntimeEnvironmentSecrets](#cfn-apprunner-service-imageconfiguration-runtimeenvironmentsecrets)" : [ KeyValuePair, ... ],
  "[RuntimeEnvironmentVariables](#cfn-apprunner-service-imageconfiguration-runtimeenvironmentvariables)" : [ KeyValuePair, ... ],
  "[StartCommand](#cfn-apprunner-service-imageconfiguration-startcommand)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-imageconfiguration-syntax.yaml"></a>

```
  [Port](#cfn-apprunner-service-imageconfiguration-port): String
  [RuntimeEnvironmentSecrets](#cfn-apprunner-service-imageconfiguration-runtimeenvironmentsecrets): 
    - KeyValuePair
  [RuntimeEnvironmentVariables](#cfn-apprunner-service-imageconfiguration-runtimeenvironmentvariables): 
    - KeyValuePair
  [StartCommand](#cfn-apprunner-service-imageconfiguration-startcommand): String
```

## Properties
<a name="aws-properties-apprunner-service-imageconfiguration-properties"></a>

`Port`  <a name="cfn-apprunner-service-imageconfiguration-port"></a>
The port that your application listens to in the container.  
Default: `8080`  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `51200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuntimeEnvironmentSecrets`  <a name="cfn-apprunner-service-imageconfiguration-runtimeenvironmentsecrets"></a>
An array of key-value pairs representing the secrets and parameters that get referenced to your service as an environment variable. The supported values are either the full Amazon Resource Name (ARN) of the AWS Secrets Manager secret or the full ARN of the parameter in the AWS Systems Manager Parameter Store.  
+  If the AWS Systems Manager Parameter Store parameter exists in the same AWS Region as the service that you're launching, you can use either the full ARN or name of the secret. If the parameter exists in a different Region, then the full ARN must be specified. 
+  Currently, cross account referencing of AWS Systems Manager Parameter Store parameter is not supported. 
*Required*: No  
*Type*: Array of [KeyValuePair](aws-properties-apprunner-service-keyvaluepair.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RuntimeEnvironmentVariables`  <a name="cfn-apprunner-service-imageconfiguration-runtimeenvironmentvariables"></a>
Environment variables that are available to your running App Runner service. An array of key-value pairs.  
*Required*: No  
*Type*: Array of [KeyValuePair](aws-properties-apprunner-service-keyvaluepair.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StartCommand`  <a name="cfn-apprunner-service-imageconfiguration-startcommand"></a>
An optional command that App Runner runs to start the application in the source image. If specified, this command overrides the Docker image’s default start command.  
*Required*: No  
*Type*: String  
*Pattern*: `[^\x0a\x0d]+`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service ImageRepository
<a name="aws-properties-apprunner-service-imagerepository"></a>

Describes a source image repository.

## Syntax
<a name="aws-properties-apprunner-service-imagerepository-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-imagerepository-syntax.json"></a>

```
{
  "[ImageConfiguration](#cfn-apprunner-service-imagerepository-imageconfiguration)" : ImageConfiguration,
  "[ImageIdentifier](#cfn-apprunner-service-imagerepository-imageidentifier)" : String,
  "[ImageRepositoryType](#cfn-apprunner-service-imagerepository-imagerepositorytype)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-imagerepository-syntax.yaml"></a>

```
  [ImageConfiguration](#cfn-apprunner-service-imagerepository-imageconfiguration): 
    ImageConfiguration
  [ImageIdentifier](#cfn-apprunner-service-imagerepository-imageidentifier): String
  [ImageRepositoryType](#cfn-apprunner-service-imagerepository-imagerepositorytype): String
```

## Properties
<a name="aws-properties-apprunner-service-imagerepository-properties"></a>

`ImageConfiguration`  <a name="cfn-apprunner-service-imagerepository-imageconfiguration"></a>
Configuration for running the identified image.  
*Required*: No  
*Type*: [ImageConfiguration](aws-properties-apprunner-service-imageconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ImageIdentifier`  <a name="cfn-apprunner-service-imagerepository-imageidentifier"></a>
The identifier of an image.  
For an image in Amazon Elastic Container Registry (Amazon ECR), this is an image name. For the image name format, see [Pulling an image](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) in the *Amazon ECR User Guide*.  
*Required*: Yes  
*Type*: String  
*Pattern*: `([0-9]{12}.dkr.ecr.[a-z\-]+-[0-9]{1}.amazonaws.com\/.*)|(^public\.ecr\.aws\/.+\/.+)`  
*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)

`ImageRepositoryType`  <a name="cfn-apprunner-service-imagerepository-imagerepositorytype"></a>
The type of the image repository. This reflects the repository provider and whether the repository is private or public.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ECR | ECR_PUBLIC`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service IngressConfiguration
<a name="aws-properties-apprunner-service-ingressconfiguration"></a>

Network configuration settings for inbound network traffic.

## Syntax
<a name="aws-properties-apprunner-service-ingressconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-ingressconfiguration-syntax.json"></a>

```
{
  "[IsPubliclyAccessible](#cfn-apprunner-service-ingressconfiguration-ispubliclyaccessible)" : Boolean
}
```

### YAML
<a name="aws-properties-apprunner-service-ingressconfiguration-syntax.yaml"></a>

```
  [IsPubliclyAccessible](#cfn-apprunner-service-ingressconfiguration-ispubliclyaccessible): Boolean
```

## Properties
<a name="aws-properties-apprunner-service-ingressconfiguration-properties"></a>

`IsPubliclyAccessible`  <a name="cfn-apprunner-service-ingressconfiguration-ispubliclyaccessible"></a>
Specifies whether your App Runner service is publicly accessible. To make the service publicly accessible set it to `True`. To make the service privately accessible, from only within an Amazon VPC set it to `False`.   
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service InstanceConfiguration
<a name="aws-properties-apprunner-service-instanceconfiguration"></a>

Describes the runtime configuration of an AWS App Runner service instance (scaling unit).

## Syntax
<a name="aws-properties-apprunner-service-instanceconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-instanceconfiguration-syntax.json"></a>

```
{
  "[Cpu](#cfn-apprunner-service-instanceconfiguration-cpu)" : String,
  "[InstanceRoleArn](#cfn-apprunner-service-instanceconfiguration-instancerolearn)" : String,
  "[Memory](#cfn-apprunner-service-instanceconfiguration-memory)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-instanceconfiguration-syntax.yaml"></a>

```
  [Cpu](#cfn-apprunner-service-instanceconfiguration-cpu): String
  [InstanceRoleArn](#cfn-apprunner-service-instanceconfiguration-instancerolearn): String
  [Memory](#cfn-apprunner-service-instanceconfiguration-memory): String
```

## Properties
<a name="aws-properties-apprunner-service-instanceconfiguration-properties"></a>

`Cpu`  <a name="cfn-apprunner-service-instanceconfiguration-cpu"></a>
The number of CPU units reserved for each instance of your App Runner service.  
Default: `1 vCPU`  
*Required*: No  
*Type*: String  
*Pattern*: `256|512|1024|2048|4096|(0.25|0.5|1|2|4) vCPU`  
*Minimum*: `3`  
*Maximum*: `9`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InstanceRoleArn`  <a name="cfn-apprunner-service-instanceconfiguration-instancerolearn"></a>
The Amazon Resource Name (ARN) of an IAM role that provides permissions to your App Runner service. These are permissions that your code needs when it calls any AWS APIs.  
*Required*: No  
*Type*: String  
*Pattern*: `arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):iam::[0-9]{12}:role/[\w+=,.@-]{1,64}`  
*Minimum*: `29`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Memory`  <a name="cfn-apprunner-service-instanceconfiguration-memory"></a>
The amount of memory, in MB or GB, reserved for each instance of your App Runner service.  
Default: `2 GB`  
*Required*: No  
*Type*: String  
*Pattern*: `512|1024|2048|3072|4096|6144|8192|10240|12288|(0.5|1|2|3|4|6|8|10|12) GB`  
*Minimum*: `3`  
*Maximum*: `6`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service KeyValuePair
<a name="aws-properties-apprunner-service-keyvaluepair"></a>

Describes a key-value pair, which is a string-to-string mapping.

## Syntax
<a name="aws-properties-apprunner-service-keyvaluepair-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-keyvaluepair-syntax.json"></a>

```
{
  "[Name](#cfn-apprunner-service-keyvaluepair-name)" : String,
  "[Value](#cfn-apprunner-service-keyvaluepair-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-keyvaluepair-syntax.yaml"></a>

```
  [Name](#cfn-apprunner-service-keyvaluepair-name): String
  [Value](#cfn-apprunner-service-keyvaluepair-value): String
```

## Properties
<a name="aws-properties-apprunner-service-keyvaluepair-properties"></a>

`Name`  <a name="cfn-apprunner-service-keyvaluepair-name"></a>
The key name string to map to a value.  
*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)

`Value`  <a name="cfn-apprunner-service-keyvaluepair-value"></a>
The value string to which the key name is mapped.  
*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)

# AWS::AppRunner::Service NetworkConfiguration
<a name="aws-properties-apprunner-service-networkconfiguration"></a>

Describes configuration settings related to network traffic of an AWS App Runner service. Consists of embedded objects for each configurable network feature.

## Syntax
<a name="aws-properties-apprunner-service-networkconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-networkconfiguration-syntax.json"></a>

```
{
  "[EgressConfiguration](#cfn-apprunner-service-networkconfiguration-egressconfiguration)" : EgressConfiguration,
  "[IngressConfiguration](#cfn-apprunner-service-networkconfiguration-ingressconfiguration)" : IngressConfiguration,
  "[IpAddressType](#cfn-apprunner-service-networkconfiguration-ipaddresstype)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-networkconfiguration-syntax.yaml"></a>

```
  [EgressConfiguration](#cfn-apprunner-service-networkconfiguration-egressconfiguration): 
    EgressConfiguration
  [IngressConfiguration](#cfn-apprunner-service-networkconfiguration-ingressconfiguration): 
    IngressConfiguration
  [IpAddressType](#cfn-apprunner-service-networkconfiguration-ipaddresstype): String
```

## Properties
<a name="aws-properties-apprunner-service-networkconfiguration-properties"></a>

`EgressConfiguration`  <a name="cfn-apprunner-service-networkconfiguration-egressconfiguration"></a>
Network configuration settings for outbound message traffic.  
*Required*: No  
*Type*: [EgressConfiguration](aws-properties-apprunner-service-egressconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IngressConfiguration`  <a name="cfn-apprunner-service-networkconfiguration-ingressconfiguration"></a>
Network configuration settings for inbound message traffic.  
*Required*: No  
*Type*: [IngressConfiguration](aws-properties-apprunner-service-ingressconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IpAddressType`  <a name="cfn-apprunner-service-networkconfiguration-ipaddresstype"></a>
App Runner provides you with the option to choose between *IPv4* and *dual stack* (IPv4 and IPv6) for your incoming public network configuration. This is an optional parameter. If you do not specify an `IpAddressType`, it defaults to select IPv4.  
*Required*: No  
*Type*: String  
*Allowed values*: `IPV4 | DUAL_STACK`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service ServiceObservabilityConfiguration
<a name="aws-properties-apprunner-service-serviceobservabilityconfiguration"></a>

Describes the observability configuration of an AWS App Runner service. These are additional observability features, like tracing, that you choose to enable. They're configured in a separate resource that you associate with your service.

## Syntax
<a name="aws-properties-apprunner-service-serviceobservabilityconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-serviceobservabilityconfiguration-syntax.json"></a>

```
{
  "[ObservabilityConfigurationArn](#cfn-apprunner-service-serviceobservabilityconfiguration-observabilityconfigurationarn)" : String,
  "[ObservabilityEnabled](#cfn-apprunner-service-serviceobservabilityconfiguration-observabilityenabled)" : Boolean
}
```

### YAML
<a name="aws-properties-apprunner-service-serviceobservabilityconfiguration-syntax.yaml"></a>

```
  [ObservabilityConfigurationArn](#cfn-apprunner-service-serviceobservabilityconfiguration-observabilityconfigurationarn): String
  [ObservabilityEnabled](#cfn-apprunner-service-serviceobservabilityconfiguration-observabilityenabled): Boolean
```

## Properties
<a name="aws-properties-apprunner-service-serviceobservabilityconfiguration-properties"></a>

`ObservabilityConfigurationArn`  <a name="cfn-apprunner-service-serviceobservabilityconfiguration-observabilityconfigurationarn"></a>
The Amazon Resource Name (ARN) of the observability configuration that is associated with the service. Specified only when `ObservabilityEnabled` is `true`.  
Specify an ARN with a name and a revision number to associate that revision. For example: `arn:aws:apprunner:us-east-1:123456789012:observabilityconfiguration/xray-tracing/3`  
Specify just the name to associate the latest revision. For example: `arn:aws:apprunner:us-east-1:123456789012:observabilityconfiguration/xray-tracing`  
*Required*: No  
*Type*: String  
*Pattern*: `arn:aws(-[\w]+)*:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[0-9]{12}:(\w|/|-){1,1011}`  
*Minimum*: `1`  
*Maximum*: `1011`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ObservabilityEnabled`  <a name="cfn-apprunner-service-serviceobservabilityconfiguration-observabilityenabled"></a>
When `true`, an observability configuration resource is associated with the service, and an `ObservabilityConfigurationArn` is specified.  
*Required*: Yes  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service SourceCodeVersion
<a name="aws-properties-apprunner-service-sourcecodeversion"></a>

Identifies a version of code that AWS App Runner refers to within a source code repository.

## Syntax
<a name="aws-properties-apprunner-service-sourcecodeversion-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-sourcecodeversion-syntax.json"></a>

```
{
  "[Type](#cfn-apprunner-service-sourcecodeversion-type)" : String,
  "[Value](#cfn-apprunner-service-sourcecodeversion-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-sourcecodeversion-syntax.yaml"></a>

```
  [Type](#cfn-apprunner-service-sourcecodeversion-type): String
  [Value](#cfn-apprunner-service-sourcecodeversion-value): String
```

## Properties
<a name="aws-properties-apprunner-service-sourcecodeversion-properties"></a>

`Type`  <a name="cfn-apprunner-service-sourcecodeversion-type"></a>
The type of version identifier.  
For a git-based repository, branches represent versions.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BRANCH`  
*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-apprunner-service-sourcecodeversion-value"></a>
A source code version.  
For a git-based repository, a branch name maps to a specific version. App Runner uses the most recent commit to the branch.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `51200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service SourceConfiguration
<a name="aws-properties-apprunner-service-sourceconfiguration"></a>

Describes the source deployed to an AWS App Runner service. It can be a code or an image repository.

## Syntax
<a name="aws-properties-apprunner-service-sourceconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-sourceconfiguration-syntax.json"></a>

```
{
  "[AuthenticationConfiguration](#cfn-apprunner-service-sourceconfiguration-authenticationconfiguration)" : AuthenticationConfiguration,
  "[AutoDeploymentsEnabled](#cfn-apprunner-service-sourceconfiguration-autodeploymentsenabled)" : Boolean,
  "[CodeRepository](#cfn-apprunner-service-sourceconfiguration-coderepository)" : CodeRepository,
  "[ImageRepository](#cfn-apprunner-service-sourceconfiguration-imagerepository)" : ImageRepository
}
```

### YAML
<a name="aws-properties-apprunner-service-sourceconfiguration-syntax.yaml"></a>

```
  [AuthenticationConfiguration](#cfn-apprunner-service-sourceconfiguration-authenticationconfiguration): 
    AuthenticationConfiguration
  [AutoDeploymentsEnabled](#cfn-apprunner-service-sourceconfiguration-autodeploymentsenabled): Boolean
  [CodeRepository](#cfn-apprunner-service-sourceconfiguration-coderepository): 
    CodeRepository
  [ImageRepository](#cfn-apprunner-service-sourceconfiguration-imagerepository): 
    ImageRepository
```

## Properties
<a name="aws-properties-apprunner-service-sourceconfiguration-properties"></a>

`AuthenticationConfiguration`  <a name="cfn-apprunner-service-sourceconfiguration-authenticationconfiguration"></a>
Describes the resources that are needed to authenticate access to some source repositories.  
*Required*: No  
*Type*: [AuthenticationConfiguration](aws-properties-apprunner-service-authenticationconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AutoDeploymentsEnabled`  <a name="cfn-apprunner-service-sourceconfiguration-autodeploymentsenabled"></a>
If `true`, continuous integration from the source repository is enabled for the App Runner service. Each repository change (including any source code commit or new image version) starts a deployment.  
Default: App Runner sets to `false` for a source image that uses an ECR Public repository or an ECR repository that's in an AWS account other than the one that the service is in. App Runner sets to `true` in all other cases (which currently include a source code repository or a source image using a same-account ECR repository).  
*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)

`CodeRepository`  <a name="cfn-apprunner-service-sourceconfiguration-coderepository"></a>
The description of a source code repository.  
You must provide either this member or `ImageRepository` (but not both).  
*Required*: No  
*Type*: [CodeRepository](aws-properties-apprunner-service-coderepository.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ImageRepository`  <a name="cfn-apprunner-service-sourceconfiguration-imagerepository"></a>
The description of a source image repository.  
You must provide either this member or `CodeRepository` (but not both).  
*Required*: No  
*Type*: [ImageRepository](aws-properties-apprunner-service-imagerepository.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::Service Tag
<a name="aws-properties-apprunner-service-tag"></a>

Describes a tag that is applied to an AWS App Runner resource. A tag is a metadata item consisting of a key-value pair.

## Syntax
<a name="aws-properties-apprunner-service-tag-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-service-tag-syntax.json"></a>

```
{
  "[Key](#cfn-apprunner-service-tag-key)" : String,
  "[Value](#cfn-apprunner-service-tag-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-service-tag-syntax.yaml"></a>

```
  [Key](#cfn-apprunner-service-tag-key): String
  [Value](#cfn-apprunner-service-tag-value): String
```

## Properties
<a name="aws-properties-apprunner-service-tag-properties"></a>

`Key`  <a name="cfn-apprunner-service-tag-key"></a>
The key of the tag assigned to an App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?!aws:).+`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-apprunner-service-tag-value"></a>
The value of the tag assigned to an App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::AppRunner::VpcConnector
<a name="aws-resource-apprunner-vpcconnector"></a>

The `AWS::AppRunner::VpcConnector` resource is an AWS App Runner resource type that specifies an App Runner VPC connector.

App Runner requires this resource when you want to associate your App Runner service to a custom Amazon Virtual Private Cloud (Amazon VPC).

## Syntax
<a name="aws-resource-apprunner-vpcconnector-syntax"></a>

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

### JSON
<a name="aws-resource-apprunner-vpcconnector-syntax.json"></a>

```
{
  "Type" : "AWS::AppRunner::VpcConnector",
  "Properties" : {
      "[SecurityGroups](#cfn-apprunner-vpcconnector-securitygroups)" : [ String, ... ],
      "[Subnets](#cfn-apprunner-vpcconnector-subnets)" : [ String, ... ],
      "[Tags](#cfn-apprunner-vpcconnector-tags)" : [ Tag, ... ],
      "[VpcConnectorName](#cfn-apprunner-vpcconnector-vpcconnectorname)" : String
    }
}
```

### YAML
<a name="aws-resource-apprunner-vpcconnector-syntax.yaml"></a>

```
Type: AWS::AppRunner::VpcConnector
Properties:
  [SecurityGroups](#cfn-apprunner-vpcconnector-securitygroups): 
    - String
  [Subnets](#cfn-apprunner-vpcconnector-subnets): 
    - String
  [Tags](#cfn-apprunner-vpcconnector-tags): 
    - Tag
  [VpcConnectorName](#cfn-apprunner-vpcconnector-vpcconnectorname): String
```

## Properties
<a name="aws-resource-apprunner-vpcconnector-properties"></a>

`SecurityGroups`  <a name="cfn-apprunner-vpcconnector-securitygroups"></a>
A list of IDs of security groups that App Runner should use for access to AWS resources under the specified subnets. If not specified, App Runner uses the default security group of the Amazon VPC. The default security group allows all outbound traffic.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Subnets`  <a name="cfn-apprunner-vpcconnector-subnets"></a>
A list of IDs of subnets that App Runner should use when it associates your service with a custom Amazon VPC. Specify IDs of subnets of a single Amazon VPC. App Runner determines the Amazon VPC from the subnets you specify.  
 App Runner only supports subnets of IP address type *IPv4* and *dual stack* (IPv4 and IPv6).
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-apprunner-vpcconnector-tags"></a>
A list of metadata items that you can associate with your VPC connector resource. A tag is a key-value pair.  
A `VpcConnector` is immutable, so you cannot update its tags. To change the tags, replace the resource. To replace a `VpcConnector`, you must provide a new combination of security groups. 
*Required*: No  
*Type*: Array of [Tag](aws-properties-apprunner-vpcconnector-tag.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VpcConnectorName`  <a name="cfn-apprunner-vpcconnector-vpcconnectorname"></a>
A name for the VPC connector.  
If you don't specify a name, CloudFormation generates a name for your VPC connector.  
*Required*: No  
*Type*: String  
*Pattern*: `^[A-Za-z0-9][A-Za-z0-9-\\_]{3,39}$`  
*Minimum*: `4`  
*Maximum*: `40`  
*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-apprunner-vpcconnector-return-values"></a>

### Ref
<a name="aws-resource-apprunner-vpcconnector-return-values-ref"></a>

When the logical ID of this resource is provided to the `Ref` intrinsic function, `Ref` returns the resource name.

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-apprunner-vpcconnector-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function 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 the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-apprunner-vpcconnector-return-values-fn--getatt-fn--getatt"></a>

`VpcConnectorArn`  <a name="VpcConnectorArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of this VPC connector.

`VpcConnectorRevision`  <a name="VpcConnectorRevision-fn::getatt"></a>
The revision of this VPC connector. It's unique among all the active connectors (`"Status": "ACTIVE"`) that share the same `Name`.  
At this time, App Runner supports only one revision per name.

## Examples
<a name="aws-resource-apprunner-vpcconnector--examples"></a>

### VPC connector
<a name="aws-resource-apprunner-vpcconnector--examples--VPC_connector"></a>

This example illustrates creating a VPC connector with two subnets and two security groups.

#### JSON
<a name="aws-resource-apprunner-vpcconnector--examples--VPC_connector--json"></a>

```
{
  "Type" : "AWS::AppRunner::VpcConnector",
  "Properties" : {
    "VpcConnectorName": "my-vpc-connector",
    "Subnets": ["subnet-123", "subnet-456"],
    "SecurityGroups": ["sg-123", "sg-456"]
  }
}
```

#### YAML
<a name="aws-resource-apprunner-vpcconnector--examples--VPC_connector--yaml"></a>

```
Type: AWS::AppRunner::VpcConnector
Properties:
  VpcConnectorName: my-vpc-connector
  Subnets:
    - subnet-123
    - subnet-456
  SecurityGroups:
    - sg-123
    - sg-456
```

## See also
<a name="aws-resource-apprunner-vpcconnector--seealso"></a>
+ [Enabling Amazon VPC access for your service](https://docs.aws.amazon.com/apprunner/latest/dg/network-vpc.html) in the *AWS App Runner Developer Guide*

# AWS::AppRunner::VpcConnector Tag
<a name="aws-properties-apprunner-vpcconnector-tag"></a>

Describes a tag that is applied to an AWS App Runner resource. A tag is a metadata item consisting of a key-value pair.

## Syntax
<a name="aws-properties-apprunner-vpcconnector-tag-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-vpcconnector-tag-syntax.json"></a>

```
{
  "[Key](#cfn-apprunner-vpcconnector-tag-key)" : String,
  "[Value](#cfn-apprunner-vpcconnector-tag-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-vpcconnector-tag-syntax.yaml"></a>

```
  [Key](#cfn-apprunner-vpcconnector-tag-key): String
  [Value](#cfn-apprunner-vpcconnector-tag-value): String
```

## Properties
<a name="aws-properties-apprunner-vpcconnector-tag-properties"></a>

`Key`  <a name="cfn-apprunner-vpcconnector-tag-key"></a>
The key of the tag assigned to the `VpcConnector` resource of the App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?!aws:).+`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-apprunner-vpcconnector-tag-value"></a>
The value of the tag assigned to the `VpcConnector` resource of the App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::AppRunner::VpcIngressConnection
<a name="aws-resource-apprunner-vpcingressconnection"></a>

The `AWS::AppRunner::VpcIngressConnection` resource is an AWS App Runner resource type that specifies an App Runner VPC Ingress Connection.

App Runner requires this resource when you want to associate your App Runner service to an Amazon VPC endpoint.

## Syntax
<a name="aws-resource-apprunner-vpcingressconnection-syntax"></a>

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

### JSON
<a name="aws-resource-apprunner-vpcingressconnection-syntax.json"></a>

```
{
  "Type" : "AWS::AppRunner::VpcIngressConnection",
  "Properties" : {
      "[IngressVpcConfiguration](#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration)" : IngressVpcConfiguration,
      "[ServiceArn](#cfn-apprunner-vpcingressconnection-servicearn)" : String,
      "[Tags](#cfn-apprunner-vpcingressconnection-tags)" : [ Tag, ... ],
      "[VpcIngressConnectionName](#cfn-apprunner-vpcingressconnection-vpcingressconnectionname)" : String
    }
}
```

### YAML
<a name="aws-resource-apprunner-vpcingressconnection-syntax.yaml"></a>

```
Type: AWS::AppRunner::VpcIngressConnection
Properties:
  [IngressVpcConfiguration](#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration): 
    IngressVpcConfiguration
  [ServiceArn](#cfn-apprunner-vpcingressconnection-servicearn): String
  [Tags](#cfn-apprunner-vpcingressconnection-tags): 
    - Tag
  [VpcIngressConnectionName](#cfn-apprunner-vpcingressconnection-vpcingressconnectionname): String
```

## Properties
<a name="aws-resource-apprunner-vpcingressconnection-properties"></a>

`IngressVpcConfiguration`  <a name="cfn-apprunner-vpcingressconnection-ingressvpcconfiguration"></a>
Specifications for the customer’s Amazon VPC and the related AWS PrivateLink VPC endpoint that are used to create the VPC Ingress Connection resource.  
*Required*: Yes  
*Type*: [IngressVpcConfiguration](aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServiceArn`  <a name="cfn-apprunner-vpcingressconnection-servicearn"></a>
The Amazon Resource Name (ARN) for this App Runner service that is used to create the VPC Ingress Connection resource.  
*Required*: Yes  
*Type*: String  
*Pattern*: `arn:aws(-[\w]+)*:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[0-9]{12}:(\w|/|-){1,1011}`  
*Minimum*: `1`  
*Maximum*: `1011`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-apprunner-vpcingressconnection-tags"></a>
An optional list of metadata items that you can associate with the VPC Ingress Connection resource. A tag is a key-value pair.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-apprunner-vpcingressconnection-tag.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VpcIngressConnectionName`  <a name="cfn-apprunner-vpcingressconnection-vpcingressconnectionname"></a>
The customer-provided VPC Ingress Connection name.  
*Required*: No  
*Type*: String  
*Pattern*: `[A-Za-z0-9][A-Za-z0-9\-_]{3,39}`  
*Minimum*: `4`  
*Maximum*: `40`  
*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-apprunner-vpcingressconnection-return-values"></a>

### Ref
<a name="aws-resource-apprunner-vpcingressconnection-return-values-ref"></a>

When the logical ID of this resource is provided to the `Ref` intrinsic function, `Ref` returns the resource name.

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-apprunner-vpcingressconnection-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function 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 the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-apprunner-vpcingressconnection-return-values-fn--getatt-fn--getatt"></a>

`DomainName`  <a name="DomainName-fn::getatt"></a>
The domain name associated with the VPC Ingress Connection resource.

`Status`  <a name="Status-fn::getatt"></a>
The current status of the VPC Ingress Connection. The VPC Ingress Connection displays one of the following statuses: `AVAILABLE`, `PENDING_CREATION`, `PENDING_UPDATE`, `PENDING_DELETION`,`FAILED_CREATION`, `FAILED_UPDATE`, `FAILED_DELETION`, and `DELETED`.. 

`VpcIngressConnectionArn`  <a name="VpcIngressConnectionArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the VPC Ingress Connection. 

## Examples
<a name="aws-resource-apprunner-vpcingressconnection--examples"></a>

### VPC Ingress Connection
<a name="aws-resource-apprunner-vpcingressconnection--examples--VPC_Ingress_Connection"></a>

This example illustrates creating a VPC Ingress Connection.

#### JSON
<a name="aws-resource-apprunner-vpcingressconnection--examples--VPC_Ingress_Connection--json"></a>

```
{
  "Type": "AWS::AppRunner::VpcIngressConnection",
  "Properties": {
    "IngressVpcConfiguration": {
      "VpcEndpointId": "vpc-1a2b3c4d",
      "VpcId": "vpc-4a6b7c8d"
    },
    "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/my-service",
    "VpcIngressConnectionName": "my-vpc-ingress-connection"
  }
}
```

#### YAML
<a name="aws-resource-apprunner-vpcingressconnection--examples--VPC_Ingress_Connection--yaml"></a>

```
Type: AWS::AppRunner::VpcIngressConnection
Properties:
  IngressVpcConfiguration:
    VpcEndpointId: vpce-1a2b3c4d
    VpcId: vpc-4a6b7c8d
  ServiceArn: arn:aws:apprunner:us-east-1:123456789012:service/my-service
  VpcIngressConnectionName: my-vpc-ingress-connection
```

## See also
<a name="aws-resource-apprunner-vpcingressconnection--seealso"></a>
+ [Configure network settings for incoming traffic](https://docs.aws.amazon.com/apprunner/latest/dg/network-pl.html) in the *AWS App Runner Developer Guide*

# AWS::AppRunner::VpcIngressConnection IngressVpcConfiguration
<a name="aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration"></a>

Specifications for the customer’s VPC and related PrivateLink VPC endpoint that are used to associate with the VPC Ingress Connection resource.

## Syntax
<a name="aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration-syntax.json"></a>

```
{
  "[VpcEndpointId](#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcendpointid)" : String,
  "[VpcId](#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcid)" : String
}
```

### YAML
<a name="aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration-syntax.yaml"></a>

```
  [VpcEndpointId](#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcendpointid): String
  [VpcId](#cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcid): String
```

## Properties
<a name="aws-properties-apprunner-vpcingressconnection-ingressvpcconfiguration-properties"></a>

`VpcEndpointId`  <a name="cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcendpointid"></a>
The ID of the VPC endpoint that your App Runner service connects to.   
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `51200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VpcId`  <a name="cfn-apprunner-vpcingressconnection-ingressvpcconfiguration-vpcid"></a>
The ID of the VPC that is used for the VPC endpoint.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `51200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::AppRunner::VpcIngressConnection Tag
<a name="aws-properties-apprunner-vpcingressconnection-tag"></a>

Describes a tag that is applied to an AWS App Runner resource. A tag is a metadata item consisting of a key-value pair.

## Syntax
<a name="aws-properties-apprunner-vpcingressconnection-tag-syntax"></a>

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

### JSON
<a name="aws-properties-apprunner-vpcingressconnection-tag-syntax.json"></a>

```
{
  "[Key](#cfn-apprunner-vpcingressconnection-tag-key)" : String,
  "[Value](#cfn-apprunner-vpcingressconnection-tag-value)" : String
}
```

### YAML
<a name="aws-properties-apprunner-vpcingressconnection-tag-syntax.yaml"></a>

```
  [Key](#cfn-apprunner-vpcingressconnection-tag-key): String
  [Value](#cfn-apprunner-vpcingressconnection-tag-value): String
```

## Properties
<a name="aws-properties-apprunner-vpcingressconnection-tag-properties"></a>

`Key`  <a name="cfn-apprunner-vpcingressconnection-tag-key"></a>
The key of the tag.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?!aws:).+`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-apprunner-vpcingressconnection-tag-value"></a>
The value of the tag assigned to `VpcIngressConnection` resource of the App Runner service.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)