User Profile
The User Profile object
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "John Doe",
"given_name": "John",
"family_name": "Doe",
"username": "jdoe",
"nickname": "Johnny",
"birthdate": "1983-11-13",
"age": 33,
"custom_identifier": "rollingUser1",
"email": "john.doe@example.com",
"email_verified": true,
"emails": {
"verified": [
"john.doe@example.com"
],
"unverified": [
"other@example.com"
]
},
"password_hash": "$2a$13$A3BmaewEhI/lgxGsXoPATeKhxh1ToRG5r1eES76bVns4P4jAv0f/O",
"gender": "male",
"phone_number": "+33612345678",
"phone_number_verified": false,
"picture": "https://graph.facebook.com/10154..8019865/picture",
"profile_url": "https://www.facebook.com/app_scoped_user_id/10154..019865/",
"addresses": [
{
"id": 0,
"to_delete": true, (1)
"default": true,
"address_type": "billing",
"street_address": "10 rue Chaptal",
"address_complement": "4 étage",
"locality": "Paris",
"postal_code": "75009",
"region": "Île-de-France",
"country": "France",
"recipient": "Matthieu Winoc",
"phone_number": "0723538943",
"custom_fields": {
"custom_field_example": "example_string",
"custom_field_example_2": "example_string_2"
}
}
],
"likes_count": 67,
"credentials":[
{
"created_at": "2021-04-12T15:18:30.612129Z",
"phone_number": "+33612345678",
"friendly_name": "my MFA phone number",
"type": "sms"
},
{
"created_at": "2022-05-12T12:22:33.162029Z",
"email": "bob@example.com",
"friendly_name": "my MFA email",
"type": "email"
}
],
"identities":{
"updated_at": "2021-05-18T14:28:25.682123Z",
"created_at": "2021-04-12T15:18:30.612129Z",
"provider": "google",
"provider_variant": "Brand B",
"user_id": "122548588103668578225",
"id": "122548588103668578225",
"username": "cool_gal@example.com"
},
"created_at": "2017-03-08T18:39:35.026123Z",
"updated_at": "2018-08-12T12:54:09.631124Z",
"first_login": "2017-03-08T18:39:35.026121Z",
"last_login": "2018-08-12T12:54:09.631126Z",
"logins_count": 53,
"suspension_status": "permanent", (2)
"suspension_information": { (2)
"reason": "suspiciousUserNoGood"
},
"lockout_end_date": "2022-11-25T12:15:09.536Z",
"origins": [
"website",
"game"
],
"last_login_type": "facebook",
"custom_fields": {
"loyalty_card_number": "19872359235"
},
"consents": {
"newsletter": {
"consent_type": "doi",
"granted": false,
"date": "2018-05-25T15:41:09.671321Z",
"waiting_double_accept": true,
"consent_version": { (3)
"version_id": 1,
"language": "fr"
}
}
},
"facebook_ids_for_pages": [
{
"user_id": "649145309042062",
"page_id": "931332113682072"
}
],
"external_id": "2977460",
"provider_metadata": { (4)
"kakaotalk": {
"ci": "OUBQAU1Uc5WY…R/dLqvtWeVbL6r2BuT1S33A==",
"ci_authenticated_at": "2022-01-24T08:41:03Z",
"kakaotalk_age_range": "30~39"
}
}
}
1 | Deleting an address only applies during an import. |
2 | When importing suspension information, the status is part of the suspension_information object. Otherwise, the suspension_status is standalone. |
3 | Displays the latest interaction with the user. For audit or history purposes, see the Consent logs. |
4 | The provider_metadata object contains important provider-related information. |
User Profile fields
- Table key
-
-
= importable into ReachFive
-
= sortable (with API via
:desc
or:asc
) -
= exportable
Jobs marked with export are exportable by both hooks (webhooks and pub/sub hooks) and jobs unless otherwise noted.
-
Name | Description | |||||||
---|---|---|---|---|---|---|---|---|
The ReachFive user ID. required scope= |
||||||||
Full user name required scope= |
||||||||
Given name(s) or first name(s). required scope= |
||||||||
Surname(s) or last name(s). required scope= |
||||||||
The username. required scope= |
||||||||
Middle name(s). required scope= |
||||||||
The Casual name that may or may not be the same as the required scope= |
||||||||
The URL of one of the user’s profile page (usually a social provider’s page). required scope= |
||||||||
The URL of one of the user’s profile picture. This URL refers to an image file (for example, a PNG, JPEG, or GIF image file). required scope= |
||||||||
The user’s primary email address. required scope= |
||||||||
Boolean specifying whether the user’s email address has been verified. required scope= |
||||||||
object |
Emails object. User’s email addresses. required scope= |
hook only |
||||||
The user’s encrypted (hashed) password. The hash cannot be retrieved except for very specific cases. If you would like to learn more, please contact your ReachFive representative. |
hook only |
|||||||
User’s primary phone number. required scope= At ReachFive, we use a dedicated library to validate a user’s phone number.
|
||||||||
Boolean specifying whether the user’s phone number has been verified. required scope= |
||||||||
A string that allows users to authenticate with something other than an Field rules:
required scope= |
||||||||
The user’s gender. This field can take any value; however, when retrieved, ReachFive values it to required scope= |
||||||||
The user’s birthdate represented as an ISO 8601 YYYY-MM-DD format. required scope= |
||||||||
An integer specifying the user’s age computed from birth date. required scope= |
||||||||
The user’s company name (if applicable). required scope= |
||||||||
An integer representing the number of facebook pages liked by the user. required scope= |
||||||||
array of objects |
An array of address objects showing the user’s postal addresses. required scope= |
|||||||
array of objects |
An array of Identity objects listing the user’s provider identities. required scope= |
[1] |
||||||
A boolean specifying whether user has a password. required scope= |
||||||||
The date when the user was created. required scope= |
||||||||
The date when the user was last updated. required scope= |
||||||||
The date of the user’s first login. required scope= |
||||||||
The date of the user’s last login. required scope= |
||||||||
Specifies the date and time when a user lockout ends. required scope=
|
||||||||
An integer showing the number of logins for this user. required scope= |
||||||||
The name of the authentication type used when user last logged in, (e.g., required scope= |
||||||||
Array of strings which provide a list of origins. required scope= What is an origin? 🤔 An origin is the channel through which the user authenticated.
This could be a website, or perhaps a mobile app.
It is defined via user interaction and only authenticated profiles contain You can value this field via the Identity API, our SDKs, and through imports. However, the field cannot be valued through the Management API. |
hook only |
|||||||
object |
An object showing the user’s custom fields. required scope= |
|||||||
object |
The user’s consents which is an object containing a series of fields: for each consent key, a Consent object. required scope= |
|||||||
array of objects |
An array of Friend objects which is a list of user’s friends also linked to the same ReachFive account. required scope= |
hook only |
||||||
array of objects |
An array of Facebook Page objects which is a list of page scoped facebook user ids. required scope= |
hook only |
||||||
A boolean specifying if the profile is LITE only. required scope= |
||||||||
The unique identifier of the profile in your systems or Single Customer View. External IDs can only come from imports, the Management API, or the signup method. required scope=
|
||||||||
Specifies whether the suspension of the user is temporary or permanent. required scope=
|
||||||||
object |
Object that provides specific information related to user suspension. required scope= |
|||||||
Object containing metadata from a specified provider. This includes things such as connecting information and user age ranges provided retrieved from the social provider. required scope= |
Emails object
Name | Description | ||
---|---|---|---|
List of verified user’s email addresses.
|
|||
List of unverified email addresses. |
Identities object
- Table key
-
= filterable via the API
Name | Description | |
---|---|---|
The unique ID.
This is created from a concatenation of the |
||
Name of the connected provider for this identity, in lowercase letters ( |
||
Specifies the variant of a social provider. For example, a country or brand-specific variant for the provider. If there is no provider variant, this fields defaults to "default". Default example
|
||
User’s unique identifier of the provider. |
||
Date when this identity was linked to the profile. |
||
Date when this identity was last updated. |
||
User’s username with the specified provider. |
Suspension information object
Name | Description | ||
---|---|---|---|
string |
The reason why the user was suspended. |
||
string |
Specifies whether the suspension of the user is temporary or permanent.
|
Consents object
Displays the latest interaction with the user. For audit or history purposes, see the Consent logs. Example:
Lily’s profile will only contain the |
Name | Description | ||||||
---|---|---|---|---|---|---|---|
Consents type: |
|||||||
Whether the consent has been granted or not. |
|||||||
Consent date. This reflects the latest date when the
|
|||||||
Whether we are still awaiting the double opt-in confirmation from the user.
|
|||||||
The consent version. This is an object containing a version ID and language.
|
|||||||
Specifies the reporter who made the modification. For example, this could be an administrator for your site or even an import being executed.
|
MFA credentials object
The MFA credentials
object contains information related to the MFA second factor for the user.
The MFA credentials can only be retrieved by dedicated MFA endpoints and methods. These include: |
- Table key
-
= filterable via the API
Name | Description | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
An array of objects containing the MFA second factor credentials.
|
id
and updated_at
are exportable with a job.