patch
/users/@me/settingsUpdate current user settings
Updates the current user's settings and preferences. Allows modification of notification settings, privacy options, display preferences, and other user-configurable options. Returns updated settings.
update_current_user_settings
Request body
application/json
json
{
"type": "object",
"properties": {
"flags": {
"$ref": "#/components/schemas/FriendSourceFlags"
},
"status": {
"type": "string",
"enum": [
"online",
"dnd",
"idle",
"invisible"
],
"x-enumNames": [
"ONLINE",
"DND",
"IDLE",
"INVISIBLE"
],
"x-enumDescriptions": [
"User is online and available",
"Do not disturb – notifications are suppressed",
"User is away or inactive",
"User appears offline but can still receive messages"
],
"description": "User online status"
},
"status_resets_at": {
"oneOf": [
{
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:?\\d{2})?$"
},
{
"type": "integer",
"minimum": 0,
"maximum": 8640000000000000,
"format": "int53"
},
{
"type": "null"
}
],
"description": "When status resets"
},
"status_resets_to": {
"anyOf": [
{
"type": "string",
"enum": [
"online",
"dnd",
"idle",
"invisible"
],
"x-enumNames": [
"ONLINE",
"DND",
"IDLE",
"INVISIBLE"
],
"x-enumDescriptions": [
"User is online and available",
"Do not disturb – notifications are suppressed",
"User is away or inactive",
"User appears offline but can still receive messages"
],
"description": "User online status"
},
{
"type": "null"
}
]
},
"theme": {
"type": "string",
"enum": [
"dark",
"dark_legacy",
"coal",
"light",
"system"
],
"x-enumNames": [
"DARK",
"DARK_LEGACY",
"COAL",
"LIGHT",
"SYSTEM"
],
"x-enumDescriptions": [
"Dark colour theme",
"Legacy dark colour theme (original neutral grey palette)",
"Coal/darker colour theme",
"Light colour theme",
"Follow system colour preference"
],
"description": "UI theme preference"
},
"locale": {
"$ref": "#/components/schemas/Locale"
},
"restricted_guilds": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"maxItems": 200,
"description": "Guilds with DM restrictions"
},
"bot_restricted_guilds": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"maxItems": 200,
"description": "Guilds with bot DM restrictions"
},
"default_guilds_restricted": {
"type": "boolean",
"description": "Default DM restriction for new guilds"
},
"bot_default_guilds_restricted": {
"type": "boolean",
"description": "Default bot DM restriction for new guilds"
},
"inline_attachment_media": {
"type": "boolean",
"description": "Display attachments inline"
},
"inline_embed_media": {
"type": "boolean",
"description": "Display embed media inline"
},
"gif_auto_play": {
"type": "boolean",
"description": "Auto-play GIFs"
},
"render_embeds": {
"type": "boolean",
"description": "Render message embeds"
},
"render_reactions": {
"type": "boolean",
"description": "Display reactions"
},
"animate_emoji": {
"type": "boolean",
"description": "Animate custom emoji"
},
"animate_stickers": {
"$ref": "#/components/schemas/StickerAnimationOptions",
"description": "Sticker animation preference"
},
"render_spoilers": {
"$ref": "#/components/schemas/RenderSpoilers",
"description": "Spoiler rendering preference"
},
"message_display_compact": {
"type": "boolean",
"description": "Compact message display"
},
"friend_source_flags": {
"$ref": "#/components/schemas/FriendSourceFlags"
},
"incoming_call_flags": {
"$ref": "#/components/schemas/IncomingCallFlags"
},
"group_dm_add_permission_flags": {
"$ref": "#/components/schemas/GroupDmAddPermissionFlags"
},
"guild_folders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"minimum": -2147483648,
"maximum": 2147483647,
"format": "int32",
"description": "Unique identifier for the folder (-1 for uncategorized)"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Display name of the folder"
},
"color": {
"anyOf": [
{
"$ref": "#/components/schemas/Int32Type"
},
{
"type": "null"
}
],
"description": "Color of the folder as integer"
},
"flags": {
"$ref": "#/components/schemas/GuildFolderFlags"
},
"icon": {
"type": "string",
"enum": [
"folder",
"star",
"heart",
"bookmark",
"game_controller",
"shield",
"music_note"
],
"x-enumNames": [
"FOLDER",
"STAR",
"HEART",
"BOOKMARK",
"GAME_CONTROLLER",
"SHIELD",
"MUSIC_NOTE"
],
"x-enumDescriptions": [
"Classic folder icon",
"Star icon",
"Heart icon",
"Bookmark icon",
"Game controller icon",
"Shield icon",
"Music note icon"
],
"description": "Selected icon for the guild folder"
},
"guild_ids": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"maxItems": 200,
"description": "Guild IDs in this folder"
}
},
"required": [
"id",
"guild_ids"
]
},
"maxItems": 200,
"description": "Guild folder organization"
},
"custom_status": {
"anyOf": [
{
"$ref": "#/components/schemas/CustomStatusPayload"
},
{
"type": "null"
}
],
"description": "Custom status"
},
"afk_timeout": {
"type": "integer",
"format": "int53",
"description": "AFK timeout in seconds"
},
"time_format": {
"$ref": "#/components/schemas/TimeFormatTypes",
"description": "Time format preference"
},
"developer_mode": {
"type": "boolean",
"description": "Developer mode enabled"
},
"trusted_domains": {
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 253
},
"maxItems": 1000,
"description": "Trusted external link domains. Use \"*\" to trust all domains."
},
"default_hide_muted_channels": {
"type": "boolean",
"description": "Hide muted channels by default in new guilds"
},
"sensitive_content_friend_dm_filter": {
"$ref": "#/components/schemas/SensitiveMediaFilterLevel",
"description": "Sensitive media filter level for DMs from friends"
},
"sensitive_content_non_friend_dm_filter": {
"$ref": "#/components/schemas/SensitiveMediaFilterLevel",
"description": "Sensitive media filter level for DMs from non-friends"
},
"sensitive_content_guild_filter": {
"$ref": "#/components/schemas/SensitiveMediaGuildFilterLevel",
"description": "Sensitive media filter level for community channels"
},
"suppress_unprivileged_self_mentions": {
"type": "boolean",
"description": "Suppress direct mentions and reply mentions from unprivileged users"
},
"suppress_unprivileged_self_mentions_bypass_user_ids": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
}
},
{
"type": "null"
}
],
"description": "User IDs that bypass self-mention suppression"
},
"staff_dm_access_user_ids": {
"anyOf": [
{
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
}
},
{
"type": "null"
}
],
"description": "User IDs with Staff DM Access enabled"
},
"profile_privacy": {
"$ref": "#/components/schemas/ProfilePrivacyLevel",
"description": "Controls who sees the full profile: all guild members, only small-guild members, or only friends"
},
"synced_preferences": {
"anyOf": [
{
"type": "string",
"maxLength": 349528
},
{
"type": "null"
}
],
"description": "Account-wide client preferences as a base64-encoded protobuf snapshot. Replaces the entire stored snapshot; pass null to clear it."
}
}
}Responses
200
Success
json
{
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "The current online status of the user"
},
"status_resets_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"description": "ISO8601 timestamp of when the status will reset"
},
"status_resets_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The status to reset to after the scheduled reset"
},
"theme": {
"type": "string",
"description": "The UI theme preference"
},
"locale": {
"$ref": "#/components/schemas/Locale"
},
"restricted_guilds": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"description": "Guild IDs where direct messages are restricted"
},
"bot_restricted_guilds": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"description": "Guild IDs where bot direct messages are restricted"
},
"default_guilds_restricted": {
"type": "boolean",
"description": "Whether new guilds have DM restrictions by default"
},
"bot_default_guilds_restricted": {
"type": "boolean",
"description": "Whether new guilds have bot DM restrictions by default"
},
"inline_attachment_media": {
"type": "boolean",
"description": "Whether to display attachments inline in chat"
},
"inline_embed_media": {
"type": "boolean",
"description": "Whether to display embed media inline in chat"
},
"gif_auto_play": {
"type": "boolean",
"description": "Whether GIFs auto-play in chat"
},
"render_embeds": {
"type": "boolean",
"description": "Whether to render message embeds"
},
"render_reactions": {
"type": "boolean",
"description": "Whether to display reactions on messages"
},
"animate_emoji": {
"type": "boolean",
"description": "Whether to animate custom emoji"
},
"animate_stickers": {
"$ref": "#/components/schemas/StickerAnimationOptions",
"description": "Sticker animation preference setting"
},
"render_spoilers": {
"$ref": "#/components/schemas/RenderSpoilers",
"description": "Spoiler rendering preference setting"
},
"message_display_compact": {
"type": "boolean",
"description": "Whether to use compact message display mode"
},
"friend_source_flags": {
"$ref": "#/components/schemas/FriendSourceFlags"
},
"incoming_call_flags": {
"$ref": "#/components/schemas/IncomingCallFlags"
},
"group_dm_add_permission_flags": {
"$ref": "#/components/schemas/GroupDmAddPermissionFlags"
},
"guild_folders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "integer",
"minimum": -2147483648,
"maximum": 2147483647,
"format": "int32"
},
{
"type": "null"
}
],
"description": "The unique identifier for the folder (-1 for uncategorized)"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The display name of the folder"
},
"color": {
"anyOf": [
{
"$ref": "#/components/schemas/Int32Type"
},
{
"type": "null"
}
],
"description": "The color of the folder as an integer"
},
"flags": {
"$ref": "#/components/schemas/GuildFolderFlags"
},
"icon": {
"type": "string",
"enum": [
"folder",
"star",
"heart",
"bookmark",
"game_controller",
"shield",
"music_note"
],
"x-enumNames": [
"FOLDER",
"STAR",
"HEART",
"BOOKMARK",
"GAME_CONTROLLER",
"SHIELD",
"MUSIC_NOTE"
],
"x-enumDescriptions": [
"Classic folder icon",
"Star icon",
"Heart icon",
"Bookmark icon",
"Game controller icon",
"Shield icon",
"Music note icon"
],
"description": "Selected icon for the guild folder"
},
"guild_ids": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"description": "The IDs of guilds contained in this folder"
}
},
"required": [
"guild_ids"
]
},
"description": "The folder structure for organizing guilds in the sidebar"
},
"custom_status": {
"anyOf": [
{
"$ref": "#/components/schemas/CustomStatusResponse"
},
{
"type": "null"
}
],
"description": "The custom status set by the user"
},
"afk_timeout": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647,
"format": "int32",
"description": "The idle timeout in seconds before going AFK"
},
"time_format": {
"$ref": "#/components/schemas/TimeFormatTypes",
"description": "The preferred time format setting"
},
"developer_mode": {
"type": "boolean",
"description": "Whether developer mode is enabled"
},
"trusted_domains": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of trusted external link domains"
},
"default_hide_muted_channels": {
"type": "boolean",
"description": "Whether muted channels are hidden by default in new guilds"
},
"sensitive_content_friend_dm_filter": {
"$ref": "#/components/schemas/SensitiveMediaFilterLevel",
"description": "Sensitive media filter level for DMs from friends"
},
"sensitive_content_non_friend_dm_filter": {
"$ref": "#/components/schemas/SensitiveMediaFilterLevel",
"description": "Sensitive media filter level for DMs from non-friends"
},
"sensitive_content_guild_filter": {
"$ref": "#/components/schemas/SensitiveMediaGuildFilterLevel",
"description": "Sensitive media filter level for community channels"
},
"suppress_unprivileged_self_mentions": {
"type": "boolean",
"description": "Whether direct mentions and reply mentions from unprivileged users are suppressed"
},
"suppress_unprivileged_self_mentions_bypass_user_ids": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"description": "User IDs that bypass self-mention suppression"
},
"staff_dm_access_user_ids": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnowflakeType"
},
"description": "User IDs with Staff DM Access enabled"
},
"synced_preferences": {
"type": "string",
"description": "Account-wide client preferences as a base64-encoded protobuf snapshot. Empty string when nothing has been synced yet."
},
"profile_privacy": {
"$ref": "#/components/schemas/ProfilePrivacyLevel",
"description": "Controls who sees the full profile: all guild members, only small-guild members, or only friends"
},
"default_share_voice_activity": {
"type": "boolean",
"description": "Default value of share_voice_activity applied to newly accepted friend relationships. Read-only here; mutated via PUT /users/@me/settings/voice-activity-sharing."
}
},
"required": [
"status",
"theme",
"locale",
"restricted_guilds",
"bot_restricted_guilds",
"default_guilds_restricted",
"bot_default_guilds_restricted",
"inline_attachment_media",
"inline_embed_media",
"gif_auto_play",
"render_embeds",
"render_reactions",
"animate_emoji",
"animate_stickers",
"render_spoilers",
"message_display_compact",
"friend_source_flags",
"incoming_call_flags",
"group_dm_add_permission_flags",
"guild_folders",
"custom_status",
"afk_timeout",
"time_format",
"developer_mode",
"trusted_domains",
"default_hide_muted_channels",
"sensitive_content_friend_dm_filter",
"sensitive_content_non_friend_dm_filter",
"sensitive_content_guild_filter",
"suppress_unprivileged_self_mentions",
"suppress_unprivileged_self_mentions_bypass_user_ids",
"staff_dm_access_user_ids",
"synced_preferences",
"profile_privacy",
"default_share_voice_activity"
]
}400
Bad Request - The request was malformed or contained invalid data
json
{
"type": "object",
"properties": {
"code": {
"$ref": "#/components/schemas/APIErrorCode"
},
"message": {
"type": "string",
"description": "Human-readable error message"
},
"errors": {
"type": "array",
"description": "Field-specific validation errors",
"items": {
"$ref": "#/components/schemas/ValidationErrorItem"
}
}
},
"required": [
"code",
"message"
]
}401
Unauthorized - Authentication is required or the token is invalid
json
{
"type": "object",
"properties": {
"code": {
"$ref": "#/components/schemas/APIErrorCode"
},
"message": {
"type": "string",
"description": "Human-readable error message"
},
"errors": {
"type": "array",
"description": "Field-specific validation errors",
"items": {
"$ref": "#/components/schemas/ValidationErrorItem"
}
}
},
"required": [
"code",
"message"
]
}403
Forbidden - You do not have permission to perform this action
json
{
"type": "object",
"properties": {
"code": {
"$ref": "#/components/schemas/APIErrorCode"
},
"message": {
"type": "string",
"description": "Human-readable error message"
},
"errors": {
"type": "array",
"description": "Field-specific validation errors",
"items": {
"$ref": "#/components/schemas/ValidationErrorItem"
}
}
},
"required": [
"code",
"message"
]
}429
Too Many Requests - You are being rate limited
json
{
"type": "object",
"properties": {
"code": {
"type": "string",
"enum": [
"RATE_LIMITED"
]
},
"message": {
"type": "string"
},
"retry_after": {
"type": "number",
"description": "Seconds to wait before retrying"
},
"global": {
"type": "boolean",
"description": "Whether this is a global rate limit"
}
},
"required": [
"code",
"message",
"retry_after"
]
}500
Internal Server Error - An unexpected error occurred
json
{
"type": "object",
"properties": {
"code": {
"$ref": "#/components/schemas/APIErrorCode"
},
"message": {
"type": "string",
"description": "Human-readable error message"
},
"errors": {
"type": "array",
"description": "Field-specific validation errors",
"items": {
"$ref": "#/components/schemas/ValidationErrorItem"
}
}
},
"required": [
"code",
"message"
]
}