Apifox 帮助文档
帮助文档
常见问题Apifox 官网私有化部署
开发者中心
开发者中心
  • 开放 API
  • Apifox Markdown
  • 更新日志
  • Road Map
下载
下载
  • 下载 Apifox
  • 下载 IDEA 插件
  • 下载浏览器扩展
  • Apifox Web 版
帮助文档
常见问题Apifox 官网私有化部署
开发者中心
开发者中心
  • 开放 API
  • Apifox Markdown
  • 更新日志
  • Road Map
下载
下载
  • 下载 Apifox
  • 下载 IDEA 插件
  • 下载浏览器扩展
  • Apifox Web 版
  1. Apifox CLI
  • 帮助中心
  • 更新日志
  • 入门
    • 产品介绍
    • 私有化部署
    • 联系我们
  • 开始使用
    • 下载 Apifox
    • 基本概念
    • 注册与登录
    • 页面布局
    • 快速上手
      • 概述
      • 新建接口
      • 发送接口请求
      • 快捷请求
      • 添加断言
      • 新建测试场景
      • 分享 API 文档
      • 了解更多
    • 导入导出数据
      • 导出数据
      • 手动导入
      • 概述
      • 定时导入(绑定数据源)
      • 导入设置
      • 其它方式导入
        • 导入 cURL
        • 导入 Markdown
        • 导入 Insomnia
        • 导入 apiDoc
        • 导入 .har 文件
        • 导入 Apipost
        • 导入 Eolink
        • 导入 knife4j
        • 导入 NEI
        • 导入小幺鸡(docway)
        • 导入 Apizza
        • 导入 WSDL
        • 导入 Postman
        • 导入 OpenAPI/Swagger
  • 设计 API
    • 概述
    • 新建 API 项目
    • 接口基础知识
    • 接口设计规范
    • 模块
    • 请求体多示例配置
    • 响应组件
    • 常用字段
    • 全局参数
    • 历史记录
    • 接口评论
    • 批量管理
    • 通用接口文档
    • 基础知识
      • 接口基本信息
        • 请求头
        • HTTP/2
        • 请求参数编码解码
        • 请求参数与请求体
        • 请求 URL 与方法
      • 认证与授权
        • 概述
        • 支持的授权类型
        • Digest Auth
        • OAuth 1.0
        • OAuth 2.0
        • Hawk Authentication
        • Kerberos
        • NTLM
        • Akamai EdgeGrid
        • CA 和客户端证书
      • 响应与 Cookie
        • 概述
        • API 响应
        • 创建和发送 Cookie
        • 实际请求
        • 提取响应示例
      • 请求代理
        • 网页端中的请求代理
        • 分享文档中的请求代理
        • 客户端中的请求代理
      • API Hub
        • API Hub
    • 数据模型
      • 概述
      • 高级数据类型
      • 构建数据模型
      • 通过 JSON 等生成
      • 新建数据模型
      • 数据模型进阶
        • 使用 oneOf / anyOf / allOf 构建组合模式
        • 使用 discriminator 实现多态数据结构
    • 鉴权组件
      • 概述
      • 创建鉴权组件
      • 使用鉴权组件
      • 在线文档中的鉴权组件
    • 高级功能
      • 参数列表外观
      • 接口唯一标识
      • 关联测试场景
      • 接口状态
      • 接口字段
  • 开发和调试 API
    • 概述
    • 生成请求
    • 发送请求
    • 请求历史
    • 接口调试用例
    • 单接口用例
    • 动态值
    • 校验响应
    • 文档模式/调试模式
    • 生成代码
    • 环境和变量
      • 概述
      • 环境管理
      • 全局/环境/模块/临时变量
      • Vault Secrets(密钥库)
        • 功能简介
    • 前后置操作&脚本
      • 概述
      • 断言
      • 提取变量
      • 等待时间
      • 安全性
      • 数据库操作
        • 概述
        • MySQL
        • MongoDB
        • Redis
        • Oracle
      • 使用脚本
        • 概述
        • 前置脚本
        • 后置脚本
        • 公共脚本
        • pm 脚本 API
        • 使用 JS 类库
        • 响应数据可视化
        • 调用外部程序
      • 脚本示例
        • 断言示例
        • 脚本使用变量
        • 脚本读取/修改接口请求信息
      • 常见问题
        • 如何获取动态参数的真实值并加密?
        • 脚本运行后,提取的数字(bigint)精度丢失应该如何处理?
    • API 调试
      • SSE 调试
      • MCP 调试
      • GraphQL 调试
      • WebSocket 调试
      • Socket.IO 调试
      • SOAP/WebService
      • gRPC 调试
      • Webhook 调试
      • AI Agent Debugger
      • A2A Debugger
      • 使用请求代理调试
      • Dubbo 调试
        • 新建 Dubbo 接口
        • 调试 Dubbo 接口
        • Dubbo 接口文档
      • TCP(Socket)
        • Socket 接口功能简介
        • 报文数据处理器
  • Mock 数据
    • 概述
    • 智能 Mock
    • 自定义 Mock
    • Mock 优先级
    • Mock 脚本
    • 云端 Mock
    • 自托管 Runner Mock
  • 自动化测试
    • 概述
    • 编排场景用例
      • 新建场景用例
      • 测试步骤间传递数据
      • 测试流程控制条件
      • 从接口/用例同步数据
      • 跨项目导入接口/用例
      • 导出场景用例数据
    • 运行场景用例
      • 运行场景用例
      • 批量运行场景用例
      • 数据驱动测试
      • 共用测试数据
      • 定时任务
      • 管理其它项目接口的运行环境
    • 测试套件
      • 概述
      • 新建测试套件
      • 编排测试套件
      • 本地运行测试套件
      • CLI 运行测试套件
      • 定时任务
    • 测试报告
      • 测试报告
    • API 测试
      • 性能测试
      • 集成测试
      • 端到端测试
      • 回归测试
      • 契约测试
    • Apifox CLI
      • 概述
      • 安装和运行 CLI
      • CLI 命令选项
    • CI/CD
      • 概述
      • 与 Gitlab 集成
      • 与其它更多 CI/CD 平台集成
      • 与 Jenkins 集成
      • Git 提交自动触发测试
      • 与 Github Actions 集成
  • 发布 API 文档
    • 概述
    • 快捷分享
    • 查看 API 文档
    • 发布文档站
    • 页面布局设置
    • 自定义页面代码
    • 自定义域名
    • AI 相关特性
    • SEO 设置
    • 高级设置
      • 文档站搜索设置
      • 跨域代理
      • 文档站接入 Google Analytics
      • 文档左侧目录设置
      • 文档可见性设置
      • 在线 URL 链接规范
    • API 版本
      • 功能简介
      • 创建 API 版本
      • 发布 API 版本
      • 快捷分享 API 版本
  • 迭代分支
    • 功能简介
    • 新建迭代分支
    • 在迭代分支中改动 API
    • 在迭代分支中测试 API
    • 合并迭代分支
    • 管理迭代分支
    • AI 分支
  • 管理中心
    • 基本概念
    • 团队入驻
    • 管理团队
      • 团队基本操作
      • 成员角色与权限设置
      • 团队成员管理
      • 团队资源
        • 通用 Runner
        • 请求代理 Agent(Proxy)
        • 团队变量
      • 实时协作
        • 团队协作
    • 管理项目
      • 项目基本操作
      • 项目成员管理
      • 通知设置
        • 功能简介
        • 通知对象
        • 通知事件
      • 项目资源
        • 数据库连接
        • Git 仓库连接
    • 管理组织
      • 组织基本操作
      • 单点登录(SSO)
        • 功能简介
        • 为组织配置单点登录
        • 管理用户账号
        • 将组映射到团队
        • Microsoft Entra ID
      • SCIM 用户管理
        • 功能简介
        • Microsoft Entra ID
      • 组织资源
        • 自托管 Runner
      • 订单管理
        • 组织付费经理
  • 离线空间
    • 功能简介
  • IDEA 插件
    • 快速上手
    • 生成接口文档
    • 生成数据模型
    • 配置
      • 全局配置
      • 项目内配置
      • 可配置规则
      • 脚本工具
      • Groovy 本地扩展
    • 进阶配置
      • 注释规范说明
      • 框架支持
    • 常见问题
      • 常见问题
  • 浏览器扩展
    • Chrome
    • Microsoft Edge
  • Apifox AI 功能
    • 总览
    • 启用 AI 功能
    • 生成测试用例
    • 修改数据模型
    • 接口规范性检测
    • 接口文档完整性检测
    • 字段命名
    • 常见问题
  • Apifox MCP Server
    • 新版 MCP 内测
    • 概述
    • 通过 MCP 使用 Apifox 项目内的 API 文档
    • 通过 MCP 使用公开发布的 API 文档
    • 通过 MCP 使用 OpenAPI/Swagger文档
  • 最佳实践
    • 概述
    • 接口之间如何传递数据
    • 登录态(Auth)如何处理
    • 接口签名如何处理
    • 如何加密/解密接口数据
    • Jenkins 定时触发任务
    • 如何计算 AI 问答成本
    • 与其他成员共用数据库连接配置
    • 通过 CLI 运行包含云端数据库连接配置的测试场景
    • 通过 Runner 运行包含云端数据库连接配置的测试场景
    • Apifox 测试步骤之间怎么传递数据?
  • 账号&应用设置
    • 账号设置
    • API 访问令牌
    • 通知
    • 语言设置
    • 快捷键
    • 网络代理
    • 数据备份与恢复
    • 更新 Apifox
    • 实验性功能
  • 身份验证 & Auth 鉴权指南
    • 什么是 API Key
    • 什么是 Bearer Token
    • 什么是 JWT
    • 什么是 Basic Auth
    • 什么是 Digest Auth
    • 什么是 OAuth 1.0
    • 什么是 OAuth 2.0
      • 什么是 OAuth 2.0
      • 授权码授权类型
      • 授权码授权类型,带有 PKCE
      • 隐式授权类型
      • 密码凭证授权类型
      • 客户端凭证授权类型
  • 服务与隐私协议
    • 服务协议
    • 隐私协议
    • 服务等级协议
  • 参考资料
    • API 设计优先理念
    • JSON Schema 介绍
    • JSONPath 介绍
    • XPath 介绍
    • Apifox Markdown 语法
    • CSV 格式规范
    • 正则表达式
    • 安装 Java 环境
    • Runner 运行环境
    • 常见编程语言对应的数据类型
    • Socket 粘包和分包问题
    • 词汇表
    • Apifox Swagger 扩展
      • 概述
      • x-apifox-folder
      • x-apifox-status
      • x-apifox-name
      • x-apifox-maintainer
    • Apifox JSON Schema 扩展
      • 概述
      • x-apifox-mock
      • x-apifox-orders
      • x-apifox-enum
    • 动态值表达式
  • 常见问题
  1. Apifox CLI

