User profiles

A user profile is usually imported from an existing information system, for example CRM, and login database. We usually see our customers using the profile to collect:

  • Contact details

  • User preferences

  • Status in a loyalty program

  • Subscription to a newsletter

  • CRM information

  • Scoring calculated outside the platform

  • Aggregated Values

  • other details

Each user profile is associated with a user point by a user identifier. It can also be linked to a user account.

User profile object

field

type

description

$user_account_id

String (Optional)

The associated user account ID. If none, the profile remains anonymous.

$compartment_id

Integer (Optional)

The compartment ID. If none, the profile is imported into the default compartment_id.

$last_modified_ts

Timestamp

The timestamp of the last edit operation for this user profile. Automatically set by the system.

$creation_ts

Timestamp

The timestamp of the creation operation for this user profile. Automatically set by the system.

[any custom property]

Any

The value of a custom property

When importing profiles it is recommended to complete the $user_account_id and the $compartment_id event if the values are the same than the ones used as the identifier as the values are not inherited from the identifiers info. You can find more information about the user profiles import.

Example:

# User Profile object 
{
    "$compartment_id": 1606,
    "$user_account_id": "c9879698769OIUYOIY9879879",
    "$last_modified_ts": 5467987654613,
    "$creation_ts": 6579874654654654,
    "firstname": "David",
    "lastname": "Guetta",
    "gender": 1,
    "newsletter_options": {
        "subscribed": true,
        "preferred_periods": "MONTHLY"
    }
    
}
# Complete payload when importing a profile 
{ 
    "operation": "UPSERT",
    "compartment_id": "1600", 
    "user_account_id": "identifier_account_id",
    "force_replace": true,
    "user_profile": {
        "$compartment_id": 1606,
        "$user_account_id": "c9879698769OIUYOIY9879879",
        "$last_modified_ts": 5467987654613,
        "$creation_ts": 6579874654654654,
        "firstname": "David",
        "lastname": "Guetta",
        "gender": 1,
        "newsletter_options": {
            "subscribed": true,
            "preferred_periods": "MONTHLY"
        }
    }
}

You can have different compartment ids and different user accounts between the one in the profile wrapper, as the user point identifier and the one into the user profile object.

Last updated