NOTE: For examples of post-install events, refer to our Post-Install Event Examples support documentation.
Install and Startup Tracking
To track the installation and startup of your application, please refer to the Server-to-Server Install Notification Integration Guide. Once Kochava has registered an install for a device, features can be tracked via server-to-server API according to the specifications provided here.
Post-Install Event API
To send a usage event from your application, call the following endpoint with a POST payload containing the desired JSON elements.
http://control.kochava.com/track/json
JSON Property | Description | Req. |
---|---|---|
kochava_app_id | This is the unique application ID used to represent the app. | Yes |
app_version | A string representation of the application version number. | No |
kochava_device_id | kochava_device_id should be sent as a unique string that is consistent for each instance of the app on a single device. This will allow Kochava to associate data correctly when a device_id is not available. In the case that there will always be a device_id present and installs will always be sent before post-install events, kochava_device_id can be sent as null. . |
Yes |
device_ids | This can be the IDFA, Android ID or a custom variant. You must submit at least one identifier within the device_id object, and may submit more than one. | Yes |
action | Action associated to the API event. | Yes |
origination_ip | The IP address of the device on install. | Yes |
device_ver | Send the device_ver as null, example “device_ver”: “”. | Yes |
device_ua | A string representation of the device user agent as provided by the client. Please ensure that this is URL-encoded. This string is useful when campaigns require fingerprint attribution. | Yes |
usertime | The time the event was completed by the user in Epoch format. | No |
data | Each event is a JSON object – see examples.
event_name -> A string representation of an event that has happened. event_data -> A corresponding value associated to the event_name. event_data is not required but useful for monetary tracking for correlated events (e.g. event_name -> “Level DLC Purchased” and event_value -> “20”). |
Yes |
NOTE: kochava_device_id can be sent as null, as long as a device id is being sent and vice versa. device_ver can also be sent as null. The parameters themselves indicated in the above table however, must be included in the post-install event payload.
Sample Event Calls:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
{ "data": { "usertime": 1521574016, "app_version": "1.0.0", "device_ver": "", "device_ids": { "idfa": "{idfa}" }, "device_ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3", "event_name": "SubscriptionTest", "origination_ip": "104.219.46.66", "currency": "USD", "event_data": { "id": "123", "name": "Skis", "sum": 150 } }, "action": "event", "kochava_app_id": "<APP GUID HERE>", "kochava_device_id": "<CUSTOM VALUE>" } |
Device Specific Instructions
The information below details how to send data from specific devices to Kochava through the server-to-server integration.
Device | Sending a Usage Event Details |
---|---|
Roku | Send GetDeviceUniqueId() as String within the UDID parameter of the S2S feed. |