Batch Push User Profile
The User Profile Batch Push serves as a log of any changes made to a user’s profile throughout the day. Each time that an update is a record is added to the file. With this, a member can appear multiple times in the file throughout the day, with the updates being in chronologic order. The daily push file only contains data from the previous day. It is not a cumulative file.
Naming Convention
The User Profile Batch file will have the following naming convention:
2_<client_id>_PROFILE_YYYYMMDD.zip
Zip file containing the CSV file: 2_<client_id>_USER_PROFILE_YYYYMMDD.csv
Where:
- <client_id> represents the CrowdTwist generated client_id
- YYYYMMDD represents the timestamp of the file with year, month, and day values when the file generation is complete
- File contains header row, comma separated
Field Name | Field Type | Notes |
id | Number | Internal CrowdTwist member user_id |
first_name | String | User’s first name |
middle_name | String | User’s middle name |
last_name | String | User’s last name |
date_of_birth | Timestamp | User’s date of birth |
email_address | String | User’s email address |
street_address_1 | String | User’s street address 1 |
street_address_2 | String | User’s street address 2 |
city | String | User’s city |
state | String | User’s state |
postal_code | String | User’s postal code |
country_code | String | User’s country_code |
region | String | User’s region |
gender | String | User’s gender |
email_is_verified | Number (binary) | If a user’s email address has been verified |
receive_email_updates | Number (binary) | If a user is subscribed to receive email updates through CrowdTwist |
receive_sms_messages | Number (binary) | If a user is subscribed to receive SMS updates through CrowdTwist |
total_points | Number | Total points of the user |
redeemable_points | Number | Redeemable points of the user |
fan_rank | Number | User’s rank within the program |
mobile_number | Number | Users mobile number |
date_mobile_verified | Timestamp | Day that a user’s phone was verified |
date_last_login | Timestamp | Date the user last logged in |
date_last_updated | Timestamp | Date the user’s profile was last updated |
date_created | Timestamp | Date the user was created within the CrowdTwist platform |
sign_up_type | Number | If the user was signed up through API or Member Care |
is_active | Number (binary) | If the user is active |
username | String | User’s username |
password | String | null |
hash_algorithm | String | null |
salt | String | null |
password_generated | Number (binary) | If the user’s password was generated by CrowdTwist |
activity_stream_optin | String | If the user is opted in to see his/her updates in activity stream |
ip_address | String | The user’s IP address (if available) |
third_party_id | String | User’s third party ID |
client_branding_id | String | |
facebook_user_id | String | User’s Facebook user ID |
fsq_user_id | String | User’s Foursquare user ID |
google_user_id | String | User’s Google user ID |
inst_user_id | String | User’s Instagram user ID |
num_facebook_friends | Number | Number of friends the user has on Facebook |
num_twitter_followers | Number | Number of followers the user has on Twitter |
sign_up_campaign | String | Campaign with which the user joined the program |
twitter_user_id | String | User’s Twitter user ID |
yahoo_user_id | String | User’s Yahoo user ID |
weekly_points | Number | Number of points the user has earned this week |
monthly_points | Number | Number of points the user has earned this month |
fan_level_name | String | User’s current tier (this is the same as current_level) |
lang_pref | String | Language preference of the user |
custom_data | String | Custom Data JSON object (parameters are configurable by client) |
sign_up_channel_id | Number | Channel ID from where the user joined the program |
tier_timeframe_score | Number | Cumulative score the member has earned in the current timeframe since the member last expired. For fixed it is calculated from start date to start date, i.e. for an annual timeframe it calculates the total points earned between 1/1/16-12/31/16. This score will reset to 0 at the end of the reset date. For rolling, it is the cumulative score since they last expired, i.e. if they joined on 2/2/16 and jumped on 3/2/16 to gold, the timeframe score will be calculated until 3/2/17. For lifetime, it is the same as “lifetime points”. |
tier_score | Number | The points earned while the member is in a tier |
current_tier_level | String | Name of the user’s current tier (this is the same as fan_level) |
next_tier_level | String | Name of the user’s next tier level |
date_tier_assigned | String (ISO 8601 Format) | Date the member is assigned current tier. This changes for all event types (start, jump, maintain, drop and reset) |
tier_expiration_date | String (ISO 8601 Format) | Date a member’s tier will expire if they do not maintain. This is both fixed and rolling. |
tier_reset_date | String (ISO 8601 Format) | Date a member resets to 0 and enters maintenance. Only fixed timeframe. |
score_needed_to_next_tier | Number | Number of points needed for a member to jump to the next tier |
score_needed_to_maintain_tier | Number | Number of points needed to maintain current tier |
days_until_tier_expiration | Number | Number of days until a member’s tier expires if they do not maintain |
days_until_tier_reset | Number | Number of days until a member resets. Only for fixed timeframe. |
date_reached | String (ISO 8601 Format) | Date the member reached their current tier. This only changes when a member drops or jumps a tier. |
assigned_by_event | String | The event that occurred when a member is assigned a tier (i.e. start, jump, maintain, drop, reset) |