主题
Apple App Store 应用列表搜索(实时)
接口说明
该接口用于实时检索 App Store 中已发布的应用列表,并返回应用的详细信息,例如:
- 应用 ID
- 图标
- 评论数
- 评分
- 价格
- 开发信息
- 分类
- 支持语言
- 更新时间
- 相似应用等
检索结果会根据请求中传的 title、description、categories 等参数进行匹。
注意: 当前该接口支持美国地区数据,即 location_code=2840。
请求地址
POST https://api.seermartech.cn/v3/app_data/apple/app_listings/search/live
计费说明
按请求次数计费。 参考价请以参考单价换算,扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求格式
所有 POST 数据使用 JSON(UTF-8 编码),并且请求体为 JSON 数组 格式:
json
[
{
"title": "vpn",
"description": "vpn",
"order_by": ["item.rating.value,desc"],
"filters": [
["item.rating.value", ">", 4]
],
"limit": 2
}
]接口支持每分钟最多 2000 次调用。
请求参数
| 字段名 | 类型 | 说明 |
|---|---|---|
categories | array | 可选。应用分类列表。用于按分类检索应用。最多可传 10 个分类。可通过 /v3/app_data/apple/app_listings/categories 获取可用分类列表。 |
description | string | 可选。应用描述中的。最长 200 个字符。 |
title | string | 可选。应用标题中的。最长 200 个字符。 |
filters | array | 可选。结果过滤条件数组。最多可同时设置 8 个过滤条件;条件之间可使用逻辑运算符 and、or。支持的比较运算符:regex、not_regex、<、<=、>、>=、=、<>、in、not_in、like、not_like。在 like 和 not_like 中可使用 % 匹任意长度字符串。可通过 /v3/app_data/apple/app_listings/available_filters 获取可用过滤字段。 |
order_by | array | 可选。结果排序规则。排序字段写法与 filters 中字段一致。排序方向支持:asc(升序)、desc(降序)。单次请求最多设置 3 条排序规则。每条规则格式为 字段,排序方向。 |
limit | integer | 可选。返回的最大应用数量。默认值:100;最大值:1000。 |
offset | integer | 可选。结果偏移量。默认值:0。例如设置为 10 时,将跳过前 10 条结果并返回后续数据。建议在获取不 10,000 条结果时使用。 |
offset_token | string | 可选。后续翻页请求使用的令牌。该值会在响应中返回。若需要获取 100,000 条结果,建议使用该参数以时。注意: 当请求中使用 offset_token 时它参数与上一次请求一致。 |
tag | string | 可选。用户自定义任务标识。最长 255 个字符。可用于请求与结果对,响应中的 data 对象会返回该值。 |
响应结构
接口返回 JSON 数据,顶层 tasks 数组。
顶层响应字段
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | API 当前版本。 |
status_code | integer | 通用状态码。完整错误码请参考 /v3/appendix/errors。建议在系统中做好异常处理。 |
status_message | string | 通用状态说明。 |
time | string | 执行耗时,单位秒。 |
cost | float | 本次请求总费用,单位 USD。 |
tasks_count | integer | tasks 数组中的任务数量。 |
tasks_error | integer | tasks 数组中报错的任务数量。 |
tasks | array | 任务结果数组。 |
tasks[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。 |
status_code | integer | 任务状态码,范围通常为 10000-60000。 |
status_message | string | 任务状态信息。 |
time | string | 任务执行耗时。 |
cost | float | 当前任务费用,单位 USD。 |
result_count | integer | result 数组中的数量。 |
path | array | URL 路径。 |
data | object | 与请求中提交的参数一致。 |
result | array | 结果数组。 |
result[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
total_count | integer | 数据库中匹结果总数。 |
count | integer | 当前结果集中返回的条目数。 |
offset | integer | 当前返回结果对应的偏移量。 |
offset_token | string | 后续分页令牌。可在下一次 POST 请求中使用。 |
items | array | 应用列表及详细数据。 |
items[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
app_id | string | 返回应用的 ID。 |
se_domain | string | 请求中的搜索域名。 |
location_code | integer | 请求中的地区代码。 |
language_code | string | 请求中的语言代码。 |
check_url | string | 指向 App Store 结果页的直达链接,可用于校验结果准确性。 |
time_update | string | 数据最近更新时间,ISO 8601 / UTC 时间格式。示例:2023-05-23 10:16:19 +00:00 |
item | object | 应用详细信息对象。 |
item 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 结果类型。当前可能值:app_store_info_organic |
rank_group | integer | 同类型组排名。 |
rank_absolute | integer | 所有应用中的绝对排名。 |
position | string | 结果位置。当前值通常为 left。 |
app_id | string | 应用 ID。 |
title | string | 应用标题。 |
url | string | App Store 应用页链接。 |
icon | string | 应用图标 URL。 |
description | string | 应用描述。 |
reviews_count | integer | 应用累计评论数。 |
rating | object | 应用平均评分对象。 |
price | object | 应用价格对象;应用时可能为 null。 |
is_free | boolean | 是否为应用。 |
main_category | string | 应用主分类。 |
categories | array | 应用分类列表。 |
languages | array | 应用支持语言列表。 |
advisories | array | 年龄分级或使用限制信息。 |
developer | string | 开发名称。 |
developer_id | string | 开发在 App Store 中的 ID。 |
developer_url | string | 开发页面链接。 |
version | string | 当前应用版本。 |
minimum_os_version | string | 安所需最低系统版本。 |
size | string | 应用大小。 |
released_date | string | 应用发布时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
last_update_date | string | 应用最近更新时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
update_notes | string | 最近一次更新说明。 |
images | array | App Store 页面中的应用截图/图片 URL 列表。 |
similar_apps | array | 相似应用列表。 |
more_apps_by_developer | array | 同一开发的应用列表。 |
rating 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
rating_type | string | 评分类型,当前为 Max5。 |
value | float | 平均评分值。 |
votes_count | integer | 评分反馈数量;某些场景下可能为 null。 |
rating_max | integer | 当前评分制的最大值。Max5 对应 5。 |
price 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
current | float | 当前价格。 |
regular | float | 常规价格。 |
max_value | float | 最高价格。 |
currency | string | 价格币种,ISO 代码。 |
is_price_range | boolean | 是否为价格区间。 |
displayed_price | string | 结果中展示的原始价格文本。 |
similar_apps[] / more_apps_by_developer[] 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
app_id | string | 应用 ID。 |
title | string | 应用标题。 |
url | string | App Store 应用页链接。 |
请求示例
cURL
bash
curl --location --request POST "https://api.seermartech.cn/v3/app_data/apple/app_listings/search/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"title": "vpn",
"description": "vpn",
"order_by": [
"item.rating.value,desc"
],
"filters": [
["item.rating.value", ">", 4]
],
"limit": 2
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/app_data/apple/app_listings/search/live"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
data = [
{
"title": "vpn",
"description": "vpn",
"order_by": [
"item.rating.value,desc"
],
"filters": [
["item.rating.value", ">", 4]
],
"limit": 2
}
]
response = requests.post(url, headers=headers, json=data)
print(response.json)TypeScript
typescript
import axios from "axios";
const postData = [
{
title: "vpn",
description: "vpn",
order_by: [
"item.rating.value,desc"
],
filters: [
["item.rating.value", ">", 4]
],
limit: 2
}
];
axios({
method: "post",
url: "https://api.seermartech.cn/v3/app_data/apple/app_listings/search/live",
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
},
data: postData
})
.then((response) => {
console.log(response.data);
})
.catch((error) => {
console.error(error);
});响应示例
json
{
"version": "0.1.20251208",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.2536 sec.",
"cost": 0.102,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"data": {
"api": "app_data",
"function": "search",
"se": "apple",
"title": "vpn",
"order_by": [
"item.rating.value,desc"
],
"filters": [
["item.rating.value", ">", 4]
],
"internal_list_limit": 2,
"limit": 2
},
"result": [
{
"items": [
{
"app_id": "1450256682",
"se_domain": "itunes.apple.com",
"location_code": 2840,
"language_code": "en",
"check_url": "https://apps.apple.com/us/app/id1450256682",
"time_update": "2025-12-07 05:53:31 +00:00",
"item": {
"type": "app_store_info_organic",
"rank_group": 0,
"rank_absolute": 0,
"position": "left",
"app_id": "1450256682",
"title": "World Connect by VPN Tracker",
"url": "https://apps.apple.com/us/app/world-connect-by-vpn-tracker/id1450256682",
"icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple116/v4/ea/9a/7f/ea9a7f32-3d26-3be8-6a8d-51baf6e6fa5a/AppIcon_WC__U007emarketing-0-8-0-85-220.png/512x512bb.jpg",
"description": "示例描述",
"reviews_count": 12,
"rating": {
"rating_type": "Max5",
"value": 4.8,
"votes_count": null,
"rating_max": 5
},
"price": null,
"is_free": true,
"main_category": "Productivity",
"categories": [],
"languages": [],
"advisories": [],
"developer": "示例开发",
"developer_id": "1451197812",
"developer_url": "https://apps.apple.com/us/developer/example/id1451197812",
"version": "Version 1.4",
"minimum_os_version": "Requires iOS 9.3 or later.",
"size": "48.7 MB",
"released_date": null,
"last_update_date": "2023-04-17 09:39:48 +00:00",
"update_notes": "最新更新说明",
"images": [],
"similar_apps": [],
"more_apps_by_developer": []
}
},
{
"app_id": "1118874627",
"se_domain": "itunes.apple.com",
"location_code": 2840,
"language_code": "en",
"check_url": "https://apps.apple.com/us/app/id1118874627",
"time_update": "2025-12-07 05:53:31 +00:00",
"item": {
"type": "app_store_info_organic",
"rank_group": 1,
"rank_absolute": 1,
"position": "left",
"app_id": "1118874627",
"title": "Protelion VPN",
"url": "https://apps.apple.com/us/app/protelion-vpn/id1118874627",
"icon": "https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/1b/44/e8/1b44e8eb-d082-921b-d92e-6d799e70b4bf/AppIcon_protelion_de-1x_U007emarketing-0-8-0-85-220-0.png/512x512bb.jpg",
"description": "示例描述",
"reviews_count": 3,
"rating": {
"rating_type": "Max5",
"value": 5,
"votes_count": 3,
"rating_max": 5
},
"price": null,
"is_free": true,
"main_category": "Productivity",
"categories": [],
"languages": [],
"advisories": [],
"developer": "示例开发",
"developer_id": "1118874626",
"developer_url": "https://apps.apple.com/us/developer/example/id1118874626",
"version": "Version 5.0.6",
"minimum_os_version": "Requires iOS 15.6 or later.",
"size": "45.9 MB",
"released_date": null,
"last_update_date": "2025-02-06 22:49:56 +00:00",
"update_notes": "Optimized performance, improved UI and bug fixes",
"images": [],
"similar_apps": [],
"more_apps_by_developer": []
}
}
]
}
]
}
]
}状态码与错误处理
- 顶层
status_code=20000表示请求成功。 - 每个任务也有独立的
status_code与status_message。 - 建议同时校验:
- 顶层
status_code tasks_errortasks[].status_code
完整错误码定义请参考 /v3/appendix/errors。
使用建议
1. 使用 filters 精准筛选结果
例如按评分筛选:
json
[
{
"title": "vpn",
"filters": [
["item.rating.value", ">", 4]
]
}
]2. 使用 order_by 对结果排序
例如按评分降序:
json
[
{
"title": "vpn",
"order_by": [
"item.rating.value,desc"
]
}
]3. 大结果集分页
- 小规模翻页可使用
offset - 大规模结果集建议使用
offset_token - 当传
offset_token时它参数与前一次请求保持一致
实用场景
- 筛选高评分竞品应用:按检索同类应用,并结合评分、评论数过滤出重点竞品,为 ASO 和竞品分析提供依据。
- 监控应用搜索结果分布:按标题、描述观察某类应用在 App Store 中的呈现,评估市场竞争强度。
- 挖掘细分品类机会:结合
categories检索特定分类下的应用,识别蓝海方向和潜在产品切点。 - 分析开发矩阵布局:通过
developer、more_apps_by_developer等字段追踪同一开发的产品组合,行业研究。 - 跟踪应用更新与活跃度:基于
last_update_date、update_notes、version等字段监控竞品迭代节奏,支持产品优化和市场响应。