ユーザーデータのフォーマット

Data Manager API は、複数種類のユーザーデータのアップロードに対応しています。データが正常に受信され、処理されるように、各データ要素のフォーマット、ハッシュ、エンコードの要件に従ってください。

UserData の要件

UserData オブジェクトは、UserIdentifier オブジェクトのコレクションです。各 UserIdentifier には、次の表の属性が 1 つだけあります。

UserIdentifier
email_address
形式
string
  • 小文字に変換します。
  • メールアドレスのドメインが gmail.com または googlemail.com の場合:
    • @ 記号の前にあるドット(.)をすべて削除します。
    • ローカル部分からプラス記号(+)を削除し、それに続くすべての文字を削除します。
    • 例: cloudy.sanfrancisco+shopping@gmail.com → cloudysanfrancisco@gmail.com
  • メールアドレスのドメインが gmail.com または googlemail.com 以外の場合は、ドットやプラス記号を削除しないでください。
    • 例: user.name+NYC@Example.com → user.name+nyc@example.com
空白文字 先頭、末尾、中間の空白文字を削除します。
ハッシュ化 SHA-256 アルゴリズムを使用してハッシュ化し、ハッシュバイトをエンコードします。
phone_number
形式
string
E.164 形式を使用します。
プラス記号(+)と国コードを含めます。プラス記号の後の文字はすべて数字にする必要があります。
たとえば、米国の電話番号 (800)555-0100 は、+18005550100 にフォーマットして正規化する必要があります。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 SHA-256 アルゴリズムを使用してハッシュ化し、ハッシュバイトをエンコードします。
address
AddressInfo オブジェクト
AddressInfo 形式設定の仕様をご覧ください。

AddressInfo 形式

次の形式のガイドラインに沿って、UserIdentifier の address 属性を作成します。

AddressInfo
given_name
形式
string
小文字に変換します。
Mrs. などの接頭辞は含めないでください。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 SHA-256 アルゴリズムを使用してハッシュ化し、ハッシュバイトをエンコードします。
family_name
形式
string
小文字に変換します。
Jr. などの接尾辞は含めないでください。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 SHA-256 アルゴリズムを使用してハッシュ化し、ハッシュバイトをエンコードします。
region_code
形式
string
2 文字の ISO-3166-1 alpha-2 コード。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 region_code をハッシュ化しないでください。
postal_code
形式
string
米国の郵便番号と国際郵便番号の両方を使用できます。
米国の住所の場合は、5 桁、または 5 桁の後に 4 桁の拡張子を続けたものを使用します。4 桁の拡張コードを使用すると、マッチ率が向上する可能性があります。
それ以外のすべての国については、郵便番号の拡張コード部分は含めないでください。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 postal_code をハッシュ化しないでください。
address_line
形式
string
Google アナリティクスでのみ使用されます。
ユーザーの住所の番地。
小文字に変換します。
記号を削除します。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 SHA-256 アルゴリズムを使用してハッシュ化し、ハッシュバイトをエンコードします。
city
形式
string
Google アナリティクスでのみ使用されます。
お客様の住所の市区町村。
小文字に変換します。
記号を削除します。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 city をハッシュ化しないでください。
administrative_area
形式
string
Google アナリティクスでのみ使用されます。
ユーザーの住所の行政区域(州または都道府県)。
2 文字の略称(ca など)または完全な名前(california など)を使用します。
小文字に変換します。
記号を削除します。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 administrative_area をハッシュ化しないでください。

IpData の要件

IpData オブジェクトには次の属性があります。

IpData
ip_address
形式
string
IPv4 または IPv6 アドレス。
IPv6 アドレスの場合、大文字と小文字は区別されません(大文字と小文字のどちらも使用できます)。
空白文字 先頭と末尾の空白文字を削除します。
ハッシュ化 ip_address をハッシュ化しないでください。

PairData の要件

PairData オブジェクトの pair_ids フィールドに ID のリストを入力します。次の手順で、リスト内の各要素の形式を設定します。

  1. SHA-256 アルゴリズムを使用して、クリーンルームから提供された PII データをハッシュ化します。

  2. PAIR ユーザーリストのパブリッシャー鍵を使用して、EC 可換暗号でハッシュバイトを暗号化します。

  3. 16 進数または Base64 エンコードを使用して、暗号化されたデータをエンコードします。

MobileData の要件

MobileData オブジェクトの mobile_ids フィールドにMobile ID のリストを入力します。モバイル ID はハッシュ化しないでください。

タイムスタンプ形式

Event の timestamp や last_updated_timestamp などの Timestamp フィールドに JSON 形式を使用する場合は、RFC 3339 形式を使用します。以下に、2025 年 8 月 8 日午後 5 時 18 分 44.291 秒の UTC 時間を RFC 3339 形式と異なるタイムゾーンで表した例を示します。

  • UTC タイムゾーン: 2025-08-08T17:18:44.291Z

  • EDT タイムゾーン(当時は UTC より 4 時間前): 2025-08-08T13:18:44.291-04:00

  • PDT タイムゾーン(当時は UTC より 7 時間前): 2025-08-08T10:18:44.291-07:00

  • 日本の東京のタイムゾーン。UTC より 9 時間進んでおり、夏時間は適用されません。 2025-08-08T22:18:44.291+09:00

プロトコル バッファ形式を使用する場合は、Timestamp の作成時に seconds を設定します。必要に応じて nanos も設定します。2025 年 8 月 8 日午後 5 時 18 分 44.291 秒(UTC)の seconds 値と nanos 値は次のとおりです。

  • seconds: 1754683124

  • nanos: 291000000

エンコード

エンコードの要件は、ユーザーデータを暗号化するかどうかによって異なります。

エンコード ワークフロー

  • 暗号化されていないユーザーデータ: 16 進数エンコード(hex)または Base64 エンコードを使用して、SHA-256 ハッシュバイトをエンコードします。

  • 暗号化されたユーザーデータ: ユーザーデータを暗号化する場合は、暗号化する前に未加工のハッシュバイトを Base64 でエンコードする必要があります。暗号化前のハッシュでは、16 進数エンコードはサポートされていません。その後、結果の暗号テキストを 16 進数または Base64 エンコードを使用してエンコードできます。