跳到正文

Quake主机索引数据检索可筛选字段

接口说明

返回当前用户在 quake_host(主机维度网络测绘资产)索引下,通过 API 检索时允许作为 include / exclude 筛选返回字段的白名单列表。 该白名单由管理员按用户或角色维度配置,不同用户返回结果可能不同。调用方在使用主机检索接口前,应先调用本接口获取可用字段,再据此拼装 include/exclude,避免传入未授权字段被校验拦截。

请求地址

https://api.f.360.cn/api/v3/filterable/field/quake_host

请求方法

GET

请求参数

参数名类型位置是否必填示例值说明
—————本接口无请求参数

响应参数

名称类型示例值描述
codeInteger | String0响应状态码,0 为正常,其他为异常
messageStringSuccessful.响应状态信息
dataArray(String)["ip","hostname",...]可过滤字段名称列表
metaObject{}元信息

data 字段说明

字段标识说明
ipIP 地址
hostname主机名
asn自治系统编号
org组织名称
time扫描时间
location.country_cn国家(中文)
location.country_en国家(英文)
location.province_cn省份(中文)
location.province_en省份(英文)
location.city_cn城市(中文)
location.city_en城市(英文)
location.owner资产所有者
location.gps经纬度坐标
location.street_cn街道(中文)
location.street_en街道(英文)

请求示例

支持cUrl、Python、Java、PHP、Go语言的请求,示例如下

#!/usr/bin/env bash
set -euo pipefail

APPID=""  # apikey
SECRET=""  # salt
URL="https://api.f.360.cn/api/v3/filterable/field/quake_host"
BODY=""

NONCE=$(printf '%08d' $((RANDOM % 100000000)))
TIMESTAMP=$(date +%s)
BODY_MD5=$(printf '%s' "$BODY" | openssl dgst -md5 -hex | awk '{print $NF}')
SIGNATURE=$(printf '%s' "${BODY_MD5}${APPID}${NONCE}${TIMESTAMP}${SECRET}" | openssl dgst -md5 -hex | awk '{print $NF}')
SIGNATURE=${SIGNATURE:16}

curl --location --request GET "$URL" \
  --header "Content-Type: application/json" \
  --header "X-360-Key: ${APPID}" \
  --header "X-360-Nonce: ${NONCE}" \
  --header "X-360-Timestamp: ${TIMESTAMP}" \
  --header "X-360-Signature: ${SIGNATURE}"

响应示例

业务正常响应

{
    "code": 0,
    "message": "Successful.",
    "data": [
        "location.city_cn",
        "ip",
        "location.province_cn",
        "location.country_en",
        "asn",
        "hostname",
        "location.province_en",
        "org",
        "time",
        "location.city_en",
        "location.owner",
        "location.gps",
        "location.street_cn",
        "location.street_en",
        "location.country_cn"
    ],
    "meta": {}
}

业务异常响应

{
    "code": "q3005",
    "message": "调用API过于频繁",
    "data": {},
    "meta": {}
}
{
    "code": "GC00105", 
    "src": "apiholder",
    "msg": "appid over field"
}