Table Of Contents


User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . ssm ]



Modifies a task assigned to a Maintenance Window. You can't change the task type, but you can change the following values:

Task ARN. For example, you can change a RUN_COMMAND task from AWS-RunPowerShellScript to AWS-RunShellScript.

Service role ARN.

Task parameters.

Task priority.

Task max-concurrency and MaxErrors.

Log location.

If a parameter is null, then the corresponding field is not modified. Also, if you set Replace to true, then all fields required by the register-task-with-maintenance-window action are required for this request. Optional fields that aren't specified are set to null.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.


--window-id <value>
--window-task-id <value>
[--targets <value>]
[--task-arn <value>]
[--service-role-arn <value>]
[--task-parameters <value>]
[--task-invocation-parameters <value>]
[--priority <value>]
[--max-concurrency <value>]
[--max-errors <value>]
[--logging-info <value>]
[--name <value>]
[--description <value>]
[--replace | --no-replace]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]


--window-id (string)

The Maintenance Window ID that contains the task to modify.

--window-task-id (string)

The task ID to modify.

--targets (list)

The targets (either instances or tags) to modify. Instances are specified using Key=instanceids,Values=instanceID_1,instanceID_2. Tags are specified using Key=tag_name,Values=tag_value.

Shorthand Syntax:

Key=string,Values=string,string ...

JSON Syntax:

    "Key": "string",
    "Values": ["string", ...]

--task-arn (string)

The task ARN to modify.

--service-role-arn (string)

The IAM service role ARN to modify. The system assumes this role during task execution.

--task-parameters (map)

The parameters to modify. The map has the following format:

Key: string, between 1 and 255 characters

Value: an array of strings, each string is between 1 and 255 characters

Shorthand Syntax:


JSON Syntax:

