Games

The games APIs further extend applications resources to power advanced game detection and rich presence features.

Detectable Application Object

Detectable Application Structure
FieldTypeDescription
idsnowflakeThe ID of the application
namestringThe name of the application
icon_hash??stringThe application's icon hash
cover_image_hash??stringThe application's default rich presence invite cover image hash
aliasesarray[string]Other names the application's game is associated with
executablesarray[application executable object]The unique executables of the application's game
themesarray[string]The themes of the application's game
hookbooleanWhether the Discord client is allowed to hook into the application's game directly
overlaybooleanWhether the application's game supports the Discord overlay (default false)
overlay_methods?integerThe methods of overlaying that the application's game supports
overlay_warnbooleanWhether the Discord overlay is known to be problematic with this application's game (default false)
overlay_compatibility_hookbooleanWhether to use the compatibility hook for the overlay (default false)
linked_applications?array[linked application object]The other applications linked to this application
Linked Application Structure
FieldTypeDescription
idsnowflakeThe ID of the application
typeintegerThe type of linked application
Linked Application Type
ValueNameDescription
1LINKEDApplication is linked
2OFFICIALApplication is official
3NVIDIAApplication is on NVIDIA GeForce NOW
Example Detectable Application
{
"aliases": ["PUBG: BATTLEGROUNDS", "PUBG"],
"executables": [
{
"is_launcher": false,
"name": "win64/tslgame_be.exe",
"os": "win32"
},
{
"is_launcher": false,
"name": "win64/tslgame.exe",
"os": "win32"
},
{
"is_launcher": false,
"name": "tslgame.exe",
"os": "win32"
},
{
"is_launcher": false,
"name": "win64/tslgame_uc.exe",
"os": "win32"
},
{
"is_launcher": false,
"name": "tslgame_be.exe",
"os": "win32"
}
],
"hook": true,
"id": "356873622985506820",
"name": "PLAYERUNKNOWN'S BATTLEGROUNDS",
"overlay": true,
"overlay_compatibility_hook": true,
"overlay_methods": null,
"overlay_warn": false,
"themes": ["Action", "Warfare"]
}

Application Executable Object

Application Executable Structure
FieldTypeDescription
osstringThe operating system the executable can be found on
namestringThe name of the executable
is_launcherbooleanWhether the executable is for a game launcher
Example Application Executable
{
"os": "win32",
"name": "spaceship looter/spaceship_looter.exe",
"is_launcher": false
}

Application SKU Object

Application SKU Structure
FieldTypeDescription
id?stringThe ID of the game
sku?stringThe SKU of the game
distributorstringThe distributor of the game
Distributor Type
ValueDescription
discordDiscord Store
steamSteam
twitchTwitch
uplayUbisoft Connect
battlenetBattle.net
originOrigin
gogGOG.com
epicEpic Games Store
microsoftMicrosoft Store
igdbIGDB.com
glyphGlyph.net
google_playGoogle Play Store
nvidia_gdn_appNVIDIA Cloud Gaming
gopGameopedia
robloxRoblox Game
gdcoGameDiscover.co
xboxXbox Store
playstationPlayStation Store
opencriticOpenCritic
Example Application SKU
{
"id": "445220",
"sku": "445220",
"distributor": "steam"
}

Game Object

This structure is a superset of the detectable application object above with the following additional fields:

