API-V5 接口说明

1.通用接口标准

传输协议标准

  • “灵川ADP大数据平台”提供在线的互联网服务,为开发者提供http/https接口,方便开发者与平台进行交互。
  • 服务器提供http/https形式的访问接口,通过POST的方式,以JSON格式传递参数。
  • 采用同步请求响应的模式提供返回数据。请求方将参数存放在规定的参数名中,发送给目标接口URL,接口的后端服务响应后会将结果返回给请求方。

数据格式标准

  • 所有API接口统一采用 POST JSON 的请求方式
  • 所有API接口返回内容统一采用 JSON 数据格式
  • 文本编码统一为 utf-8
  • 客户端请求 "Content-Type" 需为 "application/json"
  • 服务端返回 "Content-Type" 均为 "application/json"

访问接口标准

  • 接口支持HTTP/HTTPS协议
  • 接口仅支持POST方法进行调用
  • 请求参数仅支持 JSON 格式的 BODY 内容
  • 请求包含:公共参数 + 具体服务的特定参数

公共参数说明

  • 公共参数的功能主要为身份认证,防止非法请求通过API访问系统功能
  • 公共参数均在 HTTP HEADER 中,服务器通过 HEADER 中的信息进行身份认证
  • 公共参数有如下几个:
参数名称 参数格式 参数描述 是否必需 备注
hl_appkey 字符串 用户appkey 由灵川提供的用户身份识别码,参与认证签名计算
hl_time 字符串 当前时间 当前北京时间,参与认证签名计算,格式为 “yyyy-mm-dd HH:MM:SS”
hl_sign 字符串 认证签名 安全加密认证的参数, 请查看下面的具体说明
  • 注意:上面参数均为系统保留字,请不要在其他参数中使用上述名称
  • 以上三个参数每个接口都要使用,hl_sign 认证签名的生成方法,请参考后面章节
  • [非必需]建议发送http请求访问接口时,Headers中设置 "Accept-Encoding:gzip"

关于认证签名的生成

  • 每次调用 API 接口时,需要提供一个 hl_sign 认证签名参数,用于认证此次请求的合法性
  • 灵川会为每位客户提供一个 appkey 及与其对应的一组密钥(secret)
  • 客户端发起请求前,需要利用这组密钥来生成 hl_sign 的加密签名字符串,与请求一同提交给服务器

签名生成方法

  • 客户端请求包括以下三部分:请求接口的 URL地址,公共参数(HEADER内),具体服务特定参数(JSON内)
  • 灵川API v5 接口统一使用的地址前缀为 https://api.hylanda.com/v5/
  • 下面以 https://api.hylanda.com/v5/xuanzhi/media/publish_count 接口(炫知媒体发稿量)为例,介绍生成步骤:
  • 首先,假设您已经从灵川获得了appkey及secret,如下

    appkey : 123456789012345467890
    secret : HZUQs7gLxQ1nFT0rKdSu0YuilGkkMF2T
    
  • 确定要调用的接口URL路径(完整URL去除域名),例如上述接口URL路径为 /v5/xuanzhi/media/publish_count

  • 将当前时间格式化为字符串(北京时间精确到秒),作为 hl_time 参数的值
  • 将接口的 公共参数 及 POST-JSON字符串 罗列出来(不含hl_sign),即 hl_appkey、hl_time、json 三者,例如如下形式(还是以炫知媒体发稿量接口为例):

    hl_appkey     : 123456789012345467890
    hl_time       : 2021-12-01 16:55:48
    json          : {"date": "2021-11-06", "name": "新华网", "type": "standard_media_name"}
    
  • 将 “参数名” 和 “参数值” 使用 “&” 和 “=” 做字符串拼接(注意:要保持上面的顺序),像这样:

    hl_appkey=xxxxxxx&hl_time=xxxxxxxx&json=xxxxxxxxx

    请注意:上述字符串拼接好后,不需要再进行其他处理,输出一个码制为UTF-8的字符串即可

    重要:json部分有空格换行也不要紧,原样拼入上述字符串即可,但一旦拼好了,拼入字符串的这部分json,必须和最终POST的json一模一样,不能在POST时再追加或删减任何字符,包括空格、换行等

    上例中,拼接后的字符串如下:
    hl_appkey=123456789012345467890&hl_time=2021-12-01 16:55:48&json={"date": "2021-11-06", "name": "新华网", "type": "standard_media_name"}

  • 在字符串前面拼接上URL路径,并加上 “?” 符号连接,像这样:

    /v5/xuanzhi/media/publish_count?hl_appkey=123456789012345467890&hl_time=2021-12-01 16:55:48&json={"date": "2021-11-06", "name": "新华网", "type": "standard_media_name"}

  • 在字符串尾部直接拼接上密钥(secret),像这样:

    /v5/xuanzhi/media/publish_count?hl_appkey=123456789012345467890&hl_time=2021-12-01 16:55:48&json={"date": "2021-11-06", "name": "新华网", "type": "standard_media_name"}HZUQs7gLxQ1nFT0rKdSu0YuilGkkMF2T

    (这里假设 “HZUQs7gLxQ1nFT0rKdSu0YuilGkkMF2T” 是您的密钥)

  • 将上述整个字符串计算 MD5 值,作为 hl_sign 参数的值,加入请求参数中(若MD5函数需要unicode转码,像python之类,使用 UTF-8 转码即可)

    temp_string = '/v5/xuanzhi/media/publish_count?hl_appkey=123456789012345467890&hl_time=2021-12-01 16:55:48&json={"date": "2021-11-06", "name": "新华网", "type": "standard_media_name"}HZUQs7gLxQ1nFT0rKdSu0YuilGkkMF2T'
    hl_sign=md5(temp_string)
    ----计算MD5得出:
    hl_sign=f2b1add46f07dfe07a8231195f581f76        
    ----请注意:此`hl_sign`值有效期为`hl_time`开始的300秒内
    
  • POST JSON标准方式,输入公共参数和服务特定参数,发送给指定 API 接口即可:

    POST https://api.hylanda.com/v5/xuanzhi/media/publish_count
    HEADERS: 'Content-Type: application/json'
             'hl_appkey: 123456789012345467890'
             'hl_time: 2021-12-01 16:55:48'
             'hl_sign: f2b1add46f07dfe07a8231195f581f76'
    BODY: {"date": "2021-11-06", "name": "新华网", "type": "standard_media_name"}
    

请注意:无论任何情况下,请保护您的密钥(secret),不要在网络上明文传输,或发送给任何单位和个人,由此产生的损失将由泄密方承担。

通用返回信息

灵川API接口的返回信息体的基本JSON结构如下

{
  "res":0,  //返回码,正常一般返回0,非零为各种异常情况,有时特殊接口会使用特殊返回值
  "msg":"服务返回信息",
  "特定服务其他返回字段":""
}

通用错误返回信息说明

HTTP Code HTTP Response Body Description
401 {
"res": 401,
"msg": "data truncated (数据出错)"
}
传输的数据错误,
可能是通讯过程出现问题,尝试重试解决
401 {
"res": 401,
"msg": "no JSON (未收到 POST JSON 数据)"
}
服务器没有收到接口参数数据,
请检查客户端参数
403 {
"res": 401,
"msg": "validate clock failed (请求时间字段不存在或不合法)"
}
请检查hl_time参数,
服务器仅响应hl_time在最近300秒内的请求;
也有可能是POST方式错误,
服务器没有接到hl_time字段
403 {
"res": 403,
"msg": "missing signature field (缺少认证所需签名字段)"
}
请检查hl_appkey,hl_time,hl_sign参数
是否漏发,请补全后重试
403 {
"res": 403,
"msg": "missing credential (未找到该用户的证书)"
}
请检查hl_appkey字段是否填错,
系统没有找到对应用户的证书
403 {
"res": 403,
"msg": "signature not same (签名校验失败)"
}
hl_sign签名校验失败,
请检查hl_sign的生成逻辑是否有误
200 {
"res": -1,
"msg": "您没有调用此接口的权限"
}
授权信息无权访问此接口,请与相关人员确认您是否有权调用

调用接口的代码样例(python3)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Created by chy on 2020/12/29 18:04
"""
本代码仅供向客户演示灵川APIv5的调用方法
代码可以任意截取、复制到您的系统中
但本代码仅供演示调用方法,所用函数、库等并不一定是最优的,请使用此代码的开发人员根据自己系统的特点自行修改
"""

import datetime
import hashlib
import json
import requests

