Snapchat Decompilation and Interpretation
Introduction
Following from a previous post about Snapchat MEDIA_CONTEXT_TYPE, I thought it would be worth exporting a bunch of useful defined types within the Snapchat application here for future reference. They are in by no means in any order of importance, but as a reference.
This post was last updated on 14/06/2026 using Snapchat (./com.snapchat.android_14.10.0.47-293972) and jadx v1.5.5.
Method
- Acquire Snapchat apk's
- Decompile in jadx
- Keyword search for items of potential interest
- Document
Keywords
public enum .*media.*public enum .*message.*public enum .*post.*public enum .*story.*public enum .*snap.*public enum .*friend.*public enum .*conn.*public\s+(?:final\s+)?(?:class|enum)\s+.*NativeContentTypeKey.*
Table of contents
- Introduction
- Snapchat enum definitions
- MediaContextType
- MediaType (mdp_common)
- MediaMetadataInfoType
- MediaReferenceType
- MediaType (messaging)
- MetricsMessageMediaType
- MetricsMessageType
- PerMessageMediaDisplayState
- PublicGroupMessageSenderType
- QuotedMessageContentStatus
- ReceiveMessageStatus
- ReceiveMessageStep
- SendMessageStep
- PlayableSnapState
- SnapDownloadStatus
- SnapInteractionType
- SnapItemState
- SnapModeState
- SnapPostOpenViewingPolicy
- SnapPostOpenViewingState
- SnapReplayableState
- StoryMediaState
- StoryType
- UploadMediaStep
- MessageBehaviorHint
- MessageEncryption
- MessageState
- MessageUpdate
- Trigger
- VideoMediaType
- FriendLink
- ConnectivityNetworkType
- Connectivity
- CONTENT_ATTRIBUTION
Snapchat enum definitions
MediaContextType
./com/snapchat/client/mdp_common/MediaContextType.java
public enum MediaContextType {
BITMOJIIMAGES,
LENSIMAGES,
STICKERS,
CHAT,
FRIENDSTORYSNAP,
TEMPUNASSIGNED,
FRIENDSTORYTHUMBNAIL,
RECOMMENDEDSTORYTHUMBNAIL,
COGNACIMAGES,
COMMERCEIMAGES,
ADS,
COMPOSERIMAGES,
LENS,
ONDEMAND,
ONBOARDING,
BLOOPS,
RECOMMENDEDUSERSTORYSNAP,
LOCALIZATIONSTRINGS,
MUSIC,
MEMORIESSNAP,
PUBLISHERSTORYSNAP,
GIPHYSTICKERS,
UGCLENSASSETS,
FRIENDSTORYFIRSTFRAME,
RECOMMENDEDUSERSTORYFIRSTFRAME,
GEOFILTER,
MEMORIESTHUMBNAIL,
LENSBITMOJI,
PUBLISHERSTORYFIRSTFRAME,
MAPS,
SNAPSHOTS,
SYSTEMTESTIMAGES,
SYSTEMTESTVIDEOS,
ARBUSINESS,
PREVIEWSNAP,
SPECTACLES,
CHEERIOS,
EXPORTEDMEDIASHARE,
INCLUSIONPANELSURVEY,
COMMUNITIES,
SPOTLIGHTSNAP,
TOSHTML,
VALDIMODULESARCHIVE,
NOTIFICATIONS,
TINSEL
}
| Enum Value | MediaContextType |
|---|---|
| 0 | BITMOJIIMAGES |
| 1 | LENSIMAGES |
| 2 | STICKERS |
| 3 | CHAT |
| 4 | FRIENDSTORYSNAP |
| 5 | TEMPUNASSIGNED |
| 6 | FRIENDSTORYTHUMBNAIL |
| 7 | RECOMMENDEDSTORYTHUMBNAIL |
| 8 | COGNACIMAGES |
| 9 | COMMERCEIMAGES |
| 10 | ADS |
| 11 | COMPOSERIMAGES |
| 12 | LENS |
| 13 | ONDEMAND |
| 14 | ONBOARDING |
| 15 | BLOOPS |
| 16 | RECOMMENDEDUSERSTORYSNAP |
| 17 | LOCALIZATIONSTRINGS |
| 18 | MUSIC |
| 19 | MEMORIESSNAP |
| 20 | PUBLISHERSTORYSNAP |
| 21 | GIPHYSTICKERS |
| 22 | UGCLENSASSETS |
| 23 | FRIENDSTORYFIRSTFRAME |
| 24 | RECOMMENDEDUSERSTORYFIRSTFRAME |
| 25 | GEOFILTER |
| 26 | MEMORIESTHUMBNAIL |
| 27 | LENSBITMOJI |
| 28 | PUBLISHERSTORYFIRSTFRAME |
| 29 | MAPS |
| 30 | SNAPSHOTS |
| 31 | SYSTEMTESTIMAGES |
| 32 | SYSTEMTESTVIDEOS |
| 33 | ARBUSINESS |
| 34 | PREVIEWSNAP |
| 35 | SPECTACLES |
| 36 | CHEERIOS |
| 37 | EXPORTEDMEDIASHARE |
| 38 | INCLUSIONPANELSURVEY |
| 39 | COMMUNITIES |
| 40 | SPOTLIGHTSNAP |
| 41 | TOSHTML |
| 42 | VALDIMODULESARCHIVE |
| 43 | NOTIFICATIONS |
| 44 | TINSEL |
MediaType (mdp_common)
./com/snapchat/client/mdp_common/MediaType.java
public enum MediaType {
UNASSIGNED,
OVERLAY,
IMAGE,
VIDEO,
ASSETBUNDLE,
AUDIO,
ANIMATEDIMAGE,
FONT,
WEBVIEWCONTENT,
SUBTITLES,
DATABLOB
}
| Enum Value | MediaType |
|---|---|
| 0 | UNASSIGNED |
| 1 | OVERLAY |
| 2 | IMAGE |
| 3 | VIDEO |
| 4 | ASSETBUNDLE |
| 5 | AUDIO |
| 6 | ANIMATEDIMAGE |
| 7 | FONT |
| 8 | WEBVIEWCONTENT |
| 9 | SUBTITLES |
| 10 | DATABLOB |
MediaMetadataInfoType
./com/snapchat/client/messaging/MediaMetadataInfoType.java
public enum MediaMetadataInfoType {
SOURCE,
OPTIMIZED,
OVERLAY
}
| Enum Value | MediaMetadataInfoType |
|---|---|
| 0 | SOURCE |
| 1 | OPTIMIZED |
| 2 | OVERLAY |
MediaReferenceType
./com/snapchat/client/messaging/MediaReferenceType.java
public enum MediaReferenceType {
UNASSIGNED,
OVERLAY,
IMAGE,
VIDEO,
ASSET_BUNDLE,
AUDIO,
ANIMATED_IMAGE,
FONT,
WEB_VIEW_CONTENT,
VIDEO_NO_AUDIO
}
| Enum Value | MediaReferenceType |
|---|---|
| 0 | UNASSIGNED |
| 1 | OVERLAY |
| 2 | IMAGE |
| 3 | VIDEO |
| 4 | ASSET_BUNDLE |
| 5 | AUDIO |
| 6 | ANIMATED_IMAGE |
| 7 | FONT |
| 8 | WEB_VIEW_CONTENT |
| 9 | VIDEO_NO_AUDIO |
MediaType (messaging)
./com/snapchat/client/messaging/MediaType.java
public enum MediaType {
UNKNOWN,
IMAGE,
VIDEO,
GIF
}
| Enum Value | MediaType |
|---|---|
| 0 | UNKNOWN |
| 1 | IMAGE |
| 2 | VIDEO |
| 3 | GIF |
MetricsMessageMediaType
./com/snapchat/client/messaging/MetricsMessageMediaType.java
public enum MetricsMessageMediaType {
NO_MEDIA,
IMAGE,
VIDEO,
VIDEO_NO_SOUND,
GIF,
DERIVED_FROM_MESSAGE_TYPE,
REACTION
}
| Enum Value | MetricsMessageMediaType |
|---|---|
| 0 | NO_MEDIA |
| 1 | IMAGE |
| 2 | VIDEO |
| 3 | VIDEO_NO_SOUND |
| 4 | GIF |
| 5 | DERIVED_FROM_MESSAGE_TYPE |
| 6 | REACTION |
MetricsMessageType
./com/snapchat/client/messaging/MetricsMessageType.java
public enum MetricsMessageType {
TEXT,
STICKER,
CUSTOM_STICKER,
SNAP,
AUDIO_NOTE,
MEDIA,
BATCHED_MEDIA,
MISSED_AUDIO_CALL,
MISSED_VIDEO_CALL,
JOINED_CALL,
LEFT_CALL,
SNAPCHATTER,
LOCATION_SHARE,
LOCATION_REQUEST,
SCREENSHOT,
SCREEN_RECORDING,
GAME_CLOSED,
STORY_SHARE,
MAP_DROP_SHARE,
MAP_STORY_SHARE,
MAP_STORY_SNAP_SHARE,
MAP_HEAT_SNAP_SHARE,
MAP_SCREENSHOT_SHARE,
MEMORIES_STORY,
SEARCH_STORY_SHARE,
SEARCH_STORY_SNAP_SHARE,
DISCOVER_SHARE,
SHAZAM_SHARE,
SAVE_TO_CAMERA_ROLL,
GAME_SCORE_SHARE,
SNAP_PRO_PROFILE_SHARE,
SNAP_PRO_SNAP_SHARE,
CANVAS_APP_SHARE,
AD_SHARE,
STORY_REPLY,
SPOTLIGHT_STORY_SHARE,
CAMEO,
MEMOJI,
BITMOJI_OUTFIT_SHARE,
LIVE_LOCATION_SHARE,
CREATIVE_TOOL_ITEM,
SNAP_KIT_INVITE_SHARE,
QUOTE_REPLY_SHARE,
BLOOPS_STORY_SHARE,
SNAP_PRO_SAVED_STORY_SHARE,
PLACE_PROFILE_SHARE,
PLACE_STORY_SHARE,
SAVED_STORY_SHARE,
SPOTLIGHT_COMMENT,
TINY_SNAP,
PROMPT_LENSES,
MAP_REACTION,
MY_AI_SPECTACLES_BOT_RESPONSE,
FAMILY_CENTER_LOCATION_REQUEST,
REMIX_CAPTURE,
STICKER_CUTOUT,
FRIEND_PLACE_ALERT,
GAME_LENS,
DELPHI_RESPONSE,
PUBLIC_GROUPS_MESSAGE_SHARE,
PUBLIC_GROUPS_INVITE,
SPORTS_GAME_MESSAGE_SHARE,
KRONOS_EVENT_SHARE,
VISITED_BY_SHARE,
BOT_RESPONSE
}
| Enum Value | MetricsMessageType |
|---|---|
| 0 | TEXT |
| 1 | STICKER |
| 2 | CUSTOM_STICKER |
| 3 | SNAP |
| 4 | AUDIO_NOTE |
| 5 | MEDIA |
| 6 | BATCHED_MEDIA |
| 7 | MISSED_AUDIO_CALL |
| 8 | MISSED_VIDEO_CALL |
| 9 | JOINED_CALL |
| 10 | LEFT_CALL |
| 11 | SNAPCHATTER |
| 12 | LOCATION_SHARE |
| 13 | LOCATION_REQUEST |
| 14 | SCREENSHOT |
| 15 | SCREEN_RECORDING |
| 16 | GAME_CLOSED |
| 17 | STORY_SHARE |
| 18 | MAP_DROP_SHARE |
| 19 | MAP_STORY_SHARE |
| 20 | MAP_STORY_SNAP_SHARE |
| 21 | MAP_HEAT_SNAP_SHARE |
| 22 | MAP_SCREENSHOT_SHARE |
| 23 | MEMORIES_STORY |
| 24 | SEARCH_STORY_SHARE |
| 25 | SEARCH_STORY_SNAP_SHARE |
| 26 | DISCOVER_SHARE |
| 27 | SHAZAM_SHARE |
| 28 | SAVE_TO_CAMERA_ROLL |
| 29 | GAME_SCORE_SHARE |
| 30 | SNAP_PRO_PROFILE_SHARE |
| 31 | SNAP_PRO_SNAP_SHARE |
| 32 | CANVAS_APP_SHARE |
| 33 | AD_SHARE |
| 34 | STORY_REPLY |
| 35 | SPOTLIGHT_STORY_SHARE |
| 36 | CAMEO |
| 37 | MEMOJI |
| 38 | BITMOJI_OUTFIT_SHARE |
| 39 | LIVE_LOCATION_SHARE |
| 40 | CREATIVE_TOOL_ITEM |
| 41 | SNAP_KIT_INVITE_SHARE |
| 42 | QUOTE_REPLY_SHARE |
| 43 | BLOOPS_STORY_SHARE |
| 44 | SNAP_PRO_SAVED_STORY_SHARE |
| 45 | PLACE_PROFILE_SHARE |
| 46 | PLACE_STORY_SHARE |
| 47 | SAVED_STORY_SHARE |
| 48 | SPOTLIGHT_COMMENT |
| 49 | TINY_SNAP |
| 50 | PROMPT_LENSES |
| 51 | MAP_REACTION |
| 52 | MY_AI_SPECTACLES_BOT_RESPONSE |
| 53 | FAMILY_CENTER_LOCATION_REQUEST |
| 54 | REMIX_CAPTURE |
| 55 | STICKER_CUTOUT |
| 56 | FRIEND_PLACE_ALERT |
| 57 | GAME_LENS |
| 58 | DELPHI_RESPONSE |
| 59 | PUBLIC_GROUPS_MESSAGE_SHARE |
| 60 | PUBLIC_GROUPS_INVITE |
| 61 | SPORTS_GAME_MESSAGE_SHARE |
| 62 | KRONOS_EVENT_SHARE |
| 63 | VISITED_BY_SHARE |
| 64 | BOT_RESPONSE |
PerMessageMediaDisplayState
./com/snapchat/client/messaging/PerMessageMediaDisplayState.java
public enum PerMessageMediaDisplayState {
MEDIA_CONSUMED,
MEDIA_NOT_RENDERED,
MEDIA_PERMANENTLY_FAILED
}
| Enum Value | PerMessageMediaDisplayState |
|---|---|
| 0 | MEDIA_CONSUMED |
| 1 | MEDIA_NOT_RENDERED |
| 2 | MEDIA_PERMANENTLY_FAILED |
PublicGroupMessageSenderType
./com/snapchat/client/messaging/PublicGroupMessageSenderType.java
public enum PublicGroupMessageSenderType {
NONE,
SNAP_PRO_OFFICIAL
}
| Enum Value | PublicGroupMessageSenderType |
|---|---|
| 0 | NONE |
| 1 | SNAP_PRO_OFFICIAL |
QuotedMessageContentStatus
./com/snapchat/client/messaging/QuotedMessageContentStatus.java
public enum QuotedMessageContentStatus {
UNKNOWN,
AVAILABLE,
DELETED,
JOINEDAFTERORIGINALMESSAGESENT,
UNAVAILABLE,
STORYMEDIADELETEDBYPOSTER,
HIDDEN
}
| Enum Value | QuotedMessageContentStatus |
|---|---|
| 0 | UNKNOWN |
| 1 | AVAILABLE |
| 2 | DELETED |
| 3 | JOINEDAFTERORIGINALMESSAGESENT |
| 4 | UNAVAILABLE |
| 5 | STORYMEDIADELETEDBYPOSTER |
| 6 | HIDDEN |
ReceiveMessageStatus
./com/snapchat/client/messaging/ReceiveMessageStatus.java
public enum ReceiveMessageStatus {
SUCCESS,
FAILURE
}
| Enum Value | ReceiveMessageStatus |
|---|---|
| 0 | SUCCESS |
| 1 | FAILURE |
ReceiveMessageStep
./com/snapchat/client/messaging/ReceiveMessageStep.java
public enum ReceiveMessageStep {
REQUESTSYNC,
UPDATECONVERSATION,
APPNOTRUNNING
}
| Enum Value | ReceiveMessageStep |
|---|---|
| 0 | REQUESTSYNC |
| 1 | UPDATECONVERSATION |
| 2 | APPNOTRUNNING |
SendMessageStep
./com/snapchat/client/messaging/SendMessageStep.java
public enum SendMessageStep {
PRE_SEND_UPDATE,
VALIDATE_ORDER_STEP,
VALIDATE_NETWORK_STEP,
CONVERSATION_BACKOFF,
CREATE_NETWORK_GROUPS,
JOIN_CONVERSATIONS,
ENSURE_CONVERSATIONS,
ENCRYPT,
MEDIA_ALL,
MEDIA_RESOLVE,
MEDIA_SAVE,
MEDIA_ENCRYPT,
MEDIA_SMART_SHARE,
MEDIA_DOWNLOAD,
MEDIA_TRIM,
MEDIA_TRANSCODE,
MEDIA_ZIP,
MEDIA_PRE_UPLOAD_UPDATE,
MEDIA_UPLOAD,
MEDIA_POST_UPLOAD_UPDATE,
MEDIA_USER_GENERATED_ASSETS_UPLOAD,
SEND,
POST_SEND_UPDATE,
CREATE_GROUP_AND_INVITE,
INITIALIZE_CONTEXT_INFO,
PRE_SEND_DELAY,
UPDATE_INCIDENTAL_ATTACHMENTS
}
| Enum Value | SendMessageStep |
|---|---|
| 0 | PRE_SEND_UPDATE |
| 1 | VALIDATE_ORDER_STEP |
| 2 | VALIDATE_NETWORK_STEP |
| 3 | CONVERSATION_BACKOFF |
| 4 | CREATE_NETWORK_GROUPS |
| 5 | JOIN_CONVERSATIONS |
| 6 | ENSURE_CONVERSATIONS |
| 7 | ENCRYPT |
| 8 | MEDIA_ALL |
| 9 | MEDIA_RESOLVE |
| 10 | MEDIA_SAVE |
| 11 | MEDIA_ENCRYPT |
| 12 | MEDIA_SMART_SHARE |
| 13 | MEDIA_DOWNLOAD |
| 14 | MEDIA_TRIM |
| 15 | MEDIA_TRANSCODE |
| 16 | MEDIA_ZIP |
| 17 | MEDIA_PRE_UPLOAD_UPDATE |
| 18 | MEDIA_UPLOAD |
| 19 | MEDIA_POST_UPLOAD_UPDATE |
| 20 | MEDIA_USER_GENERATED_ASSETS_UPLOAD |
| 21 | SEND |
| 22 | POST_SEND_UPDATE |
| 23 | CREATE_GROUP_AND_INVITE |
| 24 | INITIALIZE_CONTEXT_INFO |
| 25 | PRE_SEND_DELAY |
| 26 | UPDATE_INCIDENTAL_ATTACHMENTS |
PlayableSnapState
./com/snapchat/client/messaging/PlayableSnapState.java
public enum PlayableSnapState {
NOTDOWNLOADED,
DOWNLOADING,
DOWNLOADFAILED,
PLAYABLE,
VIEWEDREPLAYABLE,
PLAYING,
VIEWEDNOTREPLAYABLE,
VIEWEDREPLAYABLEAGAIN
}
| Enum Value | PlayableSnapState |
|---|---|
| 0 | NOTDOWNLOADED |
| 1 | DOWNLOADING |
| 2 | DOWNLOADFAILED |
| 3 | PLAYABLE |
| 4 | VIEWEDREPLAYABLE |
| 5 | PLAYING |
| 6 | VIEWEDNOTREPLAYABLE |
| 7 | VIEWEDREPLAYABLEAGAIN |
SnapDownloadStatus
./com/snapchat/client/messaging/SnapDownloadStatus.java
public enum SnapDownloadStatus {
INITIATED,
SUCCEEDED,
FAILED
}
| Enum Value | SnapDownloadStatus |
|---|---|
| 0 | INITIATED |
| 1 | SUCCEEDED |
| 2 | FAILED |
SnapInteractionType
./com/snapchat/client/messaging/SnapInteractionType.java
public enum SnapInteractionType {
VIEWING_INITIATED,
VIEWING_FINISHED,
REPLAY_GESTURE_PERFORMED,
MARK_AS_INVALID
}
| Enum Value | SnapInteractionType |
|---|---|
| 0 | VIEWING_INITIATED |
| 1 | VIEWING_FINISHED |
| 2 | REPLAY_GESTURE_PERFORMED |
| 3 | MARK_AS_INVALID |
SnapItemState
./com/snapchat/client/messaging/SnapItemState.java
public enum SnapItemState {
UNKNOWN,
NONE,
SCREENSHOTTED,
RECORDED,
REPLAYED,
SENDING,
WAITING_TO_SEND,
SEND_FAILED,
PLAYING,
TAP_TO_DOWNLOAD,
DOWNLOADING,
DOWNLOAD_FAILED,
SAVED,
REACTION,
REMOVEDREACTION,
INMYCONTACTS,
SELFDESTRUCTED
}
| Enum Value | SnapItemState |
|---|---|
| 0 | UNKNOWN |
| 1 | NONE |
| 2 | SCREENSHOTTED |
| 3 | RECORDED |
| 4 | REPLAYED |
| 5 | SENDING |
| 6 | WAITING_TO_SEND |
| 7 | SEND_FAILED |
| 8 | PLAYING |
| 9 | TAP_TO_DOWNLOAD |
| 10 | DOWNLOADING |
| 11 | DOWNLOAD_FAILED |
| 12 | SAVED |
| 13 | REACTION |
| 14 | REMOVEDREACTION |
| 15 | INMYCONTACTS |
| 16 | SELFDESTRUCTED |
SnapModeState
./com/snapchat/client/messaging/SnapModeState.java
public enum SnapModeState {
SELFDESTRUCTSNAP,
ONETIMEONLYSNAP
}
| Enum Value | SnapModeState |
|---|---|
| 0 | SELFDESTRUCTSNAP |
| 1 | ONETIMEONLYSNAP |
SnapPostOpenViewingPolicy
./com/snapchat/client/messaging/SnapPostOpenViewingPolicy.java
public enum SnapPostOpenViewingPolicy {
ENVELOPE,
MEDIA
}
| Enum Value | SnapPostOpenViewingPolicy |
|---|---|
| 0 | ENVELOPE |
| 1 | MEDIA |
SnapPostOpenViewingState
./com/snapchat/client/messaging/SnapPostOpenViewingState.java
public enum SnapPostOpenViewingState {
ENVELOPE,
MEDIA
}
| Enum Value | SnapPostOpenViewingState |
|---|---|
| 0 | ENVELOPE |
| 1 | MEDIA |
SnapReplayableState
./com/snapchat/client/messaging/SnapReplayableState.java
public enum SnapReplayableState {
NOT_REPLAYABLE,
REPLAYABLE,
REPLAYABLE_AGAIN
}
| Enum Value | SnapReplayableState |
|---|---|
| 0 | NOT_REPLAYABLE |
| 1 | REPLAYABLE |
| 2 | REPLAYABLE_AGAIN |
StoryMediaState
./com/snapchat/client/messaging/StoryMediaState.java
public enum StoryMediaState {
UNSET,
PRESENT,
DELETEDBYPOSTER
}
| Enum Value | StoryMediaState |
|---|---|
| 0 | UNSET |
| 1 | PRESENT |
| 2 | DELETEDBYPOSTER |
StoryType
./com/snapchat/client/messaging/StoryType.java
public enum StoryType {
UNKNOWN,
OTHER,
MY,
PUBLIC,
PUBLIC_ONLY_FRIENDS,
PUBLIC_BOTH_FRIENDS,
LIVE,
GROUP_SHARED,
GROUP_PRIVATE,
GROUP_PRIVATE_SHORTCUT,
GROUP_CUSTOM,
SPOTLIGHT
}
| Enum Value | StoryType |
|---|---|
| 0 | UNKNOWN |
| 1 | OTHER |
| 2 | MY |
| 3 | PUBLIC |
| 4 | PUBLIC_ONLY_FRIENDS |
| 5 | PUBLIC_BOTH_FRIENDS |
| 6 | LIVE |
| 7 | GROUP_SHARED |
| 8 | GROUP_PRIVATE |
| 9 | GROUP_PRIVATE_SHORTCUT |
| 10 | GROUP_CUSTOM |
| 11 | SPOTLIGHT |
UploadMediaStep
./com/snapchat/client/messaging/UploadMediaStep.java
public enum UploadMediaStep {
RESOLVE,
SAVE,
ENCRYPT,
TRIM,
TRANSCODE,
ZIP,
PRE_UPLOAD_UPDATE,
UPLOAD,
POST_UPLOAD_UPDATE,
DOWNLOAD,
SMART_SHARE,
USER_GENERATED_ASSETS_UPLOAD
}
| Enum Value | UploadMediaStep |
|---|---|
| 0 | RESOLVE |
| 1 | SAVE |
| 2 | ENCRYPT |
| 3 | TRIM |
| 4 | TRANSCODE |
| 5 | ZIP |
| 6 | PRE_UPLOAD_UPDATE |
| 7 | UPLOAD |
| 8 | POST_UPLOAD_UPDATE |
| 9 | DOWNLOAD |
| 10 | SMART_SHARE |
| 11 | USER_GENERATED_ASSETS_UPLOAD |
MessageBehaviorHint
./com/snapchat/client/messaging/MessageBehaviorHint.java
public enum MessageBehaviorHint {
SHARE_FAMILY_CENTER_LOCATION_REQUEST,
SNAP_PRO_USER_REPLY_TO_PUBLIC_STORY,
SNAP_SENT_FROM_MEMORIES_OR_CAMERA_ROLL,
SNAP_SENT_FROM_MERLIN_QUICK_CAPTURE,
SNAP_VIEWABLE_AFTER_OPENING
}
| Enum Value | MessageBehaviorHint |
|---|---|
| 0 | SHARE_FAMILY_CENTER_LOCATION_REQUEST |
| 1 | SNAP_PRO_USER_REPLY_TO_PUBLIC_STORY |
| 2 | SNAP_SENT_FROM_MEMORIES_OR_CAMERA_ROLL |
| 3 | SNAP_SENT_FROM_MERLIN_QUICK_CAPTURE |
| 4 | SNAP_VIEWABLE_AFTER_OPENING |
MessageEncryption
./com/snapchat/client/messaging/MessageEncryption.java
public enum MessageEncryption {
NONE,
EEL,
KRAKEN,
FIDELIUS,
CLEARTEXTKEY,
UNEXPECTED
}
| Enum Value | MessageEncryption |
|---|---|
| 0 | NONE |
| 1 | EEL |
| 2 | KRAKEN |
| 3 | FIDELIUS |
| 4 | CLEARTEXTKEY |
| 5 | UNEXPECTED |
MessageState
./com/snapchat/client/messaging/MessageState.java
public enum MessageState {
PREPARING,
SENDING,
COMMITTED,
FAILED,
CANCELING,
PENDING_DECRYPTION
}
| Enum Value | MessageState |
|---|---|
| 0 | PREPARING |
| 1 | SENDING |
| 2 | COMMITTED |
| 3 | FAILED |
| 4 | CANCELING |
| 5 | PENDING_DECRYPTION |
Found in arroyo.db, table conversation, column send_state_type.
MessageUpdate
./com/snapchat/client/messaging/MessageUpdate.java
public enum MessageUpdate {
UNKNOWN,
READ,
RELEASE,
SAVE,
UNSAVE,
ERASE,
SCREENSHOT,
SCREEN_RECORD,
REPLAY,
REACTION,
REMOVEREACTION,
REVOKETRANSCRIPTION,
ALLOWTRANSCRIPTION,
ERASESAVEDSTORYMEDIA,
EDITMESSAGE,
HIDE,
SENDPRIORITYCHATNOTIFICATION
}
| Enum Value | MessageUpdate |
|---|---|
| 0 | UNKNOWN |
| 1 | READ |
| 2 | RELEASE |
| 3 | SAVE |
| 4 | UNSAVE |
| 5 | ERASE |
| 6 | SCREENSHOT |
| 7 | SCREEN_RECORD |
| 8 | REPLAY |
| 9 | REACTION |
| 10 | REMOVEREACTION |
| 11 | REVOKETRANSCRIPTION |
| 12 | ALLOWTRANSCRIPTION |
| 13 | ERASESAVEDSTORYMEDIA |
| 14 | EDITMESSAGE |
| 15 | HIDE |
| 16 | SENDPRIORITYCHATNOTIFICATION |
Trigger
./com/snapchat/client/mdp_common/Trigger.java
public enum Trigger {
UNSET,
IMPRESSIONPREFETCH,
INLINEPREFETCH,
FOREGROUNDPREFETCH,
BACKGROUNDPREFETCH,
ACFINLINEPREFETCH,
BCFFOREGROUNDPREFETCH,
PREPAREPLAYBACKCURRENTFULLDOWNLOAD,
PREPAREPLAYBACKCURRENTSTREAMING,
PREPAREPLAYBACKNEIGHBORFULLDOWNLOAD,
PREPAREPLAYBACKNEIGHBORSTREAMING,
PREVIEWUSERVISIBLE,
SHARINGUSERVISIBLE,
SNAPDOCRETRIEVAL,
FEATUREDPREPAREPLAYBACKCURRENTFULLDOWNLOAD,
FEATUREDPREPAREPLAYBACKCURRENTSTREAMING,
SPOTLIGHTPREFETCHONSTARTUP,
OPERAPLAYBACKSTREAMING,
CHATTHUMBNAIL,
PROFILECHATTHUMBNAIL,
MEMORIESCHATTHUMBNAIL,
CHATPLAYBACK,
PROFILECHATPLAYBACK,
MEMORIESCHATPLAYBACK,
CHATTHUMBNAILUSERTRIGGERED,
FOREGROUNDPREFETCHUSERTRIGGERED,
FOREGROUNDPREFETCHSNAPREPLAY,
FOREGROUNDPREFETCHINAPPNOTIFICATION,
FOREGROUNDPREFETCHREADNOTSAVEDMESSAGE,
FOREGROUNDPREFETCHREADSAVEDMESSAGE,
CHATWALLPAPER,
CHATWALLPAPERTHUMBNAIL,
OPERAPAGERESOLVER,
FOREGROUNDPREFETCHONCHATENTER,
FOREGROUNDPREFETCHONFRIENDSFEED
}
| Enum Value | Trigger |
|---|---|
| 0 | UNSET |
| 1 | IMPRESSIONPREFETCH |
| 2 | INLINEPREFETCH |
| 3 | FOREGROUNDPREFETCH |
| 4 | BACKGROUNDPREFETCH |
| 5 | ACFINLINEPREFETCH |
| 6 | BCFFOREGROUNDPREFETCH |
| 7 | PREPAREPLAYBACKCURRENTFULLDOWNLOAD |
| 8 | PREPAREPLAYBACKCURRENTSTREAMING |
| 9 | PREPAREPLAYBACKNEIGHBORFULLDOWNLOAD |
| 10 | PREPAREPLAYBACKNEIGHBORSTREAMING |
| 11 | PREVIEWUSERVISIBLE |
| 12 | SHARINGUSERVISIBLE |
| 13 | SNAPDOCRETRIEVAL |
| 14 | FEATUREDPREPAREPLAYBACKCURRENTFULLDOWNLOAD |
| 15 | FEATUREDPREPAREPLAYBACKCURRENTSTREAMING |
| 16 | SPOTLIGHTPREFETCHONSTARTUP |
| 17 | OPERAPLAYBACKSTREAMING |
| 18 | CHATTHUMBNAIL |
| 19 | PROFILECHATTHUMBNAIL |
| 20 | MEMORIESCHATTHUMBNAIL |
| 21 | CHATPLAYBACK |
| 22 | PROFILECHATPLAYBACK |
| 23 | MEMORIESCHATPLAYBACK |
| 24 | CHATTHUMBNAILUSERTRIGGERED |
| 25 | FOREGROUNDPREFETCHUSERTRIGGERED |
| 26 | FOREGROUNDPREFETCHSNAPREPLAY |
| 27 | FOREGROUNDPREFETCHINAPPNOTIFICATION |
| 28 | FOREGROUNDPREFETCHREADNOTSAVEDMESSAGE |
| 29 | FOREGROUNDPREFETCHREADSAVEDMESSAGE |
| 30 | CHATWALLPAPER |
| 31 | CHATWALLPAPERTHUMBNAIL |
| 32 | OPERAPAGERESOLVER |
| 33 | FOREGROUNDPREFETCHONCHATENTER |
| 34 | FOREGROUNDPREFETCHONFRIENDSFEED |
VideoMediaType
./com/snapchat/addlive/shared_metrics/VideoMediaType.java
public enum VideoMediaType {
VIDEO,
SCREEN
}
| Enum Value | VideoMediaType |
|---|---|
| 0 | VIDEO |
| 1 | SCREEN |
FriendLink
.\com\snapchat\client\messaging\FriendLink.java
public enum FriendLink {
UNKNOWN,
MUTUAL_FRIEND,
FOLLOWER,
PENDING,
BLOCKED,
INCOMING,
DELETED
}
| Enum Value | FriendLink |
|---|---|
| 0 | UNKNOWN |
| 1 | MUTUAL_FRIEND |
| 2 | FOLLOWER |
| 3 | PENDING |
| 4 | BLOCKED |
| 5 | INCOMING |
| 6 | DELETED |
ConnectivityNetworkType
.\com\snapchat\addlive\shared_metrics\ConnectivityNetworkType.java
public enum ConnectivityNetworkType {
WWAN_5G,
WWAN_4G,
WWAN_3G,
WWAN_2G,
WWAN_OTHER,
WIFI,
NOT_REACHABLE,
UNKNOWN
}
| Enum Value | ConnectivityNetworkType |
|---|---|
| 0 | WWAN_5G |
| 1 | WWAN_4G |
| 2 | WWAN_3G |
| 3 | WWAN_OTHER |
| 4 | WIFI |
| 5 | NOT_REACHABLE |
| 6 | UNKNOWN |
Connectivity
.\com\snapchat\client\network_types\Connectivity.java
public enum Connectivity {
WIFI,
WWAN,
UNREACHABLE,
UNKNOWN
}
| Enum Value | Connectivity |
|---|---|
| 0 | WIFI |
| 1 | WWAN |
| 2 | UNREACHABLE |
| 3 | UNKNOWN |
CONTENT_ATTRIBUTION
This isn't an enum, but found within the cache_controller.db sqlite database; table CACHE_FILE_CLAIM, column CONTENT_ATTRIBUTION.
.\com\snap\modules\media\NativeContentTypeKey.java
public final class NativeContentTypeKey {
// ...
static {
NativeContentTypeKey nativeContentTypeKey = new NativeContentTypeKey("COMMUNITIES", 0);
COMMUNITIES = nativeContentTypeKey;
NativeContentTypeKey nativeContentTypeKey2 = new NativeContentTypeKey("GAME", 1);
GAME = nativeContentTypeKey2;
NativeContentTypeKey nativeContentTypeKey3 = new NativeContentTypeKey("MAP_PLACE_ICONS", 2);
MAP_PLACE_ICONS = nativeContentTypeKey3;
NativeContentTypeKey nativeContentTypeKey4 = new NativeContentTypeKey("SPOTLIGHT_THUMBNAIL", 3);
SPOTLIGHT_THUMBNAIL = nativeContentTypeKey4;
NativeContentTypeKey nativeContentTypeKey5 = new NativeContentTypeKey("PLACE_PROFILE_INFO", 4);
PLACE_PROFILE_INFO = nativeContentTypeKey5;
NativeContentTypeKey nativeContentTypeKey6 = new NativeContentTypeKey("PLACE_PROFILE_ANNOTATIONS", 5);
PLACE_PROFILE_ANNOTATIONS = nativeContentTypeKey6;
NativeContentTypeKey nativeContentTypeKey7 = new NativeContentTypeKey("IN_APP_WARNING", 6);
IN_APP_WARNING = nativeContentTypeKey7;
NativeContentTypeKey nativeContentTypeKey8 = new NativeContentTypeKey("IN_APP_APPEAL", 7);
IN_APP_APPEAL = nativeContentTypeKey8;
NativeContentTypeKey nativeContentTypeKey9 = new NativeContentTypeKey("STICKERS_SMART_REPLY_MODEL", 8);
STICKERS_SMART_REPLY_MODEL = nativeContentTypeKey9;
NativeContentTypeKey nativeContentTypeKey10 = new NativeContentTypeKey("SHOPPING_STICKERS_MODEL", 9);
SHOPPING_STICKERS_MODEL = nativeContentTypeKey10;
NativeContentTypeKey nativeContentTypeKey11 = new NativeContentTypeKey("NOTIFICATION_SOUNDS", 10);
NOTIFICATION_SOUNDS = nativeContentTypeKey11;
NativeContentTypeKey nativeContentTypeKey12 = new NativeContentTypeKey("NOTIFICATION_THUMBNAILS", 11);
NOTIFICATION_THUMBNAILS = nativeContentTypeKey12;
NativeContentTypeKey nativeContentTypeKey13 = new NativeContentTypeKey("CHAT_MEDIA", 12);
CHAT_MEDIA = nativeContentTypeKey13;
NativeContentTypeKey nativeContentTypeKey14 = new NativeContentTypeKey("UNATTRIBUTED_URL", 13);
UNATTRIBUTED_URL = nativeContentTypeKey14;
NativeContentTypeKey nativeContentTypeKey15 = new NativeContentTypeKey("SAVED_STORY", 14);
SAVED_STORY = nativeContentTypeKey15;
NativeContentTypeKey nativeContentTypeKey16 = new NativeContentTypeKey("MAP_WIDGET_ASSET", 15);
MAP_WIDGET_ASSET = nativeContentTypeKey16;
NativeContentTypeKey nativeContentTypeKey17 = new NativeContentTypeKey("PUBLIC_STORY_SNAP_THUMBNAIL", 16);
PUBLIC_STORY_SNAP_THUMBNAIL = nativeContentTypeKey17;
NativeContentTypeKey nativeContentTypeKey18 = new NativeContentTypeKey("SNAP_DEVICES_ASSET", 17);
SNAP_DEVICES_ASSET = nativeContentTypeKey18;
NativeContentTypeKey nativeContentTypeKey19 = new NativeContentTypeKey("MAP_THUMBNAIL", 18);
MAP_THUMBNAIL = nativeContentTypeKey19;
NativeContentTypeKey nativeContentTypeKey20 = new NativeContentTypeKey("STATIC_MAP_FOR_PROFILE", 19);
STATIC_MAP_FOR_PROFILE = nativeContentTypeKey20;
NativeContentTypeKey nativeContentTypeKey21 = new NativeContentTypeKey("STATIC_MAP_FOR_MEMORIES", 20);
STATIC_MAP_FOR_MEMORIES = nativeContentTypeKey21;
NativeContentTypeKey nativeContentTypeKey22 = new NativeContentTypeKey("STATIC_MAP_FOR_WIDGET", 21);
STATIC_MAP_FOR_WIDGET = nativeContentTypeKey22;
NativeContentTypeKey nativeContentTypeKey23 = new NativeContentTypeKey("STATIC_MAP_FOR_COMPOSER", 22);
STATIC_MAP_FOR_COMPOSER = nativeContentTypeKey23;
NativeContentTypeKey nativeContentTypeKey24 = new NativeContentTypeKey("STATIC_MAP_FOR_DROPS", 23);
STATIC_MAP_FOR_DROPS = nativeContentTypeKey24;
NativeContentTypeKey nativeContentTypeKey25 = new NativeContentTypeKey("STATIC_MAP_FOR_REACTIONS", 24);
STATIC_MAP_FOR_REACTIONS = nativeContentTypeKey25;
NativeContentTypeKey nativeContentTypeKey26 = new NativeContentTypeKey("STATIC_MAP_FOR_MULTIVERSE", 25);
STATIC_MAP_FOR_MULTIVERSE = nativeContentTypeKey26;
NativeContentTypeKey nativeContentTypeKey27 = new NativeContentTypeKey("STATIC_MAP_FOR_LEGAL_COMPLIANCE", 26);
STATIC_MAP_FOR_LEGAL_COMPLIANCE = nativeContentTypeKey27;
NativeContentTypeKey nativeContentTypeKey28 = new NativeContentTypeKey("MINERVA_IMAGE_PROCESSING", 27);
MINERVA_IMAGE_PROCESSING = nativeContentTypeKey28;
NativeContentTypeKey nativeContentTypeKey29 = new NativeContentTypeKey("TEMPLATES_PREVIEW_VIDEO", 28);
TEMPLATES_PREVIEW_VIDEO = nativeContentTypeKey29;
NativeContentTypeKey nativeContentTypeKey30 = new NativeContentTypeKey("COF_EARLY_CONFIG_DOWNLOAD", 29);
COF_EARLY_CONFIG_DOWNLOAD = nativeContentTypeKey30;
NativeContentTypeKey nativeContentTypeKey31 = new NativeContentTypeKey("COMPOSER_ENCRYPTED_LENS_ASSET", 30);
COMPOSER_ENCRYPTED_LENS_ASSET = nativeContentTypeKey31;
NativeContentTypeKey nativeContentTypeKey32 = new NativeContentTypeKey("DEPRECATED_GLOBAL_SCOPED_IMAGE_CACHE", 31);
DEPRECATED_GLOBAL_SCOPED_IMAGE_CACHE = nativeContentTypeKey32;
NativeContentTypeKey nativeContentTypeKey33 = new NativeContentTypeKey("MINERVA_AI_CAMERA_MODE", 32);
MINERVA_AI_CAMERA_MODE = nativeContentTypeKey33;
NativeContentTypeKey nativeContentTypeKey34 = new NativeContentTypeKey("MEMORIES_MASHUP_NONBACKUP_ASSETS", 33);
MEMORIES_MASHUP_NONBACKUP_ASSETS = nativeContentTypeKey34;
NativeContentTypeKey nativeContentTypeKey35 = new NativeContentTypeKey("REMIX_CAMERA_STORY", 34);
REMIX_CAMERA_STORY = nativeContentTypeKey35;
NativeContentTypeKey nativeContentTypeKey36 = new NativeContentTypeKey("CAMERA_MODE_ONBOARDING", 35);
CAMERA_MODE_ONBOARDING = nativeContentTypeKey36;
NativeContentTypeKey nativeContentTypeKey37 = new NativeContentTypeKey("MEMORIES_CROPPED_FACE_THUMBNAIL", 36);
MEMORIES_CROPPED_FACE_THUMBNAIL = nativeContentTypeKey37;
NativeContentTypeKey nativeContentTypeKey38 = new NativeContentTypeKey("MEMORIES_ON_DEMAND_METADATA", 37);
MEMORIES_ON_DEMAND_METADATA = nativeContentTypeKey38;
NativeContentTypeKey nativeContentTypeKey39 = new NativeContentTypeKey("TOS_HTML_DOWNLOAD", 38);
TOS_HTML_DOWNLOAD = nativeContentTypeKey39;
NativeContentTypeKey nativeContentTypeKey40 = new NativeContentTypeKey("SNAPZEN_HOME_ASSETS", 39);
SNAPZEN_HOME_ASSETS = nativeContentTypeKey40;
NativeContentTypeKey nativeContentTypeKey41 = new NativeContentTypeKey("CUSTOM_RINGTONES", 40);
CUSTOM_RINGTONES = nativeContentTypeKey41;
// ...
}
The CONTENT_ATTRIBUTION column uses the same NativeContentTypeKey integers for recording which product feature registered the original download request for this cached item.
| Integer Value | NativeContentTypeKey Name |
Interpretation |
|---|---|---|
| 0 | COMMUNITIES |
Communities - suppressed in analytics by a logical > 0 guard, so appears absent in events. But can appear as a literal 0 in cache_controller.db. |
| 1 | GAME |
Download triggered by Snap Games feature. |
| 2 | MAP_PLACE_ICONS |
Snap Map - place icon assets. |
| 3 | SPOTLIGHT_THUMBNAIL |
Spotlight feed thumbnail. |
| 4 | PLACE_PROFILE_INFO |
Snap Map - place profile page. |
| 5 | PLACE_PROFILE_ANNOTATIONS |
Snap Map - place annotations overlay. |
| 6 | IN_APP_WARNING |
In-app safety/moderation warning asset. |
| 7 | IN_APP_APPEAL |
In-app content appeal asset. |
| 8 | STICKERS_SMART_REPLY_MODEL |
ML model for smart reply stickers. |
| 9 | SHOPPING_STICKERS_MODEL |
Shopping/commerce sticker ML model. |
| 10 | NOTIFICATION_SOUNDS |
Notification sound file download. |
| 11 | NOTIFICATION_THUMBNAILS |
Notification preview thumbnail. |
| 12 | CHAT_MEDIA |
Chat/DM media (photo or video in a 1:1 or group chat). |
| 13 | UNATTRIBUTED_URL |
Raw URL fetch with no specific feature tag. |
| 14 | SAVED_STORY |
Saved/archived story media. |
| 15 | MAP_WIDGET_ASSET |
Snap Map widget asset. |
| 16 | PUBLIC_STORY_SNAP_THUMBNAIL |
Public story snap preview thumbnail. |
| 17 | SNAP_DEVICES_ASSET |
Spectacles / Snap hardware asset. |
| 18 | MAP_THUMBNAIL |
Snap Map background thumbnail. |
| 19 | STATIC_MAP_FOR_PROFILE |
Static map image on a user profile. |
| 20 | STATIC_MAP_FOR_MEMORIES |
Static map embedded in a Memory. |
| 21 | STATIC_MAP_FOR_WIDGET |
Static map for home-screen widget. |
| 22 | STATIC_MAP_FOR_COMPOSER |
Static map inside the snap composer. |
| 23 | STATIC_MAP_FOR_DROPS |
Static map for Drops feature. |
| 24 | STATIC_MAP_FOR_REACTIONS |
Static map for Reactions feature. |
| 25 | STATIC_MAP_FOR_MULTIVERSE |
Static map for Multiverse feature. |
| 26 | STATIC_MAP_FOR_LEGAL_COMPLIANCE |
Static map for legal/compliance display. |
| 27 | MINERVA_IMAGE_PROCESSING |
Minerva AI - image processing asset. |
| 28 | TEMPLATES_PREVIEW_VIDEO |
Story template preview video. |
| 29 | COF_EARLY_CONFIG_DOWNLOAD |
COF (Content/Config on First-run) early config. |
| 30 | COMPOSER_ENCRYPTED_LENS_ASSET |
Lens asset fetched inside the composer (encrypted). |
| 31 | DEPRECATED_GLOBAL_SCOPED_IMAGE_CACHE |
Legacy global image cache (deprecated). |
| 32 | MINERVA_AI_CAMERA_MODE |
Minerva AI camera mode asset. |
| 33 | MEMORIES_MASHUP_NONBACKUP_ASSETS |
Memories Mashup - non-backup assets. |
| 34 | REMIX_CAMERA_STORY |
Remix feature - camera story asset. |
| 35 | CAMERA_MODE_ONBOARDING |
Onboarding assets for camera modes. |
| 36 | MEMORIES_CROPPED_FACE_THUMBNAIL |
Memories - face-cropped thumbnail. |
| 37 | MEMORIES_ON_DEMAND_METADATA |
Memories on-demand metadata file. |
| 38 | TOS_HTML_DOWNLOAD |
Terms of Service HTML page download. |
| 39 | SNAPZEN_HOME_ASSETS |
SnapZen / home screen assets. |
| 40 | CUSTOM_RINGTONES |
Custom notification ringtone download. |
More enums and updates to come in the future.