The Data Manager API supports uploading multiple types of user data. Follow the formatting, hashing, and encoding requirements for each data element so that your data is received and processed successfully.
UserData
: User-provided data such as an email address or phone number.PairData
: Publisher Advertiser Identity Reconciliation (PAIR) IDs.MobileData
: Data identifying a mobile device.
UserData
requirements
A UserData
object is a collection of UserIdentifier
objects. Each
UserIdentifier
has exactly one of the attributes in the following table.
UserIdentifier | |||||||
---|---|---|---|---|---|---|---|
email_address |
|
||||||
phone_number |
|
||||||
address |
AddressInfo
objectRefer to the
AddressInfo
format specification. |
AddressInfo
format
Use the following formatting guidelines to construct the address
attribute of a UserIdentifier
.
AddressInfo | |||||||
---|---|---|---|---|---|---|---|
given_name |
|
||||||
family_name |
|
||||||
region_code |
|
||||||
postal_code |
|
PairData
requirements
Populate the pair_ids
field of a PairData
object with a list of IDs.
Format each element in the list using the following steps:
- Hash the cleanroom-provided PII data using the SHA-256 algorithm.
- Encrypt the hash bytes with an EC commutative cipher using the publisher key for the PAIR user list.
- Encode the encrypted data using hex or Base64 encoding.
MobileData
requirements
Populate the mobile_ids
field of a MobileData
object with a list of
mobile IDs. Don't hash mobile
IDs.
Timestamp format
If using the JSON format for Timestamp
fields, like
timestamp
and last_updated_timestamp
of Event
, use the RFC
3339 format.
If using the protocol buffer format, set the seconds
and, optionally, the
nanos
when constructing the Timestamp
.
Next steps
- Learn how to encrypt user data.