文档

QueryDataService - 调用数据服务API

更新时间:

对数据服务中已创建的API进行调用。

接口说明

前提条件

您通过 Quick BI 的数据服务,创建数据服务的 API,具体请参见数据服务

使用限制

  • 数据服务功能仅针对专业版客户开放。
  • 数据服务 API 调用,接口超时时间为 60s,单个 API 的 QPS 为 10 次/秒。
  • 数据服务 API 所引用数据集,如果开启了行级权限,API 调用的时候可能会被行级权限策略拦截。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

当前API暂无授权信息透出。

请求参数

名称类型必填描述示例值
ApiIdstring

数据服务中的 API ID,请参见:数据服务

f4cc43bc3***
Conditionsstring

数据服务的查询条件,以 Key 和 Value 的形式传入。map 类型的字符串。其中,Key 为请求参数的参数名,Value 为请求参数的参数值。Key 和 Value 必须成对出现。

说明:

  • 请求参数的操作符设置为枚举筛选时支持 value 包含多个值,此时 value 值的格式是 JSON 形式的 List。例如: area=["华东","华北","华南"]

  • 对于日期,根据类型不同,提供不同的入参格式:

    • 年:2019

    • 季:2019Q1

    • 月:201901 (携带 0)

    • 周:2019-52

    • 日:20190101

    • 时:14:00:00 (分、秒为 00)

    • 分:14:12:00 (秒为 00)

    • 秒:14:34:34

{ "area": ["华东", "华北"], "shopping_date": "2019Q1", }
ReturnFieldsstring

返回参数的参数名列表,List 类型字符串。

["area", "city", "price", "date"]

返回参数

名称类型描述示例值
object
Successboolean

是否请求成功。取值范围:

  • true:请求成功

  • false:请求失败

true
RequestIdstring

请求 ID。

78C1AA2D-9201-599E-A0BA-6FC462E57A95
Resultobject

返回接口查询结果。

Sqlstring

请求查询的 SQL。

SELECT COMPANY_T_1_.`area` AS D_AREA_2_, COMPANY_T_1_.`city` AS D_CITY_3_, SUM(COMPANY_T_1_.`profit_amt`) AS D_PROFIT_4_ FROM `quickbi_test`.`company_sales_record_copy` AS COMPANY_T_1_ WHERE COMPANY_T_1_.`area` LIKE '%华东%' GROUP BY COMPANY_T_1_.`area`, COMPANY_T_1_.`city` HAVING SUM(COMPANY_T_1_.`order_amt`) > 1 LIMIT 0, 10
Headersobject []

列头。

Typestring

字段类型,用于区分是字段类型为维度或度量字段。

StandardDimension
DataTypestring

字段的数据类型。一般有 number、string、date、datetime、time、geographic。

string
Granularitystring

维度字段的粒度。 当请求字段为日期维度或地理维度字段,才会返回该字段,取值范围:

  • 日期粒度:yearRegion(年)、 monthRegion(月)、weekRegion(周)、dayRegion(日)、hourRegion(时)、minRegion(分)、secRegion(秒)

  • 地理信息粒度:COUNTRY(国际级)、PROVINCE(省级)、CITY(市级)、XIAN(区县)、REGION(区域)

yearRegion
Labelstring

字段别名,结果参数 values 中 map 数据行的 key。

area
Columnstring

字段名,对应物理表字段名。

具体的物理字段名
Aggregatorstring

聚合操作符。度量字段才会有,例如 SUM、AVG 和 MAX。

SUM
Valuesobject []

返回查询到的结果。

object

返回数据的行和列。

此参数为 List结构,每个 Map 即一行数据。其中 Map 中的 Key 对应 Headers#Label 字段。

[{"area":"华东","city":"三明市"},{"area":"华东","city":"上海市"}]

示例

正常返回示例

JSON格式