CLI 命令选项

Apifox CLI 用于在终端或 CI/CD 流程中操作 Apifox 项目。功能上,覆盖了自动化测试运行、接口设计资源维护、环境与变量管理、项目数据导入导出、在线文档发布、分支协作和项目管理等。适用于通过脚本或流水线批量执行 Apifox 操作,在 AI Agent 中与代码库协同、高效管理 Apifox 项目资源。

基础语法#

image.png

身份验证#

在访问你的私有项目前,需要先登录或设置 访问令牌。
命令说明示例
login使用令牌登录,令牌会持久化到本地。apifox login --with-token <您的令牌>
logout退出登录。apifox logout
whoami显示当前登录的用户信息。apifox whoami
示例场景:首次登录

CLI Schema#

CLI Schema 是一项通用子命令,在创建或更新复杂资源时,往往需要构建复杂的请求结构,为了降低执行失败率 —— 推荐先使用 cli-schema 查看对应资源执行命令的 JSON Schema(cli-schema get 命令),再用同一个资源的 schema key 校验(cli-schema validate 命令)本地 JSON 文件。schema key 通常由命令路径和动作组成,例如 endpoint-create、test-scenario-update、merge-request-create。
命令说明示例
cli-schema list列出当前 CLI 支持查看和校验的数据结构。apifox cli-schema list
cli-schema get查看某个命令的 --file JSON 文件结构。apifox cli-schema get endpoint-create
cli-schema validate校验 JSON 文件是否符合指定结构。apifox cli-schema validate endpoint-create --file ./endpoint.json

团队与项目#

团队和项目是使用 CLI 操作 Apifox 数据的起点。创建项目时先找到团队 ID,后续查看接口、环境、场景用例等项目内资源时,都需要用到项目 ID。
如果长期在同一个项目中工作,可以把常用默认 projectId 记录到当前工作区的 .apifox/settings.json,供 AI Agent 读取:
{
  "projectId": 123456
}
当用户需求没有明确指定项目时,AI Agent 应优先使用这里保存的 projectId。
项目内资源命令通常使用 --project <projectId> 指定项目,可使用 --branch <branchName> 指定分支;不传 --branch 时默认主分支。资源命令不需要传 --type,--type 主要用于 branch、folder 等需要选择类型的命令。

团队管理#

查看当前账号可访问的团队。创建项目时通常需要先通过团队命令确认 teamId。
命令说明示例
team list列出当前账号可访问的团队。apifox team list
team get查看指定团队的详情。apifox team get <teamId>

项目管理#

管理和查看你账户下的所有项目。
命令说明示例
project list列出所有项目(ID、名称、描述)。apifox project list
project get查看特定项目的详细配置。apifox project get <projectId>
project create在指定团队下创建普通项目。创建后可继续在客户端完善项目设置。apifox project create --team <teamId> --name "新项目"
示例场景:查找项目 ID

项目设置#

查看或更新项目级配置,适用于排查项目功能开关、权限配置、AI 写入权限等问题。
命令说明示例
project settings get查看项目设置。apifox project settings get --project <projectId>
project settings update通过数据文件更新项目设置。修改前建议先查看当前配置。apifox project settings update --project <projectId> --file <path>
cli-schema get project-settings-update查看项目设置更新所需的 JSON Schema。apifox cli-schema get project-settings-update
cli-schema validate project-settings-update校验项目设置更新数据文件。apifox cli-schema validate project-settings-update --file ./project-settings.json

环境与变量#

适用于维护测试运行和接口调试所需的环境配置与变量值。运行场景用例、测试套件或调试接口前,可通过相关命令确认环境 ID、全局变量和团队变量。

环境管理#

查看项目关联的环境配置信息,如前置 URL (Base URL) 和服务设置。
命令说明示例
environment list列出项目下的所有环境。apifox environment list --project <projectId>
environment get查看特定环境的配置详情(前置 URL 等)。apifox environment get <envId> --project <projectId>
environment create创建新环境,适用于初始化项目或准备测试运行环境。apifox environment create <name> --project <projectId> --base-url <url>
environment update更新环境配置。apifox environment update <envId> --project <projectId> --file <path>
environment delete删除不再使用的环境。删除前应确认测试任务不再依赖它。apifox environment delete <envId> --project <projectId>
cli-schema get environment-update查看环境更新所需的 JSON Schema。apifox cli-schema get environment-update
cli-schema validate environment-update校验环境更新数据文件。apifox cli-schema validate environment-update --file ./environment.json
示例场景:查看环境的前置 URL

变量管理#

管理项目运行时会读取的全局变量或团队变量。运行测试、调试接口或迁移环境配置前,可通过变量命令确认变量来源和值。
命令说明示例
variables list按作用域列出变量。apifox variables list --project <projectId> --scope global
variables get查看指定变量值。apifox variables get --project <projectId> --scope global --key <key>
variables set新增或更新变量值。apifox variables set --project <projectId> --scope global --key <key> --value <value>
variables delete删除变量。apifox variables delete --project <projectId> --scope global --key <key>
variables import从本地文件导入变量。apifox variables import --project <projectId> --scope global --file <path>
variables export导出变量到本地文件。apifox variables export --project <projectId> --scope global --output <path>

接口设计资源管理#

适用于维护项目中的接口设计资源,包括 HTTP API 接口、数据模型、目录、Mock、公共参数、响应组件和鉴权组件。创建或更新复杂资源时,建议先通过 cli-schema get <schemaKey> 查看数据结构,再使用 cli-schema validate <schemaKey> --file <path> 校验数据文件,确认通过后再执行写入。

HTTP API 接口#

