If you want to build personal customer profiles, PushBots will provide you with an easy API to do this. 

For Web

//Async calls
PB.q.push(["f_name", "John"]);
PB.q.push(["l_name", "Smith"]);
PB.q.push(["name", "John Smith"]);
PB.q.push(["email", "john@smith.com"]);
PB.q.push(["gender", "M"]);
PB.q.push(["age", "1988"]);

//Sync calls
PB.f_name("John");
PB.l_name("Smith");
PB.name("John Smith");
PB.email("john@smith.com");
PB.gender("M") // or F
PB.age("1988") // year of birth

For Android 

Pushbots.sharedInstance().setName("John Smith");
Pushbots.sharedInstance().setFirstName("John");
Pushbots.sharedInstance().setLastName("Smith");
Pushbots.sharedInstance().setEmail("john@smith.com");//Must be valid email
Pushbots.sharedInstance().setGender("M"); // M=> male /F=> female/ O=> other
Pushbots.sharedInstance().setPhone("+2010012345678"); // Must be valid phone

For iOS 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [Pushbots initWithAppId:@"56f6ef1c4a9efa75938b4567" withLaunchOptions:launchOptions];
    [Pushbots setName:@"Abdullah Diaa"];
    [Pushbots setGender:@"male"];
    return YES;
}

Did this answer your question?