Skip to content

OAuth2 scopes catalogue

Status Stable · Last verified 2026-07-11 · API v10 · Source OAuth2 scopes

Scopes declare exactly what an authorization may do. Request the minimum — each extra scope is more data at risk and more hesitation at the consent screen. Several scopes are gated: they only work for approved partners, or only via the client-credentials grant, or are not available to apps at all.

  • General — usable by any app.
  • Partners only — requires Discord approval (“approved partners only”).
  • Client-credentials only — usable only via the client-credentials grant.
  • Not available to apps — documented but not grantable to third-party apps.
Scope Grants Access
identify /users/@me without email General
email Adds email to /users/@me General
connections The user’s linked third-party accounts General
guilds Basic info about the user’s guilds General
guilds.join Add the user to a guild (with a bot present) General
guilds.members.read The user’s member info in a guild General
gdm.join Join the user to a group DM General
bot Add a bot to a user-selected guild General
applications.commands Add commands to a guild (included with bot) General
applications.commands.permissions.update Update command permissions in a guild General
applications.commands.update Update commands via Bearer token Client-credentials only
applications.entitlements Read entitlements for the user’s apps General
applications.builds.read Read build data for the user’s apps General
applications.builds.upload Upload/update builds Partners only
applications.store.update Read/update store data (SKUs, listings, achievements) General
role_connections.write Update the user’s linked-role connection metadata General
webhook.incoming Return a created incoming webhook in the token response General
identify.premium Read the user’s Nitro (premium) type Partners only
relationships.read The user’s friends / pending / blocked (Social SDK) Partners only
dm_channels.read See the user’s DMs and group DMs Partners only
messages.read Read messages across the client (local RPC) Partners only
voice Connect to voice on the user’s behalf Partners only
activities.read The user’s Now Playing / Recently Played Not available to apps
activities.write Update the user’s activity Not available to apps
rpc Control the user’s local Discord client Partners only
rpc.activities.write Update activity via local RPC Partners only
rpc.notifications.read Receive notifications via local RPC Partners only
rpc.voice.read Read voice settings / listen for voice events Partners only
rpc.voice.write Update the user’s voice settings Partners only

[!NOTE] Verified Access tiers above reflect the “approved partners only” / “client credentials only” / “not currently available for apps” annotations in the official scope list. Re-verify before depending on a gated scope — availability changes.

  • “Login with Discord”identify (add email only if you need it).
  • Show the user’s serversguilds.
  • Add your bot to a serverbot + applications.commands, paired with a minimal permission bitfield, never Administrator.
  • Linked Rolesrole_connections.write — see Linked Roles.