Skip to content

App Store 批量应用指标(实时)

POST /v3/dataforseo_labs/apple/bulk_app_metrics/live

本接口使用 POST 方法,路径为:

/v3/dataforseo_labs/apple/bulk_app_metrics/live

接口用于批量获取 App Store 应用的排名指标,单次最多支持 1000 个应用。返回结果针对请求中的 app_ids 生成。

app_id 可从 App Store 应用页 URL 中获取,即 URL 中 id 后面的数字。例如:

https://apps.apple.com/us/app/id835599320

应用 ID 为 835599320

数据更新频率: 每周更新。最新数据更新时间可通过状态接口查询。

请求信息

  • 请求方法: POST
  • 请求地址: https://api.seermartech.cn/v3/dataforseo_labs/apple/bulk_app_metrics/live
  • 请求格式: application/json
  • 请求体格式: JSON 数组
  • 单次请求限制: 每个实时接口调用只能 1 个任务 平台限流以认证说明中的 30/60/120 次/分钟规则为准
  • 应用数量限制: 单个任务最多提交 1000 个 app_ids

所有请求参数放在 JSON 数组中,例如:

json
[
  {
    "app_ids": ["835599320"],
    "location_code": 2840,
    "language_code": "en"
  }
]

计费说明

本接口按请求计费。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

响应中的 cost 字段(平台原始 USD 成本兼容字段)表示本次任务的费用记录,金额及扣费结果以人民币响应头为准。

请求参数

参数名类型说明
app_idsarrayApp Store 应用 ID 列表。应用 ID 位于 App Store 应用 URL 中 id 后方,例如 https://apps.apple.com/us/app/id835599320 中的 835599320。最多可传 1000 个 ID。
location_namestring条件填地区名称。当未指定 location_code 时填。当前接口支持美国地区,示例值为 United States
location_codeinteger条件填地区代码。当未指定 location_name 时填。当前接口支持美国地区,示例值为 2840
language_namestring条件填语言名称。当未指定 language_code 时填。当前接口支持英语,示例值为 English
language_codestring条件填语言代码。当未指定 language_name 时填。当前接口支持英语,示例值为 en
tagstring自定义任务标识,用于在结果中匹任务。最大长度为 255 个字符。提交的值会原样返回在响应的 data 对象中。

location_namelocation_code须二选一;language_namelanguage_code 也二选一。

可通过以下接口获取可用地区和语言:

/v3/dataforseo_labs/locations_and_languages

当前接口支持范围:

  • 地区: United States,代码 2840
  • 语言: English,代码 en

响应结构

接口返回 JSON 数据,主要 tasks 数组。

顶层字段

字段名类型说明
versionstring当前 API 版本。
status_codeinteger请求的总体状态码。
status_messagestring请求的总体状态信息。
timestring请求执行耗时,单位为秒。
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
tasks_countintegertasks 数组中的任务总数。
tasks_errorintegertasks 数组中返回错误的任务数量。
tasksarray任务结果数组。

任务字段

字段名类型说明
idstring任务唯一标识,采用 UUID 格式。
status_codeinteger任务状态码,通常在 1000060000 范围。
status_messagestring任务状态信息。
timestring任务执行耗时,单位为秒。
costfloat平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。
result_countintegerresult 数组中的数量。
patharray当前请求的 URL 路径信息。
dataobject请求时提交的参数。
resultarray当前任务的结果数组。

result 字段

字段名类型说明
se_typestring搜索引擎类型,此接口返回 apple
app_idstring请求中的应用 ID。
location_codeinteger请求中的地区代码。
language_codestring请求中的语言代码。
total_countinteger数据库中与请求的结果总数。
items_countintegeritems 数组中返回的结果数量。
itemsarray指定应用的排名指标数据。

items 字段

字段名类型说明
se_typestring搜索引擎类型,此接口返回 apple
app_idstring应用 ID。
metricsobject应用排名对应的指标数据。

metrics.app_store_search_organic 字段

该对象应用在 App Store 自然搜索结果中的排名分布及搜索量。

字段名类型说明
pos_1integer应用排名第 1 的自然搜索结果页数量。
pos_2_3integer应用排名第 2 至第 3 的自然搜索结果页数量。
pos_4_10integer应用排名第 4 至第 10 的自然搜索结果页数量。
pos_11_100integer应用排名第 11 至第 100 的自然搜索结果页数量。
countinteger含该应用的自然搜索结果页总数。
search_volumeinteger应用排名在 App Store 自然搜索结果中的总搜索量。

