~~Title:Cobub Razor API Manual - Mobile Apps Marketing Platform of Open Source - Mobile Analytics & Mobile Push Notification Solutions - Cobub Mobile Developer Center~~ {{description>Cobub Razor is an Open Source Mobile Analytics. Cobub Razor API.}} {{keywords>Cobub Razor,open source mobile analytics,mobile analytics,mobile app analytics, api, manual}} ====== Cobub Razor API Manual ====== ====== 1 API List ====== ^Interface ^Description^ |login |User login validation| |getproductlist |To obtain a list of accessible applications| |getversionlist |To obtain a list all versions| |getchannellist |get all the channel list| |getbasicdata |To obtain basic data| |getbasicdatabychannel |To obtain basic data( by channel)| |getbasicdatabyversion |To obtain basic data( by version)| |getactiveratio |Get active rate in the latest week/month| |getchannelactiveratio |For each version this week/this month’s rate of active users and active| |getfrequency |Access to frequently used data| |getusingtime |Access to use length data| |getdatabyhour |Get data by hour| |getpagedata |Obtain the data of page access| |getcountry |Obtain geographical analysis data (state)| |getregion |Obtain geographical analysis data (province)| |getretention |Get the user data is retained| |getdevicebrand |Data acquisition terminal name| |getdeviceosversion |Data acquisition terminal operating system version| |getdeviceresolution |Data acquisition terminal resolution| |getdevicecarrier |Data acquisition terminal operators| |getdevicenetwork |Data acquisition terminal connected to the Internet way| |geteventdata |Access the event data| |geteventdetail |Detailed data for a single event| |getconversionlist |For the conversion list| |getconversiondetail |Conversion in detail information| |geterrorbyversion |Get error message (by version)| |geterrordetailbyversion |Get error detailed information(by version)| |geterrordetaillistbyversion |Access error detailed list (by version)| |geterrordistributionbyversion |Get error in the distribution of operating systems and devices (by version)| |geterrorbyosversion |Get error message(by os version)| |geterrordetailbyosversion |Get error detail infomation( by os version)| |geterrordetaillistbyosversion |Access error detailed list (by os version)| |geterrordistributionbyversion |To obtain the distribution of mistakes in the version and the equipment (by os version)| |geterrorbydevice |Get error message (by device)| |geterrordetailbydevice |Get error detail information (by device)| |geterrordetaillistbydevice |Access error detailed list(by device)| |geterrordistributionbydevice |Mistakes in the version and operating system version of the distribution(by device)| All OpenAPI based on HTTP and JSON, please make sure that JSON string in POST body with a content= prefix, like this: **POST Body:** content={“user”:”userA”,”password”:”pwd”} ===== 1.1 User authentication ===== login ==== 1.1.1 Functional specifications ==== User login validation. ==== 1.1.2 Call instructions ==== === 1.1.2.1 The request method === post === 1.1.2.2 Address of the request === PREURL/api/login (PREURL is the prefix of Cobub Razor website, such as http://localhost/ums/index.php?, same as below) ==== 1.1.3 parameters ==== ^The field names ^Data types ^Description ^Mandatory^ |username |String |cobub username |yes| |password |String |The md5 encrypted password |yes| Sending JSON data instance: { “username”:”admin”, “password”:”765E5A00B76FF4ECA098BB” } ==== 1.1.4 result ==== ^The field names ^Data types ^Description ^Mandatory^ |flag |String |>0 success,<0 failure |yes| |msg |String |Prompt information |yes| |sessionkey |String |Parameters when API calls |yes| Returns a JSON data instance: Success: { “flag”:”1″, “msg”:”用户验证成功”, “sessionkey”:”A7E76DD709C0B1A” } Failure: { “flag”:”-1″, “msg”:”用户名不存在” } Error types: ^Flag ^Msg ^Description^ |-1 |username not exists |username not exists| |-2 |invalid password |invalid password| |-3 |too many login attempts |too many login attempts| |-4 |DB Error|Database Error| ===== 1.2 To obtain a list of accessible applications ===== getproductlist ==== 1.2.1 Functional specifications ==== To obtain a list of accessible applications. ==== 1.2.2 Call instructions ==== === 1.2.2.1 The request method === post === 1.2.2.2 Address of the request === PREURL/api/getproductlist ==== 1.2.3 parameters ==== ^The field names ^Data types ^Description ^Required^ |sessionkey |String |the key after a successful login to validation |yes| Sending JSON data instance: { “sessionkey”: “765E5A00B76FF4ECA098BB” } ==== 1.2.4 result ==== ^The field names ^Data types ^Description ^Required^ |flag |String |>0Success,The size of queryresult, <0fail |yes| |msg |String |Prompt information |yes| |sessionkey |String |Parameters when API calls |yes| Returns a JSON data instance: Success: { “flag”: “2″, “queryresult”: [ { "platform": "iOS", "productid": "1", "productname": "name1" }, { "platform": "Android", "productid": "2", "productname": "name2" } ] } fail: { “flag”:”-1″, “msg”:”用户名不存在” } Error type definition: ^Flag ^Msg ^说明^ |-1 |JSON format is not correct |JSON format is not correct| |-2 |Sessionkey is invalide |Sessionkey is invalide| |-3 |DB Error |Database error| |-4 |Network error |Network error| ===== 1.3 To obtain a list all versions ===== getversionlist ==== 1.3.1 Functional specifications ==== According to the productid get all the version information of the product ==== 1.3.2 Call instructions ==== === 1.3.2.1 The request method === post === 1.3.2.2 Address of the request === PREURL/api/getversionlist ==== 1.3.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success|yes| |productid |String |productid |yes| Sending JSON data instance: { “sessionkey”: “765E5A00B76FF4ECA098BB”, “productid”:”1″ } ==== 1.3.4 Results ==== ^Field name ^Data type ^Description ^Required^ |flag |String |>0Success,The size of queryresult |yes| |msg |String |Prompt information |yes| |queryresult |JSONArray |Version List |no| |version|String |version name|yes| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "version": "0.1" }, { "version": "0.2" } ] } fail: { “flag”:”-1″, “msg”:”格式不正确” } Error type : ^Flag ^Msg ^Description^ |-1 |JSON format is not correct |JSON format is not correct| |-2 |Sessionkey is invalid |Sessionkey is invalid| |-3 |DB Error |Database Error| |-4 |Network error |Network error| ===== 1.4 Get all the channel list ===== getchannellist ==== 1.4.1 Functional specifications ==== According to the productid get all the channel information of the product ==== 1.4.2 Call instructions ==== === 1.4.2.1 The request method === post === 1.4.2.2 Address of the request === PREURL/api/getchannellist ==== 1.4.3 parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |yes| |productid |String |productid |yes| Sending JSON data instance: { “sessionkey”: “765E5A00B76FF4ECA098BB”, “productid”:”1″ } ==== 1.4.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |String |>0Success,The size of queryresult |yes| |msg |String |Prompt info |yes| |queryresult |JSONArray |Version列表 |no| |id |String |channel ID |yes| |name |String |channel Name |yes| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "id": "1", "name":"机锋市场" }, { "id": "2", "name":"安卓市场" } ] } Success: { “flag”: “0″, “queryResult”:”” } fail: { “flag”:”-1″, “msg”:”格式不正确” } Error type: ^Flag ^Msg ^Description ^ |-1 |JSON format is not correct |JSON format is not correct| |-2 |Sessionkey is invalide |Sessionkey is invalide | |-3 |DB Error |Database Error| |-4 |Network error |Network error| ===== 1.5 To obtain basic data ===== getbasicdata ==== 1.5.1 Functional specifications ==== According to the productid start times access to the product within a certain period of time, new users, active users, and average use time, upgrade user, user. ==== 1.5.2 Call instructions ==== === 1.5.2.1 The request method === post === 1.5.2.2 Address of the request === PREURL/api/getbasicdata ==== 1.5.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |yes| |productid |String |Product ID |yes| |startdate |String |start date |yes| |enddate |String |end date |yes| Sending JSON data instance: { “sessionkey”: “765E5A00B76FF4ECA098BB”, “productid”:”1″, “startdate”:”2013-1-1″, “enddate”:”2013-1-2″ } ==== 1.5.4 result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success,The size of queryresult, |yes| |msg |String |Prompt information |yes| |queryresult |JSONArray |Version list |no| |date |String |date |yes| |sessions |String |session |yes| |activeusers |String | active user |yes| |newusers |String |new user |yes| |usingtime |String |using time |yes| |allusers |String |all users |yes| |upgradeusers |String |upgradeusers |yes| Returns a JSON data instance: Success: { “flag”: 2, “queryResult”: [ { "date":"2013-1-1", "sessions": 10, "activeusers": 10, "newusers": 10, "usingtime": 10, "allusers": 10, "upgradeusers": 10 }, { "date":"2013-1-2", "sessions": 10, "activeusers": 10, "newusers": 10, "usingtime": 10, "allusers": 10, "upgradeusers": 10 } ] } error: { “flag”:”-1″, “msg”:”格式不正确” } Error type: ^Flag ^Msg ^Description ^ |-1 |JSON format is not correct |JSON format is not correct| |-2 |Sessionkey is invalide |Sessionkey is invalide | |-3 |DB Error |Database Error| ===== 1.6 To obtain basic data (by channel) ===== getbasicdatabychannel ==== 1.6.1 Functional specifications ==== According to the productid start times of all channels under the specified time period, the new users, active users, and average use time, cumulative users, cumulative startup times. === 1.6.2 Call instructions === === 1.6.2.1 The request method === post === 1.6.2.2 Address of the request === PREURL/api/getbasicdatabychannel ==== 1.6.3 parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |y| |productid |String |product ID |y| |startdate |String |start date |y| |enddate |String |end date |y| Sending JSON data instance: { “sessionkey”:”1341423432423″, “enddate”: “2013-4-2″, “productid”: “123″, “startdate”: “2013-4-1 } ==== 1.6.4 result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success,The size of queryresult <0fail |y| |queryResult |JSONArray |The detailed information ,the size of queryresult |y| |datevalue |String |date |y| |sessions |String |sessions |y| |activeusers |String |activeusers |y| |newusers |String |newusers |y| |usingtime |String |usingtime |y| |allusers |String |allusers |y| |upgradeusers |String |upgradeusers |y| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "1": [ { "datevalue": "20120101", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" }, { "datevalue": "20120102", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" } ], “2″: [ { "datevalue": "20120101", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" }, { "datevalue": "20120102", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" } ] } ] } ===== 1.7 To obtain basic data (by version) ===== getbasicdatabyversion ==== 1.7.1 Functional specifications ==== According to the productid under specified period all versions of sessions, activeusers, activeusers, average usingtime, allusers, accumulated sessions. ==== 1.7.2 Call instructions ==== === 1.7.2.1 The request method === post === 1.7.2.2 Address of the request === PREURL/api/getbasicdatabyversion ==== 1.7.3 parameter ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success|y| |productid |String |productid |y| |startdate |String |startdate |y| |enddate |String |enddate |y| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.7.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |标识,>0成功,且为queryResult的size<0失败 |YES| |queryResult |JSONArray |详细信息,queryresult为JSONArray对象flag对应值:大于等于0为queryresult数组的长度,包括version的数组 |YES| |datevalue |String |date |YES| |activeusers |String |active users |YES| |newusers |String |new users |YES| |sessions |String |sessions |YES| |upgradeusers |String |upgrade users |YES| |allusers |String |all users |YES| |allsessions |String |all sessions |YES| |usingtime |String |usingtime |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "0.1": [ { "datevalue": "20120101", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" }, { "datevalue": "20120102", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" } ], “0.2″: [ { "datevalue": "20120101", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" }, { "datevalue": "20120102", "activeusers": "10", "newusers": "0", "sessions": "10", "upgradeusers": "10", "allusers": "10", "allsessions": "10", "usingtime": "10" } ] } ] } ===== 1.8 Get active rate in the latest week/month ===== getactiveratio ==== 1.8.1 Functional specifications ==== According to the productid get activeusers and active rate in the latest week/month. ==== 1.8.2 Call instruction ==== === 1.8.2.1 The request method === post === 1.8.2.2 Address of the request === PREURL/api/getactiveratio ==== 1.8.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″ } ==== 1.8.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |wusers |String |weekly active users |YES| |musers |String |monthly active users |YES| |wuserpercent |String |weekly user percent |YES| |muserpercent |String |monthly user percent |YES| Returns a JSON data instance: Success: { “flag”: “1″, “wusers”: “100″, “musers”: “1029″, “wuserpercent”: “0.31″, “muserpercent”: “0.32″ } ===== 1.9 For each version this week/this month active rate ===== getchannelactiveratio ==== 1.9.1 Functional specifications ==== According to the productid get activeusers and active rate in the latest week/month. ==== 1.9.2 Call instruction ==== === 1.9.2.1 The request method === post === 1.9.2.2 Address of the request === PREURL/api/getchannelactiveratio ==== 1.9.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |int |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |type |String |week/month |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-1-1″, “enddate”: “2013-4-1″, “type”: “week”, } ==== 1.9.4 Result ==== ^Field name ^Data type ^Description ^Required ^ |flag |int |>0Success, <0fail |YES| |datevalue |String |date |YES| |activeusers |String |weekly active users/monthly active users | | |rate |String |Weekly rate of active/Monthly rate of active |YES| |channelid |String |Channel ID |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "1": [ { "datevalue": "2013-1-1", "activeusers": "100", "rate": 0.03 }, { "datevalue": "2013-1-8", "activeusers": "100", "rate": 0.02 }, { "datevalue": "2013-1-15", "activeusers": "100", "rate": 0.03 } ], “2″: [ { "datevalue": "2013-1-1", "activeusers": "100", "rate": 0.03 }, { "datevalue": "2013-1-8", "activeusers": "100", "rate": 0.03 }, { "datevalue": "2013-1-15", "activeusers": "100", "rate": 0.03 } ] } ] } ===== 1.10 Get frequency ===== getfrequency ==== 1.10.1 Functional specifications ==== According to the use frequency productid for period of time. ==== 1.10.2 Call instruction ==== === 1.10.2.1 The request method === post === 1.10.2.2 Address of the request === PREURL/api/getfrequency ==== 1.10.3 Parameters ==== ^Field name ^Data type ^Description ^Required ^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.10.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |segment_sk |String |The frequency distribution id |YES| |segment_name |String |Name of the frequency distribution |YES| |access |String |visits |YES| |percentage |String |The percentage |YES| Returns a JSON data instance: Success: { “flag”: 6, “queryResult”: [ { "segment_sk": "1", "segment_name": "1-2次", "access": 17, "percentage": 0.017 }, { "segment_sk": "2", "segment_name": "3-5次", "access": 25, "percentage": 0.025 }, { "segment_sk": "3", "segment_name": "6-9次", "access": 38, "percentage": 0.038 }, { "segment_sk": "4", "segment_name": "10-19次", "access": 109, "percentage": 0.109 }, { "segment_sk": "5", "segment_name": "20-49次", "access": 307, "percentage": 0.307 }, { "segment_sk": "6", "segment_name": "50次以上", "access": 504, "percentage": 0.504 } ] } ===== 1.11 Obtain usingtime data ===== getusingtime ==== 1.11.1 Functional specifications ==== According to the productid get usingtime distribution period. ==== 1.11.2 Call instruction ==== === 1.11.2.1 The request method === post === 1.11.2.2 Address of the request === PREURL/api/getusingtime ==== 1.11.3 Parameters ==== ^Field name ^Data type ^Description ^Required ^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.11.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |segment_sk |String |The frequency distribution id |YES| |segment_name |String |Name of the frequency distribution |YES| |numbers |String |times |YES| |percentage |String |proportion |YES| Returns a JSON data instance: Success: { “flag”: 6, “queryResult”: [ { "segment_sk": 1, "segment_name": "0-3", "numbers": 3, "percentage": 0.03 }, { "segment_sk": 2, "segment_name": "3-10", "numbers": 11, "percentage": 0.01 }, { "segment_sk": 3, "segment_name": "10-30", "numbers": 40, "percentage": 0.04 }, { "segment_sk": 4, "segment_name": "30-60", "numbers": 110, "percentage": 0.13 }, { "segment_sk": 5, "segment_name": "60-180", "numbers": 379, "percentage": 0.46 }, { "segment_sk": 6, "segment_name": "180", "numbers": 279, "percentage": 0.33 } ] } ===== 1.12 Obtain the data per hour ===== getdatabyhour ==== 1.12.1 Functional specifications ==== According to the productid for period of 24 hours of use. ==== 1.12.2 Call instruction ==== === 1.12.2.1 The request method === post === 1.12.2.2 Address of the request === PREURL/api/getdatabyhour ==== 1.12.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.12.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |segment_sk |String |The frequency distribution id |YES| |segment_name |String |Name of the frequency distribution |YES| |numbers |String |times |YES| |percentage |String |proportion |YES| Returns a JSON data instance: Success: { “flag”: 1, “activeuser”: { “1″: 30, “2″: 20, “3″: 33, “4″: 33, … “23″: 2 }, “newuser”: { “1″: 30, “2″: 20, “3″: 33, “4″: 33, … “23″: 2 }, “sessions”: { “1″: 30, “2″: 20, “3″: 33, “4″: 33, … “23″: 2 } } ===== 1.13 Access to the data access page ===== getpagedata ==== 1.13.1 Functional specifications ==== According to the productid and version get access detail page within the time period. ==== 1.13.2 Call instruction ==== === 1.13.2.1 The request method === post === 1.13.2.2 Address of the request === PREURL/api/getpagedata ==== 1.13.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |version |String |The version number, if version number is empty it means all version |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “version”:”0.1″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, } ==== 1.13.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |activity |String |page name |YES| |exitcount |String |In the activity out of times |YES| |count |String |count of activity |YES| |duration |String |duration of activity |YES| Returns a JSON data instance: Success: { “flag”: 1, “queryResult”: [ { "activity": "MainActivity", "exitcount": 3, "count": 33, "duration": 233 }, { "activity": "AboutActivity", "exitcount": 3, "count": 33, "duration": 233 } ] } ===== 1.14 Obtain geographical analysis data (state) ===== getcountry ==== 1.14.1 Functional specifications ==== According to the productid for period before access to N (determined by the limit) national distribution of the data. ==== 1.14.2 Call instruction ==== === 1.14.2.1 The request method === post === 1.14.2.2 Address of the request === PREURL/api/getcountry ==== 1.14.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |limit |String |Top N |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “limit”:”10″ } ==== 1.14.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |country |String |country name |YES| |id |String |Serial number, inversion, and num is the biggest row in front |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "country": "Bangladesh", "num": 0 }, { "id": "2", "country": "China", "num": 0 }, { "id": "3", "country": "", "num": 0 } ], “activeusers”: [ { "id": "1", "country": "British", "num": 343 }, { "id": "2", "country": "China", "num": 22 }, { "id": "3", "country": "Bangladesh", "num": 1 } ] } ] } ===== 1.15 Obtain geographical analysis data (province) ===== getregion ==== 1.15.1 Functional specifications ==== According to the productid and country (country) for periods before access to N (determined by the limit) provinces, cities and the distribution of data. ==== 1.15.2 Call instruction ==== === 1.15.2.1 The request method === post === 1.15.2.2 Address of the request === PREURL/api/getregion ==== 1.15.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |country |String |State the name, should be identical with getcountry output |YES| |limit |String |Top N |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “country”:”China”, “limit”:”10″ } ==== 1.15.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |province |String |province name |YES| |id |String |Serial number, inversion, and num is the biggest row in front |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "province": "Jiangsu", "num": 0 }, { "id": "2", "province": "Beijing", "num": 0 }, { "id": "3", "province": "Sichuan", "num": 0 } ], “activeusers”: [ { "id": "1", "province": "Jiangsu", "num": 343 }, { "id": "2", "province": "Beijing", "num": 22 }, { "id": "3", "province": "Sichuan", "num": 1 } ] } ] } ===== 1.16 Get the user data is retained ===== getretention ==== 1.16.1 Functional specifications ==== According to the productid get user retention period. ==== 1.16.2 Call instruction ==== === 1.16.2.1 The request method === post === 1.16.2.2 Address of the request === PREURL/api/getretention ==== 1.16.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |type |String |value: month or week |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “type”:”week” } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “type”:”month” } ==== 1.16.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |String | |YES| |startdate |JSONArray |period start date |YES| |enddate |String |period end date |YES| |newusers |String |new users |YES| |1 |String |+1week/month |YES| |2 |String +2week/month |YES | |3 |String |+3week/month |YES| |4 |String |+4week/month |YES| |5 |String |+5week/month |YES| |6 |String |+6week/month |YES| |7 |String |+7week/month |YES| |8 |String |+8week/month |YES| |id |String |id |YES| Returns a JSON data instance: Success: { “flag”: 2, “queryResult”: [ { "id":"1", "startdate": "2012-01-01", "enddate": "2012-01-01", "newusers": 232, "1": "1%", "2": "3%", "3": "34%", "4": "34%", "5": "34%", "6": "34%", "7": "34%", "8": "34%" }, { "id":"2", "startdate": "2012-01-01", "enddate": "2012-01-01", "newusers": 232, "1": "1%", "2": "3%", "3": "34%", "4": "34%", "5": "34%", "6": "34%", "7": "34%", "8": "34%" } ] } ===== 1.17 Data acquisition terminal name ===== getdevicebrand ==== 1.17.1 Functional specifications ==== According to former productid acquisition period N (decided by the limit) terminal device name data distribution. ==== 1.17.2 Call instruction ==== === 1.17.2.1 The request method === post === 1.17.2.2 Address of the request === PREURL/api/getdevicebrand ==== 1.17.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES |limit |String |Top N |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “limit”:”10″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.17.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |brand |String |devicename |YES| |id |String |The serial number, inverted |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "name": "HTC Desire", "num": 100 }, { "id": "2", "name": "HTC WildFire", "num": 23 }, { "id": "3", "name": "Samsung T1000" "num": 32 } ], “activeusers”: [ { "id": "1", "name": "Samsung T100" "num": 343 }, { "id": "2", "name": "HTC G8" "num": 22 }, { "id": "3", "name": "HTC G10" "num": 1 } ] } ] } ===== 1.18 Data acquisition terminal operating system ===== getdeviceosversion ==== 1.18.1 Functional specifications ==== According to productid for time period prior to N (determined by the limit) a data distribution terminal operating system. ==== 1.18.2 Call instruction ==== === 1.18.2.1 The request method === post === 1.18.2.2 Address of the request === PREURL/api/getdeviceosversion ==== 1.18.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |limit |String |Top N,This means all data by default |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “limit”:”10″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.18.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |osversion |String |deviceos |YES| |id |String |the serial number, inverted |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "osversion": "4.0", "num": 100 }, { "id": "2", "osversion": "4.1", "num": 23 }, { "id": "3", "osversion": "4.1.1", "num": 32 } ], “activeusers”: [ { "id": "1", "osversion": "4.1.1" "num": 343 }, { "id": "2", "osversion": "4.1", "num": 22 }, { "id": "3", "osversion": "4.0", "num": 1 } ] } ] } ===== 1.19 Data acquisition terminal resolution ===== getdeviceresolution ==== 1.19.1 Functional specifications ==== According to productid for time period prior to N (determined by the limit) a resolution data distribution terminal operating system. ==== 1.19.2 Call instruction ==== === 1.19.2.1 The request method === post === 1.19.2.2 Address of the request === PREURL/api/getdeviceresolution ==== 1.19.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |limit |String |Top N,This means all data by default |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “limit”:”10″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.19.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |resolution |String |os resolution |YES| |id|String |id, inverted |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "resolution": "1280*800", "num": 100 }, { "id": "2", "resolution": "480*800", "num": 23 }, { "id": "3", "resolution": "480*820" "num": 32 } ], “activeusers”: [ { "id": "1", "resolution": "480*820" "num": 343 }, { "id": "2", "resolution": "960*1024" "num": 22 }, { "id": "3", "resolution": "320*480" "num": 1 } ] } ] } ===== 1.20 Data acquisition terminal operators ===== getdevicecarrier ==== 1.20.1 Functional specifications ==== According to former productid acquisition period N (decided by the limit) terminal operators using data distribution. ==== 1.20.2 Call instruction ==== === 1.20.2.1 The request method === post === 1.20.2.2 Address of the request === PREURL/api/getdevicecarrier ==== 1.20.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |limit |String |Top N,This means all data by default |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “limit”:”10″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.20.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |carrier |String |operators |YES| |id |String |the serial number, inverted |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "carrier": "中国移动", "num": 100 }, { "id": "2", "carrier": "中国联通", "num": 23 }, { "id": "3", "carrier": "中国电信" "num": 32 } ], “activeusers”: [ { "id": "1", "carrier": "中国电信" "num": 343 }, { "id": "2", "carrier": "中国联通" "num": 22 }, { "id": "3", "carrier": "中国移动" "num": 1 } ] } ] } ===== 1.21 Data acquisition terminal connected to the Internet way ===== getdevicenetwork ==== 1.21.1 Functional specifications ==== According to productid for time period prior to N (determined by the limit) a terminal connected to the way data distribution. ==== 1.21.2 Call instruction ==== === 1.21.2.1 The request method === post === 1.21.2.2 Address of the request === PREURL/api/getdevicenetwork ==== 1.21.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |limit |String |Top N,This means all data by default |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “limit”:”10″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.21.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |newusers |JSONArray |new users |YES| |activeusers |JSONArray |active users |YES| |num |String |times |YES| |network |String |network type |YES| |id |String |the serial number, inverted |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "newusers": [ { "id": "1", "network": "WIFI", "num": 100 }, { "id": "2", "network": "GPRS", "num": 23 }, { "id": "3", "network": "3G" "num": 32 } ], “activeusers”: [ { "id": "1", "network": "WIFI", "num": 343 }, { "id": "2", "network": "3G", "num": 22 }, { "id": "3", "network": "GPRS", "num": 1 } ] } ] } ===== 1.22 Access the event data ===== geteventdata ==== 1.22.1 Functional specifications ==== Based on detailed data productid for event period. ==== 1.22.2 Call instruction ==== === 1.22.2.1 The request method === post === 1.22.2.2 Address of the request === PREURL/api/geteventdata ==== 1.22.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |version |String |version,The default for all versions |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “version”:”1.0″ } { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.22.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray |YES| |eventid |JSONArray |event id |YES| |eventname |JSONArray |event name |YES| |num |String |number |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "eventid": "1", "eventname": "clickbutton", "num": 100 }, { "eventid": "2", "eventname": "payment", "num": 23 }, { "eventid": "3", "eventname": "help", "num": 23 } ] } ===== 1.23 Detailed data for a single event ===== geteventdetail ==== 1.23.1 Functional specifications ==== According to the productid for period of time the number of a certain event, etc. ==== 1.23.2 Call instruction ==== === 1.23.2.1 The request method === post === 1.23.2.2 Address of the request === PREURL/api/geteventdetail ==== 1.23.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |eventid |String |event id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |version |String |version,缺省为所有version |NO| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “eventid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “version”:”1.0″ } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “eventid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.23.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |id |String |id |YES| |datevalue |String |date |YES| |num |String |number |YES| Returns a JSON data instance: Success: { “flag”: “3″, “queryResult”: [ { "id": "1", "datevalue": "2013-4-1", "num": 100 }, { "id": "2", "datevalue": "2013-4-2", "num": 100 }, { "id": "3", "datevalue": "2013-4-3", "num": 100 }, ] } ===== 1.24 Get the conversion list ===== getconversionlist ==== 1.24.1 Functional specifications ==== According to the productid list of conversion data for a certain time period events. ==== 1.24.2 Call instruction ==== === 1.24.2.1 The request method === post === 1.24.2.2 Address of the request === PREURL/api/getconversionlist ==== 1.24.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, } ==== 1.24.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |targetid |String |target ID |YES| |targetname |String |target name |YES| |price |String |target value |YES| |startevent |String |Initial events |YES| |endevent |String |end time |YES| |conversion |String |Conversion rate |YES| Returns a JSON data instance: Success: { “flag”: “3″, “queryResult”: [ { "targetid": "1", "targetname": "1", "price": "2013-4-1", "startevent": "menu_exit", "endevent": "menu_login", "conversion": 0.87 }, { "targetid": "2", "targetname": "1", "price": "2013-4-1", "startevent": "menu_exit", "endevent": "click", "conversion": 0.87 }, { "targetid": "3", "targetname": "1", "price": "2013-4-1", "startevent": "menu_exit", "endevent": "click", "conversion": 0.87 } ] } ===== 1.25 Conversion in detail information ===== getconversiondetail ==== 1.25.1 Functional specifications ==== According to the productid detailed information for a certain time period conversion data. ==== 1.25.2 Call instruction ==== === 1.25.2.1 The request method === post === 1.25.2.2 Address of the request === PREURL/api/getconversiondetail ==== 1.25.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |targetid |String |target ID |YES| |version |String |version,The default for all versions |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “targetid”: “1″, } OR { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “targetid”: “1″, “version”: “0.1″, } ==== 1.25.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |id |String |id |YES| |eventid |String |target ID |YES| |eventname |String |target name |YES| |num |String |target value |YES| |conversion |String |conversion rate |YES| Returns a JSON data instance: Success: { “flag”: “3″, “queryResult”: [ { "id":"1", "eventid": "click", "eventname": "click事件", "num": "100", "conversion": 0.87 }, { "id":"2", "eventid": "exit", "eventname": "退出", "num": "20", "conversion": 0.87 }, { "id":"3", "eventid": "quit", "eventname": "退出", "num": "23", "conversion": 0.87 }, ] } ===== 1.26 Get error message (press release) ===== geterrorbyversion ==== 1.26.1 Functional specifications ==== According to the productid time period for each version of the number of errors, etc. ==== 1.26.2 Call instruction ==== === 1.26.2.1 The request method === post === 1.26.2.2 Address of request === PREURL/api/geterrorbyversion ==== 1.26.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.26.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |version |String | date |YES| |num |String |number |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "version":"0.1", "num": "100" }, { "version":"0.2", "num": "100" } ] } ===== 1.27 Error detailed information (press release) ===== geterrordetailbyversion ==== 1.27.1 Functional specifications ==== According to the productid time period for each version of the wrong amount of detailed data, etc. ==== 1.27.2 Call instruction ==== === 1.27.2.1 The request method === post === 1.27.2.2 Address of request === PREURL/api/geterrordetailbyversion ==== 1.27.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.27.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |errorid |String | error ID |YES| |errortitle |String |error name |YES| |version |String |version |YES| |lastdate |String |recent date |YES| |num |String |error number |YES| |isfix |String |is fixed? |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "errorid":"1", "errortitle":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "version":"0.1", "lastdate":"2013-3-1", "num": "10", "isfix": "true", }, { "errorid":"2", "errortitle":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "version":"0.3", "lastdate":"2013-3-1", "num": "103", "isfix": "false", }, ] } ===== 1.28 Access error detailed list (press release) ===== geterrordetaillistbyversion ==== 1.28.1 Functional specifications ==== According to the productid for period of time of each version of a type error record all errors. ==== 1.28.2 Call instruction ==== === 1.28.2.1 The request method === post === 1.28.2.2 Address of request === PREURL/api/geterrordetailbyversion ==== 1.28.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| |erroridentifier |String |MD5 encrypted |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “erroridentifier”:”AB876C09F98″ } ==== 1.28.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int | >0Success, <0fail |YES| |queryResult |JSONArray| |YES| |datetime |String | recent date |YES| |osversion |String |version |YES| |device |String |device |YES| |stacktrace |String |stack trace |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "stacktrace":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "osversion":"5.0", "datetime":"2013-3-1 23:00:00", "device": "HTC Desire" }, { "stacktrace":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "osversion":"5.1", "datetime":"2013-3-1 22:22:00", "device": "HTC Desire" } ] } ===== 1.29 Get error in the distribution of operating systems and devices (press release) ===== geterrordistributionbyversion ==== 1.29.1 Functional specifications ==== According to the productid for period of time of each version of a type error record all errors. ==== 1.29.2 Call instruction ==== === 1.29.2.1 The request method === post === 1.29.2.2 Address of request === PREURL/api/geterrordistributionbyversion ==== 1.29.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| |erroridentifier |String |MD5 encrypted |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “erroridentifier”:”AB876C09F98″ } ==== 1.29.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int | >0Success, <0fail |YES| |queryResult |JSONArray | |YES| |osversiondis |JSONArray | |YES| |devicedis |JSONArray | |YES| |osversion |String |os version |YES |device |String |device |YES| |num |String |error number |YES| Returns a JSON data instance: Success: { “flag”: “1″, “queryResult”: [ { "osversiondis": [ { "osversion": "5.0", "num": "98" }, { "osversion": "5.0", "num": "98" } ], “devicedis”: [ { "device": "HTC Desire", "num": "32" }, { "device": "HTC Desire", "num": "32" } ] } ] } ===== 1.30 Get error message (according to the operating system version) ===== geterrorbyosversion ==== 1.30.1 Functional specifications ==== According to the productid for period of time the operating system version of the Error number, etc. ==== 1.30.2 Call instruction ==== === 1.30.2.1 The request method === post === 1.30.2.2 Address of request === PREURL/api/geterrorbyosversion ==== 1.30.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.30.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int | >0Success, <0fail |YES| |queryResult |JSONArray | |YES| |osversion |String |os version |YES| |num |String |error number |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "osversion":"4.0", "num": "100" }, { "osversion":"5.0", "num": "100" } ] } ===== 1.31 Error detailed information (by OS version) ===== geterrordetailbyosversion ==== 1.31.1 Functional specifications ==== According to the productid for period of time error detail number of each OS version. ==== 1.31.2 Call instruction ==== === 1.31.2.1 The request method === post === 1.31.2.2 Address of request === PREURL/api/geterrordetailbyosversion ==== 1.31.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success|YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.31.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |errorid |String |error ID |YES| |errortitle |String |error titile |YES| |osversion |String |os version |YES| |lastdate |String |recent date |YES| |num |String |error number |YES| |isfix |String |is fixed? |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "errorid":"1", "errortitle":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "osversion":"5.0", "lastdate":"2013-3-1", "num": "10", "isfix": "true", }, { "errorid":"2", "errortitle":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "osversion":"5.1", "lastdate":"2013-3-1", "num": "103", "isfix": "false", } ] } ===== 1.32 Access error detailed list (by OS version) ===== geterrordetaillistbyosversion ==== 1.32.1 Functional specifications ==== According to the productid for period of time of each version of a type error record all errors. ==== 1.32.2 Call instruction ==== === 1.32.2.1 The request method === post === 1.32.2.2 Address of request === PREURL/api/geterrordetaillistbyosversion ==== 1.32.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| |erroridentifier |String |MD5 encrypted |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “erroridentifier”:”AB876C09F98″ } ==== 1.32.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray |YES| |datetime |String |recent date |YES| |version |String |version |YES| |device |String|device |YES| |stacktrace |String |stack trace |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "stacktrace":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "version":"0.1", "datetime":"2013-3-1 23:00:00", "device": "HTC Desire" }, { "stacktrace":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "version":"0.1", "datetime":"2013-3-1 22:22:00", "device": "HTC Desire" } ] } ===== 1.33 To obtain the distribution of mistakes in the version and the equipment (by OS version) ===== geterrordistributionbyversion ==== 1.33.1 Functional specifications ==== According to productid time period for the OS version of all the error record a type error. ==== 1.33.2 Call instruction ==== === 1.33.2.1 The request method === post === 1.33.2.2 Address of request === PREURL/api/geterrordistributionbyversion ==== 1.33.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| |erroridentifier |String |MD5 encrypted |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “erroridentifier”:”AB876C09F98″ } ==== 1.33.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray | |YES| |versiondis |JSONArray| |YES| |devicedis |JSONArray | |YES| |version |String |version |YES| |device |String |device |YES| |num |String |error number | | Returns a JSON data instance: Success: { “flag”: “1″, “queryResult”: [ { "versiondis": [ { "version": "0.1", "num": "98" }, { "version": "0.2", "num": "98" } ], “devicedis”: [ { "device": "HTC Desire", "num": "32" }, { "device": "HTC Desire", "num": "32" } ] } ] } ===== 1.34 Get error message (by device) ===== geterrorbydevice ==== 1.34.1 Functional specifications ==== According to the productid time period for each version of the Error number, etc. ==== 1.34.2 Call instruction ==== === 1.34.2.1 The request method === post === 1.34.2.2 Address of request === PREURL/api/geterrorbydevice ==== 1.34.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.34.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int | >0Success, <0fail |YES| |queryResult |JSONArray | |YES| |device |String |devicename |YES| |num |String |error number | | Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "device":"HTC Desire", "num": "100" }, { "device":"Samsung T9100", "num": "100" } ] } ===== 1.35 Error detailed information (by device) ===== geterrordetailbydevice ==== 1.35.1 Functional specifications ==== According to the productid time period for each version of the error number in detail. ==== 1.35.2 Call instruction ==== === 1.35.2.1 The request method === post === 1.35.2.2 Address of request === PREURL/api/geterrordetailbydevice ==== 1.35.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String |start date |YES| |enddate |String |end date |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″ } ==== 1.35.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0Success, <0fail |YES| |queryResult |JSONArray| |YES| |errorid |String |error ID |YES| |errortitle |String |error 标题 |YES| |device |String |devicename |YES| |lastdate |String |recent date |YES| |num |String |error number |YES| |isfix |String |YESNO修复 |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "errorid":"1", "errortitle":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "device":"HTC Desire", "lastdate":"2013-3-1", "num": "10", "isfix": "true" }, { "errorid":"2", "errortitle":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "device":"Samsung T9100", "lastdate":"2013-3-1", "isfix": "false" }, ] } ===== 1.36 Access error detailed list (by device) ===== geterrordetaillistbydevice ==== 1.36.1 Functional specifications ==== According to the productid for period of time of each version of a type error record all errors. ==== 1.36.2 Call instruction ==== === 1.36.2.1 The request method === post === 1.36.2.2 Address of request === PREURL/api/geterrordetaillistbydevice ==== 1.36.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| |erroridentifier |String |MD5 encrypted |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “erroridentifier”:”AB876C09F98″ } ==== 1.36.4 Result ==== ^Field name ^Data type ^Description ^Required^ |flag |int | >0Success, <0fail |YES| |queryResult |JSONArray | |YES| |datetime |String |recent date |YES| |version |String |version |YES| |osversion |String |os version |YES| |stacktrace |String |stack trace |YES| Returns a JSON data instance: Success: { “flag”: “2″, “queryResult”: [ { "stacktrace":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "version":"0.1", "datetime":"2013-3-1 23:00:00", "osversion": "5.0" }, { "stacktrace":"java.lang.IllegalArgumentException: Activity#onCreateDialog did not create a dialog for id 4 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)", "version":"0.1", "datetime":"2013-3-1 22:22:00", "osversion": "5.1" } ] } ===== 1.37 Error in the version and operating system version of the distribution (by device) ===== geterrordistributionbydevice ==== 1.37.1 Functional specifications ==== According to productid time period for each version and OS version number one all of the wrong type of error. ==== 1.37.2 Call instruction ==== === 1.37.2.1 The request method === post === 1.37.2.2 Address of request === PREURL/api/geterrordistributionbydevice ==== 1.37.3 Parameters ==== ^Field name ^Data type ^Description ^Required^ |sessionkey |String |A key to validation after the login success |YES| |productid |String |product id |YES| |startdate |String | start date |YES| |enddate |String |end date |YES| |erroridentifier |String |MD5 encrypted |YES| Sending JSON data instance: { “sessionkey”:”1341423432423″, “productid”: “1″, “startdate”: “2013-4-1″, “enddate”: “2013-4-2″, “erroridentifier”:”AB876C09F98″ } ==== 1.37.4 result ==== ^Field name ^Data type ^Description ^Required^ |flag |int |>0success,<0failure |y| |queryResult |JSONArray | |y| |versiondistribution |JSONArray | |y| |osversiondistribution |JSONArray | |y| |version |String |Version |y| |osversion |String |OS version |y| |num |# error | |y| Returns a JSON data instance: Success: { “flag”: “1″, “queryResult”: [ { "versiondistribution": [ { "version": "0.1", "num": "98" }, { "version": "0.2", "num": "98" } ], “osversiondistribution”: [ { "osversion": "5.0", "num": "32" }, { "osversion": "5.1", "num": "32" } ] } ] }