Documentation Index

Fetch the complete documentation index at: https://docs.darwinium.com/llms.txt

Use this file to discover all available pages before exploring further.

SDK Device Attributes

Prev Next

Android SDK

Device Make / Model / Brand

manufacturer

profiling.android.build.manufacturer

The OEM company that built the device (e.g. 'INFINIX MOBILITY LIMITED', 'Microsoft'). Can be verbose or inconsistent across vendors. Use brand for cleaner consumer-facing grouping; use this when you need the legal entity or supply-chain origin.

# Example Value
1 BMAX
2 RAVOZ
3 WIKO
4 OUKITEL
5 OSCAL
6 Odea
7 HELIX_INC
8 ITEL
9 Welcome
10 meizu

brand

profiling.android.build.brand

Consumer-facing brand name, typically shorter than manufacturer (e.g. 'Nokia', 'itel', 'razer'). Best default for device-brand grouping in dashboards and rules. Prefer over manufacturer unless you specifically need the OEM name.

# Example Value
1 KYOCERA
2 REDMAGIC
3 FOSSiBOT
4 NUU
5 ATID
6 Hisense
7 Coolpad
8 Cherry
9 TECNO-Mobile
10 BMAX

model

profiling.android.build.model

The user-facing model identifier reported by the device (e.g. 'SM-A146B', 'Infinix X653C', 'TECNO T1102'). Primary attribute for identifying a specific handset. Use this as the go-to for device-level analysis.

# Example Value
1 HTC U11 plus
2 V2240
3 Redmi S2
4 TECNO CC7
5 2505DRP06G
6 motorola edge 2023
7 DEL-LX9
8 RBN-NX1
9 V2050
10 CPH2339

device

profiling.android.build.device

Internal Android build-system codename for the industrial design (e.g. 'sapphire', 'grus', 'starqlteue'). Not user-facing. Use for ROM-level fingerprinting or when correlating with AOSP build configs; prefer model for anything customer-visible.

# Example Value
1 WJG
2 a35x
3 dream2lte
4 Jelly_Star
5 goya
6 Infinix-PR652B
7 KINGKONG_8
8 q7q
9 OP4E99
10 BV6200_Plus

product

profiling.android.build.product

Build product name, often encodes the device plus region variant (e.g. 'VOG-L29EEA' = Huawei P30 Pro EU, 'a13nnxx' = Samsung A13 open-market). Use when the same hardware ships different firmware per region and you need to distinguish them.

# Example Value
1 CM8-OP
2 klimt_global
3 V2254
4 CPH2359T2
5 PD1901E
6 T780H
7 R12_Pro+
8 angelica_eea
9 RMX5050
10 PJT110

fingerprint

profiling.android.build.fingerprint

Complete build identity string: brand/product/device:version/build_id/variant:type/keys. The most granular identifier — uniquely pins an exact software build on exact hardware. Use for anomaly detection, build-integrity checks, or when no single field is specific enough.

# Example Value
1 HUAWEI/EML-L29/HWEML:10/HUAWEIEML-L29/10.0.0.171C432:user/release-keys
2 Nothing/AsteroidsPro/Asteroids:15/AQ3A.241015.001/2510131406:user/release-keys
3 vivo/V2204TC/V2204:12/SP1A.210812.003_MOD1/compiler08092045:user/release-keys
4 vivo/V2206T/V2206:14/UP1A.231005.007/compiler12101648:user/release-keys
5 vivo/PD2364/PD2364:15/AP3A.240905.015.A2/compiler251208195628:user/release-keys
6 OUKITEL/WP50_EEA/WP50:14/UP1A.231005.007/1760616130:user/release-keys
7 samsung/a14xmzh/a14xm:15/AP3A.240905.015.A2/A146PZHUAEYF5:user/release-keys
8 Redmi/sapphire_global/sapphire:14/UKQ1.231207.002/V816.0.11.0.UNGMIXM:user/release-keys
9 OPPO/CPH2145T2/OP4F1BL1:13/TP1A.220905.001/R.10e085d-6a3f-6a42:user/release-keys
10 Itel/A667LP-OP/itel-A667LP:14/UP1A.231005.007/250414V1111:user/release-keys

Hardware / Silicon

hardware

profiling.android.build.hardware

Hardware platform name, often a chipset codename (e.g. 'kirin810', 'mt6833', 'mustang'). Use for low-level hardware grouping. Prefer soc_model for a more descriptive chipset identifier, or cpu_hardware for the full human-readable string.

# Example Value
1 sp9832e_1h10_go
2 ums9230_25c10
3 BD4
4 Shadowcat
5 ums9230_4h10_go
6 felix
7 s9863aA667L_go_32b
8 mt6785
9 exynos980
10 kirin8020

soc_manufacturer

