mirror of
https://github.com/yawaflua/Flask-Discord.git
synced 2026-02-04 10:14:15 +02:00
108 lines
4.9 KiB
Python
108 lines
4.9 KiB
Python
import enum
|
|
|
|
|
|
@enum.unique
|
|
class DiscordOAuth2Scope(enum.Enum):
|
|
"""These are a `list of all the OAuth2 scopes that Discord supports
|
|
<https://discord.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes>`_. Some scopes require
|
|
approval from Discord to use. Requesting them from a user without approval from Discord may cause
|
|
undocumented/error behavior in the OAuth2 flow.
|
|
|
|
Attributes
|
|
----------
|
|
READ_ACTIVITIES
|
|
Allows your app to fetch data from a user's "Now Playing/Recently Played" list - requires Discord approval.
|
|
WRITE_ACTIVITIES
|
|
Allows your app to update a user's activity - requires Discord approval
|
|
(NOT REQUIRED FOR `GAMESDK ACTIVITY MANAGER <https://discord.com/developers/docs/game-sdk/activities>`_).
|
|
READ_APPLICATION_BUILDS
|
|
Allows your app to read build data for a user's applications.
|
|
UPLOAD_APPLICATION_BUILDS
|
|
Allows your app to upload/update builds for a user's applications - requires Discord approval.
|
|
APPLICATION_COMMANDS
|
|
Allows your app to use `Slash Commands <https://discord.com/developers/docs/interactions/slash-commands>`_
|
|
in a guild.
|
|
UPDATE_APPLICATION_COMMANDS
|
|
Allows your app to update its
|
|
`Slash Commands <https://discord.com/developers/docs/interactions/slash-commands>`_
|
|
via this bearer token -
|
|
`client credentials grant only <https://discord.com/developers/docs/topics/oauth2#client-credentials-grant>`_.
|
|
READ_APPLICATION_ENTITLEMENTS
|
|
Allows your app to read entitlements for a user's applications.
|
|
READ_UPDATE_APPLICATION_STORE
|
|
Allows your app to read and update store data (SKUs, store listings, achievements, etc.)
|
|
for a user's applications.
|
|
BOT
|
|
For oauth2 bots, this puts the bot in the user's selected guild by default.
|
|
CONNECTIONS
|
|
Allows `/users/@me/connections <https://discord.com/developers/docs/resources/user#get-user-connections>`_
|
|
to return linked third-party accounts.
|
|
EMAIL
|
|
Enables `/users/@me <https://discord.com/developers/docs/resources/user#get-current-user>`_ to return an email.
|
|
JOIN_GROUP_DM
|
|
Allows your app to
|
|
`join users to a group dm <https://discord.com/developers/docs/resources/channel#group-dm-add-recipient>`_.
|
|
GUILDS
|
|
Allows `/users/@me/guilds <https://discord.com/developers/docs/resources/user#get-current-user-guilds>`_
|
|
to return basic information about all of a user's guilds.
|
|
JOIN_GUILDS
|
|
Allows
|
|
`/guilds/{guild.id}/members/{user.id} <https://discord.com/developers/docs/resources/guild#add-guild-member>`_
|
|
to be used for joining users to a guild.
|
|
IDENTIFY
|
|
Allows `/users/@me <https://discord.com/developers/docs/resources/user#get-current-user>`_ without email.
|
|
READ_MESSAGES
|
|
For local rpc server api access, this allows you to read messages from all client channels
|
|
(otherwise restricted to channels/guilds your app creates).
|
|
READ_RELATIONSHIPS
|
|
Allows your app to know a user's friends and implicit relationships - requires Discord approval.
|
|
RPC
|
|
For local rpc server access, this allows you to control a user's local Discord client
|
|
- requires Discord approval.
|
|
WRITE_RPC_ACTIVITIES
|
|
For local rpc server access, this allows you to update a user's activity - requires Discord approval.
|
|
READ_RPC_NOTIFICATIONS
|
|
For local rpc server access, this allows you to receive notifications pushed out to the user
|
|
- requires Discord approval.
|
|
READ_RPC_VOICE
|
|
For local rpc server access, this allows you to read a user's voice settings and listen for voice events
|
|
- requires Discord approval.
|
|
READ_RPC_VOICE
|
|
For local rpc server access, this allows you to update a user's voice settings - requires Discord approval.
|
|
INCOMING_WEBHOOK
|
|
This generates a webhook that is returned in the oauth token response for authorization code grants.
|
|
|
|
"""
|
|
|
|
READ_ACTIVITIES = "activities.read"
|
|
WRITE_ACTIVITIES = "activities.write"
|
|
|
|
READ_APPLICATION_BUILDS = "applications.builds.read"
|
|
UPLOAD_APPLICATION_BUILDS = "applications.builds.upload"
|
|
|
|
APPLICATION_COMMANDS = "applications.commands"
|
|
UPDATE_APPLICATION_COMMANDS = "applications.commands.update"
|
|
READ_APPLICATION_ENTITLEMENTS = "applications.entitlements"
|
|
READ_UPDATE_APPLICATION_STORE = "applications.store.update"
|
|
|
|
BOT = "bot"
|
|
CONNECTIONS = "connections"
|
|
EMAIL = "email"
|
|
JOIN_GROUP_DM = "gdm.join"
|
|
GUILDS = "guilds"
|
|
JOIN_GUILDS = "guilds.join"
|
|
IDENTIFY = "identify"
|
|
READ_MESSAGES = "messages.read"
|
|
READ_RELATIONSHIPS = "relationships.read"
|
|
|
|
RPC = "rpc"
|
|
WRITE_RPC_ACTIVITIES = "rpc.activities.write"
|
|
READ_RPC_NOTIFICATIONS = "rpc.notifications.read"
|
|
READ_RPC_VOICE = "rpc.voice.read"
|
|
WRITE_RPC_VOICE = "rpc.voice.write"
|
|
|
|
INCOMING_WEBHOOK = "webhook.incoming"
|
|
|
|
def __str__(self):
|
|
return self.value
|