{
  "Success": true,
  "RequestId": "78C1AA2D-9201-599E-A0BA-6FC462E57A95",
  "Result": {
    "Sql": "SELECT COMPANY_T_1_.`area` AS D_AREA_2_, COMPANY_T_1_.`city` AS D_CITY_3_, SUM(COMPANY_T_1_.`profit_amt`) AS D_PROFIT_4_ FROM `quickbi_test`.`company_sales_record_copy` AS COMPANY_T_1_ WHERE COMPANY_T_1_.`area` LIKE '%华东%' GROUP BY COMPANY_T_1_.`area`, COMPANY_T_1_.`city` HAVING SUM(COMPANY_T_1_.`order_amt`) > 1 LIMIT 0, 10",
    "Headers": [
      {
        "Type": "StandardDimension",
        "DataType": "string",
        "Granularity": "yearRegion",
        "Label": "area",
        "Column": "具体的物理字段名",
        "Aggregator": "SUM"
      }
    ],
    "Values": [
      [
        {
          "area": "华东",
          "city": "三明市"
        },
        {
          "area": "华东",
          "city": "上海市"
        }
      ]
    ]
  }
}

错误码

HTTP status code错误码错误信息描述
400API.No.PermissionYou are not authorized to call the data service API operation.您无权调用此数据服务API。
400API.Not.ExistThe data service API operation does not exist.数据服务 API 不存在。
400Cube.Not.ExistThe Cube does not exist.数据集不存在。
400Invalid.Parameter.ConditionsThe specified Conditions is invalid. %s is not defined.参数 Conditions 错误:%s 未在模型中定义。
400Invalid.Parameter.ReturnFieldsThe specified returnFields is invalid. %s is not defined. 参数ReturnFields错误:%s 未在模型中定义。
400Missing.ConditionsThe specified Conditions is invalid. You must specify %s.输入参数Conditions 错误: %s 是必须项。
400Missing.Dimension.MeasureThe dimension or measure %s does not exist in Cube. Cube 模型中缺少维度或度量 %s 。
400Rowlevel.Permission.ForbbidenThe request is denied by row level permission. The dataset is %s, %s %s.请求被行级权限限制,数据集为%s,%s %s。
400Internal.System.ErrorAn internal system error occurred.系统内部异常。
400Datasource.Sql.ExecuteFailedFailed to execute the SQL statement in the data source.数据源执行SQL失败。
400Instance.ExpiredYour instance has expired.您的购买实例已经过期。
400Instance.Not.ExistThe specified instance does not exist.暂未匹配到您的购买实例。
400Invalid.OrganizationThe specified organizational unit does not exist.该组织不存在。
400User.Not.In.OrganizationThe specified user is not in the organizational unit.该用户不在组织中。
400Invalid.ParameterAn error occurred while verifying parameters.参数验证失败。
400Invalid.Parameter.ErrorThe parameter is invalid:%s.无效参数%s。
400Invalid.Param.ErrorThe parameter is invalid.无效参数。
400Invalid.User.AdminYou are not an administrator of this organization.没有权限,您不是组织管理员。
400System.Param.EmptyYou must specify the %s parameter.参数%s不能为空。
400Access.ForbiddenYour instance version or access key is not allowed to call the API operation, only professional version supports calling.您的实例版本或者 AccessKey不允许调用该 API,仅专业版支持调用。
400UserInfo.ErrorThe personal information is invalid.个人信息不合法。
400ApiUser.Not.ExistsThe specified user does not exist.用户不存在。
400User.Not.WorkspaceAdminOnly administrators of the group workspace can perform this operation.没有权限,您不是该群空间的管理员。
400Application.Object.NotExistThe object you are operating does not exist or has been deleted.操作组件不存在或已被删除。
400Not.ApiCall.AuthUserYou are not an administrator or API call auth user of this organization.非组织管理员或API调用授权用户。

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2023-04-06OpenAPI 错误码发生变更看变更集
变更项变更内容
错误码OpenAPI 错误码发生变更
    错误码 400 变更
2022-10-24OpenAPI 错误码发生变更看变更集
变更项变更内容
错误码OpenAPI 错误码发生变更
    错误码 400 变更