FieldTypeDescription
supplemental_game_data?game data objectThe supplemental game data
genres?array[integer]The genres of the game
platforms?array[integer]The platforms that the game is available on
websites?array[game website object]The websites relating to the game
companiesarray[company object]The companies working on the game
screenshot_hashes?array[string]The game's screenshot hashes
screenshot_urls?array[string]The URLs to the game screenshots
trailers?array[store asset object]The game trailers
l30_rank?integerThe popularity rank of the game over a 30-day window
Game Website Structure
FieldTypeDescription
urlstringThe URL of the website
categoryintegerThe category of website
Game Website Category
ValueNameDescription
1OFFICIALOfficial game website
2WIKIAFandom
3WIKIPEDIAWikipedia
4FACEBOOKFacebook
5TWITTERTwitter
6TWITCHTwitch
8INSTAGRAMInstagram
9YOUTUBEYouTube
10IPHONEiPhone
11IPADiPad
12ANDROIDAndroid
13STEAMSteam
14REDDITSubreddit
15ITCHItch.io
16EPICGAMESEpic Games Store
17GOGGOG
18DISCORDDiscord server
19BLUESKYBluesky
20BATTLENETBattle.net
21RIOTRiot Games
22ROBLOXRoblox
23MINECRAFTMinecraft
Company Structure
FieldTypeDescription
namestringThe name of the company
rolesarray[integer]The roles of the company
Game Data Structure
FieldTypeDescription
application_idsnowflakeThe ID of the game application
igdb_game_id?stringThe ID of the game on IGDB
namestringThe name of the application
summary??stringThe summary of the game
summary_localized??stringThe localized summary of the game
websites?array[game website object]The websites relating to the game
themes?array[integer]The themes of the game
genres?array[integer]The genres of the game
platforms?array[integer]The platforms that the game is available on
artwork_urls?array[string]The URLs to the game artworks
screenshot_urls?array[string]The URLs to the game screenshots
icon_hash??stringThe game's icon hash
cover_image_url??stringThe URL to the game's default rich presence invite cover image
first_release_date??ISO8601 timestampWhen the game first released
publisher_names?array[string]The names of the game publishers
developer_names?array[string]The names of the game developers
trailers?array[store asset object]The game trailers
shop_collection_ids?array[snowflake]The IDs of the storefront collections
steam_release_status?integerThe game release status on Steam
reviews?game data reviewsThe reviews of the game
opencritic_url?stringThe URL to reviews on OpenCritic
steam_id?stringThe ID of the game on Steam
announcements_channel_id?snowflakeThe ID of the announcements channel
l30_rankintegerThe popularity rank of the game over a 30-day window
game_flags?integerThe game's flags
Game Data Reviews Structure
FieldTypeDescription
steam?game data steam reviews objectThe reviews on Steam
opencritic?game data opencritic reviews objectThe reviews on OpenCritic
Game Data Steam Reviews Structure
FieldTypeDescription
rating?floatOverall positive review ratio for the game across all time, as a value between 0 and 1
rating_count?integerTotal number of reviews submitted across all time
recent_rating?floatPositive review ratio calculated from reviews submitted in the last 30 days, as a value between 0 and 1
recent_rating_count?integerTotal number of reviews submitted in the last 30 days
localized_rating?floatPositive review ratio filtered to reviews written in the user's locale, as a value between 0 and 1
localized_rating_count?integerTotal number of reviews written in the user's locale
Game Data OpenCritic Reviews Structure
FieldTypeDescription
top_critic_rating?integerThe rating on OpenCritic
top_critic_rating_count?integerNumber of reviews on OpenCritic
tier?integerThe tier of the game on OpenCritic
OpenCritic Tier
ValueNameDescription
1MIGHTYMighty
2STRONGStrong
3FAIRFair
4WEAKWeak
Game Theme Type
ValueNameDescription
0THRILLERThriller
1SCIENCE_FICTIONScience fiction
2ACTIONAction
3HORRORHorror
4SURVIVALSurvival
5FANTASYFantasy
6HISTORICALHistorical
7STEALTHStealth
8COMEDYComedy
9BUSINESSBusiness
10DRAMADrama
11NON_FICTIONNon fiction
12KIDSKids
13SANDBOXSandbox
14OPEN_WORLDOpen world
15WARFAREWarfare
16EDUCATIONALEducational
17MYSTERYMystery
18PARTYParty
19ROMANCERomance
20EROTICErotic
Game Platform Type
ValueNameDescription
0DESKTOPGame is available on desktop
1XBOXGame is available on Xbox
2PLAYSTATIONGame is available on PlayStation
3IOSGame is available on iOS
4ANDROIDGame is available on Android
5NINTENDOGame is available on Nintendo Switch
6LINUXGame is available on Linux
7MACOSGame is available on macOS
Steam Release Status
ValueNameDescription
1PRE_RELEASEPre-release
2DAY_OF_RELEASEDay of release
3POST_RELEASEPost-release
4RETIRED_ABANDONEDRetired/abandoned
6CHILD_APPChild application
Game Flags
ValueNameDescription
1 << 0GAME_PROFILE_DISABLEDThe game profile is disabled

