There are multiple app_users{appID} collections, one collection for each specific app.
A collection name is formed using "app_users" string and app ID.
So, for example, for an app with the ID "542e95d747f0be510c000004", the collection name would be: "app_users542e95d747f0be510c000004".
Below is a list of all possible fields:
Field | Description | Example |
---|---|---|
_id | Unique user ID. | cb51c8d13bbe95444dde6f14e802d53046eed08e |
uid | Internal user identifier. Note. | 1 |
cc | User's country, determined by connection IP. | DE |
rgn | User's region, determined by connection IP. | Bavaria |
cty | User's city, determined by connection IP. | Munich |
did | Unique device ID provided by the SDK. | 8897529E-B7E1-4B6E-BA00-3D8487DE2B19 |
md5_did | md5 hash of device id for attribution | ea495977f43e9e2bcbb0b95c54db17b2 |
fs | Timestamp of the first session start. | 1412339494 |
fac | Timestamp of the first API call recorded on the device. | 1412339494 |
first_sync | Timestamp of the first API call received on the server | 1412339494 |
ls | Timestamp of the last session start. |
1412339494 |
lac | Timestamp of the last API call recorded on the device. | 1412339494 |
last_sync | Timestamp of the last API call received on the server. | 1412339494 |
sc | Total session count. | 2 |
sd | Duration of the last session in seconds. | 120 |
tsd | Total Duration of all sessions in seconds. | 1200 |
d | User's device. | iPad10,1 |
dt | Device type | tablet |
mnf | Manufacturer of device | Samsung |
c | User's carrier. | Verizon |
p | User's platform. | Android |
pv | User's platform version prefixed by the platform's first letter. | a5:0 |
av | User's app version. | 1:2 |
lv | Last view accessed by the user. | Profile page |
vc | Views accessed in this session. | 3 |
lvt | Timestamp when the last view was accessed. | 1460411976 |
crashes | Array of crash IDs the current user experiences. | [3898c736ad344d3ae8cb906b72447595147d93b3] |
hasInfo | Boolean if user is identified. True if identified, false or does not exist if anonymous | true |
name | User's full name. | Arturs Sosins |
username | User's username. | ar2rsawseen |
User's email address. | email@comain.com | |
organization | User's organization or company. | Count.ly |
phone | User's phone number. | (854) 526-8024 |
gender | User's gender: M for male and F for female. | M |
byear | User's birth year. | 1987 |
custom | Custom properties provided for the user. | {"login":"test"} |
lp | Timestamp of the last purchase. | 1460411976 |
tp | Total Purchase Amount. | 2.42 |
tpc | Total Purchase Count. | 1 |
lpa | Last Purchase Amount. | 2.42 |
lo | User's locale (ISO Standard). | fr_FR |
r | User's device resolution. | 600x800 |
dnst | User's device screen density. | 240dpi |
la | User's language, 2 letter iso code. | fr |
brw | User's browser. | Chrome |
brwv | Browser's version | [chrome]_96:0:4664:110 |
src | User's source (package name for Android, and referrer for Web Analytics). | com.google.vending |
src_ch | Source Channel, for web applications, domain of traffic | google.com |
ornt | Orientation of device | portrait |
loc | Object with location data. | { gps: true, date: 1516619563010, geo: { type: "Point", coordinates: [10, 20] } } |
loc.gps | Boolean of whether the location is provided by the developer. | true |
loc.date | Date of location. | 1516619563010 |
loc.geo | MongoDB geospatial-compatible object with coordinates. | { type: "Point", coordinates: [lon, lat] } |
fsd | First Day Retention bucket. | 20160426 |
fsw | First Week Retention bucket. | 20160425 |
fsm | First Month Retention bucket. | 201604 |
cadfs | Consecutive days of retention, starting from Day-0. If the user skips a day, then the number is not incremented after that day. The maximum value is 30. | 15 |
cawfs | Consecutive weeks of retention, starting from Week-0. If the user skips a week, then the number is not incremented after that week. The maximum value is 24. | 2 |
camfs | Consecutive months of retention, starting from Month-0. If the user skips a month, then the number is not incremented after that month. The maximum value is 13. | 1 |
cdfs | Relative retention alternative of cadfs. | 13 |
cwfs | Relative retention alternative of cawfs. | 1 |
cmfs | Relative retention alternative of camfs. | 1 |
lsid | Last session ID from the Drill database. | 571f8be85f7d56a97e9aaa42 |
lvid | Last view ID from the Drill database. | |
tkip | Boolean of whether the user has a production APN token set. | true or false |
tkia | Boolean of whether the user has a TestFlight/AdHoc APN token set. | true or false |
tkid | Boolean of whether the user has a development APN token set. | true or false |
tkap | Boolean of whether the user has a production FCM token set. | true or false |
tkat | Boolean of whether the user has a test FCM token set. | true or false |
cmp | Campaign data | { "_id": "9461713e03076a95175dccf4e91bab7511065790", "b": "Chrome", "bv": "75.0.3770.80", "c": "social5ab0c3ef92938d0e61cf77f4", "cnty": "CN", "l": "en-US", "last_click": 1558635152, "m": "false", "os": "Windows 10.0", "pl": "Windows", "r": "unknown", "n": "Social Campaign" }, |
nxret | Flags for other retention types. If a user has data in external retention collection, then the existing fields are set as 1 for that user. | { "rd" : 1, "rw" : 1 } |
chr | Cohort data, using the key as cohort ID; i is the timestamp of entering cohort; o is the timestamp of existing cohort; and in is "true" if the user is currently in the cohort. | { "f431f38867ee6d8e807d1883692ff7ff": { "i": 1562593543, "o": 1562596497 }, "682cf41a1b24744cb6f6ae67d7c7642a": { "i": 1567610390, "in": "true" } } |
consents | List of consents. |
{ "attribution": true, "clicks": true, "crashes": true, "events": true, "forms": true, "push": true, "scrolls": false, "sessions": true, "users": true, "views": true }, |
age | age of the user computed yearly based on byear property |
54 |
engagement | Object storing last user engagement data for score computation, as session counts and durations for last days |
"engagement": { "2023-03-31": { "sc": 1, "sd": 60} } |
engagement_score | Engagement score computed based on user activity in last 7 days |
99 |
Debug user properties, that are stored and viewed in cases we want to understand what is happening with user documents and data on device
Field | Description | Example |
---|---|---|
last_req | Hash of last request to prevent duplicate request |
3277d7f0d1f99fe15a9923a396astehsw435b634345438 |
hadAnyFatalCrash | Timestamp of any last fatal crash |
1640288872 |
hadFatalCrash | Boolean if had a fatal crash |
true |
hadAnyNonfatalCrash | Timestamp of any last non fatal error |
1640285872 |
hadNonfatalCrash | Boolean if had a non fatal error |
false |
sdk | Object containing information about last SDK user used |
{ "name": "javascript_native_web", "version": "23.02.1" } |
t | Device ID type, 0 for SDK generated and 1 for custom |
0 |
merges | Amount of user merges user had |
1 |
merged_uid | Previous UID value before user was merged |
a |
merged_did | Previous Device ID value before user was merged |
123455 |
hc | Last health check data from SDK |
{ "el": 0, "wl": 0, "sc": -1, "em": "" } |
req_count | Request count, goes only up to 100 |
100 |
rr | Request count in the queue on device. The amount of requests that still need to sync with server |
1 |
first_req_get | GET data of first request that user received |
/i?device_id=12345&app_key=... |
first_req_post | POST data of first request that user received |
|
last_req_get | GET data of last request that user received |
/i?device_id=12345&app_key=... |
last_req_post | POST data of last request that user received |
|
Temporary User properties that are set for user states and removed or ignored later
Field | Description | Example |
---|---|---|
hos | Temporary flag: has ongoing session |
true |
ingested | Temporary flag to ensure ingestion |
false |
lbst | Temporary flag for last begin session timestamp |
1680276881 |
lest | Temporary flag for last end session timestamp |
1680276881 |
data | Temporary data for user activity |
{ "views": 33, "events": 13, "crashes": 1 } |
Here is an example of a user document:
{
"_id": "cb51c8d13bbe95444dde6f14e802d53046eed08e",
"uid": "1",
"cc": "Unknown",
"cty": "Unknown",
"did": "1234567890",
"fs": 1412339494,
"ls": 1412339494,
"sc": 2,
"sd": 120,
"tsd": 120,
"lsid": "54f56aa4d2205b1917931c9d",
"d" : "iPad Air",
"c" : "Verizon",
"p" : "WP8",
"pv" : "w7:0",
"av" : "1:9"
}
About internal identifier
uid can be used to match up internal queries about user data with Drill and other collections.