endpoint 用于维护项目中的 HTTP API 接口,包括接口方法、路径、请求参数、请求体、响应定义、状态、标签和目录等内容。适用于查找接口 ID、批量调整接口状态,或在分支中修改接口定义。
命令说明示例
endpoint list列出项目中的 HTTP API 接口,可用于查找接口 ID。apifox endpoint list --project <projectId>
endpoint get查看接口详情,包括方法、路径、参数、请求体和响应定义。apifox endpoint get <endpointId> --project <projectId>
endpoint create从 JSON 文件创建接口。适用于创建包含请求参数、请求体和响应定义的完整接口。apifox endpoint create --project <projectId> --file ./endpoint.json
endpoint update更新接口。简单字段可用参数,复杂字段建议使用 --file。apifox endpoint update <endpointId> --project <projectId> --file ./endpoint.json
endpoint delete删除接口。删除前应确认场景用例、接口用例或合并范围是否仍依赖它。apifox endpoint delete <endpointId> --project <projectId>
cli-schema get endpoint-create查看接口创建所需的 JSON Schema。apifox cli-schema get endpoint-create
cli-schema validate endpoint-create校验接口创建数据文件是否符合 Schema。apifox cli-schema validate endpoint-create --file ./endpoint.json
cli-schema get endpoint-update查看接口更新所需的 JSON Schema。apifox cli-schema get endpoint-update
cli-schema validate endpoint-update校验接口更新数据文件是否符合 Schema。apifox cli-schema validate endpoint-update --file ./endpoint.json

数据模型#

schema 用于维护项目中的数据模型。数据模型可被接口参数、请求体、响应体等结构引用,适用于沉淀可复用的对象结构、枚举定义和通用数据格式。
命令说明示例
schema list列出项目中的数据模型,可用于查找模型 ID。apifox schema list --project <projectId>
schema get查看数据模型详情。apifox schema get <schemaId> --project <projectId>
schema create从 JSON 文件创建数据模型。apifox schema create --project <projectId> --file ./schema.json
schema update更新数据模型。修改被接口引用的模型前,应确认影响范围。apifox schema update <schemaId> --project <projectId> --file ./schema.json
schema delete删除数据模型。删除前应确认接口或响应中不再引用它。apifox schema delete <schemaId> --project <projectId>
cli-schema get schema-create查看数据模型创建所需的 JSON Schema。apifox cli-schema get schema-create
cli-schema validate schema-create校验数据模型创建数据文件是否符合 Schema。apifox cli-schema validate schema-create --file ./schema.json
cli-schema get schema-update查看数据模型更新所需的 JSON Schema。apifox cli-schema get schema-update
cli-schema validate schema-update校验数据模型更新数据文件是否符合 Schema。apifox cli-schema validate schema-update --file ./schema.json

Markdown 文档#

doc 用于维护 API 管理树中的 Markdown 文档,适用于补充接口说明、接入说明、业务规则或其他接口设计相关内容。
命令说明示例
doc list列出 Markdown 文档,用于查找文档 ID。apifox doc list --project <projectId>
doc get查看 Markdown 文档详情,包括标题和内容等信息。apifox doc get <docId> --project <projectId>
doc create创建 Markdown 文档。apifox doc create --project <projectId> --file ./doc.json
doc update更新 Markdown 文档内容或配置。apifox doc update <docId> --project <projectId> --file ./doc-update.json
doc delete删除 Markdown 文档。apifox doc delete <docId> --project <projectId>
cli-schema get doc-create查看 Markdown 文档创建所需的 JSON Schema。apifox cli-schema get doc-create
cli-schema validate doc-create校验 Markdown 文档创建数据文件是否符合 Schema。apifox cli-schema validate doc-create --file ./doc.json
cli-schema get doc-update查看 Markdown 文档更新所需的 JSON Schema。apifox cli-schema get doc-update
cli-schema validate doc-update校验 Markdown 文档更新数据文件是否符合 Schema。apifox cli-schema validate doc-update --file ./doc-update.json

资源目录/文件夹#

folder 用于维护各类资源的目录树,例如接口目录、数据模型目录、场景用例目录、响应组件目录、测试数据目录等。操作目录时需通过 --type 指定资源类型;不同类型资源有独立的目录树。
命令说明示例
folder list按资源类型列出目录,常用于查找父目录 ID。apifox folder list --project <projectId> --type endpoint
folder create按资源类型创建目录。不同资源有独立目录树。apifox folder create --project <projectId> --type endpoint --name "新目录"
folder move将目录移动到新的父级目录下。apifox folder move <folderId> --project <projectId> --type endpoint --parent <parentId>
folder update更新目录名称、说明或父级。命令行参数会覆盖数据文件中的同名字段。apifox folder update <folderId> --project <projectId> --type endpoint --name "新目录名"
folder delete删除目录。删除前应确认目录下资源是否仍需保留。apifox folder delete <folderId> --project <projectId> --type endpoint
cli-schema get folder-create查看目录创建所需的 JSON Schema。apifox cli-schema get folder-create
cli-schema validate folder-create校验目录创建数据文件是否符合 Schema。apifox cli-schema validate folder-create --file ./folder.json
cli-schema get folder-update查看目录更新所需的 JSON Schema。apifox cli-schema get folder-update
cli-schema validate folder-update校验目录更新数据文件是否符合 Schema。apifox cli-schema validate folder-update --file ./folder.json
--type 支持以下取值:
type对应目录
endpointHTTP API 接口目录
schema数据模型目录
test-scenario场景用例目录
response-component响应组件目录
security-scheme鉴权组件目录
test-suite测试套件目录
test-data测试数据目录
提示
--type 用于选择资源目录类型,不是目录名称。description 字段仅支持 endpoint 和 test-scenario 目录;其他目录类型只支持更新名称或父目录。

Mock 期望#

mock 用于维护接口下的 Mock 期望,适用于配置接口模拟返回、查看已有 Mock 规则或调整 Mock 数据。
命令说明示例
mock list列出项目或指定接口下的 Mock 期望。apifox mock list --project <projectId> --http-api-id <endpointId>
mock get查看某个 Mock 期望详情。需传入 Mock 期望 ID。apifox mock get <mockId> --project <projectId>
mock create从 JSON 文件创建 Mock 期望。apifox mock create --project <projectId> --file ./mock.json
mock update更新 Mock 期望。apifox mock update <mockId> --project <projectId> --file ./mock.json
mock delete删除 Mock 期望。apifox mock delete <mockId> --project <projectId>
cli-schema get mock-create查看 Mock 期望创建所需的 JSON Schema。apifox cli-schema get mock-create
cli-schema validate mock-create校验 Mock 期望创建数据文件是否符合 Schema。apifox cli-schema validate mock-create --file ./mock.json
cli-schema get mock-update查看 Mock 期望更新所需的 JSON Schema。apifox cli-schema get mock-update
cli-schema validate mock-update校验 Mock 期望更新数据文件是否符合 Schema。apifox cli-schema validate mock-update --file ./mock.json

公共参数#

common-parameter 用于维护可复用的公共参数,例如 Header、Query、Cookie 等。适用于统一管理多个接口共享的参数。
命令说明示例
common-parameter list列出公共参数。apifox common-parameter list --project <projectId>
common-parameter get查看公共参数详情。apifox common-parameter get <commonParameterId> --project <projectId>
common-parameter create从数据文件创建公共参数。apifox common-parameter create --project <projectId> --file ./common-parameter.json
common-parameter update更新公共参数。apifox common-parameter update <commonParameterId> --project <projectId> --file ./common-parameter.json
common-parameter import从文件导入公共参数。apifox common-parameter import --project <projectId> --file ./common-parameters.json
common-parameter export导出公共参数到本地文件。apifox common-parameter export --project <projectId> --output ./common-parameters.json
cli-schema get common-parameter-create查看公共参数创建所需的 JSON Schema。apifox cli-schema get common-parameter-create
cli-schema validate common-parameter-create校验公共参数创建数据文件。apifox cli-schema validate common-parameter-create --file ./common-parameter.json
cli-schema get common-parameter-update查看公共参数更新所需的 JSON Schema。apifox cli-schema get common-parameter-update
cli-schema validate common-parameter-update校验公共参数更新数据文件。apifox cli-schema validate common-parameter-update --file ./common-parameter.json

响应组件#

