目录

创建数据导出任务

功能介绍

您的应用服务器调用此接口创建导出数据任务,可以导出您在App端侧采集上报的所有数据。

场景描述

当您自建了分析平台或使用第三方分析平台,如果您需要将通过Analytics Kit采集的数据导入这些分析平台进行分析时,您可以通过此接口请求导出Analytics Kit采集的数据。

使用约束

接口原型

承载协议

HTTP POST

接口方向

开发者回调接口服务器->分析服务服务器

接口URL

{rootUrl}/analytics/export/raw_data_requests/v2

说明:

{rootUrl}:请参见接口访问路径获取。

数据格式

请求消息:Content-Type: application/json

响应消息:Content-Type: application/json

请求参数

Request Header

参数

是否必选

参数类型

描述

x-product-id

是

String

用户在AppGallery Connect上的Product ID。

x-app-id

是

String

用户在AppGallery Connect上的App ID。

Authorization

是

String

鉴权信息。请参见基于OAuth 2.0开放鉴权。

说明:

Bearer后面拼接空格,再拼接获取的access_token。

Request Body

参数

是否必选

参数类型

描述

date_range

是

DateRange

查询时间范围。

file_format

是

String

文件格式只支持csv。

filters

否

List<Filter>

属性、事件过滤条件。

task_name

否

String

任务名称。长度不超过255,不能包含特殊字符<>"'[]$%+\/*;=^,

DateRange数据结构说明

参数

是否必选

参数类型

描述

start_date

是

String

起始时间,字符串格式yyyy-MM-dd。

end_date

是

String

结束时间,字符串格式yyyy-MM-dd。

Filter数据结构说明

参数

是否必选

参数类型

描述

name

是

String

过滤参数key,为用户属性名、预置事件或自定义事件ID。

  • app_ver:应用版本号
  • device_maker:设备品牌
  • device_name:设备型号
  • location_cd:国家/地区
  • os_language:语言
  • os_ver:操作系统版本
  • event_id:预置事件或自定义事件ID

values

是

String[]

过滤参数值,为用户属性值、预置事件或自定义事件名称。取值请参考请求示例中的样例。

请求示例

POST /analytics/export/raw_data_requests/v2 HTTP/1.1
Content-Type: application/json; charset=UTF-8
Accept: application/json
Authorization: Bearer *** 
x-product-id: sample-productid
x-app-id: sample-appid
 
{
    "date_range": {
        "start_date": "2021-07-10", 
        "end_date": "2021-07-17"
    }, 
    "file_format": "csv", 
    "filters": [
        {
            "name": "location_cd",
            "values": [
                "CN"
            ]
        },
        {
            "name": "device_maker",
            "values": [
                "HUAWEI"
            ]
        },
        {
            "name": "event_id",
            "values": [
                "$InstallApp",
                "$UninstallApp"
            ]
        },
        {
            "name": "os_language",
            "values": [
                "ZH_CN"
            ]
        },
        {
            "name": "os_ver",
            "values": [
                "ANDROID:9"
            ]
        },
        {
            "name": "device_name",
            "values": [
                "YAL-AL00"
            ]
        }
    ], 
    "task_name": "abc123"
}

响应参数

状态码为200时:

Response Header

参数

是否必选

参数类型

描述

Content-Type

是

application/json

响应消息的数据格式。

Response Body

参数

是否必选

参数类型

描述

result_code

是

String

响应码,请参见错误码。

result_msg

是

String

响应描述。

request_id

是

String

请求编号,由创建数据导出任务接口返回。

响应示例

HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Connection:  Close
Content-Length: xxxx                       
 
{
  "result_code":"0",
  "result_msg":"success",
  "request_id": "c0b41debe8064c54ab200d30907f40c5" 
}

错误码

状态码

错误码

描述

解决方法

200

0

请求成功。

-

400

10020

非法参数。

请修改填写错误的参数值。

400

10008

接口请求过于频繁。

请修改代码,降低查询创建数据导出任务的频率。

400

10009

超过任务上限,同一个App下最多允许同时存在3个进行中的数据导出任务。

请等待其中的某些或者全部任务执行完成后重新调用创建导出任务。

400

19910

  • 鉴权请求超时,请稍后重试。
  • 鉴权服务器内部错误,请稍后重试。

请稍后重试。

400

21021

查询起始时间超出保留期限。

最大查询时间范围为近1年,请重新填写查询起始时间。

400

21025

该产品不支持数据导出功能。

数据导出功能目前仅对部分邀请伙伴开放,您可以通过在线提单方式申请开通此功能。

Postman调试

您可以使用Postman在线调试此接口。