

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::Pinpoint::ApplicationSettings
<a name="aws-resource-pinpoint-applicationsettings"></a>

Specifies the settings for an Amazon Pinpoint application. In Amazon Pinpoint, an *application* (also referred to as an *app* or *project*) is a collection of related settings, customer information, segments, and campaigns, and other types of Amazon Pinpoint resources.

## Syntax
<a name="aws-resource-pinpoint-applicationsettings-syntax"></a>

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

### JSON
<a name="aws-resource-pinpoint-applicationsettings-syntax.json"></a>

```
{
  "Type" : "AWS::Pinpoint::ApplicationSettings",
  "Properties" : {
      "[ApplicationId](#cfn-pinpoint-applicationsettings-applicationid)" : String,
      "[CampaignHook](#cfn-pinpoint-applicationsettings-campaignhook)" : CampaignHook,
      "[CloudWatchMetricsEnabled](#cfn-pinpoint-applicationsettings-cloudwatchmetricsenabled)" : Boolean,
      "[Limits](#cfn-pinpoint-applicationsettings-limits)" : Limits,
      "[QuietTime](#cfn-pinpoint-applicationsettings-quiettime)" : QuietTime
    }
}
```

### YAML
<a name="aws-resource-pinpoint-applicationsettings-syntax.yaml"></a>

```
Type: AWS::Pinpoint::ApplicationSettings
Properties:
  [ApplicationId](#cfn-pinpoint-applicationsettings-applicationid): String
  [CampaignHook](#cfn-pinpoint-applicationsettings-campaignhook): 
    CampaignHook
  [CloudWatchMetricsEnabled](#cfn-pinpoint-applicationsettings-cloudwatchmetricsenabled): Boolean
  [Limits](#cfn-pinpoint-applicationsettings-limits): 
    Limits
  [QuietTime](#cfn-pinpoint-applicationsettings-quiettime): 
    QuietTime
```

## Properties
<a name="aws-resource-pinpoint-applicationsettings-properties"></a>

