

# TagResource
<a name="API_wafRegional_TagResource"></a>

**Note**  
 Amazon WAF Classic support will end on September 30, 2025.   
This is ** Amazon WAF Classic** documentation. For more information, see [Amazon WAF Classic](https://docs.amazonaws.cn/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.  
 **For the latest version of Amazon WAF **, use the Amazon WAFV2 API and see the [Amazon WAF Developer Guide](https://docs.amazonaws.cn/waf/latest/developerguide/waf-chapter.html). With the latest version, Amazon WAF has a single set of endpoints for regional and global use. 

Associates tags with the specified Amazon resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each Amazon resource, up to 50 tags for a resource.

Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the Amazon WAF Classic console. You can use this action to tag the Amazon resources that you manage through Amazon WAF Classic: web ACLs, rule groups, and rules. 

## Request Syntax
<a name="API_wafRegional_TagResource_RequestSyntax"></a>

```
{
   "ResourceARN": "string",
   "Tags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ]
}
```

## Request Parameters
<a name="API_wafRegional_TagResource_RequestParameters"></a>

For information about the parameters that are common to all actions, see [Common Parameters](CommonParameters.md).

The request accepts the following data in JSON format.

 ** [ResourceARN](#API_wafRegional_TagResource_RequestSyntax) **   <a name="WAF-wafRegional_TagResource-request-ResourceARN"></a>
  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 1224.  
Pattern: `.*\S.*`   
Required: Yes

 ** [Tags](#API_wafRegional_TagResource_RequestSyntax) **   <a name="WAF-wafRegional_TagResource-request-Tags"></a>
  
Type: Array of [Tag](API_wafRegional_Tag.md) objects  
Array Members: Minimum number of 1 item.  
Required: Yes

## Response Elements
<a name="API_wafRegional_TagResource_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

## Errors
<a name="API_wafRegional_TagResource_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** WAFBadRequestException **   
  
HTTP Status Code: 400

 ** WAFInternalErrorException **   
The operation failed because of a system problem, even though the request was valid. Retry your request.  
HTTP Status Code: 500

 ** WAFInvalidParameterException **   
The operation failed because Amazon WAF didn't recognize a parameter in the request. For example:  
+ You specified an invalid parameter name.
+ You specified an invalid value.
+ You tried to update an object (`ByteMatchSet`, `IPSet`, `Rule`, or `WebACL`) using an action other than `INSERT` or `DELETE`.
+ You tried to create a `WebACL` with a `DefaultAction` `Type` other than `ALLOW`, `BLOCK`, or `COUNT`.
+ You tried to create a `RateBasedRule` with a `RateKey` value other than `IP`.
+ You tried to update a `WebACL` with a `WafAction` `Type` other than `ALLOW`, `BLOCK`, or `COUNT`.
+ You tried to update a `ByteMatchSet` with a `FieldToMatch` `Type` other than HEADER, METHOD, QUERY\$1STRING, URI, or BODY.
+ You tried to update a `ByteMatchSet` with a `Field` of `HEADER` but no value for `Data`.
+ Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL cannot be associated.
HTTP Status Code: 400

 ** WAFLimitsExceededException **   
The operation exceeds a resource limit, for example, the maximum number of `WebACL` objects that you can create for an Amazon Web Services account. For more information, see [Amazon WAF Classic quotas](https://docs.amazonaws.cn/waf/latest/developerguide/classic-limits.html) in the * Amazon WAF Developer Guide*.  
HTTP Status Code: 400

 ** WAFNonexistentItemException **   
The operation failed because the referenced object doesn't exist.  
HTTP Status Code: 400

 ** WAFTagOperationException **   
  
HTTP Status Code: 400

 ** WAFTagOperationInternalErrorException **   
  
HTTP Status Code: 500

## See Also
<a name="API_wafRegional_TagResource_SeeAlso"></a>

For more information about using this API in one of the language-specific Amazon SDKs, see the following:
+  [Amazon Command Line Interface V2](https://docs.amazonaws.cn/goto/cli2/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for .NET V4](https://docs.amazonaws.cn/goto/DotNetSDKV4/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for C\$1\$1](https://docs.amazonaws.cn/goto/SdkForCpp/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for Go v2](https://docs.amazonaws.cn/goto/SdkForGoV2/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for Java V2](https://docs.amazonaws.cn/goto/SdkForJavaV2/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for JavaScript V3](https://docs.amazonaws.cn/goto/SdkForJavaScriptV3/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for Kotlin](https://docs.amazonaws.cn/goto/SdkForKotlin/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for PHP V3](https://docs.amazonaws.cn/goto/SdkForPHPV3/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for Python](https://docs.amazonaws.cn/goto/boto3/waf-regional-2016-11-28/TagResource) 
+  [Amazon SDK for Ruby V3](https://docs.amazonaws.cn/goto/SdkForRubyV3/waf-regional-2016-11-28/TagResource) 