What are the predefined parameters and values we can use for events?


#1

Hello,

I try to upload historical data through the API. For example:

{"d":[{
	"type":"event",
	"evtName":"subscription_purchased",
	"identity":"248580",
	"ts":1478577961,
	"evtData":{
		"OS Version":"4.0.3:ICE_CREAM_SAND",
		"OS":"Android",
		"App Version":"6.5+(48)",
		"store":"amazon",
		"days_extended":"30",
		"currency":"USD",
		"Price":"4.99",
		"voucher_is_used":"0",
		"Charged ID":"014cefb56d14f42a11450965e12d11ae",
		"external_user_id":"",
		"internal_trans_id":"664154",
		"Amount":"3.49",
		"original_purchase_date":"2016-11-08 05:06:01",
		"registered_on_server":"2016-11-08 05:06:01",
		"processing_mode":"store",
		"purchase_num":"18"
	}
}]}

The data is loaded successfully:

{ "status" : "success" , "processed" : 1 , "unprocessed" : [ ]}

but in the dashboard events is not connected to the operating system. How should be named parameter in the query for klevertap recognized as “operating system” and what values are allowed to display Android, iOs, MacOS, Windows or a Desktop?


#2

@Oleksii_Korzhov We don’t have any predefined parameters you can set while uploading events except for timestamps and the event properties itself. However we support a set of standard attributes when you upload profiles. Refer to docs here.

Following are ALL the predefined attributes we support. You cannot update any Technographic data via the API at the moment as we capture it via the device itself.

Ex. snippet (for Android)

profileUpdate.put("Name", "Jack Montana");                  // String
profileUpdate.put("Identity", 61026032);                    // String or number
profileUpdate.put("Email", "jack@gmail.com");               // Email address of the user
profileUpdate.put("Phone", 4155551234);                     // Phone (without the country code)
profileUpdate.put("Gender", "M");                           // Can be either M or F
profileUpdate.put("Employed", "Y");                         // Can be either Y or N
profileUpdate.put("Education", "Graduate");                 // Can be either Graduate, College or School
profileUpdate.put("Married", "Y");                          // Can be either Y or N
profileUpdate.put("DOB", new Date());                       // Date of Birth. Set the Date object to the appropriate value first
profileUpdate.put("Age", 28);                               // Not required if DOB is set
profileUpdate.put("Photo", "www.foobar.com/image.jpeg");    // URL to the Image

// optional fields. controls whether the user will be sent email, push etc.
profileUpdate.put("MSG-email", false);                      // Disable email notifications
profileUpdate.put("MSG-push", true);                        // Enable push notifications
profileUpdate.put("MSG-sms", false);                        // Disable SMS notifications

#3

Is this still the case ? What if CleverTap doesn’t have access to the device ? [ when i upload profile & events through the API itself ]