This document describes the recommended approach to send install and event tracking information to Kochava. It is important to follow these API instructions in order to avoid data corruption and maximize the effectiveness of Kochava in your environment.
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.
|JSON Property||Example Value||Description||Req.|
|kochava_app_id||kogamerdna114e9bb3481258||This is the unique application ID used to represent the app.||Yes|
|app_version||22.214.171.124.8||A string representation of the application version number.||No|
|This can be the IDFA, IMEI, Android ID, MAC address or a custom variant. You must submit at least one identifier within the device_id object, and may submit more than one.||Yes|
|action||“event”||Action associated to the API event.||Yes|
|origination_ip||126.96.36.199||The IP address of the device on install.||Yes|
|device_ver||iPhone Simulator-iOS-8.1||A string representation of the device make, model and OS. The syntax is as follows: <device>-<os_name>-<os_version> where each value is separated by a hyphen. Examples include: “iPhone-iOS-3.3”, iPhone-iOS-5.0”, or “HTC_Increadible-Android-2.6” . OS include: iOS and Android.||Yes|
|device_ua||Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16||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|
|data||event_name: event string
event_data: value string
|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”).
Sample Event Calls:
"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",
"device_ver": "iPhone Simulator-iOS-8.0",
"kochava_app_id": "<APP GUID HERE>"
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.|