开发者文档 › API 参考

“你的应用”接口

这个工作区追踪的应用:排名、竞品、评论、商店页面、页面变更时间线、编辑推荐、榜单和页面检查。

身份验证 · 额度 · 通用参数 · 错误代码 · openapi.json

GET /apps

列出此 Storelift 账户跟踪的 App(ID、名称、国家或地区、关键词)。请先调用它,其他所有工具都需要这里返回的 appId。

权限范围
apps:read
额度
1
套餐
Free
curl "https://storelift.net/v1/apps" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/keywords

某个 App 在 App Store / Google Play 某个国家或地区的关键词排名。三种状态互不相同:measured=false 表示该查询未能测量,rank=null 表示已测量但 App 不在靠前的结果中,rank=<number> 即排名。切勿把它们合并为一种,把未测量的一天算作零会得出错误的答案。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/keywords?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/rivals

在搜索中排在此 App 之上的 App。对每个竞品,你会得到它胜过你的关键词、它在该词上的排名(theirRank)和你的排名(ourRank)。ourRank 为 null 表示该 App 在这个关键词下完全没有出现。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/rivals?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/ai

在一份标有日期的 AI 引擎回答样本中对 App 的提及;这并不复现 ChatGPT、Claude 或 Gemini 向每个用户展示的内容。需要 Studio 或 Enterprise 以及 ai:read 权限范围。engines 保存每个已测量引擎的回答;providers 给出 measured、failed 或 not_measured 状态。引擎不可用不等于得分为零。请阅读带日期的样本及其问题数;它不是通用排名,也不是对所有消费者回答的衡量。

权限范围
ai:read
额度
1
套餐
Studio

还接受: appId (必填) · country

curl "https://storelift.net/v1/apps/sbx-lumen/ai?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/ai-check

为某个 App 在某个国家或地区启动一次 AI 可见度抽样,使用本次运行可用的引擎。需要 Studio 或 Enterprise 以及 ai:read 权限范围;Pro 的面板额度不包含此 MCP 工具的使用权限。消耗一次套餐内或已购买的 AI 可见度运行;结果由 get_ai_visibility 返回。每个 App 同一时间只运行一次测量。

权限范围
ai:read
额度
1
套餐
Studio
参数位置类型说明
countryquerystring国家或地区代码,例如 tr、us(留空 = 该 App 的前三个国家或地区)

还接受: appId (必填)

除了额度之外,这次调用还会用掉一次套餐内或另购的 AI 可见度测量,所以这里没有可复制的命令。

GET /apps/{appId}/history

某个国家或地区的关键词排名历史。序列中的点为 [day, rank];rank 为 null 表示当天 App 不在靠前的结果中,这与排名差不是一回事。Pro 套餐。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填) · country

curl "https://storelift.net/v1/apps/sbx-lumen/history?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/page

App 自身在某个国家或地区的商店页面信号(不含名称和副标题):版本、App 内活动、编辑推荐、类似 App 货架和截图组(iOS),以及 Google Play 页面(精确安装量、评分分布、广告/App 内购买标记、排行榜徽章)。ios.listingExtras 包含 App 支持的语言、星级分布(1★ 到 5★)、正在进行和即将开始的 App 内活动、推广文本以及推荐的 App 内购买项目;在 Free 中只返回语言数量、前 5 种语言和星级分布,其余内容的数量由 locked 给出。timeline 列出我们在商店页面上检测到的带日期的变更,这是解释排名变动最省事的线索。measured=false 表示该页面从未被读取过,这与空页面不是一回事。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填) · country

curl "https://storelift.net/v1/apps/sbx-lumen/page?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/reviews

某个国家或地区的近期评论:list 是 App Store 评论,android 是 Google Play 评论(时间窗口更短),每条都含正文、评分和日期。newCount 是自上次测量以来新增的条数;在较旧的记录上它为 null,请将其理解为未知而不是零。android: null 表示该 Play 页面正在等待首次测量,空列表表示该页面没有评论。

权限范围
reviews:read
额度
1
套餐
Free

还接受: appId (必填) · country

curl "https://storelift.net/v1/apps/sbx-lumen/reviews?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/charts

某个国家或地区的 App Store 排行榜位置:各榜单(免费 / 付费 / 畅销,总榜和类别内)的当前排名及其历史。这里有意不含 Google Play:它没有公开的排行榜,给出数字就是编造。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填) · country

curl "https://storelift.net/v1/apps/sbx-lumen/charts?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/reviews/search

在某个店面中按文本、星级、App 版本和日期范围搜索某个 App 的评论,从新到旧排列。在你套餐的评论窗口内,从完整评论存档中最多返回 1,000 行。total 是匹配数量;truncated 告诉你匹配的行数是否多于你请求的行数。