curl 示例

bash
curl --location --request POST \
  "https://api.seermartech.cn/v3/dataforseo_labs/apple/bulk_app_metrics/live" \
  --header "Authorization: Bearer smt_live_YOUR_KEY" \
  --header "Content-Type: application/json" \
  --data-raw '[
    {
      "app_ids": ["835599320"],
      "location_name": "United States",
      "language_name": "English",
      "tag": "tiktok-metrics"
    }
  ]'

Python 示例

python
import requests

url = "https://api.seermartech.cn/v3/dataforseo_labs/apple/bulk_app_metrics/live"

headers = {
    "Authorization": "Bearer smt_live_YOUR_KEY",
    "Content-Type": "application/json",
}

post_data = [
    {
        "app_ids": ["835599320"],
        "location_name": "United States",
        "language_name": "English",
    }
]

response = requests.post(url, headers=headers, json=post_data)

if response.ok:
    result = response.json()
    if result.get("status_code") == 20000:
        print(result)
    else:
        print(
            "请求失败,状态码:%s,信息:%s"
            % (result.get("status_code"), result.get("status_message"))
        )
else:
    print("HTTP 请求失败:", response.status_code, response.text)

TypeScript 示例

typescript
import axios from "axios";

const postData = [
  {
    app_ids: ["835599320"],
    location_name: "United States",
    language_name: "English",
    tag: "tiktok-metrics",
  },
];

axios
  .post(
    "https://api.seermartech.cn/v3/dataforseo_labs/apple/bulk_app_metrics/live",
    postData,
    {
      headers: {
        Authorization: "Bearer smt_live_YOUR_KEY",
        "Content-Type": "application/json",
      },
    }
  )
  .then((response) => {
    const result = response.data;
    console.log(result);
  })
  .catch((error) => {
    console.error("请求失败:", error.response?.data || error.message);
  });

响应示例

json
{
  "version": "0.1.20220428",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "0.2300 sec.",
  "cost": 0.0102,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "01234567-89ab-cdef-0123-456789abcdef",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "0.1800 sec.",
      "cost": 0.0102,
      "result_count": 1,
      "path": [
        "v3",
        "dataforseo_labs",
        "apple",
        "bulk_app_metrics",
        "live"
      ],
      "data": {
        "api": "dataforseo_labs",
        "function": "bulk_app_metrics",
        "se_type": "apple",
        "app_ids": ["835599320"],
        "location_code": 2840,
        "language_name": "English",
        "tag": "tiktok-metrics"
      },
      "result": [
        {
          "se_type": "apple",
          "app_id": "835599320",
          "location_code": 2840,
          "language_code": "en",
          "total_count": 1,
          "items_count": 1,
          "items": [
            {
              "se_type": "apple",
              "app_id": "835599320",
              "metrics": {
                "app_store_search_organic": {
                  "pos_1": 120,
                  "pos_2_3": 250,
                  "pos_4_10": 680,
                  "pos_11_100": 1430,
                  "count": 2480,
                  "search_volume": 1250000
                }
              }
            }
          ]
        }
      ]
    }
  ]
}

状态码与错误处理

请根据顶层 status_code、任务级 status_code 以及对应的 status_message 判断请求是否成功。

建议至少处理以下:

  • HTTP 层请求失败;
  • 顶层 status_code 非成功状态;
  • tasks_error 大于 0;
  • 任务级 status_code 非成功状态;
  • resultitems 为空;
  • app_ids过 1000 个;
  • 未同时提供有效的地区参数或语言参数。

实用场景

  • 批量评估应用自然排名: 一次提交多个 App Store 应用,快速获取各应用在不同排名区间的覆盖,支持竞品排名对比。
  • 监控应用商店 SEO 表现: 定期获取 pos_1pos_2_3pos_4_10 等指标,识别应用排名提升或下滑趋势。
  • 估算流量潜力: 使用 search_volume 汇总应用排名的搜索量,为 ASO 选词和优化提供依据。
  • 筛选高价值竞品应用: 批量比较多个应用的自然搜索结果覆盖数和搜索量,竞品研究与市场定位。
  • 构建应用排名报表: 结合 tag 和任务 ID 管理批量任务,将返回指标接 ASO 看板、周报或数据仓库。

统一入口:官网 · LLM API · 控制台