In Iterable, some fields on the user profile are automatically created and maintained by Iterable. In most cases, these fields do not need to be edited by the client, and there's no need to include them when updating a user's profile. All of these fields are case-sensitive and space-sensitive.
Fields That Iterable Manages
These fields do not need to be included in any updates to the user profile, nor should they be overwritten.
'email' is the email address of a user. The data type is String.
'profileUpdatedAt' is the date the user profile was last upated, either via CSV upload or API call. The data type is Date and the format looks like "2016-08-02 18:53:45 +00:00"
'signupDate' is the date when the user profile was created in Iterable. The data type is Date and the format looks like "2016-08-01 18:35:45 +00:00"
'signupSource' is how the user entered the Iterable database. Includes options like 'API' or 'IMPORT'. The data type is String.
'emailListIds' is an array of numbers, one for each of the lists the user is a part of. Whenever a user is added to a new list, Iterable will automatically update this array. The data type is an array of Integers. If you wish to update the lists a user is part of via API, use the API endpoint dedicated to adding a user to a list, removing a user from a list, or updating their subscriptions.
'unsubscribeChannelId' is an array of numbers for each of the message channels in which a user is unsubscribed from. If a user has a channel Id listed in unsubscribeChannelIds, then she will not receive messages from that channel.
'unsubscribeMessageTypelIds' is an array of numbers for each of the message types in which a user is unsubscribed from. If a user has a message type Id listed in unsubscribeMessageTypeIds, then she will not receive messages from that channel.
Special Fields - Must Match Exact Spelling and Format
All of these fields are case-sensitive and space-sensitive. For example, 'phone_number' will add a separate field to your users' profiles; it will not allow Iterable to send SMS to them.
'email' is the email address of a user. The data type is String.`
'phoneNumber' is the phone number of the user, used to send SMS messages. The data type is String and the format looks like "16503926753". Learn more about SMS requirements here.
'devices' is an array of objects of the user's devices, used for Push notifications. Each object in the array must include at least the following fields: 'platform', 'token', and 'applicationName'. Learn more about 'devices' and push notifications here. This field must be added via registerDeviceToken API call.
If 'ip' is included on a user profile, Iterable will, by default, add and update fields on the user profile for 'city', 'state', 'region', and 'timeZone'. These fields can be edited if desired, but Iterable will update and overwrite them if 'ip' is updated, which can happen when a user opens or clicks on an email. This setting can be adjusted by going to Settings > Project. The data type of all of these fields is String.
Including 'ip' or 'timeZone' will allow messages to be sent at a user's local time.
'ip' can also be automatically added to the user profile by Iterable if you toggle on the '
This field, 'locale', is used to represent which language preference a person should receive when send a message. You can create multiple versions of a template, one for each locale, while maintaining the same templateId. The value of locale should be a String, and should be the two-letter ISO country code for the language desired. These will correspond to the options you add to the Locales section of your project's settings.