response-component 用于维护可复用的响应组件。多个接口返回结构相同或相近时,可先创建响应组件,再在接口响应定义中引用。
命令说明示例
response-component list列出响应组件。apifox response-component list --project <projectId>
response-component get查看响应组件详情。apifox response-component get <responseComponentId> --project <projectId>
response-component create从 JSON 文件创建响应组件。apifox response-component create --project <projectId> --file ./response-component.json
response-component update更新响应组件。apifox response-component update <responseComponentId> --project <projectId> --file ./response-component.json
response-component delete删除响应组件。删除前应确认接口响应定义是否仍引用它。apifox response-component delete <responseComponentId> --project <projectId>
cli-schema get response-component-create查看响应组件创建所需的 JSON Schema。apifox cli-schema get response-component-create
cli-schema validate response-component-create校验响应组件创建数据文件是否符合 Schema。apifox cli-schema validate response-component-create --file ./response-component.json
cli-schema get response-component-update查看响应组件更新所需的 JSON Schema。apifox cli-schema get response-component-update
cli-schema validate response-component-update校验响应组件更新数据文件是否符合 Schema。apifox cli-schema validate response-component-update --file ./response-component.json

鉴权组件#

security-scheme 用于维护 Apifox 中的鉴权组件,对应 OpenAPI 的 securitySchemes。OAuth2、JWT、API Key、Bearer Token 等认证方式均可配置为鉴权组件,供接口引用。
命令说明示例
security-scheme list列出项目中的鉴权组件。apifox security-scheme list --project <projectId>
security-scheme get查看鉴权组件详情。apifox security-scheme get <schemeId> --project <projectId>
security-scheme create从 JSON 文件创建鉴权组件。apifox security-scheme create --project <projectId> --file ./scheme.json
security-scheme update更新鉴权组件。apifox security-scheme update <schemeId> --project <projectId> --file ./scheme.json
security-scheme delete删除鉴权组件。删除前应确认接口是否仍引用它。apifox security-scheme delete <schemeId> --project <projectId>
cli-schema get security-scheme-create查看鉴权组件创建所需的 JSON Schema。apifox cli-schema get security-scheme-create
cli-schema validate security-scheme-create校验鉴权组件创建数据文件是否符合 Schema。apifox cli-schema validate security-scheme-create --file ./scheme.json
cli-schema get security-scheme-update查看鉴权组件更新所需的 JSON Schema。apifox cli-schema get security-scheme-update
cli-schema validate security-scheme-update校验鉴权组件更新数据文件是否符合 Schema。apifox cli-schema validate security-scheme-update --file ./scheme.json
提示
接口路径是 API 路径,不是本地文件路径。Windows Git Bash 可能会把以 / 开头的参数转换成 D:/... 这样的本地路径。遇到这种情况,建议使用单引号,例如 --path '/api/users',或使用 --file 提供接口数据。
测试用例或场景用例 HTTP 步骤里的 responseId 应填写接口响应定义 endpoint.responses[].id,不能直接填写响应组件 ID。如果要复用响应组件,请先在接口响应定义中通过 referencedResponseId 关联响应组件。

自动化测试#

适用于搭建和运行自动化测试,包括维护单接口测试用例、场景用例、测试套件、测试数据集,以及查看测试报告、Runner 和定时任务。

单接口测试用例#

test-case 用于维护自动化测试模块中的单接口测试用例,适用于围绕某个接口配置测试数据、断言和执行参数。
命令说明示例
test-case list列出项目中的单接口测试用例,可按接口过滤。apifox test-case list --project <projectId> --endpoint <endpointId>
test-case category列出测试用例分组,用于获取创建或更新时需要的 categoryId。apifox test-case category --project <projectId>
test-case get查看单接口测试用例详情。apifox test-case get <caseId> --project <projectId>
test-case create从 JSON 文件创建单接口测试用例。apifox test-case create --project <projectId> --file ./case.json
test-case update更新单接口测试用例。apifox test-case update <caseId> --project <projectId> --file ./case.json
test-case delete删除单接口测试用例。apifox test-case delete <caseId> --project <projectId>
cli-schema get test-case-create查看测试用例创建的数据结构。apifox cli-schema get test-case-create
cli-schema validate test-case-create校验测试用例创建数据文件。apifox cli-schema validate test-case-create --file ./case.json
cli-schema get test-case-update查看测试用例更新的数据结构。apifox cli-schema get test-case-update
cli-schema validate test-case-update校验测试用例更新数据文件。apifox cli-schema validate test-case-update --file ./case.json

场景用例#

test-scenario 用于维护自动化测试中的场景用例。场景用例可包含接口步骤、分组、条件控制等内容,也可直接运行并生成报告。
命令说明示例
test-scenario list列出项目的所有场景用例,用于查找场景用例 ID。apifox test-scenario list --project <projectId>
test-scenario get查看场景用例详情,包括步骤结构和运行相关配置。apifox test-scenario get <scenarioId> --project <projectId>
test-scenario create创建场景用例。简单场景可用 --name,复杂步骤建议通过数据文件写入。apifox test-scenario create --project <projectId> --file ./scenario.json
test-scenario update更新场景用例。更新步骤前建议先查看 cli-schema 并校验数据文件。apifox test-scenario update <scenarioId> --project <projectId> --file ./scenario.json
test-scenario delete删除场景用例。apifox test-scenario delete <scenarioId> --project <projectId>
cli-schema get test-scenario-create查看场景用例创建的数据结构。apifox cli-schema get test-scenario-create
cli-schema validate test-scenario-create校验场景用例创建数据文件。apifox cli-schema validate test-scenario-create --file ./scenario.json
cli-schema get test-scenario-update查看场景用例更新的数据结构。apifox cli-schema get test-scenario-update
cli-schema validate test-scenario-update校验场景用例更新数据文件。apifox cli-schema validate test-scenario-update --file ./scenario.json
test-scenario run运行指定场景用例。运行时通常需要指定环境。apifox test-scenario run <scenarioId> --project <projectId> --environment <environmentId>
示例场景:直接运行场景用例

测试套件#

test-suite 用于维护测试套件。测试套件可组合多个场景用例或场景目录,适用于回归测试、冒烟测试、发布前验证等批量运行场景。
命令说明示例
test-suite list列出项目的所有测试套件,用于查找套件 ID。apifox test-suite list --project <projectId>
test-suite get查看测试套件详情,包括套件内包含的场景或目录配置。apifox test-suite get <testSuiteId> --project <projectId>
test-suite create创建测试套件,可关联场景用例或目录。简单套件可用 --name,复杂配置建议通过数据文件写入。apifox test-suite create --project <projectId> --file ./suite.json
test-suite update更新测试套件。apifox test-suite update <testSuiteId> --project <projectId> --file ./suite.json
test-suite delete删除测试套件。apifox test-suite delete <testSuiteId> --project <projectId>
cli-schema get test-suite-create查看测试套件创建的数据结构。apifox cli-schema get test-suite-create
cli-schema validate test-suite-create校验测试套件创建数据文件。apifox cli-schema validate test-suite-create --file ./suite.json
cli-schema get test-suite-update查看测试套件更新的数据结构。apifox cli-schema get test-suite-update
cli-schema validate test-suite-update校验测试套件更新数据文件。apifox cli-schema validate test-suite-update --file ./suite.json
test-suite run运行指定测试套件。运行时通常需要指定环境。apifox test-suite run <testSuiteId> --project <projectId> --environment <environmentId>

测试数据#

test-data 用于维护自动化测试模块中的测试数据集,适用于在数据驱动测试中复用多组输入数据。
命令说明示例
test-data list列出自动化测试数据集。apifox test-data list --project <projectId>
test-data get查看自动化测试数据集详情。apifox test-data get <dataId> --project <projectId>
test-data create从 JSON 文件创建测试数据集。apifox test-data create --project <projectId> --file ./test-data.json
test-data update更新测试数据集。apifox test-data update <dataId> --project <projectId> --file ./test-data.json
test-data delete删除测试数据集。apifox test-data delete <dataId> --project <projectId>
cli-schema get test-data-create查看测试数据集创建的数据结构。apifox cli-schema get test-data-create
cli-schema validate test-data-create校验测试数据集创建数据文件。apifox cli-schema validate test-data-create --file ./test-data.json
cli-schema get test-data-update查看测试数据集更新的数据结构。apifox cli-schema get test-data-update
cli-schema validate test-data-update校验测试数据集更新数据文件。apifox cli-schema validate test-data-update --file ./test-data.json

测试报告#

test-report 用于查看和管理测试运行后生成的报告,支持查看历史运行结果、下载报告文件或清理不再需要的报告。
命令说明示例
test-report list列出项目中的测试报告。apifox test-report list --project <projectId>
test-report get查看测试报告详情。apifox test-report get <reportId> --project <projectId>
test-report download下载测试报告到本地文件。apifox test-report download <reportId> --project <projectId> --format json --output ./report.json
test-report delete删除测试报告。apifox test-report delete <reportId> --project <projectId>

