Device.didsha1
A hardware device ID such as the IMEI, hashed with SHA1. Present since OpenRTB 2.0, where SHA1 was the preferred hash, and deprecated in 2.6 (2.6-202204).
Field facts
- Path
device.didsha1- Object
- Device
- Type
- string
- Requirement
- Optional
- Added
- OpenRTB 2.0
- Deprecated
- OpenRTB 2.6-202204
- Spec section
- 3.2.18
How it is used
The spec text for the 2.6-202210 through 2.6-202303 snapshots misspelled the name as didshal, and 2.6-202309 corrected it; payloads always used didsha1. Like the other hashed hardware IDs it has no reliable source on current mobile platforms. Send device.ifa or an entry in user.eids instead.
Example
Where the field sits in a payload, with everything else left out:
{
"id": "req-1",
"device": {
"didsha1": "0000000000000000000000000000000000000000"
}
}Common mistakes
- Still filling it from a legacy SDK. On 2.6 the validator reports it as deprecated.
- Hashing an empty string or a placeholder ID, which gives every device the same value.
Version history
Added in OpenRTB 2.0, deprecated in 2.6-202204, and present in the latest snapshot. The spec text for 2.6-202210 to 2.6-202303 spelled it didshal; payloads use didsha1. The table shows how each version's spec text types the field.
| Versions | Type in the spec | Required | Deprecated |
|---|---|---|---|
| 2.0 to 2.2 | string | No | No |
| 2.3 to 2.3.1 | string | No | No |
| 2.4 | string | No | No |
| 2.5 | string | No | No |
| 2.6-202210 to 2.6-202303 | string | No | Yes |
| 2.6-202309 to 2.6-202606 | string | No | Yes |
Versioned rules that name this field
openrtb.2.6.deprecated_fieldsOpenRTB 2.6 deprecated legacy sequence, device-ID hash, demographic, and single-api fields.