This API enables you to set user properties of your users listed in your User Profiles only if it is currently unset. If the given payload contains a mix of properties that are currently set and unset, then it will only add values to the properties that are currently unset and ignore the other properties. If the user with distinct ID doesn’t exist, it creates a new user with the provided distinct ID and sets values for all the provided properties.
Note: If a property was not created earlier, it will create a new property and the data type of the property will be determined based on the data type of the value. For example, if you $once a new property called premium_user=true, it will create the premium_user property with Boolean type and value true.
The property values can take the following data types:
user_type=Premium or membership_number=ABC123.ltv=23000 or cost=20.34.true or false values.membership_date=2020-10-01T18:30:00.000Z or membership_date=2020-10-01T18:30:00Z or membership_date=2020-10-01T18:30:00.000+05:30 or membership_date=2020-10-01T18:30:00+02:00 or membership_date=2020-10-01.products_ordered=['iPhone 16 Pro', 'iPad 32 GB'] or purchase_amount=[23000, 20.34] or purchase_date=['2020-10-01T18:30:00Z', '2021-11-01T13:35:00+02:00', '2023-12-05']cost expects a numeric value and you try to set it to ABC, the API will not store the value.