Formatowanie danych użytkownika

Interfejs Data Manager API umożliwia przesyłanie różnych typów danych użytkowników. Aby dane zostały prawidłowo odebrane i przetworzone, postępuj zgodnie z wymaganiami dotyczącymi formatowania, haszowania i kodowania każdego elementu danych.

Wymagania dotyczące UserData

Obiekt UserData to zbiór obiektów UserIdentifier. Każdy obiekt UserIdentifier ma dokładnie 1 atrybut z tabeli poniżej.

UserIdentifier
email_address
Format
string
  • Zmień na małe litery.
  • Jeśli adres e-mail ma domenę gmail.com lub googlemail.com:
    • Usuń wszystkie kropki (.) przed symbolem @.
    • Usuń znak plusa (+) z części lokalnej i usuń wszystkie znaki, które po nim występują.
    • Przykład: cloudy.sanfrancisco+shopping@gmail.comcloudysanfrancisco@gmail.com
  • Jeśli adres e-mail ma domenę inną niż gmail.com lub googlemail.com, nie usuwaj kropek ani znaków plusa.
    • Przykład: user.name+NYC@Example.comuser.name+nyc@example.com
Odstęp Usuń odstępy na początku, na końcu i w środku.
Szyfrowanie Zaszyfruj za pomocą algorytmu SHA-256. Zakoduj bajty haszu za pomocą kodowania szesnastkowego lub Base64.
phone_number
Format
string
Użyj formatu E.164.
Dołącz znak plusa (+) i kod kraju. Wszystkie znaki po znaku plusa muszą być cyframi.
Na przykład numer telefonu w Stanach Zjednoczonych (800)555-0100 należy sformatować i znormalizować do postaci +18005550100.
Odstęp Usuń odstępy na początku i na końcu.
Szyfrowanie Zaszyfruj za pomocą algorytmu SHA-256. Zakoduj bajty haszu za pomocą kodowania szesnastkowego lub Base64.
address
Zapoznaj się ze specyfikacją formatu AddressInfo.

Format AddressInfo

Aby utworzyć atrybut address obiektu UserIdentifier, postępuj zgodnie z tymi wytycznymi dotyczącymi formatowania.

AddressInfo
given_name
Format
string
Zmień na małe litery.
Nie dodawaj prefiksów, takich jak Mrs.
Odstęp Usuń odstępy na początku i na końcu.
Szyfrowanie Zaszyfruj za pomocą algorytmu SHA-256. Zakoduj bajty haszu za pomocą kodowania szesnastkowego lub Base64.
family_name
Format
string
Zmień na małe litery.
Nie dodawaj sufiksów, takich jak Jr.
Odstęp Usuń odstępy na początku i na końcu.
Szyfrowanie Zaszyfruj za pomocą algorytmu SHA-256. Zakoduj bajty haszu za pomocą kodowania szesnastkowego lub Base64.
region_code
Format
string
Odstęp Usuń odstępy na początku i na końcu.
Szyfrowanie Nie szyfruj region_code.
postal_code
Format
string
Dopuszczalne są zarówno amerykańskie, jak i międzynarodowe kody pocztowe.
W przypadku adresów w Stanach Zjednoczonych użyj 5 cyfr lub 5 cyfr z 4-cyfrowym rozszerzeniem. Użycie 4-cyfrowego rozszerzenia może poprawić współczynnik dopasowania.
W przypadku wszystkich innych krajów nie używaj rozszerzeń kodu pocztowego.
Odstęp Usuń odstępy na początku i na końcu.
Szyfrowanie Nie szyfruj postal_code.

Wymagania dotyczące IpData

Obiekt IpData ma te atrybuty:

IpData
ip_address
Format
string
Adres IPv4 lub IPv6.
W przypadku adresów IPv6 wielkość liter nie ma znaczenia (można używać zarówno wielkich, jak i małych liter).
Odstęp Usuń odstępy na początku i na końcu.
Szyfrowanie Nie szyfruj ip_address.

Wymagania dotyczące PairData

Wypełnij pole pair_ids obiektu PairData listą identyfikatorów. Sformatuj każdy element na liście, wykonując te czynności:

  1. Zaszyfruj dane osobowe udostępnione przez cleanroom za pomocą algorytmu SHA-256.
  2. Zaszyfruj bajty haszu za pomocą przemiennego szyfru EC, używając klucza wydawcy do listy użytkowników PAIR.
  3. Zakoduj zaszyfrowane dane za pomocą kodowania szesnastkowego lub Base64.

Wymagania dotyczące MobileData

Wypełnij pole mobile_ids obiektu MobileData listą identyfikatorów urządzeń mobilnych. Nie szyfruj identyfikatorów urządzeń mobilnych.

Format sygnatury czasowej

Jeśli w przypadku formatu JSON dla pól Timestamp, takich jak timestamp i last_updated_timestamp w Event, używasz formatu RFC 3339. Oto kilka przykładów czasu UTC 8 sierpnia 2025 r. o 17:18:44.291 w formacie RFC 3339 i różnych strefach czasowych:

  • Strefa czasowa UTC: 2025-08-08T17:18:44.291Z
  • Strefa czasowa EDT, która w tym czasie była 4 godziny przed UTC: 2025-08-08T13:18:44.291-04:00
  • Strefa czasowa PDT, która w tym czasie była 7 godzin przed UTC: 2025-08-08T10:18:44.291-07:00
  • Strefa czasowa Tokio w Japonii, która była 9 godzin przed UTC i nie uwzględnia czasu letniego: 2025-08-08T22:18:44.291+09:00

Jeśli używasz formatu bufora protokołu, podczas tworzenia Timestamp ustaw seconds i opcjonalnie nanos. Oto wartości seconds i nanos dla czasu UTC 8 sierpnia 2025 r. o 17:18:44.291:

  • seconds: 1754683124
  • nanos: 291000000

Kodowanie

Podczas kodowania danych pamiętaj o tych kwestiach:

  • W przypadku kodowania szesnastkowego (hex) wielkość liter w danych wyjściowych kodowania nie ma znaczenia.
  • W przypadku kodowania Base64 wielkość liter w danych wyjściowych kodowania ma znaczenie podczas używania kodowania Base64.