{"string": {
      "Values": ["string", ...]

--task-invocation-parameters (structure)

The parameters that the task should use during execution. Populate only the fields that match the task type. All other fields should be empty.

JSON Syntax:

  "RunCommand": {
    "Comment": "string",
    "DocumentHash": "string",
    "DocumentHashType": "Sha256"|"Sha1",
    "NotificationConfig": {
      "NotificationArn": "string",
      "NotificationEvents": ["All"|"InProgress"|"Success"|"TimedOut"|"Cancelled"|"Failed", ...],
      "NotificationType": "Command"|"Invocation"
    "OutputS3BucketName": "string",
    "OutputS3KeyPrefix": "string",
    "Parameters": {"string": ["string", ...]
    "ServiceRoleArn": "string",
    "TimeoutSeconds": integer
  "Automation": {
    "DocumentVersion": "string",
    "Parameters": {"string": ["string", ...]
  "StepFunctions": {
    "Input": "string",
    "Name": "string"
  "Lambda": {
    "ClientContext": "string",
    "Qualifier": "string",
    "Payload": blob

--priority (integer)

The new task priority to specify. The lower the number, the higher the priority. Tasks that have the same priority are scheduled in parallel.

--max-concurrency (string)

The new max-concurrency value you want to specify. max-concurrency is the number of targets that are allowed to run this task in parallel.

--max-errors (string)

The new max-errors value to specify. max-errors is the maximum number of errors that are allowed before the task stops being scheduled.

--logging-info (structure)

The new logging location in Amazon S3 to specify.

Shorthand Syntax:


JSON Syntax:

  "S3BucketName": "string",
  "S3KeyPrefix": "string",
  "S3Region": "string"

--name (string)

The new task name to specify.

--description (string)

The new task description to specify.

--replace | --no-replace (boolean)

If True, then all fields that are required by the RegisterTaskWithMaintenanceWndow action are also required for this API request. Optional fields that are not specified are set to null.

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.


WindowId -> (string)

The ID of the Maintenance Window that was updated.

WindowTaskId -> (string)

The task ID of the Maintenance Window that was updated.

Targets -> (list)

The updated target values.


An array of search criteria that targets instances using a Key,Value combination that you specify. targets is required if you don't provide one or more instance IDs in the call.

Key -> (string)

User-defined criteria for sending commands that target instances that meet the criteria. Key can be tag:Amazon EC2 tagor InstanceIds. For more information about how to send commands that target instances using Key,Value parameters, see Executing a Command Using Systems Manager Run Command .

Values -> (list)

User-defined criteria that maps to Key. For example, if you specified tag:ServerRole, you could specify value:WebServer to execute a command on instances that include Amazon EC2 tags of ServerRole,WebServer. For more information about how to send commands that target instances using Key,Value parameters, see Executing a Command Using Systems Manager Run Command .


TaskArn -> (string)

The updated task ARN value.

ServiceRoleArn -> (string)

The updated service role ARN value.

TaskParameters -> (map)

The updated parameter values.

key -> (string)

value -> (structure)

Defines the values for a task parameter.

Values -> (list)

This field contains an array of 0 or more strings, each 1 to 255 characters in length.


TaskInvocationParameters -> (structure)

The updated parameter values.

RunCommand -> (structure)

The parameters for a RUN_COMMAND task type.

Comment -> (string)

Information about the command(s) to execute.

DocumentHash -> (string)

The SHA-256 or SHA-1 hash created by the system when the document was created. SHA-1 hashes have been deprecated.

DocumentHashType -> (string)

SHA-256 or SHA-1. SHA-1 hashes have been deprecated.

NotificationConfig -> (structure)

Configurations for sending notifications about command status changes on a per-instance basis.

NotificationArn -> (string)

An Amazon Resource Name (ARN) for a Simple Notification Service (SNS) topic. Run Command pushes notifications about command status changes to this topic.

NotificationEvents -> (list)

The different events for which you can receive notifications. These events include the following: All (events), InProgress, Success, TimedOut, Cancelled, Failed. To learn more about these events, see Setting Up Events and Notifications in the AWS Systems Manager User Guide .


NotificationType -> (string)

Command: Receive notification when the status of a command changes. Invocation: For commands sent to multiple instances, receive notification on a per-instance basis when the status of a command changes.

OutputS3BucketName -> (string)

The name of the Amazon S3 bucket.

OutputS3KeyPrefix -> (string)

The Amazon S3 bucket subfolder.

Parameters -> (map)

The parameters for the RUN_COMMAND task execution.

key -> (string)

value -> (list)


ServiceRoleArn -> (string)

The IAM service role to assume during task execution.

TimeoutSeconds -> (integer)

If this time is reached and the command has not already started executing, it doesn not execute.

Automation -> (structure)

The parameters for a AUTOMATION task type.

DocumentVersion -> (string)

The version of an Automation document to use during task execution.

Parameters -> (map)

The parameters for the AUTOMATION task.

key -> (string)

value -> (list)


StepFunctions -> (structure)

The parameters for a STEP_FUNCTION task type.

Input -> (string)

The inputs for the STEP_FUNCTION task.

Name -> (string)

The name of the STEP_FUNCTION task.

Lambda -> (structure)

The parameters for a LAMBDA task type.

ClientContext -> (string)

Pass client-specific information to the Lambda function that you are invoking. You can then process the client information in your Lambda function as you choose through the context variable.

Qualifier -> (string)

(Optional) Specify a Lambda function version or alias name. If you specify a function version, the action uses the qualified function ARN to invoke a specific Lambda function. If you specify an alias name, the action uses the alias ARN to invoke the Lambda function version to which the alias points.

Payload -> (blob)

JSON to provide to your Lambda function as input.

Priority -> (integer)

The updated priority value.

MaxConcurrency -> (string)

The updated max-concurrency value.

MaxErrors -> (string)

The updated max-errors value.

LoggingInfo -> (structure)

The updated logging information in Amazon S3.

S3BucketName -> (string)

The name of an Amazon S3 bucket where execution logs are stored .

S3KeyPrefix -> (string)

(Optional) The Amazon S3 bucket subfolder.

S3Region -> (string)

The region where the Amazon S3 bucket is located.

Name -> (string)

The updated task name.

Description -> (string)

The updated task description.