put/channels/{channel_id}/tags/{tag_id}

Update a forum tag

Replaces a tag of a forum or media channel. Requires the manage channels permission. Returns the updated channel.

update_forum_tag

Parameters

NameInTypeDescription
channel_id*pathSnowflakeTypeThe ID of the channel
tag_id*pathSnowflakeTypeThe ID of the forum tag

Request body

application/json

json
{
  "type": "object",
  "properties": {
    "name": {
      "description": "The name of the tag (1-50 characters)",
      "type": "string"
    },
    "moderated": {
      "description": "Whether only moderators can add or remove this tag",
      "type": "boolean"
    },
    "emoji_id": {
      "description": "The ID of a custom guild emoji",
      "anyOf": [
        {
          "$ref": "#/components/schemas/SnowflakeType"
        },
        {
          "type": "null"
        }
      ]
    },
    "emoji_name": {
      "description": "The unicode character of the emoji",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "name"
  ],
  "x-fluxer-experiment": "channel_threads"
}

Responses

200

Success

json
{
  "type": "object",
  "properties": {
    "id": {
      "description": "The unique identifier (snowflake) for this channel",
      "$ref": "#/components/schemas/SnowflakeStringType"
    },
    "guild_id": {
      "description": "The ID of the guild this channel belongs to",
      "$ref": "#/components/schemas/SnowflakeStringType"
    },
    "name": {
      "description": "The name of the channel",
      "type": [
        "string",
        "null"
      ]
    },
    "topic": {
      "description": "The topic of the channel",
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "description": "The URL associated with the channel",
      "anyOf": [
        {
          "type": "string",
          "format": "uri"
        },
        {
          "type": "null"
        }
      ]
    },
    "icon": {
      "description": "The icon hash of the channel (for group DMs)",
      "type": [
        "string",
        "null"
      ]
    },
    "owner_id": {
      "description": "The ID of the owner of the channel (for group DMs)",
      "anyOf": [
        {
          "$ref": "#/components/schemas/SnowflakeStringType"
        },
        {
          "type": "null"
        }
      ]
    },
    "type": {
      "$ref": "#/components/schemas/ChannelType"
    },
    "position": {
      "description": "The sorting position of the channel",
      "$ref": "#/components/schemas/Int32Type"
    },
    "parent_id": {
      "description": "The ID of the parent category for this channel",
      "anyOf": [
        {
          "$ref": "#/components/schemas/SnowflakeStringType"
        },
        {
          "type": "null"
        }
      ]
    },
    "bitrate": {
      "description": "The bitrate of the voice channel in bits per second",
      "anyOf": [
        {
          "$ref": "#/components/schemas/Int32Type"
        },
        {
          "type": "null"
        }
      ]
    },
    "user_limit": {
      "description": "The maximum number of users allowed in the voice channel",
      "anyOf": [
        {
          "$ref": "#/components/schemas/Int32Type"
        },
        {
          "type": "null"
        }
      ]
    },
    "voice_connection_limit": {
      "description": "The maximum active voice connections allowed per user in the voice channel",
      "anyOf": [
        {
          "$ref": "#/components/schemas/Int32Type"
        },
        {
          "type": "null"
        }
      ]
    },
    "rtc_region": {
      "description": "The voice region ID for the voice channel",
      "type": [
        "string",
        "null"
      ]
    },
    "last_message_id": {
      "description": "The ID of the last message sent in this channel",
      "anyOf": [
        {
          "$ref": "#/components/schemas/SnowflakeStringType"
        },
        {
          "type": "null"
        }
      ]
    },
    "last_pin_timestamp": {
      "description": "The ISO 8601 timestamp of when the last pinned message was pinned",
      "anyOf": [
        {
          "type": "string",
          "format": "date-time",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
        },
        {
          "type": "null"
        }
      ]
    },
    "permission_overwrites": {
      "description": "The permission overwrites for this channel",
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ChannelOverwriteResponse"
      }
    },
    "recipients": {
      "description": "The recipients of the DM channel",
      "maxItems": 49,
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/UserPartialResponse"
      }
    },
    "nsfw": {
      "description": "Whether the channel is marked as NSFW (effective value, walking channel → category → guild)",
      "type": "boolean"
    },
    "nsfw_override": {
      "description": "Per-channel adult-content override; null means inherit from parent category and then guild. Categories use this same field as their own override.",
      "type": [
        "boolean",
        "null"
      ]
    },
    "content_warning_level": {
      "description": "Channel-level content warning override (0=inherit, 1=force-warn)",
      "$ref": "#/components/schemas/ContentWarningLevel"
    },
    "content_warning_text": {
      "description": "Custom channel content warning text (max 200 characters); null inherits from parent or guild",
      "anyOf": [
        {
          "type": "string",
          "maxLength": 200
        },
        {
          "type": "null"
        }
      ]
    },
    "rate_limit_per_user": {
      "description": "The slowmode rate limit in seconds",
      "$ref": "#/components/schemas/Int32Type"
    },
    "nicks": {
      "description": "Custom nicknames for users in this channel (for group DMs)",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string",
        "minLength": 1,
        "maxLength": 32
      }
    },
    "flags": {
      "description": "Channel flags",
      "$ref": "#/components/schemas/Int32Type"
    },
    "thread_metadata": {
      "description": "Thread-specific fields",
      "$ref": "#/components/schemas/ThreadMetadataResponse"
    },
    "applied_tags": {
      "description": "IDs of the tags applied to a forum or media post",
      "maxItems": 5,
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SnowflakeStringType"
      }
    },
    "message_count": {
      "description": "Messages in the thread, excluding the starter and deleted messages",
      "$ref": "#/components/schemas/Int32Type"
    },
    "total_message_sent": {
      "description": "Messages ever sent in the thread, never decremented",
      "$ref": "#/components/schemas/Int32Type"
    },
    "member_count": {
      "description": "Approximate number of thread members, capped at 50",
      "$ref": "#/components/schemas/Int32Type"
    },
    "member_ids_preview": {
      "description": "IDs of the most recently joined members of a forum or media post, newest first",
      "maxItems": 8,
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SnowflakeStringType"
      }
    },
    "member": {
      "description": "The thread member object for the current user",
      "$ref": "#/components/schemas/ThreadMemberResponse"
    },
    "default_auto_archive_duration": {
      "description": "Default auto archive duration for new threads",
      "anyOf": [
        {
          "$ref": "#/components/schemas/Int32Type"
        },
        {
          "type": "null"
        }
      ]
    },
    "default_thread_rate_limit_per_user": {
      "description": "Slowmode copied onto new threads",
      "$ref": "#/components/schemas/Int32Type"
    },
    "available_tags": {
      "description": "Tags that can be applied to posts",
      "maxItems": 20,
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ForumTagResponse"
      }
    },
    "default_reaction_emoji": {
      "description": "Default reaction for posts",
      "anyOf": [
        {
          "$ref": "#/components/schemas/DefaultReactionEmojiResponse"
        },
        {
          "type": "null"
        }
      ]
    },
    "default_sort_order": {
      "description": "Default sort order for posts",
      "anyOf": [
        {
          "$ref": "#/components/schemas/Int32Type"
        },
        {
          "type": "null"
        }
      ]
    },
    "default_forum_layout": {
      "description": "Default layout for forum posts",
      "$ref": "#/components/schemas/Int32Type"
    },
    "default_tag_setting": {
      "description": "Default tag search setting",
      "type": "string",
      "enum": [
        "match_some",
        "match_all"
      ]
    }
  },
  "required": [
    "id",
    "type"
  ],
  "additionalProperties": false
}
400