Runner#

runner 用于查看和管理团队或项目中的 Runner。适用于排查运行环境、确认 Runner 状态,或执行健康检查。
命令说明示例
runner list列出项目或团队中的 Runner。apifox runner list --project <projectId>
runner get查看 Runner 详情。apifox runner get <runnerId> --project <projectId>
runner create创建团队 Runner。apifox runner create --team <teamId> --name <name> --runner-type <runnerType> --server-type <serverType>
runner check检查 Runner 健康状态。apifox runner check <runnerId> --team <teamId>
runner delete删除 Runner。apifox runner delete <runnerId> --project <projectId>
cli-schema get runner-create查看 Runner 创建数据结构。apifox cli-schema get runner-create
cli-schema validate runner-create校验 Runner 创建数据文件。apifox cli-schema validate runner-create --file ./runner.json

定时任务#

scheduled-task 用于维护自动化测试定时任务,支持配置计划运行测试,也支持通过 CLI 手动触发任务。
命令说明示例
scheduled-task list列出项目中的定时任务。apifox scheduled-task list --project <projectId>
scheduled-task get查看定时任务详情。apifox scheduled-task get <taskId> --project <projectId>
scheduled-task create从 JSON 文件创建定时任务。apifox scheduled-task create --project <projectId> --file ./scheduled-task.json
scheduled-task update更新定时任务。apifox scheduled-task update <taskId> --project <projectId> --file ./scheduled-task.json
scheduled-task delete删除定时任务。apifox scheduled-task delete <taskId> --project <projectId>
scheduled-task run手动触发一次定时任务。apifox scheduled-task run <taskId> --project <projectId>
cli-schema get scheduled-task-create查看定时任务创建的数据结构。apifox cli-schema get scheduled-task-create
cli-schema validate scheduled-task-create校验定时任务创建数据文件。apifox cli-schema validate scheduled-task-create --file ./scheduled-task.json
cli-schema get scheduled-task-update查看定时任务更新的数据结构。apifox cli-schema get scheduled-task-update
cli-schema validate scheduled-task-update校验定时任务更新数据文件。apifox cli-schema validate scheduled-task-update --file ./scheduled-task.json
示例场景:直接运行场景用例

核心运行命令:apifox run#

这是 Apifox 功能最丰富用例运行命令。您可以直接从 Apifox 客户端 -> 自动化测试 -> CI/CD 面板中复制生成的命令。

常用命令示例 (从客户端复制)#

1. 使用 Access Token 运行在线场景:
-t: 场景用例 ID
-e: 运行环境 ID
-r: 报告格式
--upload-report: 执行完后自动同步报告到云端
2. 运行本地导出的 JSON 文件:

运行参数表说明#

参数描述默认值
--access-token <token>设置鉴权令牌-
-t, --test-scenario <id>指定场景用例 ID-
-f, --test-scenario-folder <id>指定场景用例目录 ID-
--test-suite <id>指定测试套件 ID-
--project <id>项目 ID-
--branch <branchName>指定运行数据所在分支;不传时默认主分支-
-e, --environment <id>环境 ID-
-r, --reporters [reporters]指定报告类型 (cli, html, json, junit)["cli"]
--out-dir <path>输出报告目录./apifox-reports
--out-file <name>输出报告文件名(不含后缀)。支持变量: {SCENARIO_NAME}, {FOLDER_NAME}, {GENERATE_TIME}apifox-report-{timestamp}
--out-json-failures-separated开启 JSON 报告时,将失败详情单独导出-
-n, --iteration-count <n>设置循环次数-
-d, --iteration-data <path>设置循环数据 (JSON/CSV) 或数据 ID-
--on-error <behavior>设置错误处理方式 (ignore, continue, end)-
--global-var <key=value>设置全局变量。支持设置多个。-
--env-var <key=value>设置环境变量。支持设置多个。-
--variables <path>指定包含变量的本地文件路径-
--notification <ids>运行完成后通知指定对象 ID (逗号分隔)-
--notification-failed-event <ids>仅失败时通知指定对象 ID-
--external-program-path <path>指定外部脚本/程序的所处目录当前目录
--database-connection <path>指定数据库配置文件的所处路径-
--ignore-redirects阻止自动重定向-
--silent开启静默模式,不输出至控制台-
--color <on|off|auto>控制台彩色输出开关auto
--delay-request [ms]请求之间的停顿间隔0
--timeout-request [ms]接口请求超时时间0
--timeout-script [ms]脚本执行超时时间0
-k, --insecure关闭 SSL 校验-
--ssl-client-cert-list <path>指定客户端证书配置路径 (JSON)-
--upload-report将本次测试报告上传至云端查看-
-b, --bigint兼容 BigInt 类型false
--lang <zh |en>设置 CLI 语言zh
image.png
提示
创建或更新场景用例、测试套件、测试用例、测试数据集、定时任务等复杂测试资源时,建议先执行 cli-schema get <schemaKey>,再执行 cli-schema validate <schemaKey> --file <path>,校验通过后再写入。

导入&导出#

适用于将外部接口文档导入 Apifox,或将项目数据导出为其他工具可使用的格式。CLI 通过 --format 指定导入或导出格式,并支持维护自动导入和 OAS 导出设置。

导入项目数据#

import 用于把本地文件导入到指定项目。当前 --format 支持以下值:openapi、postman、har、insomnia、jmeter、wsdl、yapi、rap2、apidoc、hoppscotch、markdown、jsonschema、apifox。
命令说明示例
import将本地文件按指定格式导入到项目。apifox import --project <projectId> --format openapi --file ./openapi.json

自动导入设置#

import auto-import 用于维护自动导入设置。适用于从外部源长期同步接口数据,可配置导入来源和同步规则。
命令说明示例
import auto-import list列出项目中的自动导入设置。apifox import auto-import list --project <projectId>
import auto-import create创建自动导入设置。apifox import auto-import create --project <projectId> --file ./auto-import.json
import auto-import get查看自动导入设置详情。apifox import auto-import get <settingId> --project <projectId>
import auto-import delete删除自动导入设置。apifox import auto-import delete <settingId> --project <projectId>
cli-schema get import-auto-import-create查看自动导入设置创建所需的 JSON Schema。apifox cli-schema get import-auto-import-create
cli-schema validate import-auto-import-create校验自动导入设置数据文件。apifox cli-schema validate import-auto-import-create --file ./auto-import.json

导出项目数据#

export 用于把项目数据导出到本地文件。当前 --format 支持以下值:openapi、markdown、html、postman。
命令说明示例
export将项目数据按指定格式导出为本地文件。apifox export --project <projectId> --format openapi --output ./openapi.json

OAS 导出设置#

export settings 用于维护 OAS 导出设置。适用于按固定规则反复导出 OpenAPI 文档的场景,可保存配置并复用。
命令说明示例
export settings list列出项目中的 OAS 导出设置。apifox export settings list --project <projectId>
export settings create创建 OAS 导出设置。apifox export settings create --project <projectId> --file ./export-setting.json
export settings get查看 OAS 导出设置详情。apifox export settings get <settingId> --project <projectId>
export settings update更新 OAS 导出设置。apifox export settings update <settingId> --project <projectId> --file ./export-setting.json
export settings delete删除 OAS 导出设置。apifox export settings delete <settingId> --project <projectId>
cli-schema get export-settings-create查看 OAS 导出设置创建所需的 JSON Schema。apifox cli-schema get export-settings-create
cli-schema validate export-settings-create校验 OAS 导出设置数据文件。apifox cli-schema validate export-settings-create --file ./export-setting.json
cli-schema get export-settings-update查看 OAS 导出设置更新所需的 JSON Schema。apifox cli-schema get export-settings-update
cli-schema validate export-settings-update校验 OAS 导出设置更新数据文件。apifox cli-schema validate export-settings-update --file ./export-setting.json

分享文档#

适用于管理接口文档的发布与分享入口,包括面向团队成员、外部协作者或调用方的文档站和在线文档。

文档站#