权限范围
reviews:read
额度
1
套餐
Free
参数位置类型说明
qquerystring要在评论标题或正文中查找的文本
ratingquerystring星级,以逗号分隔,例如 1,2
versionquerystring撰写评论时的 App 版本,例如 2.4.0
fromquerystring起始日,YYYY-MM-DD
toquerystring结束日,YYYY-MM-DD
limitquerynumber行数,最多 1000(默认 100)

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/reviews/search?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/reviews/stats

某个 App 在某个店面的星级分布、平均分和 1–2 星评论占比,另有按天的曲线(每天的数量和平均分)以及按版本的细分,这样就能把下滑与导致它的版本对应起来。默认为最近 90 天。

权限范围
reviews:read
额度
1
套餐
Free
参数位置类型说明
daysquerynumber最近 N 天,最多 365(默认 90)
fromquerystring起始日,YYYY-MM-DD(优先于 days)
toquerystring结束日,YYYY-MM-DD

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/reviews/stats?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/reviews/summary

某个 App 在某个店面的评论 AI:近期评论的摘要及其中的主题(抱怨、需求、称赞),每个主题都引用评论作为依据。同一天、同一批评论会返回已保存的摘要,不占用额度;新摘要会从每月额度中使用 1 次评论 AI 额度(所有套餐均可用,Free 有少量体验额度)。评论太少、无法摘要时,返回 state: "too_few" 及评论数量。

权限范围
reviews:read
额度
1
套餐
Free
参数位置类型说明
storequeryios | android默认为 ios
langqueryen | tr | de | es | fr | pt | ru | ja | ko | zh摘要的语言(默认 en)

还接受: appId (必填) · country

除了额度之外,这次调用还会用掉每月配额中的一次评论 AI,所以这里没有可复制的命令。

GET /apps/{appId}/reviews/reply-draft

针对某条评论的开发者回复草稿,使用该店面的语言。评论的评分和文字来自我们这边保存的评论,因此草稿回应的是评论者实际写下的内容;note 用来补充你希望回复说明的内容(已发布修复、可尝试的设置)。这里只返回草稿,回复由 reply_review 在你确认后发布。使用 1 次评论 AI 额度。

权限范围
reviews:read
额度
1
套餐
Free
参数位置类型说明
storequeryios | android默认为 ios
reviewId必填querystring来自 get_reviews 或 search_reviews 的评论 ID
notequerystring回复应说明的内容,例如:已在 2.4.1 中修复

还接受: appId (必填) · country

除了额度之外,这次调用还会用掉一次评论 AI 次数,所以这里没有可复制的命令。

GET /apps/{appId}/timeline

某个 App 商店页面上带日期的变更:来自商店页面的新版本、截图、App 内活动和推荐位,以及来自 App Store Connect 的关键词字段修改,每项都附带前后的关键词排名变动:在变更前最后一次测量与变更后 window 天内最后一次测量之间上升、下降、进入或跌出的词,以及变动最大的五个。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
windowquerynumber每次变更后读取排名的天数,最多 30(默认 7)

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/timeline?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/today

一次回答给出某个 App 的一天,即“今天”页面:来自已连接数据源的购买、试用和续订,新评论,相对昨天的排名和类别变动,排到你之上的新进入者,新的 App 内活动,以及昨天的 App Store、Google Play、净收入和广告数据,每项都标明其数据源。tz 让“今天”成为用户自己的一天。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
tzquerystringIANA 时区,例如 Europe/Istanbul(默认 UTC)
dayquerystring要读取的另一天,YYYY-MM-DD

还接受: appId (必填)

curl "https://storelift.net/v1/apps/sbx-lumen/today" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/competition

某个店面中每个关键词有多少个 App 在竞争,针对出现在两个或更多 App 上的词返回。默认为该 App 跟踪的关键词;传入 terms 可在跟踪之前先统计候选词。corpus 是统计所依据的集合大小。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
termsquerystring最多 100 个词,以逗号分隔(默认为跟踪的关键词)

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/competition?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/rivals/{rivalId}

你的 App 在某个店面的一个竞品:其名称、评分和评分数及它们的 90 天历史(名称变化是商店页面被改写的表现),以及它有排名的关键词和在每个词上的排名。关键词列表会从每月额度中使用 1 次关键词侦察,并保持开放 30 天;额度用完后,回答只带竞品自身的数据并附 locked: true。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
rivalId必填pathstring来自 get_rivals 的竞品 ID

还接受: appId (必填) · country · platform

除了额度之外,这次调用还会用掉每月配额中的一次竞品关键词分析,所以这里没有可复制的命令。

GET /apps/{appId}/rivals/{rivalId}/adnetworks

