AddTagsToResource
Adds or overwrites one or more tags for the specified resource. Tags are metadata that you can assign to your automations, documents, managed nodes, maintenance windows, Parameter Store parameters, and patch baselines. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define. For example, you could define a set of tags for your account's managed nodes that helps you track each node's owner and stack level. For example:
-
Key=Owner,Value=DbAdmin
-
Key=Owner,Value=SysAdmin
-
Key=Owner,Value=Dev
-
Key=Stack,Value=Production
-
Key=Stack,Value=Pre-Production
-
Key=Stack,Value=Test
Most resources can have a maximum of 50 tags. Automations can have a maximum of 5 tags.
We recommend that you devise a set of tag keys that meets your needs for each resource type. Using a consistent set of tag keys makes it easier for you to manage your resources. You can search and filter the resources based on the tags you add. Tags don't have any semantic meaning to and are interpreted strictly as a string of characters.
For more information about using tags with Amazon Elastic Compute Cloud (Amazon EC2) instances, see Tag your Amazon EC2 resources in the Amazon EC2 User Guide.
Request Syntax
{
"ResourceId": "string
",
"ResourceType": "string
",
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- ResourceId
-
The resource ID you want to tag.
Use the ID of the resource. Here are some examples:
MaintenanceWindow
:mw-012345abcde
PatchBaseline
:pb-012345abcde
Automation
:example-c160-4567-8519-012345abcde
OpsMetadata
object:ResourceID
for tagging is created from the Amazon Resource Name (ARN) for the object. Specifically,ResourceID
is created from the strings that come after the wordopsmetadata
in the ARN. For example, an OpsMetadata object with an ARN ofarn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
has aResourceID
of eitheraws/ssm/MyGroup/appmanager
or/aws/ssm/MyGroup/appmanager
.For the
Document
andParameter
values, use the name of the resource. If you're tagging a shared document, you must use the full ARN of the document.ManagedInstance
:mi-012345abcde
Note
The
ManagedInstance
type for this API operation is only for on-premises managed nodes. You must specify the name of the managed node in the following format:mi-ID_number
. For example,mi-1a2b3c4d5e6f
.Type: String
Required: Yes
- ResourceType
-
Specifies the type of resource you are tagging.
Note
The
ManagedInstance
type for this API operation is for on-premises managed nodes. You must specify the name of the managed node in the following format:mi-ID_number
. For example,mi-1a2b3c4d5e6f
.Type: String
Valid Values:
Document | ManagedInstance | MaintenanceWindow | Parameter | PatchBaseline | OpsItem | OpsMetadata | Automation | Association
Required: Yes
- Tags
-
One or more tags. The value parameter is required.
Important
Don't enter personally identifiable information in this field.
Type: Array of Tag objects
Array Members: Maximum number of 1000 items.
Required: Yes
Response Elements
If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.
Errors
For information about the errors that are common to all actions, see Common Errors.
- InternalServerError
-
An error occurred on the server side.
HTTP Status Code: 500
- InvalidResourceId
-
The resource ID isn't valid. Verify that you entered the correct ID and try again.
HTTP Status Code: 400
- InvalidResourceType
-
The resource type isn't valid. For example, if you are attempting to tag an EC2 instance, the instance must be a registered managed node.
HTTP Status Code: 400
- TooManyTagsError
-
The
Targets
parameter includes too many tags. Remove one or more tags and try the command again.HTTP Status Code: 400
- TooManyUpdates
-
There are concurrent updates for a resource that supports one update at a time.
HTTP Status Code: 400
Examples
Example
This example illustrates one usage of AddTagsToResource.
Sample Request
POST / HTTP/1.1
Host: ssm.us-east-2.amazonaws.com
Accept-Encoding: identity
X-Amz-Target: AmazonSSM.AddTagsToResource
Content-Type: application/x-amz-json-1.1
User-Agent: aws-cli/2.0.0 Python/3.7.5 Windows/10 botocore/2.0.0dev4
X-Amz-Date: 20240220T232503Z
Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20240220/us-east-2/ssm/aws4_request,
SignedHeaders=content-type;host;x-amz-date;x-amz-target, Signature=39c3b3042cd2aEXAMPLE
Content-Length: 122
{
"ResourceType": "PatchBaseline",
"ResourceId": "pb-0c10e65780EXAMPLE",
"Tags": [
{
"Key": "Stack",
"Value": "Production"
}
]
}
Sample Response
{}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: