Skip to content

Apple App Store 应用列表搜索(实时)

接口说明

该接口用于实时检索 App Store 中已发布的应用列表,并返回应用的详细信息,例如:

  • 应用 ID
  • 图标
  • 评论数
  • 评分
  • 价格
  • 开发信息
  • 分类
  • 支持语言
  • 更新时间
  • 相似应用等

检索结果会根据请求中传的 titledescriptioncategories 等参数进行匹。

注意: 当前该接口支持美国地区数据,即 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 次调用。


请求参数

字段名类型说明
categoriesarray可选。应用分类列表。用于按分类检索应用。最多可传 10 个分类。可通过 /v3/app_data/apple/app_listings/categories 获取可用分类列表。
descriptionstring可选。应用描述中的。最长 200 个字符。
titlestring可选。应用标题中的。最长 200 个字符。
filtersarray可选。结果过滤条件数组。最多可同时设置 8 个过滤条件;条件之间可使用逻辑运算符 andor。支持的比较运算符:regexnot_regex<<=>>==<>innot_inlikenot_like。在 likenot_like 中可使用 % 匹任意长度字符串。可通过 /v3/app_data/apple/app_listings/available_filters 获取可用过滤字段。
order_byarray可选。结果排序规则。排序字段写法与 filters 中字段一致。排序方向支持:asc(升序)、desc(降序)。单次请求最多设置 3 条排序规则。每条规则格式为 字段,排序方向
limitinteger可选。返回的最大应用数量。默认值:100;最大值:1000
offsetinteger可选。结果偏移量。默认值:0。例如设置为 10 时,将跳过前 10 条结果并返回后续数据。建议在获取不 10,000 条结果时使用。
offset_tokenstring可选。后续翻页请求使用的令牌。该值会在响应中返回。若需要获取 100,000 条结果,建议使用该参数以时。注意: 当请求中使用 offset_token 时它参数与上一次请求一致。
tagstring可选。用户自定义任务标识。最长 255 个字符。可用于请求与结果对,响应中的 data 对象会返回该值。

响应结构

接口返回 JSON 数据,顶层 tasks 数组。

顶层响应字段

字段名类型说明
versionstringAPI 当前版本。
status_codeinteger通用状态码。完整错误码请参考 /v3/appendix/errors。建议在系统中做好异常处理。
status_messagestring通用状态说明。
timestring执行耗时,单位秒。
costfloat本次请求总费用,单位 USD。
tasks_countintegertasks 数组中的任务数量。
tasks_errorintegertasks 数组中报错的任务数量。
tasksarray任务结果数组。

tasks[] 字段

字段名类型说明
idstring任务唯一标识,UUID 格式。
status_codeinteger任务状态码,范围通常为 10000-60000
status_messagestring任务状态信息。
timestring任务执行耗时。
costfloat当前任务费用,单位 USD。
result_countintegerresult 数组中的数量。
patharrayURL 路径。
dataobject与请求中提交的参数一致。
resultarray结果数组。

result[] 字段

字段名类型说明
total_countinteger数据库中匹结果总数。
countinteger当前结果集中返回的条目数。
offsetinteger当前返回结果对应的偏移量。
offset_tokenstring后续分页令牌。可在下一次 POST 请求中使用。
itemsarray应用列表及详细数据。

items[] 字段

字段名类型说明
app_idstring返回应用的 ID。
se_domainstring请求中的搜索域名。
location_codeinteger请求中的地区代码。
language_codestring请求中的语言代码。
check_urlstring指向 App Store 结果页的直达链接,可用于校验结果准确性。
time_updatestring数据最近更新时间,ISO 8601 / UTC 时间格式。示例:2023-05-23 10:16:19 +00:00
itemobject应用详细信息对象。

item 字段

字段名类型说明
typestring结果类型。当前可能值:app_store_info_organic
rank_groupinteger同类型组排名。
rank_absoluteinteger所有应用中的绝对排名。
positionstring结果位置。当前值通常为 left
app_idstring应用 ID。
titlestring应用标题。
urlstringApp Store 应用页链接。
iconstring应用图标 URL。
descriptionstring应用描述。
reviews_countinteger应用累计评论数。
ratingobject应用平均评分对象。
priceobject应用价格对象;应用时可能为 null
is_freeboolean是否为应用。
main_categorystring应用主分类。
categoriesarray应用分类列表。
languagesarray应用支持语言列表。
advisoriesarray年龄分级或使用限制信息。
developerstring开发名称。
developer_idstring开发在 App Store 中的 ID。
developer_urlstring开发页面链接。
versionstring当前应用版本。
minimum_os_versionstring安所需最低系统版本。
sizestring应用大小。
released_datestring应用发布时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00
last_update_datestring应用最近更新时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00
update_notesstring最近一次更新说明。
imagesarrayApp Store 页面中的应用截图/图片 URL 列表。
similar_appsarray相似应用列表。
more_apps_by_developerarray同一开发的应用列表。

rating 字段

字段名类型说明
rating_typestring评分类型,当前为 Max5
valuefloat平均评分值。
votes_countinteger评分反馈数量;某些场景下可能为 null
rating_maxinteger当前评分制的最大值。Max5 对应 5

price 字段

字段名类型说明
currentfloat当前价格。
regularfloat常规价格。
max_valuefloat最高价格。
currencystring价格币种,ISO 代码。
is_price_rangeboolean是否为价格区间。
displayed_pricestring结果中展示的原始价格文本。

similar_apps[] / more_apps_by_developer[] 字段

字段名类型说明
app_idstring应用 ID。
titlestring应用标题。
urlstringApp 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_codestatus_message
  • 建议同时校验:
  • 顶层 status_code
  • tasks_error
  • tasks[].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 检索特定分类下的应用,识别蓝海方向和潜在产品切点。
  • 分析开发矩阵布局:通过 developermore_apps_by_developer 等字段追踪同一开发的产品组合,行业研究。
  • 跟踪应用更新与活跃度:基于 last_update_dateupdate_notesversion 等字段监控竞品迭代节奏,支持产品优化和市场响应。

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