竞品如何通过广告变现:其合作的广告网络,每个都标记为 DIRECT 或 RESELLER。状态用来区分不同情况:找到的广告网络、未声明广告网络的开发者(no_file)、这次未能完成的检查(unreachable),或没有开发者网站的商店页面(no_site)。保留 14 天。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
rivalId必填pathstring来自 get_rivals 的竞品 ID

还接受: appId (必填) · platform

curl "https://storelift.net/v1/apps/sbx-lumen/rivals/1000000001/adnetworks" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/rivals/{rivalId}/market

竞品在某个店面的市场数据:在 Google Play 上是精确安装量和 App 内购买价格区间,有两次测量后还包括两次测量之间的安装量;在 App Store 上是其价格、评分数、发布日期以及是否销售 App 内购买项目。按请求测量并保留 7 天。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
rivalId必填pathstring来自 get_rivals 的竞品 ID

还接受: appId (必填) · country · platform

curl "https://storelift.net/v1/apps/sbx-lumen/rivals/1000000001/market?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/storefront-audit

你的 iOS 商店页面在每个 App Store 店面的情况:App 在哪些地方销售,哪些店面显示的是后备文本或后备截图而不是自己的语言,以及每个店面还会索引的第二个语言区域。返回最近一次扫描;当最近一次扫描早于 12 小时时,refresh: true 会启动新的扫描并返回 202 及 eta 秒数,过了这段时间再调用。完整表格适用于 Pro 及以上套餐;Free 提供预览。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填)

curl "https://storelift.net/v1/apps/sbx-lumen/storefront-audit" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/suggest

某个 App 在某个店面的新关键词创意,用该店面的搜索语言书写:人们会在商店搜索框中输入的 1–3 个词的搜索词,每个都附一行理由,说明谁在搜索它,以及这个 App 为什么能满足这一需求。已跟踪的关键词、你隐藏的关键词和品牌名不会出现。从每月额度中使用 1 次 AI 写作额度(Pro 及以上);在跟踪之前,请用 get_keyword_metrics 测量这些创意。

权限范围
apps:read
额度
1
套餐
Pro
参数位置类型说明
ccquerystring店面代码,例如 tr、us(默认为该 App 的第一个国家或地区)
langqueryen | tr | de | es | fr | pt | ru | ja | ko | zh理由的语言(默认 en)

还接受: appId (必填)

除了额度之外,这次调用还会用掉每月配额中的一次 AI 写作,所以这里没有可复制的命令。

POST /apps/{appId}/validate-listing

在提交到 App Store Connect 之前检查 App Store 商店文案草稿。它会报告各字段的字符限制、关键词字段中被空格占用的空间、重复、已出现在名称或副标题中的词、品牌词和填充词、名称与副标题之间的重复、Apple 产品名称和价格用词、文本是否使用了该语言区域的语言和文字,以及草稿遗漏了 App 的哪些跟踪关键词。不写入任何内容;只传入你想检查的字段。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
localebodystring商店页面的语言区域,例如 en-US、de-DE、ja
countrybodystring用于对照覆盖情况的跟踪关键词所属国家或地区,例如 us(默认为该 App 的第一个国家或地区)
namebodystringApp 名称,最多 30 个字符
subtitlebodystring副标题,最多 30 个字符
keywordsbodystring关键词字段,以逗号分隔,最多 100 个字符
promotionalTextbodystring推广文本,最多 170 个字符
descriptionbodystring描述,最多 4000 个字符

还接受: appId (必填)

curl -X POST "https://storelift.net/v1/apps/sbx-lumen/validate-listing" \
  -H "Authorization: Bearer $STORELIFT_API_KEY" \
  -H "content-type: application/json" \
  -d '{"locale":"en-US","name":"Lumen: Sleep Sounds","subtitle":"White noise and rain for sleep","keywords":"calm,relax,nap,baby,fan,ocean,lullaby"}'

GET /apps/{appId}/draft

一份商店文案草稿(标题、副标题、推广文本和描述),基于在某个店面为此 App 测量的关键词,按需求高低排序生成。每个字段都附有相对于商店限制的字符数,另有两项审核检查:标题或副标题中的 Apple 产品名称(仅 App Store)和价格用语。termsUsed 列出草稿所依据的已测量词;excluded 列出尚待测量的跟踪词。不会向商店写入任何内容,写入由 update_listing 完成。使用 1 次 AI 写作额度(Pro 及以上)。

权限范围
apps:read
额度
1
套餐
Pro
参数位置类型说明
ccquerystring店面代码,例如 tr、us(默认为该 App 的第一个国家或地区)

还接受: appId (必填) · platform

除了额度之外,这次调用还会用掉一次 AI 写作次数,所以这里没有可复制的命令。

GET /apps/{appId}/localize