docs-site 用于维护文档站。文档站可将整个项目或指定范围的接口文档以站点形式发布,并支持域名、导航、外观、可见性等站点级配置。
命令说明示例
docs-site list列出项目中的文档站。apifox docs-site list --project <projectId>
docs-site get查看文档站详情。apifox docs-site get <siteId> --project <projectId>
docs-site create创建文档站。apifox docs-site create --project <projectId> --file ./docs-site-create.json
docs-site update更新文档站配置。apifox docs-site update <siteId> --project <projectId> --file ./docs-site-update.json
docs-site delete删除文档站。apifox docs-site delete <siteId> --project <projectId>
cli-schema get docs-site-create查看文档站创建所需的 JSON Schema。apifox cli-schema get docs-site-create
cli-schema validate docs-site-create校验文档站数据文件是否符合 Schema。apifox cli-schema validate docs-site-create --file ./docs-site.json
cli-schema get docs-site-update查看文档站更新所需的 JSON Schema。apifox cli-schema get docs-site-update
cli-schema validate docs-site-update校验文档站更新数据文件是否符合 Schema。apifox cli-schema validate docs-site-update --file ./docs-site-update.json

在线文档#

shared-doc 用于维护在线文档分享。可为选定接口或文档内容生成共享链接,并配置密码、有效期、环境、语言等分享设置,适用于按范围分享部分文档内容。
命令说明示例
shared-doc list列出在线文档。apifox shared-doc list --project <projectId>
shared-doc get查看在线文档详情。apifox shared-doc get <docId> --project <projectId>
shared-doc create创建在线文档。apifox shared-doc create --project <projectId> --file ./shared-doc.json
shared-doc update更新在线文档配置。apifox shared-doc update <docId> --project <projectId> --file ./shared-doc-update.json
shared-doc delete删除在线文档。apifox shared-doc delete <docId> --project <projectId>
cli-schema get shared-doc-create查看在线文档创建所需的 JSON Schema。apifox cli-schema get shared-doc-create
cli-schema validate shared-doc-create校验在线文档数据文件是否符合 Schema。apifox cli-schema validate shared-doc-create --file ./shared-doc.json
cli-schema get shared-doc-update查看在线文档更新所需的 JSON Schema。apifox cli-schema get shared-doc-update
cli-schema validate shared-doc-update校验在线文档更新数据文件是否符合 Schema。apifox cli-schema validate shared-doc-update --file ./shared-doc-update.json

分支管理#

适用于多人协作或按版本维护接口,通过分支隔离不同阶段的改动。CLI 支持管理迭代分支、AI 分支、通用分支、直接合并和合并请求,并支持在合并前扫描候选改动,以确认可能合入目标分支的资源。
分支合并有两种常见方式:未受保护的目标分支可使用 branch merge 直接合并;受保护主分支通常使用 merge-request 创建合并请求并走审核流程。branch merge 只会合并显式传入的资源清单,不会默认合并整个分支。

迭代分支#

branch --type sprint 用于维护普通迭代分支。创建迭代分支时建议指定来源分支;不传 --branch 操作项目资源时,后端默认使用主分支。
命令说明示例
branch list --type all列出项目中的所有分支类型。all 仅用于 list。apifox branch list --project <projectId> --type all
branch list --type sprint列出项目中的普通迭代分支。apifox branch list --project <projectId> --type sprint
branch get --type sprint查看普通迭代分支详情。apifox branch get <branchName> --project <projectId> --type sprint
branch create --type sprint创建普通迭代分支。apifox branch create --project <projectId> --type sprint --name "新分支名" --from main
branch update --type sprint更新分支名称或主分支保护设置。apifox branch update <branchName> --project <projectId> --type sprint --name 新分支名
branch merge直接合并分支,只会合并显式传入的资源清单,不会自动补引用资源或目录资源。apifox branch merge --project <projectId> --from <sourceBranchName> --to <targetBranchName> --endpoint-ids <ids>
branch pick-to从源分支导入资源到目标分支,常用于把源分支已有资源导入 AI 分支后再编辑。apifox branch pick-to --project <projectId> --from <sourceBranchName> --to <aiBranchName> --endpoint-ids <ids>
branch archive --type sprint归档普通迭代分支。删除前必须先归档。apifox branch archive <branchName> --project <projectId> --type sprint
branch delete --type sprint删除已归档的普通迭代分支。apifox branch delete <branchName> --project <projectId> --type sprint
cli-schema get branch-sprint-create查看迭代分支创建所需的数据结构。apifox cli-schema get branch-sprint-create
cli-schema get branch-sprint-update查看迭代分支更新所需的数据结构。apifox cli-schema get branch-sprint-update

AI 分支#

branch --type ai 用于维护 AI 分支。AI 分支适合让 AI Agent 或自动化流程隔离修改项目资源,完成后再由用户确认是否合并或发起合并请求。
命令说明示例
branch list --type ai列出项目中的 AI 分支。apifox branch list --project <projectId> --type ai
branch get --type ai查看 AI 分支详情。apifox branch get <branchName> --project <projectId> --type ai
branch create --type ai创建 AI 分支,并指定来源分支。apifox branch create --project <projectId> --type ai --name <aiBranchName> --from <sourceBranchName>
branch update --type ai更新 AI 分支名称。apifox branch update <branchName> --project <projectId> --type ai --name <newName>
branch archive --type ai归档 AI 分支。删除前必须先归档。apifox branch archive <branchName> --project <projectId> --type ai
branch delete --type ai删除已归档的 AI 分支。apifox branch delete <branchName> --project <projectId> --type ai
cli-schema get branch-ai-create查看 AI 分支创建所需的数据结构。apifox cli-schema get branch-ai-create
cli-schema get branch-ai-update查看 AI 分支更新所需的数据结构。apifox cli-schema get branch-ai-update

通用分支#

branch --type general 用于管理通用分支,适用于按通用版本组织项目内容。通用分支只承载普通版本,不提供 AI 分支能力,也不能作为 AI 分支的来源分支。
命令说明示例
branch list --type general列出项目中的通用分支。apifox branch list --project <projectId> --type general
branch get --type general查看通用分支详情。apifox branch get <branchName> --project <projectId> --type general
branch create --type general创建通用分支。apifox branch create --project <projectId> --type general --name "New Version" --from main
branch update --type general更新通用分支。apifox branch update <branchName> --project <projectId> --type general --name <newName>
branch delete --type general删除通用分支。apifox branch delete <branchName> --project <projectId> --type general
cli-schema get branch-general-create查看通用分支创建所需的数据结构。apifox cli-schema get branch-general-create
cli-schema get branch-general-update查看通用分支更新所需的数据结构。apifox cli-schema get branch-general-update
提示
分支创建命令主要通过命令行参数传入,例如 --type、--name、--from。cli-schema get branch-*-create 用于查看创建参数结构,实际创建命令请以 apifox branch create -h 为准。
branch merge 和 branch pick-to 的资源 ID 参数使用复数形式,并传入逗号分隔的数字 ID,例如 --endpoint-ids 1,2、--doc-ids 3,4、--test-suite-ids 5,6。

合并请求#

merge-request 用于受保护主分支的合并请求。未受保护的目标分支通常使用 branch merge 直接合并;需要审核流程时,再创建合并请求。创建合并请求时,需要明确选择要合并的资源;Apifox 只合并显式传入的资源,不会自动补引用资源或目录资源。
命令说明示例
merge-request preview创建合并请求或直接合并前,扫描 CLI 当前支持资源类型的候选差异。此命令不是完整资源 diff,正式合并前仍建议手动确认。apifox merge-request preview --project <projectId> --from <sourceBranchName> --to <targetBranchName>
merge-request list列出合并请求。apifox merge-request list --project <projectId> --to <targetBranchName>
merge-request get查看合并请求详情。apifox merge-request get <mergeRequestId> --project <projectId> --to <targetBranchName>
merge-request create创建合并请求。apifox merge-request create --project <projectId> --to <targetBranchName> --from <sourceBranchName> --reviewer-ids <userIds> --endpoint-ids <ids>
merge-request update更新合并请求。apifox merge-request update <mergeRequestId> --project <projectId> --to <targetBranchName> --file ./merge-request.json
merge-request approve批准合并请求。apifox merge-request approve <mergeRequestId> --project <projectId> --to <targetBranchName> --file ./approve.json
merge-request reject拒绝合并请求。apifox merge-request reject <mergeRequestId> --project <projectId> --to <targetBranchName>
merge-request delete删除合并请求。apifox merge-request delete <mergeRequestId> --project <projectId> --to <targetBranchName>
cli-schema get merge-request-create查看合并请求创建所需的 JSON Schema。apifox cli-schema get merge-request-create
cli-schema validate merge-request-create校验合并请求创建数据文件。apifox cli-schema validate merge-request-create --file ./merge-request.json
cli-schema get merge-request-update查看合并请求更新所需的 JSON Schema。apifox cli-schema get merge-request-update
cli-schema validate merge-request-update校验合并请求更新数据文件。apifox cli-schema validate merge-request-update --file ./merge-request.json
cli-schema get merge-request-approve查看批准合并请求所需的 JSON Schema。apifox cli-schema get merge-request-approve
cli-schema validate merge-request-approve校验批准合并请求数据文件。apifox cli-schema validate merge-request-approve --file ./approve.json
提示
1.
为了确保项目资源安全,CLI 默认写入权限受限制,您可以基于 AI 分支编辑来源分支数据,或在 项目设置 -> 功能设置 -> AI 功能设置 -> 外部 AI 编辑权限 中按需开启:主分支、标准迭代分支和通用分支的直接编辑权限。AI 分支修改完成后仍需用户确认,再发起 merge 或 merge-request。
2.
AI 分支推荐命名为 ai/年月日-from-来源分支名-功能或模块名,例如 ai/20260312-from-main-userRegister。

