---
type: resource-type
title: Canary
description: aws resource type AWS::Synthetics::Canary
name: Canary
lexicon: aws
resource_type: AWS::Synthetics::Canary
---
`AWS::Synthetics::Canary`, a resource type of the aws lexicon.

## Properties

- `ArtifactS3Location` (`string`, required): Provide the s3 bucket output location for test results
- `Code` (`Canary_Code`, required): Provide the canary script source
- `ExecutionRoleArn` (`string`, required): Lambda Execution role used to run your canaries
- `Name` (`string`, required): Name of the canary.
- `RuntimeVersion` (`string`, required): Runtime version of Synthetics Library
- `Schedule` (`Canary_Schedule`, required): Frequency to run your canaries
- `ArtifactConfig` (`Canary_ArtifactConfig`, optional): Provide artifact configuration
- `BrowserConfigs` (`Canary_BrowserConfig[]`, optional): List of browser configurations for the canary
- `DeleteLambdaResourcesOnCanaryDeletion` (`boolean`, optional): Deletes associated lambda resources created by Synthetics if set to True. Default is False
- `DryRunAndUpdate` (`boolean`, optional): Setting to control if UpdateCanary will perform a DryRun and validate it is PASSING before performing the Update. Default is FALSE.
- `FailureRetentionPeriod` (`number`, optional): Retention period of failed canary runs represented in number of days
- `Id` (`string`, optional): Id of the canary
- `KmsKeyArn` (`string`, optional): KMS key ARN for encrypting the canary's Lambda function environment variables at rest. If omitted, Lambda uses an AWS-managed key.
- `ProvisionedResourceCleanup` (`"AUTOMATIC" | "OFF"`, optional): Setting to control if provisioned resources created by Synthetics are deleted alongside the canary. Default is AUTOMATIC.
- `Replicas` (`Canary_Replica[]`, optional): List of replica locations for multi-location canary execution
- `ResourcesToReplicateTags` (`Canary_ResourceToTag[]`, optional): List of resources which canary tags should be replicated to.
- `RunConfig` (`Canary_RunConfig`, optional): Provide canary run configuration
- `StartCanaryAfterCreation` (`boolean`, optional): Runs canary if set to True. Default is False
- `State` (`string`, optional): State of the canary
- `SuccessRetentionPeriod` (`number`, optional): Retention period of successful canary runs represented in number of days
- `Tags` (`Canary_Tag[]`, optional)
- `VisualReference` (`Canary_VisualReference`, optional): Visual reference configuration for visual testing
- `VisualReferences` (`Canary_VisualReference[]`, optional): List of visual references for the canary
- `VPCConfig` (`Canary_VPCConfig`, optional): Provide VPC Configuration if enabled.

## Attributes

- `Code.SourceLocationArn`
- `Id`
- `Replicas.*.CanaryState`
- `Replicas.*.LastModified`
- `Replicas.*.ReplicationStatus`
- `Replicas.*.VpcConfig.VpcId`
- `State`
