patch/channels/{channel_id}

Update channel settings

Modifies channel properties such as name, description, topic, nsfw flag, and slowmode. Requires management permissions in the channel.

update_channel

Parameters

NameInTypeDescription
channel_id*pathSnowflakeTypeThe ID of the channel

Request body

application/json

json
{
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "topic": {
          "description": "The channel topic (1-1024 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "description": "External URL for link channels",
          "type": [
            "string",
            "null"
          ]
        },
        "parent_id": {
          "description": "ID of the parent category for this channel",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "bitrate": {
          "description": "Voice channel bitrate in bits per second (8000-384000), clamped to 96000 unless the guild holds an AUDIO_BITRATE feature",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 8000,
              "maximum": 384000
            },
            {
              "type": "null"
            }
          ]
        },
        "user_limit": {
          "description": "Maximum users allowed in voice channel (0-99, 0 means unlimited)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "voice_connection_limit": {
          "description": "Maximum active voice connections allowed per user in a voice channel (1-100)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            },
            {
              "type": "null"
            }
          ]
        },
        "permission_overwrites": {
          "description": "Permission overwrites for roles and members",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "description": "The ID of the role or user to overwrite permissions for",
                "$ref": "#/components/schemas/SnowflakeType"
              },
              "type": {
                "description": "The type of overwrite (0 = role, 1 = member)",
                "x-enumNames": [
                  "ROLE",
                  "MEMBER"
                ],
                "enum": [
                  0,
                  1
                ],
                "type": "integer"
              },
              "allow": {
                "description": "Bitwise value of allowed permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              },
              "deny": {
                "description": "Bitwise value of denied permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              }
            },
            "required": [
              "id",
              "type"
            ]
          }
        },
        "rate_limit_per_user": {
          "description": "Slowmode delay in seconds (0-21600)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 21600
            },
            {
              "type": "null"
            }
          ]
        },
        "nsfw": {
          "description": "Legacy: setting true maps to nsfw_override=true; setting false maps to nsfw_override=null (inherit). Prefer nsfw_override.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "nsfw_override": {
          "description": "Per-channel adult-content override (true=on, false=off, null=inherit from category then guild). Takes precedence over the legacy `nsfw` field if both are present.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "content_warning_level": {
          "description": "Channel-level content warning override (0=inherit, 1=force-warn)",
          "$ref": "#/components/schemas/ContentWarningLevelInput"
        },
        "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"
            }
          ]
        },
        "icon": {
          "description": "Base64-encoded icon image for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/Base64ImageType"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner_id": {
          "description": "ID of the new owner for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "nicks": {
          "description": "Custom nicknames for users in this channel",
          "$ref": "#/components/schemas/ChannelNicknameOverrides"
        },
        "rtc_region": {
          "description": "Voice region ID for the voice channel (1-64 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "name": {
          "description": "The name of the channel",
          "type": [
            "string",
            "null"
          ]
        },
        "type": {
          "description": "Convert between text (0) and announcement (5). Other conversions are rejected.",
          "anyOf": [
            {
              "type": "number",
              "const": 0
            },
            {
              "type": "number",
              "const": 5
            }
          ]
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "topic": {
          "description": "The channel topic (1-1024 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "description": "External URL for link channels",
          "type": [
            "string",
            "null"
          ]
        },
        "parent_id": {
          "description": "ID of the parent category for this channel",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "bitrate": {
          "description": "Voice channel bitrate in bits per second (8000-384000), clamped to 96000 unless the guild holds an AUDIO_BITRATE feature",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 8000,
              "maximum": 384000
            },
            {
              "type": "null"
            }
          ]
        },
        "user_limit": {
          "description": "Maximum users allowed in voice channel (0-99, 0 means unlimited)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "voice_connection_limit": {
          "description": "Maximum active voice connections allowed per user in a voice channel (1-100)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            },
            {
              "type": "null"
            }
          ]
        },
        "permission_overwrites": {
          "description": "Permission overwrites for roles and members",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "description": "The ID of the role or user to overwrite permissions for",
                "$ref": "#/components/schemas/SnowflakeType"
              },
              "type": {
                "description": "The type of overwrite (0 = role, 1 = member)",
                "x-enumNames": [
                  "ROLE",
                  "MEMBER"
                ],
                "enum": [
                  0,
                  1
                ],
                "type": "integer"
              },
              "allow": {
                "description": "Bitwise value of allowed permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              },
              "deny": {
                "description": "Bitwise value of denied permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              }
            },
            "required": [
              "id",
              "type"
            ]
          }
        },
        "rate_limit_per_user": {
          "description": "Slowmode delay in seconds (0-21600)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 21600
            },
            {
              "type": "null"
            }
          ]
        },
        "nsfw": {
          "description": "Legacy: setting true maps to nsfw_override=true; setting false maps to nsfw_override=null (inherit). Prefer nsfw_override.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "nsfw_override": {
          "description": "Per-channel adult-content override (true=on, false=off, null=inherit from category then guild). Takes precedence over the legacy `nsfw` field if both are present.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "content_warning_level": {
          "description": "Channel-level content warning override (0=inherit, 1=force-warn)",
          "$ref": "#/components/schemas/ContentWarningLevelInput"
        },
        "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"
            }
          ]
        },
        "icon": {
          "description": "Base64-encoded icon image for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/Base64ImageType"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner_id": {
          "description": "ID of the new owner for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "nicks": {
          "description": "Custom nicknames for users in this channel",
          "$ref": "#/components/schemas/ChannelNicknameOverrides"
        },
        "rtc_region": {
          "description": "Voice region ID for the voice channel (1-64 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "name": {
          "description": "The name of the channel",
          "type": [
            "string",
            "null"
          ]
        },
        "type": {
          "description": "Convert between text (0) and announcement (5). Other conversions are rejected.",
          "anyOf": [
            {
              "type": "number",
              "const": 0
            },
            {
              "type": "number",
              "const": 5
            }
          ]
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "topic": {
          "description": "The channel topic (1-1024 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "description": "External URL for link channels",
          "type": [
            "string",
            "null"
          ]
        },
        "parent_id": {
          "description": "ID of the parent category for this channel",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "bitrate": {
          "description": "Voice channel bitrate in bits per second (8000-384000), clamped to 96000 unless the guild holds an AUDIO_BITRATE feature",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 8000,
              "maximum": 384000
            },
            {
              "type": "null"
            }
          ]
        },
        "user_limit": {
          "description": "Maximum users allowed in voice channel (0-99, 0 means unlimited)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "voice_connection_limit": {
          "description": "Maximum active voice connections allowed per user in a voice channel (1-100)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            },
            {
              "type": "null"
            }
          ]
        },
        "permission_overwrites": {
          "description": "Permission overwrites for roles and members",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "description": "The ID of the role or user to overwrite permissions for",
                "$ref": "#/components/schemas/SnowflakeType"
              },
              "type": {
                "description": "The type of overwrite (0 = role, 1 = member)",
                "x-enumNames": [
                  "ROLE",
                  "MEMBER"
                ],
                "enum": [
                  0,
                  1
                ],
                "type": "integer"
              },
              "allow": {
                "description": "Bitwise value of allowed permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              },
              "deny": {
                "description": "Bitwise value of denied permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              }
            },
            "required": [
              "id",
              "type"
            ]
          }
        },
        "rate_limit_per_user": {
          "description": "Slowmode delay in seconds (0-21600)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 21600
            },
            {
              "type": "null"
            }
          ]
        },
        "nsfw": {
          "description": "Legacy: setting true maps to nsfw_override=true; setting false maps to nsfw_override=null (inherit). Prefer nsfw_override.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "nsfw_override": {
          "description": "Per-channel adult-content override (true=on, false=off, null=inherit from category then guild). Takes precedence over the legacy `nsfw` field if both are present.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "content_warning_level": {
          "description": "Channel-level content warning override (0=inherit, 1=force-warn)",
          "$ref": "#/components/schemas/ContentWarningLevelInput"
        },
        "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"
            }
          ]
        },
        "icon": {
          "description": "Base64-encoded icon image for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/Base64ImageType"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner_id": {
          "description": "ID of the new owner for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "nicks": {
          "description": "Custom nicknames for users in this channel",
          "$ref": "#/components/schemas/ChannelNicknameOverrides"
        },
        "rtc_region": {
          "description": "Voice region ID for the voice channel (1-64 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "name": {
          "description": "The name of the channel",
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "topic": {
          "description": "The channel topic (1-1024 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "description": "External URL for link channels",
          "type": [
            "string",
            "null"
          ]
        },
        "parent_id": {
          "description": "ID of the parent category for this channel",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "bitrate": {
          "description": "Voice channel bitrate in bits per second (8000-384000), clamped to 96000 unless the guild holds an AUDIO_BITRATE feature",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 8000,
              "maximum": 384000
            },
            {
              "type": "null"
            }
          ]
        },
        "user_limit": {
          "description": "Maximum users allowed in voice channel (0-99, 0 means unlimited)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "voice_connection_limit": {
          "description": "Maximum active voice connections allowed per user in a voice channel (1-100)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            },
            {
              "type": "null"
            }
          ]
        },
        "permission_overwrites": {
          "description": "Permission overwrites for roles and members",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "description": "The ID of the role or user to overwrite permissions for",
                "$ref": "#/components/schemas/SnowflakeType"
              },
              "type": {
                "description": "The type of overwrite (0 = role, 1 = member)",
                "x-enumNames": [
                  "ROLE",
                  "MEMBER"
                ],
                "enum": [
                  0,
                  1
                ],
                "type": "integer"
              },
              "allow": {
                "description": "Bitwise value of allowed permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              },
              "deny": {
                "description": "Bitwise value of denied permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              }
            },
            "required": [
              "id",
              "type"
            ]
          }
        },
        "rate_limit_per_user": {
          "description": "Slowmode delay in seconds (0-21600)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 21600
            },
            {
              "type": "null"
            }
          ]
        },
        "nsfw": {
          "description": "Legacy: setting true maps to nsfw_override=true; setting false maps to nsfw_override=null (inherit). Prefer nsfw_override.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "nsfw_override": {
          "description": "Per-channel adult-content override (true=on, false=off, null=inherit from category then guild). Takes precedence over the legacy `nsfw` field if both are present.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "content_warning_level": {
          "description": "Channel-level content warning override (0=inherit, 1=force-warn)",
          "$ref": "#/components/schemas/ContentWarningLevelInput"
        },
        "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"
            }
          ]
        },
        "icon": {
          "description": "Base64-encoded icon image for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/Base64ImageType"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner_id": {
          "description": "ID of the new owner for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "nicks": {
          "description": "Custom nicknames for users in this channel",
          "$ref": "#/components/schemas/ChannelNicknameOverrides"
        },
        "rtc_region": {
          "description": "Voice region ID for the voice channel (1-64 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "name": {
          "description": "The name of the category",
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "topic": {
          "description": "The channel topic (1-1024 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "url": {
          "description": "External URL for link channels",
          "type": [
            "string",
            "null"
          ]
        },
        "parent_id": {
          "description": "ID of the parent category for this channel",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "bitrate": {
          "description": "Voice channel bitrate in bits per second (8000-384000), clamped to 96000 unless the guild holds an AUDIO_BITRATE feature",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 8000,
              "maximum": 384000
            },
            {
              "type": "null"
            }
          ]
        },
        "user_limit": {
          "description": "Maximum users allowed in voice channel (0-99, 0 means unlimited)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 99
            },
            {
              "type": "null"
            }
          ]
        },
        "voice_connection_limit": {
          "description": "Maximum active voice connections allowed per user in a voice channel (1-100)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            },
            {
              "type": "null"
            }
          ]
        },
        "permission_overwrites": {
          "description": "Permission overwrites for roles and members",
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "description": "The ID of the role or user to overwrite permissions for",
                "$ref": "#/components/schemas/SnowflakeType"
              },
              "type": {
                "description": "The type of overwrite (0 = role, 1 = member)",
                "x-enumNames": [
                  "ROLE",
                  "MEMBER"
                ],
                "enum": [
                  0,
                  1
                ],
                "type": "integer"
              },
              "allow": {
                "description": "Bitwise value of allowed permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              },
              "deny": {
                "description": "Bitwise value of denied permissions",
                "$ref": "#/components/schemas/UnsignedInt64Type"
              }
            },
            "required": [
              "id",
              "type"
            ]
          }
        },
        "rate_limit_per_user": {
          "description": "Slowmode delay in seconds (0-21600)",
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 21600
            },
            {
              "type": "null"
            }
          ]
        },
        "nsfw": {
          "description": "Legacy: setting true maps to nsfw_override=true; setting false maps to nsfw_override=null (inherit). Prefer nsfw_override.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "nsfw_override": {
          "description": "Per-channel adult-content override (true=on, false=off, null=inherit from category then guild). Takes precedence over the legacy `nsfw` field if both are present.",
          "type": [
            "boolean",
            "null"
          ]
        },
        "content_warning_level": {
          "description": "Channel-level content warning override (0=inherit, 1=force-warn)",
          "$ref": "#/components/schemas/ContentWarningLevelInput"
        },
        "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"
            }
          ]
        },
        "icon": {
          "description": "Base64-encoded icon image for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/Base64ImageType"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner_id": {
          "description": "ID of the new owner for group DM channels",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "nicks": {
          "description": "Custom nicknames for users in this channel",
          "$ref": "#/components/schemas/ChannelNicknameOverrides"
        },
        "rtc_region": {
          "description": "Voice region ID for the voice channel (1-64 characters)",
          "type": [
            "string",
            "null"
          ]
        },
        "name": {
          "description": "The name of the channel",
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "name": {
          "description": "The name of the group DM",
          "type": [
            "string",
            "null"
          ]
        },
        "icon": {
          "description": "Base64-encoded icon image for the group DM",
          "anyOf": [
            {
              "$ref": "#/components/schemas/Base64ImageType"
            },
            {
              "type": "null"
            }
          ]
        },
        "owner_id": {
          "description": "ID of the new owner of the group DM",
          "anyOf": [
            {
              "$ref": "#/components/schemas/SnowflakeType"
            },
            {
              "type": "null"
            }
          ]
        },
        "nicks": {
          "description": "Custom nicknames for users in this group DM",
          "anyOf": [
            {
              "$ref": "#/components/schemas/ChannelNicknameOverrides"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    },
    {
      "$ref": "#/components/schemas/ChannelUpdatePublicThreadRequestBody"
    },
    {
      "$ref": "#/components/schemas/ChannelUpdatePrivateThreadRequestBody"
    },
    {
      "$ref": "#/components/schemas/ChannelUpdateThreadParentRequestBody"
    },
    {
      "$ref": "#/components/schemas/ChannelUpdateForumRequestBody"
    },
    {
      "$ref": "#/components/schemas/ChannelUpdateMediaRequestBody"
    }
  ]
}

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": {}
}