其他资源#

适用于维护项目扩展资源和外部连接配置,包括自定义字段、WebSocket / Socket.IO 接口、脚本库公共脚本、数据库连接、密钥库提供方和 Git 连接。

自定义字段#

custom-field 用于维护项目自定义字段,适用于为接口、文档或其他资源补充团队自定义属性。
命令说明示例
custom-field list列出自定义字段。apifox custom-field list --project <projectId>
custom-field create创建自定义字段。apifox custom-field create --project <projectId> --file ./custom-field.json
custom-field update更新自定义字段。apifox custom-field update <customFieldId> --project <projectId> --file ./custom-field.json
custom-field delete删除自定义字段。apifox custom-field delete <customFieldId> --project <projectId>
cli-schema get custom-field-create查看自定义字段创建所需的 JSON Schema。apifox cli-schema get custom-field-create
cli-schema validate custom-field-create校验自定义字段创建数据文件。apifox cli-schema validate custom-field-create --file ./custom-field.json
cli-schema get custom-field-update查看自定义字段更新所需的 JSON Schema。apifox cli-schema get custom-field-update
cli-schema validate custom-field-update校验自定义字段更新数据文件。apifox cli-schema validate custom-field-update --file ./custom-field.json

WebSocket 接口#

websocket 用于维护项目中的 WebSocket 接口,适用于管理需要长连接通信的实时接口。
命令说明示例
websocket list列出项目中的 WebSocket 接口。apifox websocket list --project <projectId>
websocket get查看 WebSocket 接口详情。apifox websocket get <websocketId> --project <projectId>
websocket create创建 WebSocket 接口。apifox websocket create --project <projectId> --name <name> --url <url>
websocket update更新 WebSocket 接口。apifox websocket update <websocketId> --project <projectId> --file ./websocket.json
websocket delete删除 WebSocket 接口。apifox websocket delete <websocketId> --project <projectId>
cli-schema get websocket-create查看 WebSocket 接口创建所需的 JSON Schema。apifox cli-schema get websocket-create
cli-schema validate websocket-create校验 WebSocket 接口创建数据文件。apifox cli-schema validate websocket-create --file ./websocket.json
cli-schema get websocket-update查看 WebSocket 接口更新所需的 JSON Schema。apifox cli-schema get websocket-update
cli-schema validate websocket-update校验 WebSocket 接口更新数据文件。apifox cli-schema validate websocket-update --file ./websocket.json

Socket.IO 接口#

socketio 用于维护项目中的 Socket.IO 接口,适用于管理基于 Socket.IO 协议的实时通信接口。
命令说明示例
socketio list列出项目中的 Socket.IO 接口。apifox socketio list --project <projectId>
socketio get查看 Socket.IO 接口详情。apifox socketio get <socketioId> --project <projectId>
socketio create创建 Socket.IO 接口。简单接口可用 --name/--url;复杂事件、请求体、参数和高级设置使用 --file。apifox socketio create --project <projectId> --file ./socketio.json
socketio update更新 Socket.IO 接口。apifox socketio update <socketioId> --project <projectId> --file ./socketio.json
socketio delete删除 Socket.IO 接口。apifox socketio delete <socketioId> --project <projectId>
cli-schema get socketio-create查看 Socket.IO 接口创建所需的 JSON Schema。apifox cli-schema get socketio-create
cli-schema validate socketio-create校验 Socket.IO 接口创建数据文件。apifox cli-schema validate socketio-create --file ./socketio.json
cli-schema get socketio-update查看 Socket.IO 接口更新所需的 JSON Schema。apifox cli-schema get socketio-update
cli-schema validate socketio-update校验 Socket.IO 接口更新数据文件。apifox cli-schema validate socketio-update --file ./socketio.json

脚本库公共脚本#

common-script 用于维护脚本库公共脚本。适用于多个接口、场景用例或前后置脚本复用同一段脚本逻辑的场景。
命令说明示例
common-script list列出脚本库公共脚本。apifox common-script list --project <projectId>
common-script get查看脚本库公共脚本详情。apifox common-script get <scriptId> --project <projectId>
common-script create创建脚本库公共脚本。简单脚本可用 --name/--content;需要 description 或 runMode 时使用 --file,runMode 仅支持 independent / merge。apifox common-script create --project <projectId> --file ./common-script.json
common-script update更新脚本库公共脚本。apifox common-script update <scriptId> --project <projectId> --file ./common-script.json
common-script delete删除脚本库公共脚本。apifox common-script delete <scriptId> --project <projectId>
cli-schema get common-script-create查看脚本库公共脚本创建所需的 JSON Schema。apifox cli-schema get common-script-create
cli-schema validate common-script-create校验脚本库公共脚本创建数据文件。apifox cli-schema validate common-script-create --file ./common-script.json
cli-schema get common-script-update查看脚本库公共脚本更新所需的 JSON Schema。apifox cli-schema get common-script-update
cli-schema validate common-script-update校验脚本库公共脚本更新数据文件。apifox cli-schema validate common-script-update --file ./common-script.json

数据库连接资源#

database-connection 用于维护项目中的数据库连接信息。自动化测试运行时如需读取本地数据库配置,仍需在 apifox run 中配合 --database-connection 指定配置文件。
命令说明示例
database-connection list列出项目中的数据库连接。apifox database-connection list --project <projectId>
database-connection get查看数据库连接详情。apifox database-connection get <connectionId> --project <projectId>
database-connection create创建数据库连接。简单连接可用 --name/--type/--host;包含端口、账号、密码、SSH、SSL 或环境差异配置时使用 --file。apifox database-connection create --project <projectId> --file ./database-connection.json
database-connection update更新数据库连接。apifox database-connection update <connectionId> --project <projectId> --file ./database-connection.json
database-connection delete删除数据库连接。apifox database-connection delete <connectionId> --project <projectId>
cli-schema get database-connection-create查看数据库连接创建所需的 JSON Schema。apifox cli-schema get database-connection-create
cli-schema validate database-connection-create校验数据库连接创建数据文件。apifox cli-schema validate database-connection-create --file ./database-connection.json
cli-schema get database-connection-update查看数据库连接更新所需的 JSON Schema。apifox cli-schema get database-connection-update
cli-schema validate database-connection-update校验数据库连接更新数据文件。apifox cli-schema validate database-connection-update --file ./database-connection.json

密钥库提供方#

vault 用于维护密钥库提供方,适用于项目从外部密钥服务读取敏感配置的场景。
命令说明示例
vault list列出密钥库提供方。apifox vault list --project <projectId>
vault get查看密钥库提供方详情。apifox vault get <vaultProviderId> --project <projectId>
vault create创建密钥库提供方。apifox vault create --project <projectId> --file ./vault.json
vault update更新密钥库提供方。apifox vault update <vaultProviderId> --project <projectId> --file ./vault.json
vault delete删除密钥库提供方。apifox vault delete <vaultProviderId> --project <projectId>
cli-schema get vault-create查看密钥库提供方创建所需的 JSON Schema。apifox cli-schema get vault-create
cli-schema validate vault-create校验密钥库提供方创建数据文件。apifox cli-schema validate vault-create --file ./vault.json
cli-schema get vault-update查看密钥库提供方更新所需的 JSON Schema。apifox cli-schema get vault-update
cli-schema validate vault-update校验密钥库提供方更新数据文件。apifox cli-schema validate vault-update --file ./vault.json