Bad Request - The request was malformed or contained invalid data

json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Machine-readable error code"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "description": "Field-specific validation errors",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Field path that failed validation"
          },
          "code": {
            "description": "Machine-readable validation error code",
            "type": "string"
          },
          "message": {
            "type": "string",
            "description": "Human-readable validation error message"
          }
        },
        "required": [
          "path",
          "message"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "code",
    "message"
  ],
  "additionalProperties": {}
}
401

Unauthorized - Authentication is required or the token is invalid

json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Machine-readable error code"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "description": "Field-specific validation errors",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Field path that failed validation"
          },
          "code": {
            "description": "Machine-readable validation error code",
            "type": "string"
          },
          "message": {
            "type": "string",
            "description": "Human-readable validation error message"
          }
        },
        "required": [
          "path",
          "message"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "code",
    "message"
  ],
  "additionalProperties": {}
}
403

Forbidden - You do not have permission to perform this action

json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Machine-readable error code"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "description": "Field-specific validation errors",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Field path that failed validation"
          },
          "code": {
            "description": "Machine-readable validation error code",
            "type": "string"
          },
          "message": {
            "type": "string",
            "description": "Human-readable validation error message"
          }
        },
        "required": [
          "path",
          "message"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "code",
    "message"
  ],
  "additionalProperties": {}
}
429

Too Many Requests - You are being rate limited

json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Machine-readable error code"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "description": "Field-specific validation errors",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Field path that failed validation"
          },
          "code": {
            "description": "Machine-readable validation error code",
            "type": "string"
          },
          "message": {
            "type": "string",
            "description": "Human-readable validation error message"
          }
        },
        "required": [
          "path",
          "message"
        ],
        "additionalProperties": false
      }
    },
    "retry_after": {
      "type": "number",
      "description": "Seconds to wait before retrying"
    },
    "global": {
      "type": "boolean",
      "description": "Whether this is a global rate limit"
    }
  },
  "required": [
    "code",
    "message"
  ],
  "additionalProperties": {}
}
500

Internal Server Error - An unexpected error occurred

json
{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Machine-readable error code"
    },
    "message": {
      "type": "string",
      "description": "Human-readable error message"
    },
    "errors": {
      "description": "Field-specific validation errors",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Field path that failed validation"
          },
          "code": {
            "description": "Machine-readable validation error code",
            "type": "string"
          },
          "message": {
            "type": "string",
            "description": "Human-readable validation error message"
          }
        },
        "required": [
          "path",
          "message"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "code",
    "message"
  ],
  "additionalProperties": {}
}