AWS CodePipeline
App · 20 actions
Run, approve, retry and roll back AWS CodePipeline pipelines, and create, update and inspect them.
Actions
| Action | What it does |
|---|---|
| Approve or reject | Approve or reject a manual approval that is waiting. |
| Create pipeline | Create a pipeline from a declaration - for example a copy of another pipeline's, from Get pipeline. |
| Delete pipeline | Delete a pipeline. |
| Disable stage transition | Hold executions before (Inbound) or after (Outbound) a stage until the transition is enabled again. |
| Enable stage transition | Let executions flow into or out of a stage again. |
| Get pipeline | Read a pipeline's structure - its stages, actions, role and artifact store - plus its ARN. |
| Get pipeline execution | Read one execution's status, trigger, source revisions and variables. |
| Get pipeline state | Read the live status of every stage and action, which transitions are disabled, and any manual approvals waiting. |
| List action executions | List each action's runs in a pipeline - inputs, outputs, errors and log links - optionally for one execution. |
| List action types | List the action providers a pipeline can use (S3, CodeBuild, Manual ...) with the configuration keys each takes. |
| List pipeline executions | List a pipeline's executions, newest first (the last 12 months), optionally only those that succeeded in a stage. |
| List pipeline tags | Read a pipeline's tags. |
| List pipelines | List the pipelines in the connected region. |
| Remove pipeline tags | Remove tags from a pipeline by key. |
| Retry stage | Re-run a stage whose latest run failed, without starting the pipeline again. |
| Roll back stage | Re-run a stage with the artifacts of an earlier execution that succeeded in it (V2 pipelines; not source stages). |
| Start pipeline execution | Run a pipeline with the latest source, or with a pinned source revision. |
| Stop pipeline execution | Stop a running execution. |
| Tag pipeline | Add tags to a pipeline. |
| Update pipeline | Replace a pipeline's whole structure with the declaration given; its version goes up by one. |
Approve or reject
Approve or reject a manual approval that is waiting. The approval token is looked up for you; set 'Wait up to' to wait for a run to reach the approval.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Stage
stage_nametextRequired - Pick one of the pipeline's stages (names are case-sensitive).
- Approval action
action_nametextRequired - The manual approval action in that stage.
- Decision
statustextRequired - Approve, or reject (which fails the stage).One of:
Approved(Approve),Rejected(Reject). Default:Approved. - Comment
summarytext - A comment recorded with the decision (up to 512 characters).
- Approval token
tokentext - Leave empty to use the approval waiting now. Only needed in PARALLEL mode: the approval's external execution id from List action executions.
- Wait up to (seconds)
wait_secondsnumber - Wait up to this many seconds (0-120). Leave empty not to wait.From 0 to 120.
Outputs
resultobject
Example output
{
"result": {
"action_name": "Approval",
"approved_at": "2026-10-12T09:04:00Z",
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"pipeline_name": "my-app-release",
"stage_name": "Approve",
"status": "Approved",
"token": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}
}Create pipeline
Create a pipeline from a declaration - for example a copy of another pipeline's, from Get pipeline. AWS starts its first run straight away. The service role and the S3 artifact bucket must already exist in this region.
Inputs
- Pipeline declaration
pipelineobjectRequired - The pipeline declaration as JSON: name, roleArn, artifactStore and stages, in AWS's own format. The easiest source is the 'pipeline' field of Get pipeline.
- Name
pipeline_nametext - A name for the new pipeline, overriding the declaration's. Letters, digits and . @ - _ only.
- Pipeline type
pipeline_typetext - V2 supports variables, triggers, rollback and the queued and parallel modes. Leave empty for V2 unless the declaration says otherwise.One of:
V2(V2 (recommended)),V1(V1 (legacy)). - Execution mode
execution_modetext - How runs that overlap are handled. Leave empty to keep the declaration's.One of:
SUPERSEDED(Superseded - a newer run replaces a waiting one),QUEUED(Queued - runs wait their turn (V2)),PARALLEL(Parallel - runs never wait for each other (V2)). - Tags
tagsobject - Tags for the pipeline, as key: value.
Outputs
resultobject
Example output
{
"result": {
"arn": null,
"artifact_store_location": "codepipeline-us-east-1-artifacts",
"created": null,
"execution_mode": "SUPERSEDED",
"name": "my-app-release",
"pipeline": {
"artifactStore": {
"location": "codepipeline-us-east-1-artifacts",
"type": "S3"
},
"executionMode": "SUPERSEDED",
"name": "my-app-release",
"pipelineType": "V2",
"roleArn": "arn:aws:iam::123456789012:role/service-role/AWSCodePipelineServiceRole-us-east-1-my-app-release",
"stages": [
{
"actions": [
{
"actionTypeId": {
"category": "Source",
"owner": "AWS",
"provider": "S3",
"version": "1"
},
"configuration": {
"PollForSourceChanges": "false",
"S3Bucket": "my-app-source",
"S3ObjectKey": "release.zip"
},
"name": "Source",
"outputArtifacts": [
{
"name": "SourceOutput"
}
]
}
],
"name": "Source"
},
{
"actions": [
{
"actionTypeId": {
"category": "Approval",
"owner": "AWS",
"provider": "Manual",
"version": "1"
},
"name": "Approval"
}
],
"name": "Approve"
}
],
"version": 1
},
"pipeline_type": "V2",
"polling_disabled_at": null,
"role_arn": "arn:aws:iam::123456789012:role/service-role/AWSCodePipelineServiceRole-us-east-1-my-app-release",
"stage_count": 2,
"stage_names": [
"Source",
"Approve"
],
"tags": {
"team": "release"
},
"updated": null,
"variable_names": [],
"version": 1
}
}Delete pipeline
Delete a pipeline. There is no undo; its artifacts in S3 are left in place.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
Outputs
resultobject
Example output
{
"result": {
"deleted": true,
"pipeline_name": "my-app-release"
}
}Disable stage transition
Hold executions before (Inbound) or after (Outbound) a stage until the transition is enabled again.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Stage
stage_nametextRequired - Pick one of the pipeline's stages (names are case-sensitive).
- Transition
transition_typetextRequired - Which side of the stage: into it, or out of it.One of:
Inbound(Inbound - into the stage),Outbound(Outbound - out of the stage). Default:Inbound. - Reason
reasontextRequired - Why, shown in the console (up to 300 characters). Letters, digits, spaces and ! @ ( ) . * ? - only - no commas, colons or apostrophes.
Outputs
resultobject
Example output
{
"result": {
"enabled": false,
"pipeline_name": "my-app-release",
"reason": "Release freeze",
"stage_name": "Approve",
"transition_type": "Inbound"
}
}Enable stage transition
Let executions flow into or out of a stage again.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Stage
stage_nametextRequired - Pick one of the pipeline's stages (names are case-sensitive).
- Transition
transition_typetextRequired - Which side of the stage: into it, or out of it.One of:
Inbound(Inbound - into the stage),Outbound(Outbound - out of the stage). Default:Inbound.
Outputs
resultobject
Example output
{
"result": {
"enabled": true,
"pipeline_name": "my-app-release",
"stage_name": "Approve",
"transition_type": "Inbound"
}
}Get pipeline
Read a pipeline's structure - its stages, actions, role and artifact store - plus its ARN. The 'pipeline' field can be edited and passed to Update pipeline.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Version
versionnumber - An earlier version to read. Leave empty for the current one.At least 1.
Outputs
resultobject
Example output
{
"result": {
"arn": "arn:aws:codepipeline:us-east-1:123456789012:my-app-release",
"artifact_store_location": "codepipeline-us-east-1-artifacts",
"created": "2026-10-12T09:00:00Z",
"execution_mode": "SUPERSEDED",
"name": "my-app-release",
"pipeline": {
"artifactStore": {
"location": "codepipeline-us-east-1-artifacts",
"type": "S3"
},
"executionMode": "SUPERSEDED",
"name": "my-app-release",
"pipelineType": "V2",
"roleArn": "arn:aws:iam::123456789012:role/service-role/AWSCodePipelineServiceRole-us-east-1-my-app-release",
"stages": [
{
"actions": [
{
"actionTypeId": {
"category": "Source",
"owner": "AWS",
"provider": "S3",
"version": "1"
},
"configuration": {
"PollForSourceChanges": "false",
"S3Bucket": "my-app-source",
"S3ObjectKey": "release.zip"
},
"name": "Source",
"outputArtifacts": [
{
"name": "SourceOutput"
}
]
}
],
"name": "Source"
},
{
"actions": [
{
"actionTypeId": {
"category": "Approval",
"owner": "AWS",
"provider": "Manual",
"version": "1"
},
"name": "Approval"
}
],
"name": "Approve"
}
],
"version": 1
},
"pipeline_type": "V2",
"polling_disabled_at": null,
"role_arn": "arn:aws:iam::123456789012:role/service-role/AWSCodePipelineServiceRole-us-east-1-my-app-release",
"stage_count": 2,
"stage_names": [
"Source",
"Approve"
],
"updated": "2026-10-12T09:00:00Z",
"variable_names": [],
"version": 1
}
}Get pipeline execution
Read one execution's status, trigger, source revisions and variables. Optionally wait (up to two minutes) for it to finish.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Execution id
pipeline_execution_idtextRequired - The execution's id, from Start pipeline execution or List pipeline executions.
- Wait up to (seconds)
wait_secondsnumber - Wait up to this many seconds (0-120). Leave empty not to wait.From 0 to 120.
Outputs
resultobject
Example output
{
"result": {
"artifact_revisions": [
{
"created": "2026-10-12T08:55:00Z",
"name": "SourceOutput",
"revision_change_identifier": null,
"revision_id": "3sLkYxFq1bS0Qd5u2vKcTz7mWnE8pRaG",
"revision_summary": null,
"revision_url": null
}
],
"execution_mode": "SUPERSEDED",
"execution_type": "STANDARD",
"finished": true,
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"pipeline_name": "my-app-release",
"pipeline_version": 1,
"rollback_target_pipeline_execution_id": null,
"status": "Succeeded",
"status_summary": null,
"trigger_detail": "arn:aws:iam::123456789012:user/lodol",
"trigger_type": "StartPipelineExecution",
"variables": {}
}
}Get pipeline state
Read the live status of every stage and action, which transitions are disabled, and any manual approvals waiting.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
Outputs
resultobject
Example output
{
"result": {
"created": "2026-10-12T09:00:00Z",
"pending_approvals": [
{
"action_name": "Approval",
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"since": "2026-10-12T09:01:00Z",
"stage_name": "Approve",
"token": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}
],
"pipeline_name": "my-app-release",
"pipeline_version": 1,
"stages": [
{
"actions": [
{
"action_execution_id": "9d8c7b6a-5f4e-4d3c-2b1a-0f9e8d7c6b5a",
"action_name": "Approval",
"current_revision_id": null,
"entity_url": null,
"error_code": null,
"error_message": null,
"external_execution_id": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"external_execution_url": null,
"last_status_change": "2026-10-12T09:01:00Z",
"last_updated_by": null,
"log_stream_arn": null,
"percent_complete": null,
"revision_url": null,
"status": "InProgress",
"summary": null,
"token": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}
],
"conditions": {
"before_entry": null,
"on_failure": null,
"on_success": null
},
"execution_type": "STANDARD",
"inbound_execution_ids": [],
"inbound_transition_disabled_reason": null,
"inbound_transition_enabled": true,
"inbound_transition_last_changed_at": null,
"inbound_transition_last_changed_by": null,
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"retry": null,
"stage_name": "Approve",
"status": "InProgress"
}
],
"updated": "2026-10-12T09:00:00Z"
}
}List action executions
List each action's runs in a pipeline - inputs, outputs, errors and log links - optionally for one execution.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Execution id
pipeline_execution_idtext - Only this execution's action runs. Leave empty for all.
- Page size
max_resultsnumber - At most this many per page (1-100).From 1 to 100.
- Next token
next_tokentext - The 'next_token' from a previous page, to read the next one.
Outputs
resultobject
Example output
{
"result": {
"action_executions": [
{
"action_execution_id": "9d8c7b6a-5f4e-4d3c-2b1a-0f9e8d7c6b5a",
"action_name": "Approval",
"category": "Approval",
"configuration": {},
"error_code": null,
"error_message": null,
"external_execution_id": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"external_execution_summary": "Approved by lodol",
"external_execution_url": null,
"input_artifacts": [],
"last_update_time": "2026-10-12T09:04:00Z",
"log_stream_arn": null,
"namespace": null,
"output_artifacts": [],
"output_variables": {},
"owner": "AWS",
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"pipeline_version": 1,
"provider": "Manual",
"provider_version": "1",
"region": "us-east-1",
"resolved_configuration": {},
"role_arn": null,
"stage_name": "Approve",
"start_time": "2026-10-12T09:01:00Z",
"status": "Succeeded",
"updated_by": "arn:aws:iam::123456789012:user/lodol"
}
],
"count": 1,
"has_more": false,
"next_token": null
}
}List action types
List the action providers a pipeline can use (S3, CodeBuild, Manual ...) with the configuration keys each takes.
Inputs
- Owner
action_owner_filtertext - Only action types from this owner.One of:
AWS,ThirdParty(Third party),Custom. - Region
region_filtertext - Only action types available in this region, e.g. us-west-2. Leave empty for the connected region.
- Next token
next_tokentext - The 'next_token' from a previous page, to read the next one.
Outputs
resultobject
Example output
{
"result": {
"action_types": [
{
"category": "Approval",
"configuration_properties": [],
"entity_url_template": null,
"execution_url_template": null,
"input_artifacts_maximum": 0,
"input_artifacts_minimum": 0,
"output_artifacts_maximum": 0,
"output_artifacts_minimum": 0,
"owner": "AWS",
"provider": "Manual",
"revision_url_template": null,
"third_party_configuration_url": null,
"version": "1"
}
],
"count": 1,
"has_more": false,
"next_token": null
}
}List pipeline executions
List a pipeline's executions, newest first (the last 12 months), optionally only those that succeeded in a stage.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Succeeded in stage
succeeded_in_stagetext - Only executions that succeeded in this stage (V2; useful to find a rollback target).
- Page size
max_resultsnumber - At most this many per page (1-100).From 1 to 100.
- Next token
next_tokentext - The 'next_token' from a previous page, to read the next one.
Outputs
resultobject
Example output
{
"result": {
"count": 1,
"executions": [
{
"execution_mode": "SUPERSEDED",
"execution_type": "STANDARD",
"last_update_time": "2026-10-12T09:05:00Z",
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"rollback_target_pipeline_execution_id": null,
"source_revisions": [],
"start_time": "2026-10-12T09:00:00Z",
"status": "Succeeded",
"status_summary": null,
"stop_reason": null,
"trigger_detail": "arn:aws:iam::123456789012:user/lodol",
"trigger_type": "StartPipelineExecution"
}
],
"has_more": false,
"next_token": null
}
}List pipeline tags
Read a pipeline's tags.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name or paste its ARN.
- Page size
max_resultsnumber - At most this many per page (1-100).From 1 to 100.
- Next token
next_tokentext - The 'next_token' from a previous page, to read the next one.
Outputs
resultobject
Example output
{
"result": {
"count": 1,
"has_more": false,
"next_token": null,
"resource_arn": "arn:aws:codepipeline:us-east-1:123456789012:my-app-release",
"tags": {
"team": "release"
}
}
}List pipelines
List the pipelines in the connected region.
Inputs
- Page size
max_resultsnumber - At most this many per page (1-1000).From 1 to 1000.
- Next token
next_tokentext - The 'next_token' from a previous page, to read the next one.
Outputs
resultobject
Example output
{
"result": {
"count": 1,
"has_more": false,
"next_token": null,
"pipelines": [
{
"created": "2026-10-12T09:00:00Z",
"execution_mode": "SUPERSEDED",
"name": "my-app-release",
"pipeline_type": "V2",
"updated": "2026-10-12T09:00:00Z",
"version": 1
}
]
}
}Remove pipeline tags
Remove tags from a pipeline by key.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name or paste its ARN.
- Tag keys
tag_keyslistRequired - The tag keys to remove.
Outputs
resultobject
Example output
{
"result": {
"count": 1,
"resource_arn": "arn:aws:codepipeline:us-east-1:123456789012:my-app-release",
"tag_keys": [
"team"
]
}
}Retry stage
Re-run a stage whose latest run failed, without starting the pipeline again.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Stage
stage_nametextRequired - Pick one of the pipeline's stages (names are case-sensitive).
- Retry
retry_modetextRequired - Re-run only the failed actions, or the whole stage. A rejected manual approval is only retryable with 'Every action in the stage'.One of:
FAILED_ACTIONS(Only the failed actions),ALL_ACTIONS(Every action in the stage). Default:FAILED_ACTIONS. - Execution id
pipeline_execution_idtext - The stage's execution to retry. Leave empty for its latest one - the only one AWS lets you retry.
Outputs
resultobject
Example output
{
"result": {
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"pipeline_name": "my-app-release",
"retry_mode": "FAILED_ACTIONS",
"stage_name": "Deploy"
}
}Roll back stage
Re-run a stage with the artifacts of an earlier execution that succeeded in it (V2 pipelines; not source stages). List pipeline executions with 'Succeeded in stage' finds one.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Stage
stage_nametextRequired - Pick one of the pipeline's stages (names are case-sensitive).
- Roll back to execution
target_pipeline_execution_idtextRequired - The earlier execution to roll back to. It must have succeeded in this stage on the current pipeline version.
Outputs
resultobject
Example output
{
"result": {
"pipeline_execution_id": "0f1e2d3c-4b5a-4968-8776-655443322110",
"pipeline_name": "my-app-release",
"stage_name": "Deploy",
"target_pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab"
}
}Start pipeline execution
Run a pipeline with the latest source, or with a pinned source revision. Variables and pinned revisions need a V2 pipeline.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Variables
variablesobject - Values for the pipeline's variables, as name: value (V2 only). Values cannot be empty.
- Source action
source_action_nametext - To pin a revision: the source action to pin, for example 'Source'.
- Revision type
revision_typetext - To pin a revision: what kind of revision it is.One of:
COMMIT_ID(Commit id),IMAGE_DIGEST(Container image digest),S3_OBJECT_VERSION_ID(S3 object version id),S3_OBJECT_KEY(S3 object key). - Revision
revision_valuetext - To pin a revision: the commit id, digest or S3 value.
- Idempotency token
client_request_tokentext - Optional: a unique value (letters, digits, '-') so a retried step does not start a second run.
Outputs
resultobject
Example output
{
"result": {
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"pipeline_name": "my-app-release"
}
}Stop pipeline execution
Stop a running execution. By default running actions finish first; Abandon stops at once, which can leave work half done.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name.
- Execution id
pipeline_execution_idtextRequired - The execution's id, from Start pipeline execution or List pipeline executions.
- Abandon
abandontrue/false - Stop immediately without waiting for running actions. This can lead to failed or out-of-sequence tasks.Default:
false. - Reason
reasontext - Why it was stopped (up to 200 characters).
Outputs
resultobject
Example output
{
"result": {
"abandoned": false,
"pipeline_execution_id": "c2e4b4a6-1f2d-4c6e-9e1a-0123456789ab",
"pipeline_name": "my-app-release",
"stop_requested": true
}
}Tag pipeline
Add tags to a pipeline. A key it already has gets the new value.
Inputs
- Pipeline
pipeline_nametextRequired - Pick a pipeline, or type its name or paste its ARN.
- Tags
tagsobjectRequired - The tags to add, as key: value (up to 50).
Outputs
resultobject
Example output
{
"result": {
"count": 1,
"resource_arn": "arn:aws:codepipeline:us-east-1:123456789012:my-app-release",
"tags": {
"team": "release"
}
}
}Update pipeline
Replace a pipeline's whole structure with the declaration given; its version goes up by one. Start from the 'pipeline' field of Get pipeline and change what you need.
Inputs
- Pipeline declaration
pipelineobjectRequired - The pipeline declaration as JSON: name, roleArn, artifactStore and stages, in AWS's own format. The easiest source is the 'pipeline' field of Get pipeline.
- Pipeline type
pipeline_typetext - Change the pipeline type. Leave empty to keep the declaration's.One of:
V2(V2 (recommended)),V1(V1 (legacy)). - Execution mode
execution_modetext - How runs that overlap are handled. Leave empty to keep the declaration's.One of:
SUPERSEDED(Superseded - a newer run replaces a waiting one),QUEUED(Queued - runs wait their turn (V2)),PARALLEL(Parallel - runs never wait for each other (V2)).
Outputs
resultobject
Example output
{
"result": {
"arn": null,
"artifact_store_location": "codepipeline-us-east-1-artifacts",
"created": null,
"execution_mode": "SUPERSEDED",
"name": "my-app-release",
"pipeline": {
"artifactStore": {
"location": "codepipeline-us-east-1-artifacts",
"type": "S3"
},
"executionMode": "SUPERSEDED",
"name": "my-app-release",
"pipelineType": "V2",
"roleArn": "arn:aws:iam::123456789012:role/service-role/AWSCodePipelineServiceRole-us-east-1-my-app-release",
"stages": [
{
"actions": [
{
"actionTypeId": {
"category": "Source",
"owner": "AWS",
"provider": "S3",
"version": "1"
},
"configuration": {
"PollForSourceChanges": "false",
"S3Bucket": "my-app-source",
"S3ObjectKey": "release.zip"
},
"name": "Source",
"outputArtifacts": [
{
"name": "SourceOutput"
}
]
}
],
"name": "Source"
},
{
"actions": [
{
"actionTypeId": {
"category": "Approval",
"owner": "AWS",
"provider": "Manual",
"version": "1"
},
"name": "Approval"
}
],
"name": "Approve"
}
],
"version": 2
},
"pipeline_type": "V2",
"polling_disabled_at": null,
"role_arn": "arn:aws:iam::123456789012:role/service-role/AWSCodePipelineServiceRole-us-east-1-my-app-release",
"stage_count": 2,
"stage_names": [
"Source",
"Approve"
],
"updated": null,
"variable_names": [],
"version": 2
}
}