profiling.android.build.soc_manufacturer

Chipset manufacturer (e.g. 'Qualcomm', 'MediaTek', 'Samsung', 'Spreadtrum'). Use for high-level hardware-tier grouping (premium vs budget silicon). Pair with soc_model for full chip identification.

# Example Value
1 Mediatek
2 hisilicon
3 unknown
4 Qualcomm
5 QTI
6 Allwinner
7 Google
8 Samsung
9 Welcome
10 Hisilicon

soc_model

profiling.android.build.soc_model

Specific chipset model (e.g. 'SM8750', 'MT6853V/NZA', 'Exynos 9810'). Use for performance-tier analysis or identifying device capabilities. More precise than hardware; pair with soc_manufacturer for the full picture.

# Example Value
1 UMS9230T
2 SM8845
3 MT6886
4 Tensor G5
5 MT6765
6 SDM450
7 SM7450
8 unknown
9 MT6765V/XBA
10 s5e9965

cpu_abi

profiling.android.build.cpu_abi

CPU instruction set architecture: 'arm64-v8a' (64-bit) or 'armeabi-v7a' (32-bit). Only two possible values. Use to flag legacy 32-bit devices or for compatibility checks.

# Example Value
1 arm64-v8a
2 armeabi-v7a

cpu_hardware

profiling.android.system.cpu_hardware

Full human-readable CPU/SoC description (e.g. 'Qualcomm Technologies, Inc SM7325', 'Unisoc T603'). The most descriptive hardware identifier. Use when you need readable text in reports; use soc_model for cleaner grouping.

# Example Value
1 Qualcomm Technologies, Inc SDM632
2 Qualcomm Technologies, Inc TRINKET
3 MT6580WP
4 MT6750V/C
5 MT6768G
6 Qualcomm Technologies, Inc SDM750G
7 Qualcomm Technologies, Inc SDM429
8 MT6762V/CB
9 redwood based Qualcomm Technologies, Inc. SM7325
10 Qualcomm Technologies, Inc SDM636

Software Version

api_level

profiling.android.build.api_level

Android API level as an integer (e.g. 34 = Android 14, 36 = Android 16). Use for capability/compatibility analysis — API level determines which OS features are available. Prefer version_release for user-facing version labels.

# Example Value
1 28
2 31
3 34
4 36
5 32
6 29
7 26
8 33
9 35
10 27

version_release

profiling.android.build.version_release

Human-readable Android version string (e.g. '14', '8.1.0', '16'). Use for customer-facing reports and dashboards. Equivalent info to api_level but more readable.

# Example Value
1 10.0
2 9.1
3 13
4 11
5 10
6 8.0.0
7 14
8 16
9 15
10 9

display

profiling.android.build.display

Full firmware display string combining model, build, and patch info (e.g. 'BP2A.250605.031.A3.A166LKSS6BZB7'). Highly granular — changes with every OTA update. Use for firmware-level tracking or spotting tampered builds; too noisy for general grouping.

# Example Value
1 SHARK9_EEA_S7607B_V1.0_A14_20250205V06
2 BP2A.250605.031.A3.S721U1UESACZB4
3 UP1A.231005.007.F731BXXS3CXG3
4 QP1A.190711.020.T835NKOU5CVG2
5 BG7-XE674SABCDEFLMNQR-T-OP-250728V2510
6 MyOS13.0.5_Z2357N_SMART_PH
7 QP1A.190711.020.N975FXXS6DTK8
8 RMX5000_15.0.0.407(EX01)
9 QP1A.190711.020.A605GDXS8CTL1
10 TP1A.220624.014.F946BXXS1AWJ2

build_id

profiling.android.build.build_id

Android build identifier (e.g. 'UP1A.231105.001.B2', 'PKQ1.181007.001'). Encodes the Android security patch level and platform version. Use for security-patch compliance analysis. Less noisy than display but still changes with updates.

# Example Value
1 PKQ1.180917.001
2 HONORALT-L42
3 HUAWEISTK-L21
4 62.2.B.0.475
5 RZBS31.Q2-143-27-1
6 BQ2A.250610.001
7 HUAWEICLT-L04
8 AQ3A.241114.001
9 AP3A.240905.015.A2_T1_V000L1
10 PKQ1.181021.001

sdk_version

profiling.android.sdk_version

Darwinium Android SDK version (e.g. '2.1.0', '1.14.39'). Not a device attribute — identifies which version of the Darwinium profiling SDK is integrated. Use to track SDK rollout or diagnose version-specific data gaps.

# Example Value
1 1.14.36
2 2.0.1
3 2.1.0
4 1.14.39

User-Assigned Name

device_name

profiling.android.settings.device_name