if __name__ == "__main__":
    appkey = "这里填写你的appkey"
    secret = "这里填写你的密钥"
    # api_path 这里填写您要调用的api相对路径(不包含域名的部分) 这里只是个例子,请不要照搬
    api_path = "/v5/xuanzhi/media/publish_count" 
    url = "https://api.hylanda.com"+api_path
    headers = {
        "Content-Type": "application/json",
        "hl_appkey": appkey,
        "hl_time": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")}
    data = {
        # 这里填写您要调用的API的参数,参数名和参数值都请参考对应的接口说明里写,这里只是一个例子,请不要照搬
        "date": "2021-11-06",
        "name": "新华网",
        "type": "standard_media_name"
    }
    #将json对象dumps成为字符串
    str_data_json = json.dumps(data, ensure_ascii=False)
    #拼接用来计算md5的字符串
    str_temp = f"{api_path}?hl_appkey={headers['hl_appkey']}&hl_time={headers['hl_time']}&json={str_data_json}" + secret
    #计算md5
    m = hashlib.md5()
    m.update(str_temp.encode("utf8"))
    #将算好的md5放进headers中
    headers["hl_sign"] = m.hexdigest()
    #开始请求接口
    resp = requests.post(url, str_data_json.encode("utf-8"), headers=headers, timeout=30)
    print(resp.status_code)
    if resp is not None:
        print( resp.json())

调用接口的代码样例(JAVA)

"""
本代码仅供向客户演示灵川APIv5的调用方法
代码可以任意截取、复制到您的系统中
但本代码仅供演示调用方法,所用函数、库等并不一定是最优的,请使用此代码的开发人员根据自己系统的特点自行修改
"""

/**
 * 计算sign值类
 */
import com.alibaba.fastjson.JSONObject;
import java.security.MessageDigest;
import java.util.Map;
import java.util.TreeMap;

public class ApiV5SignUtil {

    public static String API_HOST = "https://api.hylanda.com";
    public static String APPKEY   = "这里填写你的appkey";
    public static String SECRET   = "这里填写你的密钥";

    /**
     * url为api除去域名的地址,如 /v5/xuanzhi/analysis/profile
     *
     */
    public static String getSign(String url, String hl_time, JSONObject param) {
        String sign_str = url + "?hl_appkey=" + APPKEY + "&hl_time=" + hl_time + "&json=" + param + SECRET;
        return MD5(sign_str).toLowerCase();
    }

    public final static String MD5(String s) {
        char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
        try {
            byte[] btInput = s.getBytes("UTF-8");
            // 获得MD5摘要算法的 MessageDigest 对象
            MessageDigest mdInst = MessageDigest.getInstance("MD5");
            // 使用指定的字节更新摘要
            mdInst.update(btInput);
            // 获得密文
            byte[] md = mdInst.digest();
            // 把密文转换成十六进制的字符串形式
            int j = md.length;
            char str[] = new char[j * 2];
            int k = 0;
            for (int i = 0; i < j; i++) {
                byte byte0 = md[i];
                str[k++] = hexDigits[byte0 >>> 4 & 0xf];
                str[k++] = hexDigits[byte0 & 0xf];
            }
            return new String(str);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
}


/**
 * 请求样例类
 */
import com.alibaba.fastjson.JSONObject;
import okhttp3.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;
import java.util.concurrent.TimeUnit;

/**
 *  <dependency>
 *      <groupId>com.squareup.okhttp3</groupId>
 *      <artifactId>okhttp</artifactId>
 *      <version>4.9.0</version>
 *  </dependency>
 * 
 */
public class HttpUtil {

    private static Logger logger = LoggerFactory.getLogger(HttpUtil.class);

    private static OkHttpClient getClient() {
        return new OkHttpClient.Builder().readTimeout(60, TimeUnit.SECONDS).build();
    }

    public static String postJsonV5(String sub_url, JSONObject params) {

        RequestBody body = RequestBody.create(params.toJSONString(), MediaType.get("application/json; charset=utf-8"));
        String hl_time   = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
        String hl_sign   = ApiV5SignUtil.getSign(sub_url, hl_time, params);

        Request request = new Request.Builder()
                .url(ApiV5SignUtil.API_HOST + sub_url)
                .header("hl_appkey", ApiV5SignUtil.APPKEY)
                .header("hl_time",   hl_time)
                .header("hl_sign",   hl_sign)
                .post(body)
                .build();

        try(Response response = getClient().newCall(request).execute()) {

            if (response.code() == 200)
                return response.body().string();
            else
                logger.error("--- http请求失败, code: " + response.code() + ", url: " + sub_url + ", params: " + params);
        }
        catch (IOException e){

            logger.error("--- http请求异常: ", e);
        }

        return "";
    }
}

2.炫知系统接口

2.1 炫知-媒体发稿量

POST https://api.hylanda.com/v5/xuanzhi/media/publish_count

测试地址:https://api.hylanda.com/v5/help/util/try/#!/xuanzhi/XZ_Media_Publish_Count

接口描述
  • 查询媒体在某天的发稿量
  • 请注意:日期应在30日内
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
date
必需
BODY-JSON string 获取哪天的发稿量
name
必需
BODY-JSON string 获取哪个媒体的发稿量
type
必需
BODY-JSON enum 获取发稿量的类型,一般使用standard_media_name,其他详见说明
BODY-JSON样例
{
    "date":"2021-11-06",
    "name":"新华网",
    "type":"standard_media_name"
}
其他参数细节
type 参数可选项 说明
standard_media_name 使用标准化后的媒体名称查询
media_name 使用未标准化的媒体名称查询
正常响应的返回数据
{
    'res': 0,                       //正常返回均为0
    'msg': '请求成功',
    'data': {                       //data字段内为JsonObject,内部为查询结果
        'date': '2021-11-06',
        'name': '新华网',
        'type': 'standard_media_name',
        'publish_count': 2532       //查询到新华网媒体在2021年11月6日的发稿量为2532
    }
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "具体错误信息"
}

2.2 炫知-新闻传播分析数据

POST https://api.hylanda.com/v5/xuanzhi/analysis/news
POST https://api.hylanda.com/v5/xuanzhi/analysis_plus/news (高级版)

测试地址:https://api.hylanda.com/v5/help/util/try/#!/xuanzhi/XZ_Analysis_News

接口描述
  • 根据新闻的url查询新闻传播分析数据
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
url
必需
BODY-JSON string 新闻的url
BODY-JSON样例
{
    "url":"https://news.sina.com.cn/gov/2021-12-03/doc-ikyakumx1800581.shtml"
}
其他参数细节

暂无

正常响应的返回数据
{
    "res": 0,
    "msg": "请求成功",
    "data": {
        "news_list": [{
            "area": "兰州",
            "site_type": "省级网站",
            "standard_content_media_name": "人民网",
            "release_date": "2021-12-03 16:36:18",
            "author": "俞懿春、姜波、姜宣、",
            "media_name": "每日甘肃网",
            "title": "国际人士积极评价中国共产党坚持与时俱进",
            "content_media_name": "人民网",
            "url": "http://china.gansudaily.com.cn/system/2021/12/03/030454514.shtml",
            "standard_media_name": "每日甘肃网"
        }...],
        "desc"(高级版): { 
            "release_date": "2021-12-03 05:08:00",
            "reship_count": 69,
            "spanfmt": "11小时35分",
            "tp_count": 137,
            "peak_list": [{
                "peakend": "2021-12-03 16:36:18",
                "peakstart": "2021-12-03 11:00:59",
                "count": 82
            }...],
            "tpv": 2410,
            "title": "国际人士积极评价中国共产党坚持与时俱进",
            "reship_list": [{
                "count": 78,
                "media_name": "人民网"
            }...],
            "peak_count": 6
        }
    }
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "具体错误信息"
}

2.3 炫知-事件传播力分析数据

POST https://api.hylanda.com/v5/xuanzhi/analysis/keywords
POST https://api.hylanda.com/v5/xuanzhi/analysis_plus/keywords(高级版)

测试地址:https://api.hylanda.com/v5/help/util/try/#!/xuanzhi/XZ_Analysis_Keywords

接口描述
  • 根据事件的关键词查询事件传播数据
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
keywords
必需
BODY-JSON string 事件关键词 最多20个字
BODY-JSON样例
{
    "keywords":"坚持与时俱进"
}
其他参数细节

暂无

正常响应的返回数据
{
    "res": 0,
    "msg": "请求成功",
    "data": {
        "news_list": [{
            "release_date": "2021-12-03 09:55:41",
            "repeat_count": 1,
            "title": "国际人士积极评价中国共产党坚持与时俱进",
            "url": "https://view.inews.qq.com/a/20211203A02H0H00",
            "standard_media_name": "腾讯网",
            "repeat_list": [{
                "area": "广州",
                "site_type": "重点门户商业网站",
                "standard_content_media_name": "国际万花筒",
                "release_date": "2021-12-03 09:55:41",
                "author": "",
                "media_name": "腾讯新闻",
                "title": "国际人士积极评价中国共产党坚持与时俱进",
                "url": "https://view.inews.qq.com/a/20211203A02H0H00",
                "standard_media_name": "腾讯网",
                "content_media_name": "国际万花筒"
            }]
        }...],
        "desc"(高级版): {
            "sp_score": 2845,
            "first_news": "毫不动摇坚持.与时俱进完善人民代表大会制度",
            "span_time": "23天8小时",
            "first_release_date": "2021-11-10 07:50:00",
            "site_count": 83,
            "tp_count": 177,
            "most_count": 134,
            "data_count": 20,
            "most_news": "国际人士积极评价中国共产党坚持与时俱进"
        }
    }
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "具体错误信息"
}

2.4 炫知-发稿量、原创量和监测量

POST https://api.hylanda.com/v5/xuanzhi/analysis/profile

测试地址:https://api.hylanda.com/v5/help/util/try/#!/xuanzhi/XZ_Analysis_Profile

接口描述
  • 查询全网检测中,互联网发稿量、互联网原创总量和网站监测总量
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
type
必需
BODY-JSON string 查询类型 该接口传"tp"
BODY-JSON样例
{
    "type":"tp"
}
其他参数细节

暂无

正常响应的返回数据
{
    "res": 0,
    "msg": "请求成功",
    "data": {
        "tp_original_count": 148863,   原创总量
        "tp_count": 928297,            发稿量
        "tp_site_count": 23866         网站监测总量
    }
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "具体错误信息"
}

2.5 炫知-资讯传播力排行榜

POST https://api.hylanda.com/v5/xuanzhi/top/tpv

测试地址:https://api.hylanda.com/v5/help/util/try/#!/xuanzhi/XZ_Top_Tpv

接口描述
  • 查询资讯传播力排行榜
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
zone
必需
BODY-JSON string 区域代码
original
必需
BODY-JSON string 0非原创,1原创
type
必需
BODY-JSON string 查询类型, 100(互联网传播力排行榜), 101(区域原创), 102(近30分钟), 300(中央级媒体传播力排行榜), 400(省级媒体传播力排行榜), 500(商业媒体传播力排行榜)
BODY-JSON样例
{
    "zone":"0",
    "original":"0",
    "type":"100"
}
其他参数细节

暂无

正常响应的返回数据
{
    "res": 0,
    "msg": "请求成功",
    "data": {
        "news_list": [{
            "release_date": "2021-12-09 16:26:00",
            "name": "爱回收.豆瓣.唱吧等106款App被工信部下架",
            "tpv": 2159,
            "media_name": "新浪网",
            "url": "http://k.sina.com.cn/article_5044281310_12ca99fde02001px4e.html"
        },
        {
            "release_date": "2021-12-09 17:00:00",
            "name": "我国\"刑事缺席审判第一案\"程三昌贪污案一审开庭",
            "tpv": 1937,
            "media_name": "新浪网",
            "url": "http://k.sina.com.cn/article_2010666107_77d8547b020014vlv.html"
        }...]
    }
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "具体错误信息"
}

3.灵川ADP应用画布接口

3.1 应用画布对外开放接口

POST https://api.hylanda.com/v5/inner_app/custom/{app_name}/{api_name}

测试地址:https://api.hylanda.com/v5/help/util/try/#!/inner95app/InnerApp_CustomApi

接口描述
  • 当用户将灵川ADP大数据分析平台中的 ‘应用画布’中的接口对外开放后,会统一映射到此接口中
  • 请注意:仅支持SQL代理接口,不支持对外代理接口
  • 请注意:无法开放使用了“登录信息”的接口(如USER_ID)
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
app_name
必需
URL-PATH string 应用名称,需填写英文名,可在应用访问URL路径中找到
api_name
必需
URL-PATH string API名称,需填写API英文名称
应用接口参数
必需
BODY-JSON string 需根据对应的应用接口自行调整
BODY-JSON样例

该接口参数直接对应指定应用接口的参数,需参考其接口参数自行填充参数

{
    "参数名xxx":"参数值xxx",
    "参数名yyy":"参数值yyy",
    "参数名zzz":"参数值zzz"
}
其他参数细节

若该应用接口没有输入参数,BODY-JSON内也需要传输一对大括号 {}

正常响应的返回数据
  • 该接口的返回数据是靠对应的应用接口返回数据决定的
  • 当应用接口返回应用画布标准格式的数据时,该接口仅将返回数据中的 "status" 改为 "res"
  • 否则,该接口会将应用接口返回数据整体放入该样例中的"data"内,再向外输出
{
    "res": 0,
    "msg": "调用完成",
    "data": {}
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "服务器出错:具体错误信息"
}
服务内部出错,需联系相关人员检查接口逻辑

4. 数据流相关接口

4.1 平台DB数据获取接口

POST https://api.hylanda.com/v5/data_stream/get_from_db

测试地址:https://api.hylanda.com/v5/help/util/try/#!/data95stream/DataStream_GetFromDB

接口描述
  • 对灵川大数据分析平台中的中指定数据库进行获取的接口
  • 请注意:该接口所关联数据库必须是通过灵川运维服务团队订购的,处于灵川平台同一网络环境内的DB才可使用此接口
  • 该接口与v4接口的取数据服务内部是一致的,仅接口形式改为了postjson,原v4使用的密钥也可在v5内使用
接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
link_code
必需
BODY-JSON string 指定数据集的连接码,由灵川统一分配
id
可选
BODY-JSON integer 要查询的起始键值,服务将使用键值升序输出数据大于此值的数据,可填入上次查询结果的next_id以达到遍历数据的效果 ""
num
可选
BODY-JSON integer 本次要输出的条数,范围 (0,100],默认20条,超出按默认值处理 20
query_extra
可选
BODY-JSON object 查询用的额外参数,为特殊的取数据需求提供客户端定制查询功能,JsonObject格式,默认为空 {}
BODY-JSON样例
{
    "id": 0,
    "link_code": "填入灵川分配的连接码",
    "num": 20,
    "query_extra": {
        "额外参数xxx": "有额外参数则按专属文档填写,若没有则不用传query_extra"
    }
}
其他参数细节

暂无

正常响应的返回数据

接口正常响应数据格式如下

{
    "res": 0 ,                       //正常返回均为0
    "msg": "成功",
    "data": [{                      //data字段内为JsonArray,包含多条数据
            "url": "http://abcd1",  //每条数据是一个JsonObject,字段列表由业务负责人提供
            "title": "abcd1"
        }, {
            "url": "http://abcd2",
            "title": "abcd2"
        }
    ],
    "next_id": ""                   //next_id字段,将此值作为下次请求的id参数以遍历数据
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》 下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "无 link_code"
}
请求参数中没有链接码
200 {
"res": -1,
"msg": "link_code 连接失败"
}
链接码所对应DB连接失败,错误信息会在msg后追加,一般这种错误请联系接口负责人协助解决
200 {
"res": -1,
"msg": "数据查询失败"
}
查询过程出错,错误信息会在msg后追加,请联系接口负责人
200 {
"res": -1,
"msg": "结果解析错误"
}
查询结果数据不符合规范,可能存在不可解析的数据,需要联系接口负责人排查
200 {
"res": -1,
"msg": "未知错误"
}
请联系接口负责人排查

4.2 流式数据输入接口

POST https://api.hylanda.com/v5/data_stream/send_to_queue

测试地址:https://api.hylanda.com/v5/help/util/try/#!/data95stream/DataStream_SendToQueue

接口描述

发送数据到缓存队列,在ADP平台上通过【流式数据输入接口】能力读取数据

接口参数

灵川APIv5接口参数统一使用POST JSON 方式传递

参数名 位置 类型 描述 默认值
hl_appkey
必需
HEADERS string 鉴权用,灵川分配的appkey,参考《通用接口标准》
hl_time
必需
HEADERS string 鉴权用,当前时间,参考《通用接口标准》
hl_sign
必需
HEADERS string 鉴权用,签名校验码,参考《通用接口标准》
BODY-JSON
required
BODY-JSON object 需要输入平台的数据(JSON),每次请求数据不大于1M
BODY-JSON样例
{
    "url":"http://www.abc.com/1234.html",
    "title":"标题文字",
    "content":"正文文字"
}
其他参数细节

注意:该接口所post的json整体,即为ADP平台能力输出的完整内容,平台能力会将post-body的json 内容完整输出

正常响应的返回数据
HTTP Code Description
200 接收数据完成
{
    "res": 0 ,                       //正常返回均为0
    "msg": "接收数据完成" 
}

错误返回信息说明

通用错误信息,请参考《通用接口标准》

下面为本服务特有的错误反馈说明

HTTP Code HTTP Response Body Description
200 {
"res": -1,
"msg": "具体错误信息"
}