服务器至服务器应用内事件API(HTTP API) - Server to Server in-app events API (HTTP API)

服务器至服务器应用事件API(HTTP API)

该API的目的为发送应用外部的事件直接至AppsFlyer服务器。例如,如果您同时拥有网页和手机界面,您可以在AppsFlyer记录该两种媒体所有事件。

为了让事件按照真实发生时间记录下来,请将所有的事件在次日2:00am之前全部发送给AppsFlyer。

晚于2:00am的时间将按照其发送的时间进行记录。

例1:

事件发生时间: 2 May @ 22:00

事件发送至AppsFlyer服务器的时间: 3 May @ 01:00

在AppsFlyer平台事件被记录了的时间则为事件真实发生时间 (2 May @ 22:00)。

例2:

事件发生时间: 2 May @ 22:00

事件发送至AppsFlyer服务器的时间: 4 May @ 09:00

在AppsFlyer平台事件被记录了的时间则为事件发送至AppsFlyer服务器的时间(4 May @ 09:00),而非事件发生时间。

注意:内容类型必须为application/json。

URL: http://api2.appsflyer.com/inappevent/{app_id}  

-- Android 示例: https://api2.appsflyer.com/inappevent/com.appsflyer.myapp

-- iOS 示例https://api2.appsflyer.com/inappevent/id123456789

请特别注意iOS的app ID以id”开头,否则申请虽然为HTTP 200 OK,但事件将不会被注册。

方法: POST

开头 - "authentication"= {dev-key} ---  可通过以下步骤获得Dev key: "Dashboard" > "Settings" > "Integrate the SDK"

iOS

主体 - (JSON)

{
"appsflyer_id": {This is a mandatory field, AppsFlyer Device ID must be used },  // i.e. 1415211453000-6513894
"idfa":{idfa},
"bundle_id":{bundle_id},
"eventName": { Event Name as appears in the SDK}, // i.e "af_purchase"
"eventValue": { A JSON containing a rich in-app event value}, // i.e "{\"af_revenue\":\"6\" ,\"af_content_type\":\"wallets\", \"af_content_id\":\"15854\"}"
"eventCurrency": {Event currency}, // i.e "USD"
"ip": {device IP},
"eventTime": {Event timestamp}, // i.e  "2014-05-15 12:17:00.000"
"af_events_api" :"true"
}

Android

主体 - (JSON)

{
"appsflyer_id": {This is a mandatory field, "AppsFlyer Device id" must be used },  // i.e. "1415211453000-6513894"
"advertising_id": {advertising_id},
"eventName": { Event Name as appears in the SDK}, // i.e "af_purchase"
"eventValue": { A JSON containing a rich in-app event value}, // i.e "{\"af_revenue\":\"6\" ,\"af_content_id\":\"15854\"}"
"eventCurrency": {Event currency}, // i.e "USD"
"ip": {device IP},
"eventTime": {Event timestamp}, // i.e  "2014-05-15 12:17:00.000"
"af_events_api" :"true"
}

 

1. 要求

1. eventName, eventValue, appsflyer_id, idfa(iOS应用), advertising_id(安卓应用) (AppsFlyer Device id) 为必须参数

2. eventValue可为空:  如 "eventValue": “”, (无需空格)

3. eventTime 格式如下:  "yyyy-MM-dd HH:mm:ss.SSS" (如 "2014-05-15 12:17:00.000")  

* eventTime 为可选项。如果无该信息,系统会使用HTTP信息收取时的时间戳。

* eventTime 必须使用UTC时区

* eventTime 必须晚于安装时间

4. IP地址需为移动设备IP

 

2. 如何获得appsflyer_id AppsFlyer Device Id

1. 从移动设备中获得。请从AppsFlyer SDK整合指南中查看描述Get AppsFlyer’s Unique Device UID描述部分(点击该链接了解更多iOS 或 Android SDK信息)

2. 通过Pull或Push API (点击链接获取更多关于Push API 或Pull API信息)

 

3. 服务返回码

  1. 200: "ok" 当Appsflyer系统执行请求。
  2. 401: "unauthorized" 当认证开头的key不是该应用的dev-key。
  3. 400: "Bad request" 当申请至少有一项不符合验证标准。
  4. 500: "Internal server error" 指服务器错误

4. 请求主体示例

s2s_iae_body.png

这种情况下,AppsFlyer接收一个带有收益的S2S购买事件,并附有如content type等属性。之后AppsFlyer可以根据广告主的设定,发送该富应用内事件至媒体平台以助其实现市场定位、优化等操作。

这篇文章有帮助吗?
0 人中有 0 人觉得有帮助
还有其它问题?提交请求
由 Zendesk 提供技术支持