`ApplicationId`  <a name="cfn-pinpoint-applicationsettings-applicationid"></a>
The unique identifier for the Amazon Pinpoint application.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`CampaignHook`  <a name="cfn-pinpoint-applicationsettings-campaignhook"></a>
The settings for the Lambda function to use by default as a code hook for campaigns in the application. To override these settings for a specific campaign, use the Campaign resource to define custom Lambda function settings for the campaign.  
*Required*: No  
*Type*: [CampaignHook](aws-properties-pinpoint-applicationsettings-campaignhook.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CloudWatchMetricsEnabled`  <a name="cfn-pinpoint-applicationsettings-cloudwatchmetricsenabled"></a>
Property description not available.  
*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)

`Limits`  <a name="cfn-pinpoint-applicationsettings-limits"></a>
The default sending limits for campaigns in the application. To override these limits for a specific campaign, use the Campaign resource to define custom limits for the campaign.  
*Required*: No  
*Type*: [Limits](aws-properties-pinpoint-applicationsettings-limits.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`QuietTime`  <a name="cfn-pinpoint-applicationsettings-quiettime"></a>
The default quiet time for campaigns in the application. Quiet time is a specific time range when campaigns don't send messages to endpoints, if all the following conditions are met:  
- The `EndpointDemographic.Timezone` property of the endpoint is set to a valid value.  
- The current time in the endpoint's time zone is later than or equal to the time specified by the `QuietTime.Start` property for the application (or a campaign that has custom quiet time settings).  
- The current time in the endpoint's time zone is earlier than or equal to the time specified by the `QuietTime.End` property for the application (or a campaign that has custom quiet time settings).  
If any of the preceding conditions isn't met, the endpoint will receive messages from a campaign, even if quiet time is enabled.  
To override the default quiet time settings for a specific campaign, use the Campaign resource to define a custom quiet time for the campaign.  
*Required*: No  
*Type*: [QuietTime](aws-properties-pinpoint-applicationsettings-quiettime.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-pinpoint-applicationsettings-return-values"></a>

### Ref
<a name="aws-resource-pinpoint-applicationsettings-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the unique identifier (`ApplicationId`) for the Amazon Pinpoint application that you're specifying the settings for.

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-pinpoint-applicationsettings-return-values-fn--getatt"></a>

# AWS::Pinpoint::ApplicationSettings CampaignHook
<a name="aws-properties-pinpoint-applicationsettings-campaignhook"></a>

Specifies the Lambda function to use by default as a code hook for campaigns in the application.

## Syntax
<a name="aws-properties-pinpoint-applicationsettings-campaignhook-syntax"></a>

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

### JSON
<a name="aws-properties-pinpoint-applicationsettings-campaignhook-syntax.json"></a>

```
{
  "[LambdaFunctionName](#cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname)" : String,
  "[Mode](#cfn-pinpoint-applicationsettings-campaignhook-mode)" : String,
  "[WebUrl](#cfn-pinpoint-applicationsettings-campaignhook-weburl)" : String
}
```

### YAML
<a name="aws-properties-pinpoint-applicationsettings-campaignhook-syntax.yaml"></a>

```
  [LambdaFunctionName](#cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname): String
  [Mode](#cfn-pinpoint-applicationsettings-campaignhook-mode): String
  [WebUrl](#cfn-pinpoint-applicationsettings-campaignhook-weburl): String
```

## Properties
<a name="aws-properties-pinpoint-applicationsettings-campaignhook-properties"></a>

`LambdaFunctionName`  <a name="cfn-pinpoint-applicationsettings-campaignhook-lambdafunctionname"></a>
The name or Amazon Resource Name (ARN) of the Lambda function that Amazon Pinpoint invokes to send messages for campaigns in the application.  
*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)

`Mode`  <a name="cfn-pinpoint-applicationsettings-campaignhook-mode"></a>
The mode that Amazon Pinpoint uses to invoke the Lambda function. Possible values are:  
+ `FILTER` - Invoke the function to customize the segment that's used by a campaign.
+ `DELIVERY` - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the `CustomDeliveryConfiguration` and `CampaignCustomMessage` objects of the campaign.
*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)

`WebUrl`  <a name="cfn-pinpoint-applicationsettings-campaignhook-weburl"></a>
The web URL that Amazon Pinpoint calls to invoke the Lambda function over HTTPS.  
*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::Pinpoint::ApplicationSettings Limits
<a name="aws-properties-pinpoint-applicationsettings-limits"></a>

Specifies the default sending limits for campaigns in the application.

## Syntax
<a name="aws-properties-pinpoint-applicationsettings-limits-syntax"></a>

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

### JSON
<a name="aws-properties-pinpoint-applicationsettings-limits-syntax.json"></a>

```
{
  "[Daily](#cfn-pinpoint-applicationsettings-limits-daily)" : Integer,
  "[MaximumDuration](#cfn-pinpoint-applicationsettings-limits-maximumduration)" : Integer,
  "[MessagesPerSecond](#cfn-pinpoint-applicationsettings-limits-messagespersecond)" : Integer,
  "[Total](#cfn-pinpoint-applicationsettings-limits-total)" : Integer
}
```

### YAML
<a name="aws-properties-pinpoint-applicationsettings-limits-syntax.yaml"></a>

```
  [Daily](#cfn-pinpoint-applicationsettings-limits-daily): Integer
  [MaximumDuration](#cfn-pinpoint-applicationsettings-limits-maximumduration): Integer
  [MessagesPerSecond](#cfn-pinpoint-applicationsettings-limits-messagespersecond): Integer
  [Total](#cfn-pinpoint-applicationsettings-limits-total): Integer
```

## Properties
<a name="aws-properties-pinpoint-applicationsettings-limits-properties"></a>

`Daily`  <a name="cfn-pinpoint-applicationsettings-limits-daily"></a>
The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. The maximum value is 100.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaximumDuration`  <a name="cfn-pinpoint-applicationsettings-limits-maximumduration"></a>
The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MessagesPerSecond`  <a name="cfn-pinpoint-applicationsettings-limits-messagespersecond"></a>
The maximum number of messages that a campaign can send each second. The minimum value is 1. The maximum value is 20,000.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Total`  <a name="cfn-pinpoint-applicationsettings-limits-total"></a>
The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. The maximum value is 100.  
*Required*: No  
*Type*: Integer  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Pinpoint::ApplicationSettings QuietTime
<a name="aws-properties-pinpoint-applicationsettings-quiettime"></a>

Specifies the start and end times that define a time range when messages aren't sent to endpoints.

## Syntax
<a name="aws-properties-pinpoint-applicationsettings-quiettime-syntax"></a>

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

### JSON
<a name="aws-properties-pinpoint-applicationsettings-quiettime-syntax.json"></a>

```
{
  "[End](#cfn-pinpoint-applicationsettings-quiettime-end)" : String,
  "[Start](#cfn-pinpoint-applicationsettings-quiettime-start)" : String
}
```

### YAML
<a name="aws-properties-pinpoint-applicationsettings-quiettime-syntax.yaml"></a>

```
  [End](#cfn-pinpoint-applicationsettings-quiettime-end): String
  [Start](#cfn-pinpoint-applicationsettings-quiettime-start): String
```

## Properties
<a name="aws-properties-pinpoint-applicationsettings-quiettime-properties"></a>

`End`  <a name="cfn-pinpoint-applicationsettings-quiettime-end"></a>
The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use `02:30` to represent 2:30 AM, or `14:30` to represent 2:30 PM.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Start`  <a name="cfn-pinpoint-applicationsettings-quiettime-start"></a>
The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use `02:30` to represent 2:30 AM, or `14:30` to represent 2:30 PM.  
*Required*: Yes  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)