AWS CloudFormation
User Guide (API Version 2010-05-15)

Intrinsic Function Reference

AWS CloudFormation provides several built-in functions that help you manage your stacks. Use intrinsic functions in your templates to assign values to properties that are not available until runtime. Each function is declared with a name enclosed in quotation marks (""), a single colon, and its parameters. When an argument is a literal string, enclose the argument in quotation marks. When arguments are in a list of any kind, enclose the arguments in brackets ([ ]). If an argument is a value that is returned from an intrinsic function, enclose the argument in braces ({ }).


You can use intrinsic functions only in specific parts of a template. Currently, you can use intrinsic functions in resource properties, metadata attributes, and update policy attributes.

The following example uses the Fn::GetAtt function to assign a value to the MyLBDNSName property. The function retrieves the value of the DNSName attribute from the MyLoadBalancer Elastic Load Balancing load balancer.

"Properties" : {
   "MyMyLBDNSName" : {
      "Fn::GetAtt" : [ "MyLoadBalancer", "DNSName" ]