> [!CAUTION]
> **Caution:** This documentation is for Google Ads API **v23** . The latest active version is [**v26**](https://developers.google.com/google-ads/api/reference/rpc/latest/UserIdentifier).

User identifying information.

Each `UserIdentifier` object represents a single identifier using a mutually exclusive `oneof`. Only one identifier field (`hashed_email`, `hashed_phone_number`, `mobile_id`, `third_party_user_id`, or `address_info`) may be set per `UserIdentifier` instance. Setting multiple fields on the same `UserIdentifier` clears the previously set field. To provide multiple identifiers for the same user (for example, both an email address and a phone number), add separate `UserIdentifier` objects to the `user_identifiers` list.

Before hashing with SHA-256, normalize the raw values. For `hashed_email` and address fields, trim leading and trailing whitespace and convert all characters to lowercase. Phone numbers must be formatted in E.164 format (for example, `+16502531234`) before hashing.

[Proto definition ![GitHub](https://developers.google.com/site-assets/logo-github.svg)](https://github.com/googleapis/googleapis/blob/master/google/ads/googleads/v23/common/offline_user_data.proto)

| Fields ||
|---|---|
| ## `identifier` Union field. Exactly one must be specified. Setting more than one field in the same `UserIdentifier` object is not supported; to provide multiple identifiers for a single user, pass multiple `UserIdentifier` objects in the `user_identifiers` list. For OfflineUserDataJobService, Customer Match accepts hashed_email, hashed_phone_number, mobile_id, third_party_user_id, and address_info; Store Sales accepts hashed_email, hashed_phone_number, third_party_user_id, and address_info. ConversionUploadService accepts hashed_email and hashed_phone_number. ConversionAdjustmentUploadService accepts hashed_email, hashed_phone_number, and address_info. `identifier` can be only one of the following: ||
| ### `address_info` | `OfflineUserAddressInfo` Address information. Accepted only for Customer Match, Store Sales, and ConversionAdjustmentUploadService. |
| ### `hashed_email` | `string` Hashed email address using SHA-256 hash function after normalization. Normalize the email address by trimming leading and trailing whitespace and converting all characters to lowercase before hashing with SHA-256. Accepted for Customer Match, Store Sales, ConversionUploadService, and ConversionAdjustmentUploadService. |
| ### `hashed_phone_number` | `string` Hashed phone number using SHA-256 hash function after normalization (E164 standard). Normalize the phone number by trimming whitespace and formatting in E.164 format (for example, `+16502531234`) before hashing with SHA-256. Accepted for Customer Match, Store Sales, ConversionUploadService, and ConversionAdjustmentUploadService. |
| ### `mobile_id` | `string` Mobile device ID (advertising ID/IDFA). Accepted only for Customer Match. |
| ### `third_party_user_id` | `string` Advertiser-assigned user ID for Customer Match upload, or third-party-assigned user ID for Store Sales. Accepted only for Customer Match and Store Sales. |
| ## `user_identifier_source` | `UserIdentifierSource` Source of the user identifier when the upload is from Store Sales, ConversionUploadService, or ConversionAdjustmentUploadService. |