AWS CloudFormation
App · Cloud Computing · 20 actions
Run your AWS infrastructure as code from a workflow: create, update and delete CloudFormation stacks, preview changes with change sets, read stack outputs and events, and check stacks for drift.
Actions
| Action | What it does |
|---|---|
| Cancel a stack update | Cancel an update that is still in progress, rolling the stack back to how it was, and by default wait for the rollback. |
| Create a change set | Preview what an update would change, without changing anything yet: CloudFormation lists each resource it would add, modify or replace. |
| Create a stack | Create a stack from a template, and by default wait until every resource is created. |
| Delete a change set | Throw away a change set without applying it. |
| Delete a stack | Delete a stack and every resource it created (except those its template retains), and by default wait until it is gone. |
| Detect stack drift | Check whether a stack's resources were changed outside CloudFormation, and by default wait for the result. |
| Execute a change set | Apply a change set to its stack, and by default wait until the stack finishes updating. |
| Get a change set | Read a change set: its status, whether it can be executed, and every resource change it would make. |
| Get a stack | Read a stack: its status, parameters, outputs (as a list and by name), tags and drift status. |
| Get a template | Read the template a stack (or one of its change sets) uses, as text and, for JSON, as an object. |
| Get drift detection status | Read the progress and result of a drift detection that 'Detect stack drift' started. |
| List change sets | List a stack's change sets that are not yet executed. |
| List exports | List the output values stacks in this region export for other stacks to import. |
| List resource drifts | List the drift results of a stack's resources from the last drift detection, with each property that differs. |
| List stack events | List a stack's events, newest first: each resource's progress and, for a failure, the reason. |
| List stack resources | List the resources a stack created, with each one's real id and status. |
| List stacks | List the stacks in the connection's region, newest first, with their status. |
| Set termination protection | Turn a stack's termination protection on or off. |
| Update a stack | Change a stack's template, parameter values or tags, and by default wait until the update finishes. |
| Validate a template | Check a template's syntax and list its parameters and the capabilities it needs. |
Cancel a stack update
Cancel an update that is still in progress, rolling the stack back to how it was, and by default wait for the rollback.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
capabilitieslistcreation_timetextdeletion_timetextdescriptiontextdetailed_statustextdisable_rollbacktrue/falsedrift_last_checkedtextdrift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
finishedtrue/false- True once the stack settled. False when the step did not wait, or stopped waiting before CloudFormation finished.
last_updated_timetextnotification_arnslistoutput_mapobject- Output name to value, for picking one by name.
outputslistparametersobject- Parameter name to value.
parent_idtext- For a nested stack, the stack ARN of its parent.
role_arntextroot_idtextstack_idtext- The stack ARN, such as arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-...
stack_nametextstatustext- Such as CREATE_COMPLETE, UPDATE_IN_PROGRESS or ROLLBACK_COMPLETE.
status_reasontexttagsobject- Tag name to value.
termination_protectiontrue/falsetimeout_in_minutesnumber
Example output
{
"capabilities": [],
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": null,
"description": "My app's queue and parameters",
"detailed_status": null,
"disable_rollback": false,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"finished": true,
"last_updated_time": null,
"notification_arns": [],
"output_map": {
"QueueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
},
"outputs": [
{
"description": "The queue's URL",
"export_name": null,
"key": "QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"parameters": {
"Environment": "prod"
},
"parent_id": null,
"role_arn": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "UPDATE_ROLLBACK_COMPLETE",
"status_reason": null,
"tags": {
"team": "web"
},
"termination_protection": false,
"timeout_in_minutes": null
}Create a change set
Preview what an update would change, without changing anything yet: CloudFormation lists each resource it would add, modify or replace. Execute the change set to apply it.
Inputs
- Stack
stacktextRequired - The stack to change: pick one, or give its name or ARN. For the Create type, the new stack's name.
- Change set name
change_set_nametextRequired - A name unique on the stack: letters, digits and hyphens, starting with a letter, such as release-42.
- Type
change_set_typetext - Update previews changes to an existing stack; Create previews a new stack, which waits in REVIEW_IN_PROGRESS until executed.One of:
UPDATE(Update an existing stack),CREATE(Create a new stack). Default:UPDATE. - Template
template_bodytext - The new template, in YAML or JSON. Leave this and Template URL empty to keep the stack's current template.
- Template URL
template_urltext - Instead of pasting the template: its https:// link in Amazon S3, such as https://my-bucket.s3.amazonaws.com/template.yaml.
- Parameters
parametersobject - New values for the template's parameters, by name. Any parameter left out keeps its current value.
- Capabilities
capabilitieslist - Acknowledge what the template does that needs your consent: IAM resources, or macros. CloudFormation refuses the template and names the capability if one is missing.One or more of:
CAPABILITY_IAM(IAM resources (CAPABILITY_IAM)),CAPABILITY_NAMED_IAM(IAM resources with custom names (CAPABILITY_NAMED_IAM)),CAPABILITY_AUTO_EXPAND(Macros and nested transforms (CAPABILITY_AUTO_EXPAND)). - Tags
tagsobject - Tag names and values. When given, they replace all of the stack's tags; leave empty to keep its current tags.
- Description
descriptiontext - An optional note, up to 1,024 characters.
- Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
capabilitieslistchange_countnumberchange_set_idtext- The change set ARN.
change_set_nametextchangeslistcreation_timetextdescriptiontextexecution_statustext- AVAILABLE when it can be executed.
finishedtrue/false- True once CloudFormation finished working out the changes.
has_changestrue/false- False when the change set would change nothing.
on_stack_failuretextparametersobjectstack_idtextstack_nametextstatustext- CREATE_PENDING, CREATE_IN_PROGRESS, CREATE_COMPLETE, FAILED, ...
status_reasontexttagsobject
Example output
{
"capabilities": [],
"change_count": 1,
"change_set_id": "arn:aws:cloudformation:us-east-1:123456789012:changeSet/release-42/1a2345b6-0000-00a0-a123-00abc0abc000",
"change_set_name": "release-42",
"changes": [
{
"action": "Modify",
"logical_resource_id": "Queue",
"physical_resource_id": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app",
"policy_action": null,
"replacement": "False",
"resource_type": "AWS::SQS::Queue",
"scope": [
"Properties"
]
}
],
"creation_time": "2026-10-02T09:00:00+00:00",
"description": "Raise the queue's retention",
"execution_status": "AVAILABLE",
"finished": true,
"has_changes": true,
"on_stack_failure": null,
"parameters": {
"Environment": "prod"
},
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null,
"tags": {}
}Create a stack
Create a stack from a template, and by default wait until every resource is created. Give the template either pasted in or as an Amazon S3 link.
Inputs
- Stack name
stack_nametextRequired - A name unique in this region: letters, digits and hyphens, starting with a letter, such as my-app-prod.
- Template
template_bodytext - The template, in YAML or JSON, up to 51,200 bytes. For a bigger one, upload it to Amazon S3 and give its link in Template URL instead.
- Template URL
template_urltext - Instead of pasting the template: its https:// link in Amazon S3, such as https://my-bucket.s3.amazonaws.com/template.yaml.
- Parameters
parametersobject - Values for the template's parameters, by name, such as Environment = prod. A list value can be given as a, b, c.
- Capabilities
capabilitieslist - Acknowledge what the template does that needs your consent: IAM resources, or macros. CloudFormation refuses the template and names the capability if one is missing.One or more of:
CAPABILITY_IAM(IAM resources (CAPABILITY_IAM)),CAPABILITY_NAMED_IAM(IAM resources with custom names (CAPABILITY_NAMED_IAM)),CAPABILITY_AUTO_EXPAND(Macros and nested transforms (CAPABILITY_AUTO_EXPAND)). - Tags
tagsobject - Tag names and values, such as team = web, applied to the stack and every resource it creates that supports tags. Up to 50.
- If creation fails
on_failuretext - What CloudFormation does if a resource fails.One of:
ROLLBACK(Roll back (delete what was created, keep the stack)),DO_NOTHING(Do nothing (keep what was created, for debugging)),DELETE(Delete the stack). Default:ROLLBACK. - Timeout (minutes)
timeout_in_minutesnumber - Fail the creation if it takes longer than this. Leave empty for no limit.
- Termination protection
enable_termination_protectiontrue/false - Refuse to delete the stack until this is off.Default:
false. - SNS topic ARNs
notification_arnslist - Up to 5 SNS topics to receive the stack's events, such as arn:aws:sns:us-east-1:123456789012:stack-events.
- Service role ARN
role_arntext - An IAM role CloudFormation uses to create and change the resources, such as arn:aws:iam::123456789012:role/cfn-deployer. Leave empty to use this connection's own permissions.
- Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
capabilitieslistcreation_timetextdeletion_timetextdescriptiontextdetailed_statustextdisable_rollbacktrue/falsedrift_last_checkedtextdrift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
finishedtrue/false- True once the stack settled. False when the step did not wait, or stopped waiting before CloudFormation finished.
last_updated_timetextnotification_arnslistoperation_idtext- CloudFormation's id for this operation.
output_mapobject- Output name to value, for picking one by name.
outputslistparametersobject- Parameter name to value.
parent_idtext- For a nested stack, the stack ARN of its parent.
role_arntextroot_idtextstack_idtext- The stack ARN, such as arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-...
stack_nametextstatustext- Such as CREATE_COMPLETE, UPDATE_IN_PROGRESS or ROLLBACK_COMPLETE.
status_reasontexttagsobject- Tag name to value.
termination_protectiontrue/falsetimeout_in_minutesnumber
Example output
{
"capabilities": [],
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": null,
"description": "My app's queue and parameters",
"detailed_status": null,
"disable_rollback": false,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"finished": true,
"last_updated_time": null,
"notification_arns": [],
"operation_id": "8b0a6b1e-1c2d-4e5f-9a8b-7c6d5e4f3a2b",
"output_map": {
"QueueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
},
"outputs": [
{
"description": "The queue's URL",
"export_name": null,
"key": "QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"parameters": {
"Environment": "prod"
},
"parent_id": null,
"role_arn": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null,
"tags": {
"team": "web"
},
"termination_protection": false,
"timeout_in_minutes": null
}Delete a change set
Throw away a change set without applying it. The stack is not changed.
Inputs
- Stack
stacktext - The change set's stack. Needed when the change set is given by name; leave empty when it is given by ARN.
- Change set
change_settextRequired - The change set. Pick one of the stack's, or give its name or ARN. With an ARN the stack can be left empty.
Outputs
change_settextdeletedtrue/falsestacktext
Example output
{
"change_set": "release-42",
"deleted": true,
"stack": "my-app"
}Delete a stack
Delete a stack and every resource it created (except those its template retains), and by default wait until it is gone. Termination protection must be off.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Resources to keep
retain_resourceslist - Only for a stack in DELETE_FAILED: the logical ids (names in the template) of resources that could not be deleted and should be left in place.
- Deletion mode
deletion_modetext - Force delete removes a stack stuck in DELETE_FAILED without deleting the resources that failed.One of:
STANDARD,FORCE_DELETE_STACK(Force delete (only for a stack in DELETE_FAILED)). Default:STANDARD. - Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
capabilitieslistcreation_timetextdeletion_timetextdescriptiontextdetailed_statustextdisable_rollbacktrue/falsedrift_last_checkedtextdrift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
finishedtrue/false- True once the stack settled. False when the step did not wait, or stopped waiting before CloudFormation finished.
last_updated_timetextnotification_arnslistoutput_mapobject- Output name to value, for picking one by name.
outputslistparametersobject- Parameter name to value.
parent_idtext- For a nested stack, the stack ARN of its parent.
role_arntextroot_idtextstack_idtext- The stack ARN, such as arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-...
stack_nametextstatustext- Such as CREATE_COMPLETE, UPDATE_IN_PROGRESS or ROLLBACK_COMPLETE.
status_reasontexttagsobject- Tag name to value.
termination_protectiontrue/falsetimeout_in_minutesnumber
Example output
{
"capabilities": [],
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": "2026-10-04T09:00:00+00:00",
"description": "My app's queue and parameters",
"detailed_status": null,
"disable_rollback": false,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"finished": true,
"last_updated_time": null,
"notification_arns": [],
"output_map": {
"QueueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
},
"outputs": [
{
"description": "The queue's URL",
"export_name": null,
"key": "QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"parameters": {
"Environment": "prod"
},
"parent_id": null,
"role_arn": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "DELETE_COMPLETE",
"status_reason": null,
"tags": {
"team": "web"
},
"termination_protection": false,
"timeout_in_minutes": null
}Detect stack drift
Check whether a stack's resources were changed outside CloudFormation, and by default wait for the result. 'List resource drifts' then shows what differs.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Only these resources
logical_resource_idslist - Logical ids (names in the template) to check, such as Queue. Leave empty to check every resource.
- Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
detection_statustext- DETECTION_IN_PROGRESS, DETECTION_COMPLETE or DETECTION_FAILED.
detection_status_reasontextdrift_detection_idtextdrifted_resource_countnumberfinishedtrue/false- True once the detection finished.
stack_drift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
stack_idtexttimestamptext
Example output
{
"detection_status": "DETECTION_COMPLETE",
"detection_status_reason": null,
"drift_detection_id": "b78ac9b0-dec1-11e7-a451-50d5cd92b8ae",
"drifted_resource_count": 0,
"finished": true,
"stack_drift_status": "IN_SYNC",
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"timestamp": "2026-10-03T09:00:00+00:00"
}Execute a change set
Apply a change set to its stack, and by default wait until the stack finishes updating. Its execution status must be AVAILABLE.
Inputs
- Stack
stacktext - The change set's stack. Needed when the change set is given by name; leave empty when it is given by ARN.
- Change set
change_settextRequired - The change set. Pick one of the stack's, or give its name or ARN. With an ARN the stack can be left empty.
- Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
capabilitieslistchange_set_idtextcreation_timetextdeletion_timetextdescriptiontextdetailed_statustextdisable_rollbacktrue/falsedrift_last_checkedtextdrift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
finishedtrue/false- True once the stack settled. False when the step did not wait, or stopped waiting before CloudFormation finished.
last_updated_timetextnotification_arnslistoutput_mapobject- Output name to value, for picking one by name.
outputslistparametersobject- Parameter name to value.
parent_idtext- For a nested stack, the stack ARN of its parent.
role_arntextroot_idtextstack_idtext- The stack ARN, such as arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-...
stack_nametextstatustext- Such as CREATE_COMPLETE, UPDATE_IN_PROGRESS or ROLLBACK_COMPLETE.
status_reasontexttagsobject- Tag name to value.
termination_protectiontrue/falsetimeout_in_minutesnumber
Example output
{
"capabilities": [],
"change_set_id": "arn:aws:cloudformation:us-east-1:123456789012:changeSet/release-42/1a2345b6-0000-00a0-a123-00abc0abc000",
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": null,
"description": "My app's queue and parameters",
"detailed_status": null,
"disable_rollback": false,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"finished": true,
"last_updated_time": null,
"notification_arns": [],
"output_map": {
"QueueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
},
"outputs": [
{
"description": "The queue's URL",
"export_name": null,
"key": "QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"parameters": {
"Environment": "prod"
},
"parent_id": null,
"role_arn": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "UPDATE_COMPLETE",
"status_reason": null,
"tags": {
"team": "web"
},
"termination_protection": false,
"timeout_in_minutes": null
}Get a change set
Read a change set: its status, whether it can be executed, and every resource change it would make.
Inputs
- Stack
stacktext - The change set's stack. Needed when the change set is given by name; leave empty when it is given by ARN.
- Change set
change_settextRequired - The change set. Pick one of the stack's, or give its name or ARN. With an ARN the stack can be left empty.
Outputs
capabilitieslistchange_countnumberchange_set_idtext- The change set ARN.
change_set_nametextchangeslistcreation_timetextdescriptiontextexecution_statustext- AVAILABLE when it can be executed.
has_changestrue/false- False when the change set would change nothing.
on_stack_failuretextparametersobjectstack_idtextstack_nametextstatustext- CREATE_PENDING, CREATE_IN_PROGRESS, CREATE_COMPLETE, FAILED, ...
status_reasontexttagsobject
Example output
{
"capabilities": [],
"change_count": 1,
"change_set_id": "arn:aws:cloudformation:us-east-1:123456789012:changeSet/release-42/1a2345b6-0000-00a0-a123-00abc0abc000",
"change_set_name": "release-42",
"changes": [
{
"action": "Modify",
"logical_resource_id": "Queue",
"physical_resource_id": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app",
"policy_action": null,
"replacement": "False",
"resource_type": "AWS::SQS::Queue",
"scope": [
"Properties"
]
}
],
"creation_time": "2026-10-02T09:00:00+00:00",
"description": "Raise the queue's retention",
"execution_status": "AVAILABLE",
"has_changes": true,
"on_stack_failure": null,
"parameters": {
"Environment": "prod"
},
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null,
"tags": {}
}Get a stack
Read a stack: its status, parameters, outputs (as a list and by name), tags and drift status.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
Outputs
capabilitieslistcreation_timetextdeletion_timetextdescriptiontextdetailed_statustextdisable_rollbacktrue/falsedrift_last_checkedtextdrift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
last_updated_timetextnotification_arnslistoutput_mapobject- Output name to value, for picking one by name.
outputslistparametersobject- Parameter name to value.
parent_idtext- For a nested stack, the stack ARN of its parent.
role_arntextroot_idtextstack_idtext- The stack ARN, such as arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-...
stack_nametextstatustext- Such as CREATE_COMPLETE, UPDATE_IN_PROGRESS or ROLLBACK_COMPLETE.
status_reasontexttagsobject- Tag name to value.
termination_protectiontrue/falsetimeout_in_minutesnumber
Example output
{
"capabilities": [],
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": null,
"description": "My app's queue and parameters",
"detailed_status": null,
"disable_rollback": false,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"last_updated_time": null,
"notification_arns": [],
"output_map": {
"QueueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
},
"outputs": [
{
"description": "The queue's URL",
"export_name": null,
"key": "QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"parameters": {
"Environment": "prod"
},
"parent_id": null,
"role_arn": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null,
"tags": {
"team": "web"
},
"termination_protection": false,
"timeout_in_minutes": null
}Get a template
Read the template a stack (or one of its change sets) uses, as text and, for JSON, as an object.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Change set
change_settext - To read a change set's template instead of the stack's: its name or ARN. Leave empty for the stack's.
- Stage
template_stagetext - Original is the template as written; Processed has transforms such as AWS::Serverless applied.One of:
Original(Original (as written)),Processed(Processed (with transforms applied)). Default:Original.
Outputs
stages_availablelisttemplateobject- A JSON template, parsed. Null for YAML.
template_bodytext- The template text, JSON or YAML.
template_formattext- JSON or YAML.
Example output
{
"stages_available": [
"Original",
"Processed"
],
"template": {
"Resources": {
"Queue": {
"Type": "AWS::SQS::Queue"
}
}
},
"template_body": "{\n \"Resources\": {\n \"Queue\": {\n \"Type\": \"AWS::SQS::Queue\"\n }\n }\n}",
"template_format": "JSON"
}Get drift detection status
Read the progress and result of a drift detection that 'Detect stack drift' started.
Inputs
- Drift detection id
drift_detection_idtextRequired - The 'drift_detection_id' that 'Detect stack drift' returned.
Outputs
detection_statustext- DETECTION_IN_PROGRESS, DETECTION_COMPLETE or DETECTION_FAILED.
detection_status_reasontextdrift_detection_idtextdrifted_resource_countnumberstack_drift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
stack_idtexttimestamptext
Example output
{
"detection_status": "DETECTION_COMPLETE",
"detection_status_reason": null,
"drift_detection_id": "b78ac9b0-dec1-11e7-a451-50d5cd92b8ae",
"drifted_resource_count": 0,
"stack_drift_status": "IN_SYNC",
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"timestamp": "2026-10-03T09:00:00+00:00"
}List change sets
List a stack's change sets that are not yet executed.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Next token
next_tokentext - To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.
Outputs
change_setslistcountnumbernext_tokentext- Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
"change_sets": [
{
"change_set_id": "arn:aws:cloudformation:us-east-1:123456789012:changeSet/release-42/1a2345b6-0000-00a0-a123-00abc0abc000",
"change_set_name": "release-42",
"creation_time": "2026-10-02T09:00:00+00:00",
"description": "Raise the queue's retention",
"execution_status": "AVAILABLE",
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null
}
],
"count": 1,
"next_token": null
}List exports
List the output values stacks in this region export for other stacks to import.
Inputs
- Next token
next_tokentext - To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.
Outputs
countnumberexportslistnext_tokentext- Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
"count": 1,
"exports": [
{
"exporting_stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"name": "my-app-QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"next_token": null
}List resource drifts
List the drift results of a stack's resources from the last drift detection, with each property that differs.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Drift statuses
drift_statuseslist - Only resources in up to 4 of these statuses, such as Modified and Deleted. Leave empty for all.One or more of:
MODIFIED,DELETED,IN_SYNC(In sync),NOT_CHECKED(Not checked),UNKNOWN,UNSUPPORTED. - Max results
max_resultsnumber - How many to return in one page, from 1 to 100.From 1 to 100. Default:
100. - Next token
next_tokentext - To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.
Outputs
countnumberdriftslistnext_tokentext- Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
"count": 1,
"drifts": [
{
"actual_properties": "{\"MessageRetentionPeriod\":1209600}",
"drift_status": "MODIFIED",
"drift_status_reason": null,
"expected_properties": "{\"MessageRetentionPeriod\":345600}",
"logical_resource_id": "Queue",
"physical_resource_id": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app",
"property_differences": [
{
"actual_value": "1209600",
"difference_type": "NOT_EQUAL",
"expected_value": "345600",
"property_path": "/MessageRetentionPeriod"
}
],
"resource_type": "AWS::SQS::Queue",
"timestamp": "2026-10-03T09:00:00+00:00"
}
],
"next_token": null
}List stack events
List a stack's events, newest first: each resource's progress and, for a failure, the reason.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Failures only
failures_onlytrue/false - Only the events that report a failure, with why.Default:
false. - Next token
next_tokentext - To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.
Outputs
countnumbereventslistnext_tokentext- Pass this as 'Next token' to fetch the next page. Null on the last page.
Example output
{
"count": 1,
"events": [
{
"client_request_token": null,
"detailed_status": null,
"event_id": "Queue-CREATE_COMPLETE-2026-10-01T09:01:00.000Z",
"hook_status": null,
"hook_status_reason": null,
"hook_type": null,
"logical_resource_id": "Queue",
"operation_id": null,
"physical_resource_id": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app",
"resource_type": "AWS::SQS::Queue",
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null,
"timestamp": "2026-10-01T09:01:00+00:00"
}
],
"next_token": null
}List stack resources
List the resources a stack created, with each one's real id and status.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Next token
next_tokentext - To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.
Outputs
countnumbernext_tokentext- Pass this as 'Next token' to fetch the next page. Null on the last page.
resourceslist
Example output
{
"count": 1,
"next_token": null,
"resources": [
{
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"last_updated_time": "2026-10-01T09:01:00+00:00",
"logical_resource_id": "Queue",
"physical_resource_id": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app",
"resource_type": "AWS::SQS::Queue",
"status": "CREATE_COMPLETE",
"status_reason": null
}
]
}List stacks
List the stacks in the connection's region, newest first, with their status. Stacks deleted in the last 90 days are left out unless you pick DELETE_COMPLETE.
Inputs
- Statuses
statuseslist - Only stacks in these statuses. Leave empty for every stack that is not deleted.One or more of:
CREATE_IN_PROGRESS,CREATE_FAILED,CREATE_COMPLETE,ROLLBACK_IN_PROGRESS,ROLLBACK_FAILED,ROLLBACK_COMPLETE,DELETE_IN_PROGRESS,DELETE_FAILED,DELETE_COMPLETE,UPDATE_IN_PROGRESS, and 13 more. - Next token
next_tokentext - To fetch the next page, the 'next_token' an earlier run of this step returned. Leave empty for the first page.
Outputs
countnumbernext_tokentext- Pass this as 'Next token' to fetch the next page. Null on the last page.
stackslist
Example output
{
"count": 1,
"next_token": null,
"stacks": [
{
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": null,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"last_updated_time": null,
"parent_id": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "CREATE_COMPLETE",
"status_reason": null,
"template_description": "My app's queue and parameters"
}
]
}Set termination protection
Turn a stack's termination protection on or off. While it is on, the stack cannot be deleted.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Enabled
enabledtrue/falseRequired - On to protect the stack, off to allow deleting it.
Outputs
stack_idtexttermination_protectiontrue/false
Example output
{
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"termination_protection": true
}Update a stack
Change a stack's template, parameter values or tags, and by default wait until the update finishes. Parameters you leave out keep their current values. When nothing would change, the step succeeds with 'updated' false.
Inputs
- Stack
stacktextRequired - The stack. Pick one, or give its name, its stack ARN, or the link to its page in the CloudFormation console. It must be in the connection's region.
- Template
template_bodytext - The new template, in YAML or JSON. Leave this and Template URL empty to keep the stack's current template.
- Template URL
template_urltext - Instead of pasting the template: its https:// link in Amazon S3, such as https://my-bucket.s3.amazonaws.com/template.yaml.
- Parameters
parametersobject - New values for the template's parameters, by name. Any parameter left out keeps its current value.
- Capabilities
capabilitieslist - Acknowledge what the template does that needs your consent: IAM resources, or macros. CloudFormation refuses the template and names the capability if one is missing.One or more of:
CAPABILITY_IAM(IAM resources (CAPABILITY_IAM)),CAPABILITY_NAMED_IAM(IAM resources with custom names (CAPABILITY_NAMED_IAM)),CAPABILITY_AUTO_EXPAND(Macros and nested transforms (CAPABILITY_AUTO_EXPAND)). - Tags
tagsobject - Tag names and values. When given, they replace all of the stack's tags; leave empty to keep its current tags.
- Keep changes if it fails
disable_rollbacktrue/false - On: if the update fails, keep the resources already changed instead of rolling back. Leave empty for the stack's own setting.
- Service role ARN
role_arntext - An IAM role CloudFormation uses to create and change the resources, such as arn:aws:iam::123456789012:role/cfn-deployer. Leave empty to use this connection's own permissions.
- Wait until finished
wait_for_completiontrue/false - Keep the step running until CloudFormation finishes, and fail it with the resource errors if it rolled back. Off returns as soon as CloudFormation has started.Default:
true. - Stop waiting after (seconds)
wait_timeout_secondsnumber - How long to wait, from 10 to 900 seconds. If CloudFormation is still working then, the step returns with 'finished' false and the operation carries on; follow it with 'Get a stack'.From 10 to 900. Default:
300.
Outputs
capabilitieslistcreation_timetextdeletion_timetextdescriptiontextdetailed_statustextdisable_rollbacktrue/falsedrift_last_checkedtextdrift_statustext- DRIFTED, IN_SYNC, UNKNOWN or NOT_CHECKED.
finishedtrue/false- True once the stack settled. False when the step did not wait, or stopped waiting before CloudFormation finished.
last_updated_timetextnotification_arnslistoperation_idtext- CloudFormation's id for this operation.
output_mapobject- Output name to value, for picking one by name.
outputslistparametersobject- Parameter name to value.
parent_idtext- For a nested stack, the stack ARN of its parent.
role_arntextroot_idtextstack_idtext- The stack ARN, such as arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-...
stack_nametextstatustext- Such as CREATE_COMPLETE, UPDATE_IN_PROGRESS or ROLLBACK_COMPLETE.
status_reasontexttagsobject- Tag name to value.
termination_protectiontrue/falsetimeout_in_minutesnumberupdatedtrue/false- False when the stack already matched, so nothing changed.
Example output
{
"capabilities": [],
"creation_time": "2026-10-01T09:00:00+00:00",
"deletion_time": null,
"description": "My app's queue and parameters",
"detailed_status": null,
"disable_rollback": false,
"drift_last_checked": null,
"drift_status": "NOT_CHECKED",
"finished": true,
"last_updated_time": "2026-10-02T09:00:00+00:00",
"notification_arns": [],
"operation_id": "8b0a6b1e-1c2d-4e5f-9a8b-7c6d5e4f3a2c",
"output_map": {
"QueueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
},
"outputs": [
{
"description": "The queue's URL",
"export_name": null,
"key": "QueueUrl",
"value": "https://sqs.us-east-1.amazonaws.com/123456789012/my-app"
}
],
"parameters": {
"Environment": "prod"
},
"parent_id": null,
"role_arn": null,
"root_id": null,
"stack_id": "arn:aws:cloudformation:us-east-1:123456789012:stack/my-app/1c2fa620-982a-11e3-aff7-50e2416294e0",
"stack_name": "my-app",
"status": "UPDATE_COMPLETE",
"status_reason": null,
"tags": {
"team": "web"
},
"termination_protection": false,
"timeout_in_minutes": null,
"updated": true
}Validate a template
Check a template's syntax and list its parameters and the capabilities it needs. An invalid template is returned with 'valid' false and the reason, not as an error.
Inputs
- Template
template_bodytext - The template, in YAML or JSON, up to 51,200 bytes. Or give its Amazon S3 link in Template URL.
- Template URL
template_urltext - Instead of pasting the template: its https:// link in Amazon S3, such as https://my-bucket.s3.amazonaws.com/template.yaml.
Outputs
capabilitieslist- Capabilities a stack from this template must acknowledge.
capabilities_reasontextdeclared_transformslistdescriptiontextmessagetext- Why the template is not valid. Null when it is.
parameterslistvalidtrue/false
Example output
{
"capabilities": [],
"capabilities_reason": null,
"declared_transforms": [],
"description": "My app's queue and parameters",
"message": null,
"parameters": [
{
"default_value": "dev",
"description": "dev or prod",
"key": "Environment",
"no_echo": false
}
],
"valid": true
}