Preset properties and system fields
This section describes all preset properties and system fields in AE. For the preset properties of each platform, see:
Preset properties are properties generated or obtained by AE. All preset properties start with "#", and they are all event properties, and their display names and meanings are predefined. System fields are structural fields in the data (such as #account_id and #event_time) or fields with special purposes in the database. They are usually not used in analysis models, or are used only indirectly.
Except for the preset properties listed below, any property that starts with "#" is treated as an invalid field and cannot be stored. Therefore, we don't recommend starting custom property names with "#". No system field can be passed in as an event or user property during data integration.
Note: Except for #ip, we don't recommend using preset properties directly. Set them, under the guidance of ThinkingAI staff, only when you use a client SDK together with other transmission methods and need to keep properties consistent across platforms. Make sure the property types of the preset properties in your reported data match those in the table. If a type doesn't match, the value of that property is discarded (that is, the value is null).
- Preset properties
| Property name | Display name | Property type | Description |
|---|---|---|---|
| #ip | Client IP | Text | The user's IP address, which AE uses to get the user's geographic location |
| #country | Country/Region | Text | The user's country or region, generated from the IP address |
#country_code | Country or region code | Text | The country or region code of the user's country or region (ISO 3166-1 alpha-2, that is, two uppercase letters), generated from the IP address |
| #province | Province | Text | The user's province, generated from the IP address |
| #city | City | Text | The user's city, generated from the IP address |
| #os_version | OS Version | Text | iOS 11.2.2, Android 8.0.0, etc. |
| #manufacturer | Manufacturer | Text | Manufacturer of the user's device, such as Apple and vivo |
| #os | OS | Text | Such as Android and iOS |
| #device_id | Device ID | Text | User's device ID: IDFV or UUID on iOS, androidID on Android |
| #screen_height | Screen height | Numeric | Screen height of the user's device, such as 1920 |
| #screen_width | Screen width | Numeric | Screen width of the user's device, such as 1080 |
| #device_model | Device model | Text | Model of the user's device, such as iPhone 8 |
| #device_type | Device Type | Text | Type of the user's device, such as iPad and iPhone |
| #app_version | App version | Text | The version of your app |
| #bundle_id | Bundle name | Text | App package name or process name |
| #lib | SDK type | Text | The type of SDK you integrated, such as Android and iOS |
| #lib_version | SDK version | Text | The version of the SDK you integrated |
| #network_type | Network Type | Text | Network status when the event occurs, such as WIFI, 3G, and 4G |
| #carrier | Carrier | Text | Network carrier of the user's device, such as China Mobile and China Telecom |
| #browser | Browser | Text | Type of browser the user uses, such as Chrome and Firefox |
| #browser_version | Browser Version | Text | Version of the browser the user uses, such as Chrome 61.0 and Firefox 57.0 |
| #duration | Event duration | Numeric | Duration recorded by the timing function, in seconds |
| #url | Page URL | Text | Used in auto-tracked events. URL of the current page (not a business-defined page). On web pages, the value is location.href; on Android / iOS, the value is the custom page path |
| #url_path | Page path | Text | Used in auto-tracked events. Path of the current page (not a business-defined page). The value is location.pathname |
#referrer | Referrer URL | Text | Used in auto-tracked events. URL of the page before the jump (not a business-defined page). On web pages, the value is document.referrer; on Android / iOS, the value is the custom path of the previous page |
| #referrer_host | Referrer domain | Text | Used in auto-tracked events. Domain of the page before the jump (not a business-defined page). The value is the host of the referrer |
| #title | Page Title | Text | Used in auto-tracked events. Title of the current page (not a business-defined page). On web pages, the value is document.title. On Android, the value is the title of the Activity, that is, the value of the Activity's title attribute. On iOS, the value is the title of the View Controller, that is, the value of the controller.navigationItem.title attribute |
| #screen_name | Page name | Text | Used in auto-tracked events. Name of the page (not a business-defined page). On Android, the value is the package name.class name of the Activity; on iOS, the value is the class name of the View Controller |
| #element_id | Element ID | Text | Used in auto-tracked events. ID of the element |
| #element_type | Element type | Text | Used in auto-tracked events. Type of the element |
| #resume_from_background | Resumed from background | Boolean | Used in auto-tracked events. Whether the app is resumed from the background; Boolean |
| #element_selector | Element selector | Text | Used in auto-tracked events. viewPath of the element |
| #element_position | Element position | Text | Used in auto-tracked events. Position of the element |
| #element_content | Element content | Text | Used in auto-tracked events. Content of the element |
| #scene | Scene value | Numeric | Scene value passed in when the WeChat Mini Program starts |
| #mp_platform | Mini program platform | Text | Identifies the platform where the app runs |
| #app_crashed_reason | Exception information | Text | Used in auto-tracked events. Records the stack trace of an app crash |
| #zone_offset | Time Zone Offset | Numeric | Offset in hours of the data time relative to UTC |
#system_language | System language | Text | System language of the user's device (ISO 639-1, that is, two lowercase letters), such as zh and en |
| #install_time | App install time | Time | Time when the user installed the app; the value comes from the system |
| #simulator | Is simulator | Numeric | Whether the device is a simulator: true/false |
| #ram | Memory (GB) | Text | Current available memory and total memory of the user's device in GB, such as 1.4/2.4 |
| #disk | Disk (GB) | Text | Current available storage and total storage of the user's device in GB, such as 30/200 |
| #fps | FPS | Numeric | Current frame rate (frames per second) of the user's device, such as 60 |
| #background_duration | Background duration | Numeric | Duration the app stays in the background between two start events, in seconds |
| #start_reason | Launch reason | Text | This property exists only when the app is launched by a non-launcher method, such as a deeplink or startActivity from another app. Sample data: "#start_reason":"{"url":"thinkingdata:\/\/","data":""}" |
| #ua | User agent | Text | Used to identify the operating system and version, CPU type, browser and version, browser rendering engine, browser language, browser plugins, etc. that the client uses. |
#utm | Campaign source properties | Text | Ad information about where the user came from, including the ad source, ad medium, and more |
- System fields in the event table
| Field name | Display name | Property type | Description |
|---|---|---|---|
| $part_event | Event partition field | Text | Event partition field, taken from #event_name, that is, the event name |
| $part_date | Date partition field | Time | Date partition field, taken from #event_time, that is, the date when the event occurred |
| #app_id | Project ID | Text | ID of the project the event belongs to |
| #user_id | Unique user ID | Numeric | The user's unique identifier in the system |
| #account_id | Account ID | Text | Account ID, equivalent to #account_id in the data |
| #distinct_id | Distinct ID | Text | Distinct ID, equivalent to #distinct_id in the data |
| #event_name | Event name | Text | Event name, equivalent to the #event_name field in the data |
| #event_time | Event time | Time | Event time, equivalent to the #time field in the data |
| #server_time | Server time | Time | Time when the server received the data |
| #dw_create_time | First storage time | Time | Time when the event data was stored; null for all updatable events |
| #dw_update_time | Storage update time | Time | Time when the event data was updated in storage; null for all non-updatable events |
| #kafka_offset | Kafka offset | Numeric | Offset of the event stored in Kafka |
| #uuid | UUID | Text | Identifier of the event |
- System fields in the user table
| Field name | Display name | Property type | Description |
|---|---|---|---|
| #user_id | Unique user ID | Numeric | The user's unique identifier in the system |
| #account_id | Account ID | Text | Account ID, equivalent to #account_id in the data |
| #distinct_id | Distinct ID | Text | Distinct ID, equivalent to #distinct_id in the data |
| #active_time | Activation time | Time | The #time value of the user's first piece of data (event or user property data) when it is stored |
| #reg_time | Registration time | Time | The #time value of the user's first piece of data that contains an account ID (event or user property data) when it is stored |
| #update_time | Update time | Time | The #time value of the last piece of user property data received |
| #server_time | Server time | Time | Server time of the last piece of user property data received |
| #dw_update_time | Storage update time | Time | Latest update time of the user data |
| #event_date | Latest event date | Numeric | Date when the user's latest event was stored |
| #user_operation | User operation type | Text | Operation type of the user property data |
| #kafka_offset | Kafka offset | Numeric | Offset of the user property data stored in Kafka |
| #uuid | UUID | Text | Identifier of the user property data |

