关于 Appfigures
Appfigures 提供的命令行工具与 MCP 服务,用于查询应用指标、评论和商店数据。适合需要应用分析、ASO 研究或市场情报的开发者与分析人员,可通过 CLI、Agent 工具、代码客户端或托管的 MCP 服务使用同一套功能。
主要功能
- 01查询应用应用列表、元数据与商店信息
- 02分析评论、评分并回复开发者回应
- 03追踪关键词排名、自然搜索与付费投放
- 04提供按数据集查询的指标与市场统计
适用场景
- 01在终端或沙箱中快速查询应用指标与商店数据
- 02在 Claude、ChatGPT 或 Cursor 中通过 MCP 分析应用表现
- 03跟踪关键词排名并研究 ASO 机会
MCP 相关
该项目提供托管的远程 MCP 服务,地址为 https://mcp.appfigures.com/mcp,MCP 客户端可通过 OAuth 登录后调用 Appfigures 工具。另有已弃用的 af mcp 本地 stdio 服务。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.appfigures.com/mcpclaude mcp add --transport http com-appfigures https://mcp.appfigures.com/mcp{"mcpServers":{"com-appfigures":{"type":"http","url":"https://mcp.appfigures.com/mcp"}}}在 Cursor 中打开{"servers":{"com-appfigures":{"type":"http","url":"https://mcp.appfigures.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-appfigures":{"type":"http","url":"https://mcp.appfigures.com/mcp"}}}{"mcpServers":{"com-appfigures":{"serverUrl":"https://mcp.appfigures.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
@appfigures/cli
Appfigures CLI — 在终端中查询应用指标、评论和商店数据。
无需安装,立即试用:
npx @appfigures/cli auth login
npx @appfigures/cli apps search "youtube"
✨ 四种方式,尽享 Appfigures AI 的强大功能
无论你的 Agent 如何构建,都可以将 Appfigures 引入其中:作为它调用的工具、它编写的代码、CLI,或通过 MCP。无论选择哪种方式,你都可以完成相同的操作,并获得相同的 JSON 数据。
- 🛠️ Agent 工具 — Agent 运行时会将 Appfigures 作为工具调用。AI SDK、OpenAI、LangChain。→ 添加工具
- 📦 客户端 — Agent 编写代码来查询 Appfigures 并获取类型化数据。→ 使用客户端
- 🖥️ CLI — 在终端或沙盒中运行 Appfigures。→
@appfigures/cli - 🔌 MCP — 将 Appfigures 连接到 Claude、ChatGPT 或 Cursor。→ 连接托管服务
安装
npm install -g @appfigures/cli
需要 Node.js 22+。也兼容 pnpm 和 yarn。
快速开始
appfigures auth login
appfigures --help
也可以使用 af 别名。
身份验证
- 自行登录。
af auth login --interactive会在浏览器中打开引导式流程;批准后,将代码粘贴回来。 - 也可以让 Agent 引导你。 默认情况下,
af auth login会打印授权 URL — 打开并批准,然后使用显示的代码运行af auth login --code <code>完成登录。Agent 可以全程代为操作。若要无人值守使用,请改为设置APPFIGURES_API_KEY:前往 appfigures.com/developers/keys,依次点击 Create a New Client 和 Create Personal Access Token 来创建令牌。
任一登录方式都会将令牌保存到操作系统的凭据管理器(macOS Keychain、Windows Credential Manager、Linux Secret Service)。请参阅环境,了解 APPFIGURES_API_KEY 和其他覆盖设置。
MCP 服务
Appfigures 在 https://mcp.appfigures.com/mcp 提供托管的 Model Context Protocol 服务。将其添加到支持远程服务的任意 MCP 客户端,并在客户端提示时使用你的 Appfigures 账户登录。无需安装,也无需管理令牌。
Claude Code。 使用一条命令添加,然后运行 /mcp 登录:
claude mcp add --transport http appfigures https://mcp.appfigures.com/mcp
Claude(网页端和桌面端)。 将 URL 添加为自定义连接器。请参阅添加目录中未列出的连接器。
ChatGPT。 使用 OAuth 将 URL 添加为自定义 MCP 服务。请参阅将 Appfigures 连接到 ChatGPT。
其他客户端。 使用相同的 URL 添加远程(Streamable HTTP)服务。请查看客户端的 MCP 文档,了解具体位置。
托管服务与 API 和 CLI 共用 Public Data 访问权限和额度。有关请求限制和额度消耗,请参阅 Appfigures API、CLI 和 MCP:访问权限、限制和 Public Data。
对于使用 APPFIGURES_API_KEY 进行身份验证的脚本和无头 Agent,可直接运行 af 命令,或在代码中使用 @appfigures/agent-toolkit。
af mcp(已弃用)
af mcp 以本地 stdio 服务的形式运行相同的工具。此命令已弃用,并将在下一个主要版本中移除。现有配置在此之前仍可使用,但不会获得新的 MCP 功能。请迁移到上文介绍的托管服务。
命令
应用
查找应用并查询其身份信息。其他命令使用这些命令返回的应用 ID。
| 命令 | 描述 |
|---|---|
af apps search | 按名称或发布者查找应用。每个统一应用返回一行。默认返回 Apple 和 Google 的应用列表;传入 --all-stores 可包含其他应用商店。若要按估算值筛选应用(例如,上个月下载量超过 100k 的应用),请使用 explorer list-products。若要查看按时间、国家或应用商店细分的估算数据,请使用 metrics query 和数据集 estimates.sales 或 estimates.revenue。 |
af apps get | 获取应用记录:基本元数据(名称、开发者等),以及用户是否跟踪该应用、可访问哪些数据。传入某个应用商店的产品 ID,或传入涵盖所有应用商店的统一应用 ID。 |
af apps tracked | 列出你的 Appfigures 账户跟踪的应用。 |
af apps breakdown | 按数据组(如销售额、使用情况、排名、评论、关键词)、应用商店、变现模式和来源(自有应用或跟踪的竞品)统计你跟踪的应用数量,并提供总数和最早发布日期。 |
探索器
搜索并分析完整的应用目录:涵盖 Apple、Google Play、Amazon 和其他主要应用商店的数百万款产品,包含 120 多个字段,涉及身份信息、应用商店和国家/地区可用性、类别、评分、发布日期、榜单排名、下载量和收入估算、SDK 使用情况、人口统计信息及相关应用。
| 命令 | 描述 |
|---|---|
af explorer list‑products | 读取一个或多个应用的目录字段。query 或 sort 中引用的字段会自动返回;传入 --extra-fields 可获取更多字段。使用 ["match","product_id",<id>] 查询单个应用,或组合筛选条件进行全体查询(例如,使用 Firebase 且美国收入超过 $1M 的 iOS 应用)。120 多个字段涵盖排名、评分、下载量和收入估算、SDK、人口统计信息等;查询语法和字段列表见 docs get catalog_playbook。 |
af explorer aggregate‑products | 对 Apple、Google Play、Amazon 和其他主要应用商店的数百万款产品组成的完整目录进行汇总,可计算符合条件的产品数量、平均值、最小值/最大值和直方图。使用与 explorer list-products 相同的查询语法;返回汇总数据,而非产品记录。适用于市场规模估算、基准比较和细分市场分析。 |
af explorer describe‑fields | 列出目录字段及当前用户对各字段的访问级别。可按关键词搜索字段。接受的字段集合与 explorer list-products 和 explorer aggregate-products 相同。 |
指标
按维度查询数值数据集。
| 命令 | 描述 |
|---|---|
af metrics query | 查询一个或多个应用的任意数值数据集。可选按最多两个维度分组,结果以嵌套分区树返回,而非应用记录。可分别按国家/地区、设备类型和日期范围筛选。filterAppsBy* 选项可缩小应用范围(按 ID、店面、来源或类型);若不使用这些选项,查询将涵盖该帐户跟踪的所有应用。 |
af metrics describe‑datasets | 列出 metrics query 接受的所有数值数据集,每个数据集占一行,并注明其值类型以及是否仅限于你自己的应用。 |
商店
应用商店展示情况:详情页内容、类别排名、排行榜和精选展示。
| 命令 | 描述 |
|---|---|
af store app‑ranks | 跟踪一个或多个应用在不同国家/地区、设备类型、类别子类型和类别中的排名历史,以时间序列位置及每日变化量的形式呈现。 |
af store top‑charts | 列出指定国家/地区和类别的类别排行榜中的热门应用,以及当前排名和每日变化量。 |
af store categories | 列出所有商店类别及其 ID。此处提供 store app-ranks --category-ids 和 store top-charts --category-id 所需的数字类别 ID。 |
af store featured | 列出应用或店面产品的精选和编辑推荐展示。请求 0 行即可仅获取汇总统计信息。 |
af store app‑listing | 读取一个店面的完整商店详情页:本地化文本(名称、副标题、描述、发行说明),以及屏幕截图、视频、类别、变现方式、支持的设备、国家/地区可用性、价格、评分、文件大小和年龄分级。需要数字产品 ID(每次查询一个店面;统一应用在每个店面都有一个产品)。每次请求仅支持一种语言区域设置。 |
受众
应用用户的特征及其还使用哪些应用。涵盖估算的年龄和性别,以及与其他应用的受众重合度。
| 命令 | 描述 |
|---|---|
af audience demographics | 读取应用的受众人口统计信息:估算的年龄和性别分布。 |
af audience cross‑usage | 查找应用用户也在使用的其他应用。 |
评论
搜索、汇总并回复 iOS 和 Google Play 应用商店评论。
| 命令 | 描述 |
|---|---|
af reviews list | 读取一个或多个应用的单条评论。返回评论文本、星级评分、国家/地区、应用版本和你的回复。可按星级评分、日期范围、国家/地区、版本、回复状态和跟踪关系筛选。 |
af reviews breakdown | 汇总一个或多个应用的评论数量,并按维度分组。针对每个维度值返回一个数量,以及匹配结果集的全局总数。 |
af reviews reply | 发布或撤回对特定评论的开发者回复。传入 content 以发布;传入 delete: true 以撤回先前发布的回复。 |
关键词
在自然搜索(App Store、Google Play)和 Apple Ads 中查看关键词可见度、排名跟踪与发现。
| 命令 | 说明 |
|---|---|
af keywords organic | 查看一个或多个应用排名的自然搜索关键词,以及排名位置、热度和竞争度。 |
af keywords paid | 列出一个或多个应用投放广告的付费关键词,以及展示份额和自然排名。 |
af keywords tracked‑ranks | 查看单个应用+国家/地区组合中所有已跟踪关键词的排名,包括各关键词的当前位置、距上次变动以来的变化、起始位置、热度和竞争度。 |
af keywords tracked‑trend | 追踪单个应用+国家/地区组合中某个已跟踪关键词的排名变化。每个数据点都显示排名,以及相较于前一个数据点变动了多少位。 |
af keywords suggestions | 为单个应用+国家/地区组合发现可考虑定位的关键词创意,并按与应用的相关性排序,其中包括一些来自竞品应用的关键词。每个关键词都附有热度、竞争度和应用当前排名。 |
af keywords ranking‑apps | 列出特定关键词在自然搜索中排名靠前的应用,以及该关键词自身的热度和竞争度评分。 |
af keywords advertisers | 列出针对特定关键词投放广告的应用,以及各广告主的展示份额、自然排名和竞价时长。 |
af keywords related | 查找与种子词相关的关键词,用于 ASO 研究。可用于寻找受众相似但热度更高或竞争度更低的替代关键词。 |
af keywords tracked | 列出已跟踪关键词及其不透明 ID。 |
af keywords track | 跟踪某个关键词,以持续监控应用每小时的排名,并在排名位置变动时自动接收提醒。 |
af keywords untrack | 停止跟踪某个关键词。 |
Apple Ads
管理 Apple Ads 广告系列、广告组、关键词和效果。
| 命令 | 说明 |
|---|---|
af apple‑ads organizations | 列出你投放广告系列的 Apple Ads 组织,以及各组织的货币和时区。 |
af apple‑ads campaigns | 列出你的 Apple Ads 广告系列,以及各系列的状态、预算、目标国家/地区和投放时间安排。 |
af apple‑ads ad‑groups | 列出 Apple Ads 广告组,以及各组的默认出价、CPA 上限、定价模式和投放时间安排。 |
af apple‑ads keywords | 列出广告系列的竞价关键词,以及所选日期范围内每个关键词的效果(展示次数、轻点次数、安装量、支出、每次安装成本),并显示其匹配类型、出价,以及它是目标词还是否定词。 |
af apple‑ads search‑terms | 列出触发广告系列广告的实际用户搜索词,以及每个搜索词的累计效果(展示次数、轻点次数、安装量、支出、每次安装成本)。利用这些词发现可竞价或排除的新关键词。 |
af apple‑ads report | 按广告系列报告所选日期范围内的 Apple Ads 效果(展示次数、轻点次数、安装量、支出、每次安装成本),并提供账户总计。 |
af apple‑ads top‑keywords | 按转化率、支出和安装量,对所选日期范围内表现最佳的广告系列关键词进行排名。每份列表显示某一指标下排名靠前的关键词。 |
SDK
查询我们追踪的 SDK。
| 命令 | 说明 |
|---|---|
af sdks list | 列出所有已知 SDK 及其 ID,或搜索特定 SDK。 |
文档
提供特定操作和常见任务的参考文档与指南。
| 命令 | 说明 |
|---|---|
af docs get | 按 slug 返回参考文档或指南。 |
API
| 命令 | 说明 |
|---|---|
af api | 对没有专用命令的端点发起原始 API 请求。端点、参数和响应结构的文档见 https://docs.appfigures.com。 |
MCP
| 命令 | 说明 |
|---|---|
af mcp | (已弃用)通过 stdio 运行本地 MCP 服务。请改用托管的 Appfigures MCP 服务:https://mcp.appfigures.com/mcp |
身份验证
| 命令 | 说明 |
|---|---|
af auth login | 登录 Appfigures |
af auth logout | 删除已存储的凭据 |
af auth status | 显示身份验证和账户状态 |
运行 af <command> --help 查看参数、标志和示例。
环境
| 变量 | 用途 |
|---|---|
APPFIGURES_API_KEY | API 密钥;跳过交互式身份验证 |
AF_VERBOSE | 将 HTTP 日志输出到 stderr(等同于 -v) |
NO_COLOR | 禁用 ANSI 颜色 |
NO_UPDATE_NOTIFIER | 跳过 npm 注册表更新检查 |
CI | 同样跳过更新检查(适用于任何 CI 系统) |
API 参考
每个命令的完整参数和标志列表。单行概述请参阅上方的命令。
全局标志。 所有命令均接受:
-v, --verbose— 将 HTTP 请求记录到 stderr。也可通过AF_VERBOSE=1设置。-V, --version— 输出 CLI 版本并退出。-h, --help— 显示当前命令的用法。
输出格式。 每个命令都会在 stdout 上输出一个 JSON 值 — 可通过管道传递给 jq 进行筛选。提示信息、说明和更新通知会输出到 stderr,以保持管道输出干净。
af apps search
af apps search <q> [flags]
按名称或发布者查找应用。每个统一应用返回一行。默认返回 Apple 和 Google 的列表;传入 --all-stores 可包含其他应用商店。要按估算值筛选应用(例如上月下载量超过 10 万的应用),请使用 explorer list-products。要查看按时间、国家或应用商店细分的估算数据,请使用 metrics query,并选择数据集 estimates.sales 或 estimates.revenue。
选项
<q>必需字符串。搜索查询(应用名称或发布者)。--all-stores布尔值,默认false。包含 Apple 和 Google 以外的应用商店:Amazon、Windows、Steam、Roku、LG TV、Samsung TV 等。--count整数,默认10。要返回的结果数量。--page整数,默认1。页码。
示例
# Find every Electronic Arts app.
af apps search 'electronic arts'
# Page through long results.
af apps search 'electronic arts' --count=25 --page=2
# Find Minecraft on every storefront (e.g. Amazon, Steam, Windows, Roku; not common).
af apps search minecraft --all-stores
af apps get
af apps get <app-id> [flags]
获取应用记录:基本元数据(名称、开发者等),以及用户跟踪该应用时可访问的数据。传入某个应用商店的产品 ID,或用于所有应用商店的统一应用 ID。
选项
<app-id>必需整数或字符串。应用的统一应用 ID 或产品 ID。--all-stores布尔值,默认false。对于统一应用 ID:包含所有应用商店(Amazon、Steam、Windows、Roku 等)中的成员产品。为false时,member_products仅限于覆盖应用情报的应用商店(iOS + Google Play)。对于产品 ID,此选项会被忽略。
示例
# Get Minecraft's unified-app record (iOS + Google Play by default).
af apps get ua_X7iNgb
# Get Minecraft's Google Play product record.
af apps get 6938219
af apps tracked
af apps tracked [flags]
列出你的 Appfigures 账户跟踪的应用。
选项
--count整数,默认10。要返回的结果数量。--page整数,默认1。页码。--q字符串。用于筛选的应用名称。--filter-apps-by-id(整数或字符串)[]。仅包含特定应用的数据,可按产品 ID 或统一应用 ID 指定。设置后优先于其他filterAppsBy*键。对于可按这些条件描述的应用集合,应用商店、来源或类型筛选器更合适。--filter-apps-by-storefront字符串[]。将账户跟踪的应用缩小到这些应用商店中的应用(例如 apple:ios、google_play)。--filter-apps-by-source字符串[]。根据跟踪关系缩小账户跟踪的应用范围。--filter-apps-by-type字符串[]。将账户跟踪的应用缩小到这些类型的产品。
示例
# List your apps with private-data access.
af apps tracked --filter-apps-by-source=own,shared
# List your tracked fitness apps.
af apps tracked --q=fitness
# List just your iOS apps.
af apps tracked --filter-apps-by-storefront=apple:ios
# Page through long results.
af apps tracked --filter-apps-by-source=own,shared --count=50 --page=2
# List tracked competitors.
af apps tracked --filter-apps-by-source=manual
# Find individual IAPs or subscriptions (not common).
af apps tracked --filter-apps-by-type=inapp,subscription
af apps breakdown
af apps breakdown [flags]
按数据组(例如 sales、usage、ranks、reviews、keywords)、店面、变现模式和来源(自有应用还是跟踪的竞争对手)统计你跟踪的应用数量,并显示总数和最早发布日期。
选项
--filter-apps-by-id(integer or string)[]. 仅包含特定应用的数据,可按产品 ID 或统一应用 ID 指定。设置后优先于其他filterAppsBy*键。对于可按店面、来源或类型描述的应用集,建议使用相应筛选条件。--filter-apps-by-storefrontstring[]. 将账户中跟踪的应用范围缩小到这些店面中的应用(例如 apple:ios、google_play)。--filter-apps-by-sourcestring[]. 按跟踪关系缩小账户中跟踪的应用范围。--filter-apps-by-typestring[]. 将账户中跟踪的应用范围缩小到这些类型的产品。
示例
# Check what data the whole account has.
af apps breakdown
# Limit to apps you own or that were shared with you.
af apps breakdown --filter-apps-by-source=own,shared
# Limit to your iOS apps.
af apps breakdown --filter-apps-by-storefront=apple:ios
af explorer list-products
af explorer list-products [flags]
读取一个或多个应用的目录字段。query 或 sort 引用的字段会自动返回;如需更多字段,请传入 --extra-fields。单个应用可使用 ["match","product_id",<id>],也可组合筛选条件进行总体查询(例如,使用 Firebase、美国收入超过 $1M 的 iOS 应用)。这 120 多个字段涵盖排名、评分、下载量和收入估算、SDK、人口统计信息等;查询语法和字段列表见 docs get catalog_playbook。
选项
--queryarray,默认值为[]。以 JSON 数组格式指定 Explorer 查询,用于选择匹配的目录产品。默认选择活跃产品。也包含非活跃产品:["match","active",["or",true,false]]。完整字段列表和查询语法见docs get catalog_playbook。--extra-fieldsstring[]. 除query或sort已引用的字段外,要包含的其他字段。使用explorer describe-fields查找字段路径(以及可读取的字段)。--sortstring。Explorer 字段名称。完整字段列表见docs get catalog_playbook。--orderstring,默认值为desc。排序方向。--countinteger,默认值为10。要返回的结果数。--pageinteger,默认值为1。页码。--allow-unscoped-nestedboolean,默认值为false。用于有意执行宽泛查询的应急选项。绕过默认的限制,该限制通常会阻止未限定范围的嵌套谓词,以免结果数量虚增。
示例
# Find iOS apps that have Firebase installed.
af explorer list-products --query='["and",["match","storefronts","apple:ios"],["nested","all_sdks",["and",["match","all_sdks.id","firebase"],["match","all_sdks.active",true]]]]'
# Rank the biggest US iOS games by revenue.
af explorer list-products --query='["and",["match","storefronts","apple:ios"],["match","categories.all",6014]]' --sort='custom_meta[country=us].revenue_estimates_sum_30_days' --order=desc --count=25
# Find US iOS apps in the $100k–$1M/month revenue tier.
af explorer list-products --query='["and",["match","storefronts","apple:ios"],["nested","custom_meta",["and",["match","custom_meta.country","us"],["match","custom_meta.revenue_estimates_sum_30_days",["number_range",100000,1000000]]]]]'
# Page through results.
af explorer list-products --query='["and",["match","storefronts","apple:ios"],["match","categories.all",6014]]' --count=50 --page=2
# Pass `--extra-fields` for columns the query doesn't already reference. Common for single-app reads.
af explorer list-products --query='["match","product_id",304004187384]' --extra-fields='custom_meta[country=zz].revenue_estimates_sum_365_days,all_sdks[id=firebase].active'
af explorer aggregate-products
af explorer aggregate-products <fields> [flags]
对 Apple、Google Play、Amazon 和其他主要商店中数百万种产品的完整目录进行聚合:针对任意一组匹配的产品,统计数量、平均值、最小值/最大值和直方图。使用与 explorer list-products 相同的查询语法;返回聚合结果,而非产品记录。适用于市场规模评估、基准比较和细分分析。
选项
<fields>必填,类型为 string[]。字段与聚合类型的配对(例如all_rating/stats、storefronts/terms)。聚合类型包括:stats、terms、histogram、date_histogram、cardinality。完整字段列表见docs get catalog_playbook。--query数组,默认值为[]。以 JSON 数组格式提供 Explorer 查询,用于筛选匹配的目录产品。默认筛选活跃产品。若要包含非活跃产品:["match","active",["or",true,false]]。完整字段列表和查询语法见docs get catalog_playbook。--allow-unscoped-nested布尔值,默认值为false。用于有意执行宽泛查询的应急选项。绕过默认的限制,该限制会阻止未限定范围的嵌套谓词,以免这类谓词通常导致结果膨胀。--terms-count整数,默认值为20。每个terms聚合返回的最大分桶数。其他聚合类型会忽略此选项。--date-histogram-interval字符串。每个date_histogram聚合的分桶粒度。其他聚合类型会忽略此选项。
示例
# How many monthly downloads does an average iOS app get in Japan?
af explorer aggregate-products 'custom_meta[country=jp].download_estimates_average_30_days/stats' --query='["and",["match","storefronts","apple:ios"],["match","countries","jp"]]'
# What's the rating, category mix, and developer concentration for US iOS apps in the $100k–$10M/mo net-revenue tier?
af explorer aggregate-products all_rating/stats,categories.all/terms,developer_id/cardinality --query='["and",["match","storefronts","apple:ios"],["nested","custom_meta",["and",["match","custom_meta.revenue_estimates_sum_30_days",["number_range",100000,10000000]],["match","custom_meta.country","us"]]]]'
# Are new iOS games still launching at the same rate as two years ago?
af explorer aggregate-products release_date/date_histogram --query='["and",["match","storefronts","apple:ios"],["match","categories.all",6014],["match","release_date",["range","2024-01-01","2025-12-31"]]]'
# What SDKs do apps commonly ship alongside OneSignal?
af explorer aggregate-products 'all_sdks[*].id/terms' --query='["nested","all_sdks",["and",["match","all_sdks.id","onesignal"],["match","all_sdks.active",true]]]'
# How do iOS app ratings distribute?
af explorer aggregate-products all_rating/histogram --query='["match","storefronts","apple:ios"]'
# How many apps are on each storefront?
af explorer aggregate-products storefronts/terms
af explorer describe-fields
af explorer describe-fields [flags]
列出目录字段及当前用户对每个字段的访问级别。可按关键字搜索字段。与 explorer list-products 和 explorer aggregate-products 接受的字段集合相同。
选项
--count整数,默认值为50。要返回的结果数。--page整数,默认值为1。页码。--q字符串。按path、title、description、type筛选。
示例
# Search for revenue-related fields.
af explorer describe-fields --q=revenue
# List every catalog field with the current user's access level.
af explorer describe-fields
af metrics query
af metrics query <dataset> [flags]
查询任意数值数据集,可针对一个或多个应用进行查询。可选择按最多两个维度分组,结果以嵌套分区树的形式返回,而非应用记录。可分别按国家/地区、设备类型和日期范围筛选。filterAppsBy* 选项用于缩小应用范围(按 ID、商店、来源或类型筛选);若未指定,则查询涵盖该账号跟踪的所有应用。
选项
<dataset>必填字符串。要查询的数据集(例如 sales.combined_downloads)。完整列表以及哪些数据集属于私有数据(仅对你拥有或已与你共享的应用可见),请参阅metrics describe-datasets。--group-by字符串[]。分组维度。最多 2 个:第一个位置作为外层实体类型,第二个作为内层序列。每个维度都会使结果量成倍增加。--granularity字符串。按日期分组时的时间粒度--count整数。行数上限。使用--group-by时,按值取外层实体类型的前 N 项(按日期分组时取最早的 N 项)。不使用--group-by时,返回单页预览。--countries字符串[]。筛选一个或多个 ISO 国家/地区代码(例如 US、JP、GB)--device-type字符串。设备类型--all-time布尔值,默认值为false。选择查询完整历史记录。若未使用此标志(且未设置start/end),查询默认为最近 30 天。不能与start和end同时使用。--filter-apps-by-id(整数或字符串)[]. 仅包含指定应用的数据,可按产品 ID 或统一应用 ID 筛选。设置后优先于其他filterAppsBy*键。若应用集合可按商店、来源或类型描述,使用相应筛选条件会更合适。--filter-apps-by-storefront字符串[]。将账号跟踪的应用缩小为这些商店中的应用(例如 apple:ios、google_play)。--filter-apps-by-source字符串[]。按跟踪关系缩小账号跟踪的应用范围。--filter-apps-by-type字符串[]。将账号跟踪的应用缩小为这些类型的产品。--start字符串。开始日期(YYYY-MM-DD)--end字符串。结束日期(YYYY-MM-DD,默认为今天)
示例
# Get total downloads across your apps with private-data access.
af metrics query sales.combined_downloads --filter-apps-by-source=own,shared
# Get revenue split by storefront, plus a top-level total.
af metrics query sales.combined_revenue --filter-apps-by-source=own,shared --group-by=storefront
# Rank the top 5 tracked competitors by estimated monthly revenue.
af metrics query estimates.revenue --filter-apps-by-source=manual --group-by=product --count=5
# Track Candy Crush Saga's daily download estimates.
af metrics query estimates.sales --filter-apps-by-id=ua_V1Q1uX --group-by=date --granularity=daily
# Track net monthly recurring revenue per app, month over month.
af metrics query subscriptions.mrr --filter-apps-by-source=own,shared --group-by=product,date --granularity=monthly
# Get Minecraft's new ratings.
af metrics query ratings.new_total --filter-apps-by-id=ua_X7iNgb
# Track daily ad spend across your apps.
af metrics query adspend.cost --filter-apps-by-source=own,shared --group-by=date --granularity=daily
# Compare Candy Crush's December 2025 downloads across the US, Japan, and UK.
af metrics query estimates.sales --filter-apps-by-id=ua_V1Q1uX --countries=US,JP,GB --group-by=country --start=2025-12-01 --end=2025-12-31
# Track all-time monthly revenue across your apps with private-data access.
af metrics query sales.combined_revenue --filter-apps-by-source=own,shared --group-by=date --granularity=monthly --all-time
# Get Minecraft's review volume by country.
af metrics query reviews.total --filter-apps-by-id=ua_X7iNgb --group-by=country
af metrics describe-datasets
af metrics describe-datasets [flags]
列出 metrics query 接受的所有数值数据集,每个数据集占一行,并注明其值类型以及是否仅限你自己的应用。
选项
--count整数,默认值为50。要返回的结果数量。--page整数,默认值为1。页码。--q字符串。按dataset、value_type、label、description筛选。
示例
# Search by keyword (matches name, label, or description).
af metrics describe-datasets --q='combined downloads'
# Look up one dataset by its exact name.
af metrics describe-datasets --q=sales.combined_downloads
# List every dataset with its value type and whether it's limited to your own apps.
af metrics describe-datasets
af store app-ranks
af store app-ranks <app-ids> [flags]
追踪一个或多个应用在不同国家、设备类型、类别子类型和类别中的排名历史,以时间序列位置和每日变化量呈现。
选项
<app-ids>必填,integer 或 string 数组。应用标识符(统一应用 ID 或产品 ID)--countriesstring 数组。要查询的国家代码。默认为所有有排名数据的国家。--granularitystring,默认值为hourly。采样频率。Hourly 可提供最新数据;传入--granularity=daily可获取紧凑的多日历史数据。--device-typesstring 数组,默认值为["handheld"]。要包含的设备类型;每种设备类型单独显示在图表中。添加更多类型可扩大响应范围。--subtypesstring 数组,默认值为["free","paid"]。要包含的类别子类型;每种子类型单独显示在图表中。添加更多子类型可扩大响应范围。--category-idsinteger 数组。将响应行筛选为特定类别 ID;省略则包含全部类别。类别 ID 可在store categories中获取。--startstring。开始日期(YYYY-MM-DD)--endstring。结束日期(YYYY-MM-DD,默认为今天)--countinteger,默认值为10。返回结果数量。--pageinteger,默认值为1。页码。
示例
# Check ChatGPT's current ranks (unified app).
af store app-ranks ua_miTXv6 --countries=US
# Check ChatGPT's current ranks on one storefront.
af store app-ranks 336744124021 --countries=US
# Compare ChatGPT's ranks across the US, UK, and Japan.
af store app-ranks ua_miTXv6 --countries=US,GB,JP
# Check Procreate's paid iPad chart ranks.
af store app-ranks ua_CxA1MS --subtypes=paid --device-types=tablet --countries=US
# Trace ChatGPT's chart history through December 2025.
af store app-ranks ua_miTXv6 --granularity=daily --start=2025-12-01 --end=2025-12-31 --countries=US
# Check ChatGPT's rank in one category (US iOS Productivity).
af store app-ranks 336744124021 --category-ids=6007 --countries=US
af store top-charts
af store top-charts [flags]
列出指定国家和类别的类别榜单中的热门应用,包含当前排名和每日变化量。
选项
--country必填 string。ISO 国家代码(例如 US、JP、GB)--category-id必填 integer。类别 ID 可在store categories中获取。--subtypestring,默认值为free。类别子类型(该类别中的榜单类型)。--datestring。快照日期(YYYY-MM-DD,默认为当前日期)。--countinteger,默认值为10。返回结果数量。--pageinteger,默认值为1。页码。
示例
# Find the Games category, then pull its US chart.
af store categories --q=games
af store top-charts --country=US --category-id=6014
# List top paid apps on the US App Store.
af store top-charts --country=US --category-id=25204 --subtype=paid
# List top free apps on the Japan App Store.
af store top-charts --country=JP --category-id=25204
# List top free apps on Google Play in the US.
af store top-charts --country=US --category-id=100
# List top free apps on the US App Store in December 2025.
af store top-charts --country=US --category-id=25204 --date=2025-12-01
af store categories
af store categories [flags]
列出所有商店类别及其 ID。可在此获取 store app-ranks --category-ids 和 store top-charts --category-id 所需的数字类别 ID。
选项
--countinteger,默认值为50。返回结果数量。--pageinteger,默认值为1。页码。--qstring。按name筛选。--sortstring。排序字段。设置q时省略则按相关性排序,否则按列表顺序排列。--orderstring,默认值为desc。排序方向。--category-idinteger 数组。仅返回这些类别 ID。--parent-idinteger。仅包含此父类别的子类别(按 ID 下钻)。--storefrontstring 数组。仅包含来自这些 storefront 的类别(例如apple:ios、google_play)。--device-typestring 数组。仅包含适用于这些设备类型的类别(例如handheld、tablet)。--allboolean,默认值为false。包含非排名商店(roku、vizio 等)。这些商店有类别,但没有排名数据。
示例
# Find the Games category.
af store categories --q=games
# List every Apple iOS category.
af store categories --storefront=apple:ios
# List subcategories of a parent category (here, Apple Games).
af store categories --parent-id=6014
# Include categories from non-rank-supporting stores (e.g. Roku, Vizio) (not common).
af store categories --all
af store featured
af store featured <app-id> [flags]
列出应用或店面产品的精选和编辑推荐展示。设置请求行数为 0,仅返回汇总统计数据。
选项
<app-id>必填,整数或字符串。应用的统一应用 ID 或产品 ID。--countriesstring[]。要包含的国家/地区。省略时仅查询美国;也可传入多个国家/地区以比较市场。如需包含所有国家/地区,请改用--all-countries。--all-countries布尔值,默认值为false。包含所有国家/地区。不能与--countries一起使用。--include-rank-trend布尔值,默认值为false。包含每个展示位在各时间间隔的 rank_trend。--sort字符串,默认值为relevance。按相关性或日期对展示位排序。--order字符串,默认值为desc。排序方向。--start字符串。开始日期(YYYY-MM-DD)--end字符串。结束日期(YYYY-MM-DD,默认为今天)。时间跨度最多为 31 天。--count整数,默认值为10。要返回的结果数。--page整数,默认值为1。页码。
示例
# List Minecraft's recent featured placements (unified app).
af store featured ua_X7iNgb
# List Minecraft's recent featured placements on one storefront.
af store featured 10157213
# Compare Minecraft's placement coverage across the US, UK, and Japan.
af store featured ua_X7iNgb --countries=US,GB,JP
# List Minecraft's placements during a specific month (December 2025).
af store featured ua_X7iNgb --start=2025-12-01 --end=2025-12-31
# List Minecraft's placements with rank history.
af store featured ua_X7iNgb --include-rank-trend
# List Minecraft's placements sorted by end date, newest run first.
af store featured ua_X7iNgb --sort=date --order=desc
# Get Minecraft's placement summary only.
af store featured ua_X7iNgb --count=0
af store app-listing
af store app-listing <product-id> [flags]
读取某个店面的完整商品详情页,包括本地化文本(名称、副标题、描述、发行说明),以及屏幕截图、视频、类别、变现方式、支持的设备、国家/地区可用性、价格、评分、文件大小和年龄分级。需要传入数字产品 ID(一次查询一个店面;一个统一应用在每个店面都有一个产品)。每次请求仅支持一种语言区域设置。
选项
<product-id>必填整数。某个店面的数字产品 ID。不是统一应用 ID。成员 product_id 值可通过apps get '<unified-app-id>'获取。--language字符串。名称、副标题、描述、发行说明和屏幕截图所用的语言区域设置(例如 en、ja、zh-Hans)。默认为 en;如果请求的语言区域设置没有元数据,则回退到第一个可用的语言区域设置。响应中会回显解析后的语言。--device-type字符串,默认值为handheld。适用于 Apple 应用。iPhone 专属元数据请选择 handheld;iPad 请选择 tablet;Mac 请选择 desktop,依此类推。
示例
# Read Minecraft's store listing.
af store app-listing 10157213
# Read Minecraft's Japanese-localized listing.
af store app-listing 10157213 --language=ja
# Read Minecraft's iPad screenshots.
af store app-listing 10157213 --device-type=tablet
af audience demographics
af audience demographics <app-id>
读取应用的受众人口统计数据:估算的年龄和性别分布。
选项
<app-id>必填,整数或字符串。应用的统一应用 ID 或产品 ID。
示例
# Read Minecraft's audience across all its storefronts (unified app ID).
af audience demographics ua_X7iNgb
# Read Minecraft's audience on Google Play only (product ID).
af audience demographics 6938219
af audience cross-usage
af audience cross-usage <app-id> [flags]
查找该应用用户也在使用的其他应用。
选项
<app-id>必填,整数或字符串。应用的统一应用 ID 或产品 ID。--count整数,默认值为10。要返回的结果数。--page整数,默认值为1。页码。
示例
# Find the apps ChatGPT's users also use (unified app ID).
af audience cross-usage ua_miTXv6
# Find the apps ChatGPT's users also use on the App Store only (product ID).
af audience cross-usage 336744124021
af reviews list
af reviews list [flags]
读取一个或多个应用的单条评价。返回评价文本、星级评分、国家、应用版本和你的回复。可按星级评分、日期范围、国家、版本、回复状态和追踪关系筛选。
选项
--starsnumber[]。按星级评分筛选。--versionsstring[]。按应用版本筛选。传入多个版本可组合筛选。--countriesstring[]。筛选一个或多个 ISO 国家代码(例如 US、JP、GB)。--qstring。搜索评价标题和正文。传入多个关键词时,匹配任意一个即可。不区分大小写;可与其他筛选条件组合使用。--response-statusstring。按是否已回复筛选。省略则包含所有评价。--sortstring。按评价日期或星级评分排序。--orderstring,默认值为desc。排序方向。--filter-apps-by-id(integer or string)[]。仅包含特定应用的数据,可按产品 ID 或统一应用 ID 筛选。设置后优先于其他filterAppsBy*键。对于可按这些条件描述的应用集合,店面、来源或类型筛选条件更合适。--filter-apps-by-storefrontstring[]。将账号追踪的应用范围缩小到这些店面中的应用(例如 apple:ios、google_play)。--filter-apps-by-sourcestring[]。按追踪关系缩小账号追踪的应用范围。--filter-apps-by-typestring[]。将账号追踪的应用范围缩小到这些类型的产品。--startstring。开始日期(YYYY-MM-DD)--endstring。结束日期(YYYY-MM-DD,默认为今天)--countinteger,默认值为10。返回结果数。--pageinteger,默认值为1。页码。范围为 1-500。
示例
# Read Minecraft's recent reviews.
af reviews list --filter-apps-by-id=ua_X7iNgb
# Read Minecraft's 5-star reviews.
af reviews list --filter-apps-by-id=ua_X7iNgb --stars=5
# Compare Minecraft's reviews across the US, Japan, and the UK.
af reviews list --filter-apps-by-id=ua_X7iNgb --countries=US,JP,GB
# Read Minecraft's December 2025 reviews.
af reviews list --filter-apps-by-id=ua_X7iNgb --start=2025-12-01 --end=2025-12-31
# Page through long results across your own apps.
af reviews list --filter-apps-by-source=own --count=50 --page=2
# Find your 1-2 star reviews without a response.
af reviews list --filter-apps-by-source=own --stars=1,2 --response-status=without_response
af reviews breakdown
af reviews breakdown [flags]
按维度汇总一个或多个应用的评价数量。每个维度值返回一个计数,并提供匹配结果集的全局总数。
选项
--starsnumber[]。按星级评分筛选。--versionsstring[]。按应用版本筛选。传入多个版本可组合筛选。--countriesstring[]。筛选一个或多个 ISO 国家代码(例如 US、JP、GB)。--qstring。搜索评价标题和正文。传入多个关键词时,匹配任意一个即可。不区分大小写;可与其他筛选条件组合使用。--response-statusstring。按是否已回复筛选。省略则包含所有评价。--filter-apps-by-id(integer or string)[]。仅包含特定应用的数据,可按产品 ID 或统一应用 ID 筛选。设置后优先于其他filterAppsBy*键。对于可按这些条件描述的应用集合,店面、来源或类型筛选条件更合适。--filter-apps-by-storefrontstring[]。将账号追踪的应用范围缩小到这些店面中的应用(例如 apple:ios、google_play)。--filter-apps-by-sourcestring[]。按追踪关系缩小账号追踪的应用范围。--filter-apps-by-typestring[]。将账号追踪的应用范围缩小到这些类型的产品。--startstring。开始日期(YYYY-MM-DD)--endstring。结束日期(YYYY-MM-DD,默认为今天)--bystring[]。将响应限制为这些维度;省略则返回全部维度。--topinteger,默认值为20。每个维度返回的最大值数量;其余值合并到__other__。
示例
# Break down Minecraft's recent reviews.
af reviews breakdown --filter-apps-by-id=ua_X7iNgb
# Where are Minecraft's biggest fans writing from?
af reviews breakdown --filter-apps-by-id=ua_X7iNgb --stars=5
# Count Minecraft's December 2025 5-star reviews.
af reviews breakdown --filter-apps-by-id=ua_X7iNgb --stars=5 --start=2025-12-01 --end=2025-12-31
# How many Minecraft reviewers raved?
af reviews breakdown --filter-apps-by-id=ua_X7iNgb --q='love amazing fun great best'
# Compare review volume across your own apps.
af reviews breakdown --filter-apps-by-source=own
af reviews reply
af reviews reply <review-id> [flags]
在指定评价中发布或撤回开发者回复。传入 content 以发布;传入 delete: true 以撤回之前发布的回复。
选项
<review-id>必填字符串。要操作的评价。使用reviews list中的review_id。--content字符串。开发者想要发布的回复内容。--delete布尔值。撤回此评价中之前发布的回复。不能与content同时使用。
示例
# Reply to a low-star review after shipping a fix.
af reviews reply rev123 --content='We just shipped a fix in v2.1. Let us know if you still see this.'
# Withdraw a previously-posted response.
af reviews reply rev123 --delete
af keywords organic
af keywords organic [flags]
查看一个或多个应用排名所依据的自然关键词,以及其排名位置、热度和竞争度。
选项
--product-ids整数数组。产品标识符(数字型,每个对应一个店面)。--countries必填字符串数组。一个或多个 ISO 国家/地区代码(例如 US、JP、GB)。传入多个代码以比较不同市场。--device-type字符串。设备类型--count整数,默认值为10。返回结果数量(最少为 10)。--page整数,默认值为1。页码。
示例
# Check ChatGPT's current US keyword rankings.
af keywords organic --product-ids=336744124021 --countries=US
# Check ChatGPT's iPad-only keyword rankings.
af keywords organic --product-ids=336744124021 --countries=US --device-type=tablet
# Compare ChatGPT and Gemini's US keyword rankings.
af keywords organic --product-ids=336744124021,337217072531 --countries=US
af keywords paid
af keywords paid <product-ids> [flags]
列出一个或多个应用投放广告所用的付费关键词,以及其展示份额和自然排名。
选项
<product-ids>必填整数数组。产品标识符(数字型,每个对应一个店面)。--days整数,默认值为180。回溯天数。常用值:7、14、30、90、180、365。--countries必填字符串数组。一个或多个 ISO 国家/地区代码(例如 US、JP、GB)。传入多个代码以比较不同市场。--device-types字符串数组。按设备类型筛选。默认使用手持设备。--count整数,默认值为10。返回结果数量(最少为 10)。--page整数,默认值为1。页码。
示例
# Find Headspace's US paid keywords.
af keywords paid 15250929 --countries=US
# Compare Headspace's and Calm's US paid keywords.
af keywords paid 15250929,304554144 --countries=US
# Find Headspace's paid keywords across the US, UK, and Japan.
af keywords paid 15250929 --countries=US,GB,JP
# Find Headspace's US iPad paid keywords.
af keywords paid 15250929 --countries=US --device-types=tablet
# Check Headspace's US paid keywords over the last 30 days.
af keywords paid 15250929 --countries=US --days=30
af keywords tracked-ranks
af keywords tracked-ranks <product-id> [flags]
查看单个应用与国家/地区组合中所有已跟踪关键词的排名,包括每个关键词的当前位置、自上次变动以来的变化、初始位置、热度和竞争度。
选项
<product-id>必填整数。单个店面的数字型产品 ID。不是统一应用 ID。成员级product_id值可通过apps get '<unified-app-id>'获取。--country必填字符串。ISO 国家/地区代码(例如 US、JP、GB)--device-type字符串。要读取排名的设备。省略则使用商店默认值。--count整数,默认值为10。返回结果数量(最少为 10)。--page整数,默认值为1。页码。--sort字符串。用于排序结果的字段。--order字符串,默认值为desc。排序方向。--start字符串。时间范围的起始日期(YYYY-MM-DD)。省略范围则使用最近 7 天;起始日期的排名作为初始位置基准。--end字符串。时间范围的结束日期(YYYY-MM-DD,默认为今天)。范围最长为 31 天。--keyword-term字符串。仅包含词项中含有此文本的已跟踪关键词。--min-position整数。要包含的最佳排名(1 = 第一名)。--max-position整数。要包含的最差排名。--min-popularity整数。要包含的最低热度(0-100)。--max-popularity整数。要包含的最高热度(0-100)。--min-competitiveness整数。要包含的最低竞争度(0-100)。--max-competitiveness整数。要包含的最高竞争度(0-100)。
示例
# Check how ChatGPT's tracked keywords are ranking.
af keywords tracked-ranks 336744124021 --country=US
# List ChatGPT's best-ranking keywords first.
af keywords tracked-ranks 336744124021 --country=US --sort=position --order=asc
# Show only the keywords ChatGPT ranks in the top 10.
af keywords tracked-ranks 336744124021 --country=US --max-position=10
# Find the most-searched keywords ChatGPT should prioritize.
af keywords tracked-ranks 336744124021 --country=US --sort=popularity --min-popularity=50
# Trace ChatGPT's keyword movement across a custom week.
af keywords tracked-ranks 336744124021 --country=US --start=2026-01-06 --end=2026-01-12
# Page through a long tracked keyword set.
af keywords tracked-ranks 336744124021 --country=US --page=2
af keywords tracked-trend
af keywords tracked-trend <keyword-id> [flags]
追踪某个已跟踪关键词在单个应用 + 国家/地区组合中的排名变化。每个数据点都包含排名,以及与前一个数据点相比移动了多少位。
选项
<keyword-id>必填字符串。要追踪的关键词。该关键词必须已针对此应用和国家/地区进行跟踪;其不透明 ID 来自keywords tracked-ranks或keywords tracked。--product-id必填整数。某个应用商店的数字产品 ID。不是统一应用 ID。成员 product_id 值可从apps get '<unified-app-id>'获取。--country必填字符串。ISO 国家/地区代码(例如 US、JP、GB)--device-type字符串。读取排名所用的设备。省略则使用应用商店默认值。--granularity字符串,默认值为daily。采样频率。--start字符串。时间范围的开始日期(YYYY-MM-DD)。省略范围则查询最近 7 天。--end字符串。时间范围的结束日期(YYYY-MM-DD,默认为今天)。按小时粒度最多覆盖 14 天,按天粒度最多覆盖 31 天。
示例
# Find a tracked keyword, then trace its rank day by day.
af keywords tracked-ranks 336744124021 --country=US
af keywords tracked-trend 00f2b1ead3a0990b818517356cb40280 --product-id=336744124021 --country=US
# Trace a keyword's rank for ChatGPT across a specific week.
af keywords tracked-trend 00f2b1ead3a0990b818517356cb40280 --product-id=336744124021 --country=US --start=2026-01-06 --end=2026-01-12
# Trace a keyword hour by hour.
af keywords tracked-trend 00f2b1ead3a0990b818517356cb40280 --product-id=336744124021 --country=US --granularity=hourly
af keywords suggestions
af keywords suggestions <product-id> [flags]
发掘值得考虑投放的关键词创意,针对单个应用 + 国家/地区组合,按与应用的相关性排序,并包含一些来自竞争应用的关键词。每个关键词都附带其热度、竞争度以及该应用当前的排名。
选项
<product-id>必填整数。某个应用商店的数字产品 ID。不是统一应用 ID。成员 product_id 值可从apps get '<unified-app-id>'获取。--country必填字符串。ISO 国家/地区代码(例如 US、JP、GB)--device-type字符串。读取排名所用的设备。省略则使用应用商店默认值。--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。
示例
# Discover keywords ChatGPT should consider targeting.
af keywords suggestions 336744124021 --country=US
# Find keyword ideas for ChatGPT in Japan.
af keywords suggestions 336744124021 --country=JP
# Pull a broader set of suggestions.
af keywords suggestions 336744124021 --country=US --count=50
af keywords ranking-apps
af keywords ranking-apps <keyword-term> [flags]
列出在自然搜索中针对特定关键词排名的应用,以及该关键词自身的热度和竞争度评分。
选项
<keyword-term>必填字符串。要查询的关键词。--country必填字符串。ISO 国家/地区代码(例如 US、JP、GB)--storefront必填字符串。应用商店平台(例如 apple:ios、google_play、amazon_appstore、steam、windows10、apple:mac、apple:tv、apple:imessage 或其他受支持的应用商店)。--device-type字符串。设备类型--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。
示例
# Find US iOS apps ranking for "fitness".
af keywords ranking-apps fitness --country=US --storefront=apple:ios
# Find Google Play apps ranking for "fitness".
af keywords ranking-apps fitness --country=US --storefront=google_play
# Find US iPad apps ranking for "meditation".
af keywords ranking-apps meditation --country=US --storefront=apple:ios --device-type=tablet
af keywords advertisers
af keywords advertisers <keyword-term> [flags]
列出针对特定关键词投放广告的应用,并提供每个广告主的展示份额、自然排名以及其竞价时长。
选项
<keyword-term>必填字符串。要查询广告主的关键词--days整数,默认值为180。回溯天数。常用值:7、14、30、90、180、365。--country必填字符串。ISO 国家/地区代码(例如 US、JP、GB)--device-type字符串。设备类型--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。
示例
# Find US apps advertising on the "notion" brand.
af keywords advertisers notion --country=US
# Find US iPad apps advertising on "meditation".
af keywords advertisers meditation --country=US --device-type=tablet
# Find US apps advertising on "fitness" over the last 30 days.
af keywords advertisers fitness --country=US --days=30
af keywords related
af keywords related <keyword-term> [flags]
查找与种子词相关的关键词,用于 ASO 研究。适合寻找受众相似、但更热门或竞争较小的替代词。
选项
<keyword-term>必填字符串。要查找相关词的种子关键词。--country必填字符串。ISO 国家代码(例如 US、JP、GB)--storefront必填字符串。应用商店平台(例如 apple:ios、google_play、amazon_appstore、steam、windows10、apple:mac、apple:tv、apple:imessage,或其他受支持的 storefront)。--device-type字符串。设备类型--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。
示例
# Find US iOS keywords related to "fitness".
af keywords related fitness --country=US --storefront=apple:ios
# Find US Google Play keywords related to "fitness".
af keywords related fitness --country=US --storefront=google_play
# Find US iPad keywords related to "meditation".
af keywords related meditation --country=US --storefront=apple:ios --device-type=tablet
af keywords tracked
af keywords tracked [flags]
列出已跟踪关键词及其不透明 ID。
选项
--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。--q字符串。按keyword_term筛选。--sort字符串。排序字段。设置q时,省略此项将按相关性排序;否则按列表顺序排列。--order字符串,默认值为desc。排序方向。--include-relationships布尔值,默认值为false。在每一行中包含每个(产品、国家/地区)的跟踪详情和同步状态。默认关闭;启用后会为每个已跟踪的(产品、国家/地区)配对添加一个嵌套块。
示例
# List every tracked keyword.
af keywords tracked
# Search tracked keywords for "fitness".
af keywords tracked --q=fitness
# List the most-recently-tracked keywords first.
af keywords tracked --sort=added_on
# Show each keyword's tracking and sync detail.
af keywords tracked --include-relationships
af keywords track
af keywords track <keyword-term> [flags]
跟踪关键词,以持续监控应用在该词下的每小时排名,并在排名位置变动时自动发送提醒。
选项
<keyword-term>必填字符串。要开始跟踪的关键词--product-id必填整数。要跟踪该关键词的应用产品 ID--country必填字符串。ISO 国家代码(例如 US、JP、GB)
示例
# Start tracking "meditation" for one of your apps in the US.
af keywords track meditation --product-id=336744124021 --country=US
# Track "workout" in Japan.
af keywords track workout --product-id=336744124021 --country=JP
af keywords untrack
af keywords untrack <keyword-id>
停止跟踪关键词。
选项
<keyword-id>必填字符串。已跟踪关键词行的标识符(由keywords tracked返回)。不是关键词文本。
示例
# Stop tracking a keyword.
af keywords untrack a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6
af apple-ads organizations
af apple-ads organizations [flags]
列出你管理广告系列的 Apple Ads 组织,以及各组织的货币和时区。
选项
--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。
示例
# List all the Apple Ads organizations you manage.
af apple-ads organizations
af apple-ads campaigns
af apple-ads campaigns [flags]
列出你的 Apple Ads 广告系列,以及各广告系列的状态、预算、定向国家/地区和排期。
选项
--display-status字符串。筛选为指定状态的广告系列。省略此项则包含所有状态。--name字符串。筛选名称包含此文本的广告系列。--countries字符串[]。筛选定向到其中任一国家/地区的广告系列。--count整数,默认值为10。要返回的结果数量。--page整数,默认值为1。页码。
示例
# List all your Apple Ads campaigns.
af apple-ads campaigns
# List only your running campaigns.
af apple-ads campaigns --display-status=running
# Search your campaigns by name.
af apple-ads campaigns --name=Brand
# List campaigns targeting the US or UK.
af apple-ads campaigns --countries=US,GB
af apple-ads ad-groups
af apple-ads ad-groups [campaign-id] [flags]
列出 Apple Ads 广告组及其默认出价、CPA 上限、定价模式和排期。
选项
[campaign-id]string。将范围限定为一个广告系列中的广告组。--display-statusstring。筛选指定状态的广告组。省略则包含所有状态。--namestring。筛选名称包含此子字符串的广告组。--countinteger,默认值为10。返回结果数量。--pageinteger,默认值为1。页码。
示例
# List all your ad groups across every campaign.
af apple-ads ad-groups
# List the ad groups in one campaign.
af apple-ads ad-groups aac_W9YthU
af apple-ads keywords
af apple-ads keywords <campaign-id> [flags]
列出广告系列的出价关键词,以及各关键词在日期范围内的表现(展示次数、轻点次数、安装次数、支出、单次安装成本),还包括匹配类型、出价,以及该关键词是定向词还是否定词。
选项
<campaign-id>必填 string。要列出其出价关键词的广告系列。--ad-group-idstring。筛选指定广告组中的关键词。--statusstring。筛选指定状态的关键词。省略则包含所有状态。--match-typestring。筛选一种匹配类型。省略则包含两种类型。--namestring。筛选文本包含此子字符串的关键词。--sortstring。按效果指标或出价对关键词排序。省略则按最新优先。--orderstring,默认值为desc。排序方向。--startstring。开始日期(YYYY-MM-DD)--endstring。结束日期(YYYY-MM-DD,默认为今天)--countinteger,默认值为10。返回结果数量。--pageinteger,默认值为1。页码。
示例
# Find a running campaign, then list its bid keywords.
af apple-ads campaigns --display-status=running
af apple-ads keywords aac_W9YthU
# See how a campaign's keywords performed over July 2026.
af apple-ads keywords aac_W9YthU --start=2026-07-01 --end=2026-07-31
# Find a campaign's highest-spending keywords.
af apple-ads keywords aac_W9YthU --sort=spend
af apple-ads search-terms
af apple-ads search-terms <campaign-id> [flags]
列出触发广告系列广告的实际用户搜索词,以及各搜索词的历史表现(展示次数、轻点次数、安装次数、支出、单次安装成本)。使用这些信息来发现新的出价关键词或排除词。
选项
<campaign-id>必填 string。要列出其搜索词的广告系列。--countinteger,默认值为10。返回结果数量。--pageinteger,默认值为1。页码。
示例
# Find a campaign, then see the user searches that triggered its ads.
af apple-ads campaigns
af apple-ads search-terms aac_uDGL4v
af apple-ads report
af apple-ads report [flags]
按广告系列报告 Apple Ads 的表现(展示次数、轻点次数、安装次数、支出、单次安装成本),并提供账户总计,统计范围为指定日期范围。
选项
--campaign-idsstring[]。将报告范围限定为指定广告系列。--startstring。开始日期(YYYY-MM-DD)--endstring。结束日期(YYYY-MM-DD,默认为今天)--countinteger,默认值为10。返回结果数量。--pageinteger,默认值为1。页码。
示例
# See how much an install costs across all your campaigns.
af apple-ads report
# Report on July 2026 performance.
af apple-ads report --start=2026-07-01 --end=2026-07-31
# List campaigns, then report on specific ones.
af apple-ads campaigns
af apple-ads report --campaign-ids=aac_uDGL4v
af apple-ads top-keywords
af apple-ads top-keywords <campaign-id> [flags]
按日期范围内的转化率、支出和安装次数,对广告系列中表现最佳的关键词进行排名。每个列表均按一项指标列出表现最佳的关键词。
选项
<campaign-id>必填 string。要为其关键词排名的广告系列。--topinteger,默认值为5。每项排名返回的关键词数量(最多 10 个)。--startstring。开始日期(YYYY-MM-DD)--endstring。结束日期(YYYY-MM-DD,默认为今天)
示例
# Find a campaign, then see its top-performing keywords.
af apple-ads campaigns
af apple-ads top-keywords aac_uDGL4v
# Rank a campaign's keywords for a specific week.
af apple-ads top-keywords aac_uDGL4v --start=2026-07-25 --end=2026-07-31
# Widen each ranking to the maximum of 10 keywords.
af apple-ads top-keywords aac_uDGL4v --top=10
af sdks list
af sdks list [flags]
列出所有已知 SDK 及其 ID,或搜索特定 SDK。
选项
--count整数,默认值为50。要返回的结果数量。--page整数,默认值为1。页码。--q字符串。按name、description、tags筛选。--sort字符串。排序字段。设置q时,省略此选项将按相关性排序;否则按列表顺序排列。--order字符串,默认值为desc。排序方向。--sdk-id字符串[]。仅返回这些 SDK ID。--include-inactive布尔值,默认值为false。包含非活跃 SDK。此选项很少使用;大多数调用者只需要活跃 SDK。
示例
# Find OneSignal's id.
af sdks list --q=OneSignal
# Search for analytics SDKs.
af sdks list --q=analytics
# Look up details for several SDK ids.
af sdks list --sdk-id=firebase,admob,onesignal
# Include inactive SDKs in the listing (not common).
af sdks list --include-inactive
af docs get
af docs get <slug>
按 slug 返回参考文档或指南。
选项
<slug>必填字符串。要返回的参考文档
示例
# Read the dataset naming conventions and pitfalls for [`metrics query`](#command-metrics-query); the dataset list itself is in [`metrics describe-datasets`](#command-metrics-describe-datasets).
af docs get numeric_metrics
# Read the catalog query grammar, field-reference syntax, aggregation rules, and worked queries for [`explorer list-products`](#command-explorer-list-products) and [`explorer aggregate-products`](#command-explorer-aggregate-products).
af docs get catalog_playbook
# Read the glossary of domain terms seen in responses.
af docs get glossary
af api
af api <path> [flags]
为没有专用命令的端点发起原始 API 请求。端点、参数和响应格式详见 https://docs.appfigures.com。
选项
<path>必填字符串。API 路径(例如 /users、/products)--method字符串,默认值为GET。HTTP 方法(可选:GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS)--body字符串。请求正文(JSON 字符串)
af mcp
af mcp
(已弃用)通过标准输入/输出运行本地 MCP 服务。请改用托管的 Appfigures MCP 服务:https://mcp.appfigures.com/mcp
af auth login
af auth login [flags]
登录 Appfigures
打印用于授权此 CLI 的 URL。打开该 URL 并批准访问,然后使用批准后显示的代码,通过 --code <code> 再次运行。传入 --interactive,即可通过引导式浏览器流程登录。
对于无人值守场景(CI、脚本),请在环境中设置 APPFIGURES_API_KEY。无需使用浏览器流程。
选项
--code字符串。OAuth 授权同意页面提供的授权码。af auth login的第二步:交换授权码、保存令牌并退出。--interactive布尔值。通过引导式浏览器流程登录。
af auth logout
af auth logout
移除已存储的凭据
af auth status
af auth status
显示身份验证和账户状态
支持
- 问题反馈:github.com/appfigures/cli/issues
- API 文档:docs.appfigures.com
参与贡献
此软件包在私有单体仓库中开发,并在此作为镜像发布。如需报告错误或申请功能,请提交问题。
我们也在招聘 AI 原生开发人员。如果你希望帮助构建 AI App Intelligence 的未来,请通过 appfigures.com/careers 申请。
许可证
Apache 2.0
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。