Git 连接#

git-connection 用于维护项目和代码仓库之间的 Git 连接,适用于将接口文档与代码仓库关联的场景。
命令说明示例
git-connection list列出项目中的 Git 连接。apifox git-connection list --project <projectId>
git-connection get查看 Git 连接详情。apifox git-connection get <connectionId> --project <projectId>
git-connection create创建 Git 连接。apifox git-connection create --project <projectId> --file ./git-connection.json
git-connection update更新 Git 连接。前后端支持更新名称、描述、类型、configs 和 refreshToken。apifox git-connection update <connectionId> --project <projectId> --file ./git-connection.json
git-connection delete删除 Git 连接。apifox git-connection delete <connectionId> --project <projectId>
cli-schema get git-connection-create查看 Git 连接创建所需的 JSON Schema。apifox cli-schema get git-connection-create
cli-schema validate git-connection-create校验 Git 连接创建数据文件。apifox cli-schema validate git-connection-create --file ./git-connection.json
cli-schema get git-connection-update查看 Git 连接更新所需的 JSON Schema。apifox cli-schema get git-connection-update
cli-schema validate git-connection-update校验 Git 连接更新数据文件。apifox cli-schema validate git-connection-update --file ./git-connection.json

管理与设置#

适用于项目日常管理,包括配置通知、恢复或删除项目内回收站资源、查看变更历史,以及排查成员操作记录。

通知配置#

notification 用于维护项目通知配置。运行测试时可通过通知参数触发通知;本命令用于管理项目中保存的通知配置。
命令说明示例
notification list列出项目中的通知配置。apifox notification list --project <projectId>
notification get查看通知配置详情。apifox notification get <notificationId> --project <projectId>
notification create创建通知配置。apifox notification create --project <projectId> --file ./notification.json
notification update更新通知配置。apifox notification update <notificationId> --project <projectId> --file ./notification.json
notification delete删除通知配置。apifox notification delete <notificationId> --project <projectId>
cli-schema get notification-create查看通知配置创建所需的 JSON Schema。apifox cli-schema get notification-create
cli-schema validate notification-create校验通知配置创建数据文件。apifox cli-schema validate notification-create --file ./notification.json
cli-schema get notification-update查看通知配置更新所需的 JSON Schema。apifox cli-schema get notification-update
cli-schema validate notification-update校验通知配置更新数据文件。apifox cli-schema validate notification-update --file ./notification.json

回收站#

recycle 用于处理项目内回收站资源,支持查看、恢复或永久删除已进入回收站的资源。
命令说明示例
recycle list列出项目内回收站资源。apifox recycle list --project <projectId>
recycle restore从回收站恢复资源。apifox recycle restore <itemId> --project <projectId>
recycle delete永久删除回收站资源。apifox recycle delete <itemId> --project <projectId>

变更历史#

history 用于查看项目已有变更历史,适用于排查资源修改时间以及追踪历史记录,不建议作为刚刚写入操作是否成功的唯一验证方式。
命令说明示例
history list列出项目中的变更历史。apifox history list --project <projectId>
history get查看变更历史详情。apifox history get <historyId> --project <projectId>

审计日志#

audit-log 用于查看项目审计日志,适用于安全审计或排查成员操作记录,不保证覆盖所有资源写入的即时验证。
命令说明示例
audit-log list列出项目中的审计日志。apifox audit-log list --project <projectId>
audit-log get查看审计日志详情。apifox audit-log get <auditLogId> --project <projectId>

高级操作#

适用于 CLI 运行过程中的进阶配置,包括文件上传、数据库配置、报告上传、外部脚本以及 SSL / HTTP/2 等能力。

CLI 中的文件上传#

涉及文件上传的接口在 CLI 中运行时,需要确保文件存在于运行 CLI 的机器上。Apifox 仅保存本地文件路径,不会同步文件本身;如果在其他机器上运行同一场景用例,原本的本地路径可能无法访问。
可按以下步骤处理:
1
将需要上传的文件复制或上传到运行 CLI 的机器。
2
记录该文件在运行机器上的路径,例如:/var/www/myapp/uploads/apifox-xiangmu.jpg
image.png
3
在 Apifox 自动化测试中定位到需要上传文件的接口,点击“批量编辑”按钮。
image.png
4
将运行 CLI 机器上的文件路径填入“参数值”。
image.png
5
也可以将文件路径配置到环境变量的“远程值”中,并在“批量编辑”中通过变量引用。
image.png
提示
如需在本地再次运行该场景用例,请将参数值中的文件路径改回本地机器可访问的路径。

CLI 中的数据库操作#

当场景用例包含数据库操作时,由于数据库配置保存在本地而非云端,需要在运行 CLI 前准备数据库配置文件。
1
对于包含数据库操作的场景用例,在命令行生成界面点击“下载数据库配置文件”。
image.png
2
下载配置文件(如 database-connections.json),并放置到运行 CLI 的目录下。
3
在运行命令中加入 --database-connection 选项。示例:

将本地 CLI 测试报告上传到云端#

可通过 --upload-report 参数将本地 CLI 测试报告上传到云端。
1
在运行命令中加入参数:
2
上传完成后,可在以下位置查看报告:
打开 Apifox 自动化测试面板中的 “测试报告”
找到 “共享” 栏目

CLI 中使用外部脚本/程序#

可通过 --external-program-path 引用外部脚本:
在该示例中,CLI 会引用 ./scripts 目录下的程序。未指定时,默认使用当前 CLI 执行目录。
1.
本地路径:建议按类别整理脚本文件,放在特定目录下并在 CLI 命令中指定。
2.
云端代码仓库:在 CI/CD 工作流中先拉取脚本到本地,再在 CLI 命令中指定实际路径。

SSL#

Apifox CLI 支持传入客户端证书。

使用单个 SSL 客户端证书#

--ssl-client-cert
指定 SSL 客户端公钥证书的路径
--ssl-client-key
指定 SSL 客户端私钥证书的路径(可选)
--ssl-client-passphrase
指定 SSL 客户端证书密码(可选)

使用 SSL 客户端证书配置文件(支持多个证书)#

--ssl-client-cert-list
指定 SSL 客户端证书列表的 JSON 文件路径。例如:ssl-client-cert-list.json
ssl-client-cert-list.json

[
    {
        "name": "domain1",
        "matches": ["https://test.domain1.com/*", "https://www.domain1/*"],
        "key": {"src": "./client.domain1.key"},
        "cert": {"src": "./client.domain1.crt"},
        "passphrase": "changeme"
    },
    {
        "name": "domain2",
        "matches": ["https://domain2.com/*"],
        "key": {"src": "./client.domain2.key"},
        "cert": {"src": "./client.domain2.crt"},
        "passphrase": "changeme"
    }
]
此选项支持根据 URL 或主机名设置不同的 SSL 客户端证书。它的优先级高于 --ssl-client-cert、--ssl-client-key 和 --ssl-client-passphrase 选项。如果 URL 在列表中没有匹配项,会使用这些选项作为后备选项。

HTTP/2#

CLI 可以通过 --preferred-http-version 参数配置使用特定的协议版本发送请求。
协议版本参数值:
1.
"HTTP/2" - HTTP/2 应用层协议协商(ALPN),仅支持 HTTPS 请求
2.
"HTTP/2-with-prior-knowledge" - 已知的 HTTP/2
3.
"HTTP/1" - HTTP/1.1
参数支持以下配置方式:
1.
为 HTTPS 和 HTTP 请求设置不同的协议版本:
--preferred-http-version="https=HTTP/2,http=HTTP/2-with-prior-knowledge"
2.
为 HTTPS 和 HTTP 设置相同的协议版本:
--preferred-http-version="HTTP/1"
3.
为 HTTPS 和 HTTP 设置 HTTP/2(不支持的值会自动忽略):
--preferred-http-version="HTTP/2"

常见问题 (FAQ)#

如何解决 “Invalid character in header content['Authorization']” 报错?
该错误通常由 Authorization 请求头中包含非法字符导致,例如中文、换行符或多余空格。请确认 Authorization 的值不包含中文或特殊符号,并符合预期格式。
CLI 如何跳过 AI 分支,直接编辑项目数据?
在 Apifox 项目内:项目设置 -> 功能设置 -> AI 功能设置 -> 外部 AI 编辑权限 中按需开启:主分支、标准迭代分支和通用分支的直接编辑权限。
上一页
安装和运行 CLI
下一页
概述
Built with