为新的语言区域撰写完整的 App Store 商店文案(名称、副标题、关键词字段和描述),以 App 的源商店文案为基础,并先在该店面中测量每个关键词。第一次调用会启动撰写并返回 pending(会占用套餐中的 1 次商店文案撰写:Free 总共 1 次,Pro 每月 20 次,Studio 每月 75 次);使用 poll=true 再次调用,直到文案返回。设置 shots=true 时,截图说明文字也会以同一语言一并返回。需要先为该 App 运行过 get_storefront_audit。不会向 App Store Connect 写入任何内容,写入由 update_listing 完成。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
locale必填querystring目标语言区域,例如 de_de、pt_br、ja_jp(de-DE 也可以)

还接受: appId (必填)

除了额度之外,这次调用还会占用套餐中的一次商店页面写入,所以这里没有可复制的命令。

GET /apps/{appId}/shot-text

你在某个店面的前四张 App Store 截图上的说明文字。Apple 索引的是商店页面文本,因此这些文字影响的是转化而不是搜索排名,回答中用 indexed: false 表明这一点。在截图变更之前一直保留;重新读取会使用 1 次 AI 写作额度(Pro 及以上)。

权限范围
apps:read
额度
1
套餐
Pro
参数位置类型说明
ccquerystring店面代码,例如 tr、us(默认为该 App 的第一个国家或地区)

还接受: appId (必填)

除了额度之外,这次调用还会用掉一次 AI 写作次数,所以这里没有可复制的命令。

GET /apps/{appId}/chart-movers

App 所在类别排行榜中谁发生了变动:上升者和下降者(3 位及以上)、新上榜和跌出榜单的 App,均附名称,另有 App 自身及其选定竞品在两天中的位置。类别取自 App 的排行榜记录;传入 genre 可查看其他类别。Pro 套餐。

权限范围
apps:read
额度
1
套餐
Pro
参数位置类型说明
kindqueryfree | paid | grossing排行榜(默认 free)
genrequerystringApp Store 类别 ID,例如 6013(默认为 App 自己的类别)
daysquerynumber与多少天前比较,1-90(默认 1)
limitquerynumber每组的行数,最多 100(默认 25)

还接受: appId (必填) · country

curl "https://storelift.net/v1/apps/sbx-lumen/chart-movers?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}/featuring

Apple 今天在各个国家或地区的哪些位置展示了该 App:编辑推荐卡片(dedicated: true 表示专题讲的就是这个 App,false 表示它出现在合集中)、进行中和已排期的 App 内活动、Apple 的 You Might Also Like 货架,以及推荐位和新活动的带日期历史。country 留空则涵盖该 App 跟踪的所有国家或地区。

权限范围
apps:read
额度
1
套餐
Free
参数位置类型说明
countryquerystring国家或地区代码,例如 tr、us(留空 = 该 App 跟踪的所有国家或地区)

还接受: appId (必填)

curl "https://storelift.net/v1/apps/sbx-lumen/featuring?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

GET /apps/{appId}

一个被跟踪的 App,包含其平台 ID、国家或地区、各国家或地区的跟踪关键词以及最新的测量快照(各国家或地区的关键词表)。请先用 list_apps 获取 appId。

权限范围
apps:read
额度
1
套餐
Free

还接受: appId (必填)

curl "https://storelift.net/v1/apps/sbx-lumen" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"

在沙盒中打开

示例响应

GET /apps/{appId}/weekly-plan

该 App 本周的商店页面建议,与仪表板“本周要做”卡片中的列表相同,按效果从高到低排列。建议只有通过严格检查才会出现:只有当某个关键词是 App 所在细分领域的核心高需求词、App 已在该词上排在第 4–15 位、排在上面的竞品在名称中带有它,并且放得下而不必去掉品牌词或任何已有排名的词时,才会建议放入标题或副标题;细分词或长尾关键词最多只进入关键词字段,而且仅在有空间时;其他类别、其他语言以及用户拒绝过的关键词绝不会出现;最近一次商店页面变更仍在稳定期内时不会给出任何建议(settling 说明到何时为止)。每个任务包含建议语句、当前文本和建议文本、增加和移除的词、理由(测量到的事实)、取舍以及置信度。不传 country 时会合并所有店面,同一项变更合为一个任务并附其国家或地区。结果经常为空,这是有意为之。Pro 套餐。

权限范围
apps:read
额度
1
套餐
Pro
参数位置类型说明
countryquerystring一个店面,例如 tr、us(省略则合并所有店面)
goalquerydownloads | rank | revenue为保持兼容而接受;建议按预期价值排序
platformqueryios | android商店(默认 ios)
limitqueryinteger返回的任务数,1–10(默认 5)

还接受: appId (必填)

curl "https://storelift.net/v1/apps/sbx-lumen/weekly-plan?country=us" \
  -H "Authorization: Bearer $STORELIFT_API_KEY"