{
  "type": "object",
  "required": [
    "Key",
    "Value"
  ],
  "properties": {
    "Key": {
      "allOf": [
        {
          "$ref": "#/components/schemas/TagKey"
        },
        {
          "description": "A tag key, such as <code>Stage</code> or <code>Name</code>. A tag key cannot be empty. The key can be a maximum of 128 characters, and can contain only Unicode letters, numbers, or separators, or the following special characters: <code>+ - = . _ : /</code> "
        }
      ]
    },
    "Value": {
      "allOf": [
        {
          "$ref": "#/components/schemas/TagValue"
        },
        {
          "description": "An optional tag value, such as <code>Production</code> or <code>test-only</code>. The value can be a maximum of 255 characters, and contain only Unicode letters, numbers, or separators, or the following special characters: <code>+ - = . _ : /</code> "
        }
      ]
    }
  },
  "description": "<p>A map that contains tag keys and tag values to attach to an Amazon Web Services X-Ray group or sampling rule. For more information about ways to use tags, see <a href=\"https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html\">Tagging Amazon Web Services resources</a> in the <i>Amazon Web Services General Reference</i>.</p> <p>The following restrictions apply to tags:</p> <ul> <li> <p>Maximum number of user-applied tags per resource: 50</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Don't use <code>aws:</code> as a prefix for keys; it's reserved for Amazon Web Services use. You cannot edit or delete system tags.</p> </li> </ul>",
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "name": "Tag",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-xray/refs/heads/main/json-structure/xray-tag-structure.json"
}