User-configured device name from Android Settings (e.g. 'Mark Sid's S26 Ultra', 'Marina A55'). Contains PII — real names, nicknames. Use for fraud investigation or device recognition across sessions. Handle as sensitive data. Android equivalent of ios.name.

# Example Value
1 Camille's A55
2 lomonol
3 Tecno
4 Jim"s A52s
5 Julliana"s A56
6 Jon
7 Rhina"s A15
8 Jerry"s A23
9 Chloe"s A11
10 Ryu

iOS SDK

Device Model

model

profiling.ios.model

High-level device family: 'iPhone' or 'iPad'. Only two values. Use for basic platform segmentation (phone vs tablet). For specific model identification, use hardware_machine instead.

# Example Value
1 iPhone
2 iPad

hardware_model

profiling.ios.system.device.hardware_model

Apple internal board identifier (e.g. 'D37AP', 'J121AP'). Opaque without a lookup table. Use only if you have an Apple board-ID mapping; otherwise prefer hardware_machine which uses the more widely documented 'iPhoneNN,N' format.

# Example Value
1 J272AP
2 D53gAP
3 D53pAP
4 J621AP
5 N104AP
6 J172AP
7 J208AP
8 N71AP
9 J507AP
10 N69uAP

hardware_machine

profiling.ios.system.device.hardware_machine

Device generation identifier in 'iPhoneNN,N' / 'iPadNN,N' format (e.g. 'iPhone18,2' = iPhone 16 Pro). The most useful iOS device identifier — maps directly to specific models via public lookup tables. Use this as the primary iOS device attribute.

# Example Value
1 iPhone17,5
2 iPad15,7
3 iPad11,1
4 iPad7,6
5 iPad8,7
6 iPad14,1
7 iPhone11,6
8 iPhone15,4
9 iPad13,1
10 iPad16,3

machine

profiling.ios.system.machine

Same 'iPhoneNN,N' format as hardware_machine, sourced from a different system call (uname). Values overlap significantly. Use hardware_machine as canonical; this exists as a fallback if hardware_machine is unavailable.

# Example Value
1 iPhone13,4
2 iPhone12,5
3 iPhone15,4
4 iPhone10,5
5 iPhone14,6
6 iPhone14,5
7 iPhone9,3
8 iPhone10,2
9 iPad12,1
10 iPhone8,1

localized_model_name

profiling.ios.system.device.localized_model_name

Localized device family name: 'iPhone' or 'iPad'. Functionally identical to ios.model. No additional value — use ios.model instead.

# Example Value
1 iPad
2 iPhone

Platform / OS

system_name

profiling.ios.system.device.system_name

Operating system name: 'iOS' or 'iPadOS'. Use for platform segmentation when you need to distinguish phone OS from tablet OS. Prefer over sys_name which returns 'Darwin' (the kernel).

# Example Value
1 iPadOS
2 iOS

sys_name

profiling.ios.system.sys_name

Kernel name — always 'Darwin'. No practical discrimination value. Use system_name ('iOS'/'iPadOS') instead for any meaningful platform grouping.

# Example Value
1 Darwin

os_version

profiling.ios.os_version

iOS/iPadOS version string (e.g. '17.2.1', '15.8.1', '13.4.1'). Use for version distribution analysis, compatibility checks, and security-patch tracking. The iOS equivalent of Android's version_release.

# Example Value
1 26.3
2 17.7.2
3 15.6
4 17.5
5 17.6.1
6 18.3.2
7 15.8.1
8 18.7.5
9 17.0.1
10 26.3.1

sdk_version

profiling.ios.sdk_version

Darwinium iOS SDK version (e.g. '2.1.1', '1.0.30-1'). Not a device attribute — identifies the Darwinium SDK build. Use to track SDK rollout or debug version-specific issues.

# Example Value
1 1.0.30-1
2 2.1.1

User-Assigned Name

name

profiling.ios.name

User-set device name from iOS Settings (e.g. 'Christy's iPhone', 'Power Ranger Pink 13pro'). Contains PII. Use for device recognition or fraud investigation. Primary iOS user-assigned name — prefer over node_name.

# Example Value
1 Gerald’s iPhone
2 Theresa
3 Caige
4 Max
5 Cecille’s iPhone
6 Shaw
7 Ary
8 Ajin
9 Jon’s iPhone
10 Carla iPhone

node_name

profiling.ios.system.node_name

Network hostname derived from the device name, often truncated or hyphenated (e.g. 'Reca-Mays-iPhone', 'Panda'). Similar PII content to ios.name but less complete. Use ios.name as the primary source; this is a fallback.

# Example Value
1 iPhone-12-Pro-Max-128GB-fullypaid
2 VIRUS
3 DanDy
4 Dan
5 Rivkah
6 Najaemin
7 RSL
8 Adrielle
9 Rose-Micahs-iPhone
10 Britchis-iPhone