Game Claim Object

Game Claim Structure
FieldTypeDescription
game_idsnowflakeThe ID of the unclaimed game application
application_idsnowflakeThe ID of the application
claim_statusstringThe game claim status
third_party_urls?array[third party URL object]The URLs to third-party sources
updated_atISO8601 timestampWhen the game claim was updated
invite_proofstringThe code for invite ownership proof
Third Party URL Structure
FieldTypeDescription
distributorstringThe distributor of the game
urlstringThe URL of the game
Game Claim Status
ValueDescription
not_startedGame claim is not started
ready_to_processGame claim is ready to process
fetching_official_guildOfficial guild is being fetched
has_fetched_official_guildOfficial guild is fetched
awaiting_verification_codeAwaiting verification code
verification_passedVerification was passed
claim_approvedGame claim was approved
claim_rejectedGame claim was rejected
claim_revokedGame claim was revoked
failed_no_gameThe game was found
failed_no_applicationThe application was found
failed_no_teamThe team was found
failed_to_fetch_official_guild_from_third_partiesFailed to fetch official guild
failed_no_official_guild_foundOfficial guild was not found
failed_multiple_official_guilds_foundMultiple official guilds were found
failed_invite_proof_missingInvite proof is missing
failed_invite_proof_invalidInvite proof is invalid
failed_official_guild_owner_not_foundOwner of official guild owner is not found
failed_official_guild_owner_not_on_teamOwner of official guild owner is not on team
failed_official_guild_owner_mfa_not_enabledOwner of official guild owner does not have MFA enabled
failed_verification_code_sent_too_recentlyVerification code was sent too recently
failed_verification_code_not_sentVerification code was not sent
failed_verification_code_invalidVerification code is invalid
failed_unknownUnknown

Endpoints

Get Application Game Claims

GET/applications/{application.id}/game-claims

Returns a list of game claim objects for the given application ID.

Returns a game claim object for the given application ID.

Creates a game claim for the given application ID. Returns a game claim object on success. May fire a Guild Official Game Applications Update Gateway event.

Query String Params
FieldTypeDescription
verification_code?stringThe verification code (max 8 characters)
reset_verification?booleanWhether to reset verification (default false)
resend_verification_code?booleanWhether to resend the verification code (default false)
full_name?stringFull legal name of the applicant (max 100 characters)
business_email?stringBusiness email of the applicant (max 320 characters)
business_role?stringBusiness role of the applicant (max 100 characters)
business_website?stringThe business website (max 256 characters)

Modifies the game claim. Returns a game claim object on success.

JSON Params
FieldTypeDescription
announcements_channel_id??snowflakeThe ID of the announcements channel

Deletes the given game claim. Returns a 204 empty response.

Get Detectable Non Game Applications

GET/applications/non-games/detectable

Returns a list of detectable application objects representing non-games that can be detected by Discord for rich presence.

Get Detectable Games

GET/games/detectable

Returns a list of detectable application objects representing games that can be detected by Discord for rich presence.

Get Detectable Game Exclusions

GET/games/detectable/exclusions

Returns the patterns which should be ignored when detecting games.

Response Body
FieldTypeDescription
executablesarray[string]Names of ignored processes
patternsarray[string]Regular expression patterns to match against process names

Get Games

GET/games

Returns a list of game objects for the given application IDs.

Query String Params
FieldTypeDescription
game_idsarray[snowflake]The IDs of the applications (1-25)
with_supplemental_data?booleanWhether to include supplemental game data (default true)

Get Game

GET/games/{game.id}

Returns a game object for the given application ID.

Query String Params
FieldTypeDescription
with_supplemental_data?booleanWhether to include supplemental game data (default true)

Get Game Announcements

GET/games/{game.id}/announcements

Returns messages in the game's announcements channel.

Query String Params
FieldTypeDescription
limitintegerMax number of messages to return (1-50, default 50)
Response Body
FieldTypeDescription
guild_id?snowflakeThe ID of the guild
channel_id?snowflakeThe ID of the channel
messagesarray[message object]The messages in the announcements channel