Skip to main content

Science Events

Events are actions the User does that are collected by Discord. More information on tracking and collection here.

This gives a non-thorough list of Event objects.

If an event "contains properties" it is assumed that the Event object contains an extra properties field pointing to a Properties object.

Always assume TrackingProperties is included.

Properties object

Fields are inconsistent and optional across events. Given *Property "objects" are fields that may or may not be present in a Properties object.

TrackingProperties

fieldtypedescription
client_send_timestampunix timestampassumed to be when client sent event
client_track_timestampunix timestampassumed to be when the event happened
client_uuidbase64 of a uuid?client identifier

ChannelProperties

fieldtypedescription
channel_hiddenbooleanif the channel is muted (???)
channel_idsnowflakechannel the user is in
channel_member_permspermission bit set (integer)the user permissions in the channel
channel_size_totalinteger???
channel_typeinteger, channel typechannel type (text, voice, etc)

GuildProperties

fieldtypedescription
guild_idsnowflakeguild identifier
guild_is_vipbooleanif the guild is a VIP guild
guild_member_num_rolesintegerhow many roles the user has in the guild
guild_member_permspermission bit set (integer)the user permissions in the guild
guild_num_channelsintegeramount of channels in the guild
guild_num_rolesintegeramount of roles in the guild
guild_num_text_channelsintegeramount of text channels in the guild
guild_num_voice_channelsintegeramount of voice channels in the guild
guild_size_totalintegeramount of members in the guild

ListProperties

fieldtypedescription
num_users_visibleintegeramount of users the current user saw in the list
num_users_visible_with_mobile_indicatorintegerself explanatory

ActivityProperties

fieldtypedescription
game_idslist of snowflakesgame ids
load_iduuid as its formal representation (incl. hyphens)???
num_cardsintegernumber of game cards in activity
num_cards_game_newsintegernumber of game cards showing game news
num_cards_game_playableintegernumber of cards user can play
num_cards_visibleintegernumber of cards user views when looking at activity
num_game_partiesinteger???
num_game_parties_collapsedinteger???
num_game_parties_recently_playedinteger???
num_game_parties_rich_presenceinteger???
num_game_parties_solointeger???
num_game_parties_voiceinteger???
num_launcher_applicationsinteger???
num_users_subscribedinteger???

ActivityCloseProperties

fieldtypedescription
game_ids_viewedlist of snowflakesgame ids the user viewed while in activity
load_iduuid as its formal representation (incl. hyphens)???
num_cards_totalintegernumber of game cards in activity
num_cards_viewedintegernumber of cards user saw while in activity
num_games_totalintegernumber of games seen in activity
seconds_spentintegeramount of seconds spent in activity view
store_application_ids_viewedlist of snowflakesapplication ids the user viewed
store_sku_ids_viewedlist of snowflakesskus the user viewed
  • SKUs can be thought of as discord Store entries (Stock Keeping Unit).

WindowProperties

fieldtypedescription
window_heightintegerclient window height in pixels
window_widthintegerclient window width in pixels

Event types

member_list_viewed

Sent when the currently authenticated User sees a newly generated member list in a guild. Contains ChannelProperties, GuildProperties and ListProperties.

ack_messages

Sent when the current User acknowledged the messages in a channel. Contains ChannelProperties, optional GuildProperties.

dm_list_viewed

Sent when the current User views the Direct Messages they currently have. Contains ChannelProperties (for the current opened DM) and ListProperties.

channel_opened

Sent when the current User opens a channel. Can be a Guild Text Channel or a DM channel. Contains ChannelProperties.

af_loaded

Related to client startup? Definitely related to the Activity view. Contains ActivityProperties, WindowProperties.

af_exited

Sent when the user leaves the Activity view. Contains ActivityCloseProperties.

open_popout

Sent when the user opens any kind of popout (such as when adding a new member to a group DM). Contains ChannelProperties, plus some fields:

fieldtypedescription
is_friendbooleanif the dm you're on represents a friend dm
sourcestringsource of the popout, known value is "DM"
typestringtype of the popout, known value is "Add Friends to DM"