Apidog Docs
🇨🇳 繁體中文
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇨🇳 繁體中文
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
🇨🇳 繁體中文
  • 🇺🇸 English
  • 🇯🇵 日本語
  • 🇪🇸 Español
  • 🇰🇷 한국인
  • 🇨🇳 简体中文
  • 🇵🇹 Português (Portugal)
  • 🇮🇩 Bahasa Indonesia
  • 🇧🇷 Português (Brasil)
  • 🇻🇳 Tiếng Việt
  • 🇨🇳 繁體中文
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
HomeLearning Center
Support CenterAPI ReferencesDownloadChangelog
  1. Apidog CLI
  • Apidog 學習中心
  • 開始使用
    • Apidog 簡介
    • Apidog 中的基本概念
    • 導覽 Apidog
    • 快速開始
      • 概覽
      • 建立端點
      • 發送請求
      • 新增斷言
      • 建立測試情境
      • 分享 API 文件
      • 探索更多
    • 遷移到 Apidog
      • 概覽
      • 手動匯入
      • 排程匯入(綁定資料來源)
      • 匯入選項
      • 匯出資料
      • 匯入自
        • 從 Postman 匯入
        • 匯入 OpenAPI 規格
        • 匯入 cURL
        • 匯入 Markdown
        • 從 Insomnia 匯入
        • 從 apiDoc 匯入
        • 匯入 .har 檔案
        • 匯入 WSDL
  • Mock API 資料
    • 概述
    • Smart Mock
    • 自訂模擬
    • 模擬優先順序
    • 模擬腳本
    • 雲端模擬
    • 自託管 Runner 模擬
    • 模擬語言(Locales)
  • 帳號與偏好設定
    • 帳戶設定
    • 產生 OpenAPI 存取權杖
    • 通知
    • 語言設定
    • 快捷鍵
    • 網路代理設定
    • 備份資料
    • 更新 Apidog
    • 刪除帳戶
    • 實驗性功能
  • 傳送請求
    • 概覽
    • SSE 偵錯
    • MCP Client
    • Socket.IO
    • WebSocket
    • Webhook
    • SOAP 或 WebService
    • GraphQL
    • gRPC
    • 使用請求代理代理程式進行偵錯
    • 建立請求
      • 請求歷史記錄
      • 請求基礎
      • 參數與主體
      • 請求標頭
      • 請求設定
      • 偵錯請求
      • 將請求儲存為端點
      • HTTP/2
    • 驗證與授權
      • 概覽
      • CA 和用戶端憑證
      • 授權類型
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Hawk 驗證
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • 回應和 Cookie
      • 檢視 API 回應
      • 管理 Cookie
      • 概覽
  • 開發和偵錯 API
    • 概觀
    • 產生請求
    • 傳送請求
    • 偵錯案例
    • 測試案例
    • 動態值
    • 驗證回應
    • Design-First 與 Request-First
    • 產生程式碼
    • 環境與變數
      • 概述
      • 使用變數
      • 環境管理
    • Vault 密鑰
      • 概覽
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • 動態值模組
      • Airline
      • 動物
      • 顏色
      • Commerce
      • Company
      • 資料庫
      • Datatype
      • 日期
      • Finance
      • Food
      • Git
      • Hacker
      • Helpers
      • 圖片
      • Internet
      • 位置
      • Lorem
      • 音樂
      • Number
      • Person
      • Phone
      • 科學
      • 字串
      • System
      • Vehicle
      • Word
    • 前置和後置處理器
      • 概覽
      • 斷言
      • 擷取變數
      • Wait
      • 安全性
      • 資料庫操作
        • 概述
        • MySQL
        • MongoDB
        • Redis
        • Oracle Client
      • 使用腳本
        • 概觀
        • 前置處理器指令碼
        • 後置處理器腳本
        • 公開腳本
        • Postman Scripts Reference
        • 呼叫其他程式語言
        • 使用 JS Libraries
        • 視覺化回應
        • 腳本範例
          • 斷言腳本
          • 使用變數
          • 修改請求
          • 其他範例
    • API 偵錯
      • AI Agent Debugger
      • A2A Debugger
  • 設計 API
    • 概覽
    • 建立新的 API 專案
    • 端點基礎
    • APl 設計指南
    • 模組
    • 設定多個請求主體範例
    • 元件
    • 通用欄位
    • 全域參數
    • 端點變更歷史
    • 留言
    • 批次端點管理
    • 自訂協定 API
    • Spec-first 模式 (Beta)
    • 安全方案
      • 概觀
      • 建立安全性方案
      • 使用 Security Scheme
      • 線上文件中的安全性方案
    • 進階功能
      • 自訂端點欄位
      • 關聯的測試場景
      • 端點狀態
      • 參數列表的外觀
      • 端點唯一識別
    • Schemas
      • 概述
      • 建立新 Schema
      • 建立 Schema
      • 從 JSON 等產生 Schema
      • oneOf, allOf, anyOf
      • 使用 Discriminator
  • API 測試
    • 概述
    • 測試情境
      • 建立測試情境
      • 在請求之間傳遞資料
      • 流程控制條件
      • 從端點和端點案例同步資料
      • 從其他專案匯入端點和端點案例
      • 匯出測試情境
    • 測試報告
      • 測試報告
    • 執行測試情境
      • 執行測試場景
      • 批次執行測試場景
      • 資料驅動測試
      • 共享測試資料
      • 排程任務
      • 管理來自其他專案的 API 執行環境
    • 測試套件
      • 概述
      • 建立測試套件
      • 編排測試套件
      • 在本機執行測試套件
      • 透過 CLI 執行測試套件
      • 排程任務
    • 測試 API
      • 整合測試
      • 效能測試
      • 端對端測試
      • 迴歸測試
      • 契約測試
    • Apidog CLI
      • 概覽
      • 安裝並執行 Apidog CLI
      • Apidog CLI 選項
    • CI/CD
      • 概述
      • 與 Github Actions 整合
      • Integrate with Gitlab
      • 與 Jenkins 整合
      • 透過 Git Commit 觸發測試
  • 發布 API 文件
    • 概述
    • 支援的 API 技術
    • 快速分享
    • 檢視 API 文件
    • Markdown 文件
    • 發佈文件網站
    • 自訂登入頁面
    • 自訂版面配置
    • 自訂 CSS、JavaScript、HTML
    • 自訂網域
    • AI Features
    • SEO 設定
    • 進階設定
      • 文件搜尋
      • CORS Proxy
      • 整合 Google Analytics
      • 資料夾樹設定
      • 可見性設定
      • 在文件 URL 中嵌入值
    • API 版本
      • 概述
      • 建立 API 版本
      • 發佈 API 版本
      • 使用 API 版本分享端點
  • 分支
    • 概觀
    • 建立 Sprint 分支
    • 在分支中測試 API
    • 在分支中設計 API
    • 合併 Sprint 分支
    • 管理 Sprint 分支
    • AI Branch (Beta)
  • AI 功能
    • 概觀
    • 啟用 AI 功能
    • 產生測試案例
    • 使用 AI 修改 Schema
    • 端點合規性檢查
    • API 文件完整性檢查
    • AI 驅動的欄位命名
    • 常見問題
  • Apidog MCP 伺服器
    • 概覽
    • 將 Apidog 專案連接至 AI
    • 將已發布的文件連接至 AI
    • 將 OpenAPI 檔案連接到 AI
  • Apidog Europe
    • Apidog Europe
  • 最佳實務
    • 處理 API 簽章
    • 存取受 OAuth 2.0 保護的 API
    • 協作工作流程
    • 管理驗證狀態
  • 離線空間
    • 概述
  • 管理
    • 管理專案
      • 管理專案
      • 通知設定
      • 管理專案成員
      • 專案資源
        • 資料庫連線
        • Git 連線
    • 管理團隊
      • 管理團隊
      • 管理團隊成員
      • 團隊活動
      • 團隊角色與權限
      • 團隊資源
        • General Runner
        • 團隊變數
        • 請求代理代理程式
      • 即時協作
        • 團隊協作
    • 入門檢查清單
      • 基本概念
      • 入門指南
    • 管理組織
      • 管理組織
      • 組織角色與權限
      • 方案管理
        • 組織中的帳單管理員
      • 單一登入 (SSO)
        • SSO 概覽
        • 設定 Microsoft Entra ID
        • 設定 Okta
        • 為組織設定 SSO
        • 管理使用者帳戶
        • 將群組對應到團隊
      • SCIM 佈建
        • SCIM 佈建簡介
        • Microsoft Entra ID
        • Okta
      • 組織資源
        • 自託管 Runner
  • 帳單
    • 概觀
    • 點數
    • 升級您的方案
    • 替代付款方式
    • 管理訂閱
    • 將付費團隊移至組織
  • 附加元件
    • API Hub
    • Apidog Intellij IDEA 外掛
    • 瀏覽器擴充功能
      • Chrome
      • Microsoft Edge
    • 請求代理
      • Web 中的請求代理
      • 共用文件中的請求代理
      • 用戶端中的請求代理
  • 資料與安全
    • 資料儲存與安全性
    • 使用者資料隱私與安全
    • 請求路由與資料安全
  • 參考
    • API 設計優先方法
    • Apidog OpenAPI 規格擴充
    • JSONPath
    • XPath
    • 正規表示式
    • JSON Schema
    • CSV 檔案格式
    • 安裝 Java 環境
    • Runner 部署環境
    • Apidog Markdown 語法
    • Apidog Swagger 擴充
      • 概述
      • x-apidog-folder
      • x-apidog-status
      • x-apidog-name
      • x-apidog-maintainer
    • Apidog JSON Schema 擴充
      • 概述
      • x-apidog-mock
      • x-apidog-orders
      • x-apidog-enum
  • 支援中心
  1. Apidog CLI

Apidog CLI 選項

Apidog CLI 用於從終端機或 CI/CD 管線執行自動化測試並管理 Apidog 專案資源。它支援測試執行、API 設計資源管理、環境與變數、匯入與匯出、文件發布、分支協作,以及專案管理。

基本 Apidog CLI 語法#

大多數專案資源命令會使用 --project <projectId> 來指定專案。你可以使用 --branch <branchName> 在特定分支上操作。如果省略 --branch,伺服器會使用預設分支。

驗證#

在存取私人專案前,請先登入或提供存取權杖。
命令說明範例
login使用存取權杖登入並將其儲存在本機。apidog login --with-token <token>
logout登出並清除已儲存的本機權杖。apidog logout
whoami顯示目前已驗證使用者的資訊。apidog whoami
你也可以在執行命令時直接傳入權杖:
如果你使用 GitHub Actions,可以將存取權杖儲存在儲存庫的 Settings --> Secrets and Variables --> Actions --> Repository variables 下。然後使用 ${{ vars.APIDOG_ACCESS_TOKEN }} 來參照它。

CLI Schema#

使用 cli-schema 在建立或更新複雜資源前檢查並驗證 JSON 檔案。這有助於減少因資料格式錯誤而造成的請求失敗。
命令說明範例
cli-schema list列出 CLI 支援的所有 schema key。apidog cli-schema list
cli-schema get印出命令資料檔案的 JSON Schema。apidog cli-schema get endpoint-create
cli-schema validate依據 schema key 驗證本機 JSON 檔案。apidog cli-schema validate endpoint-create --file ./endpoint.json
Schema key 通常會結合命令路徑與動作,例如 endpoint-create、test-scenario-update 和 merge-request-create。

團隊與專案#

團隊與專案命令是透過 CLI 管理資源的起點。使用它們來尋找專案層級命令所需的 ID。

團隊管理#

命令說明範例
team list列出目前帳號可存取的團隊。apidog team list
team get檢視特定團隊的詳細資料。apidog team get <teamId>

專案管理#

命令說明範例
project list列出目前帳號可存取的專案。apidog project list
project get檢視專案詳細資料。apidog project get <projectId>
project create在團隊下建立專案。apidog project create --team <teamId> --name "New Project"

專案設定#

命令說明範例
project settings get檢視專案層級設定。apidog project settings get --project <projectId>
project settings update使用 JSON 檔案更新專案設定。apidog project settings update --project <projectId> --file ./project-settings.json
cli-schema get project-settings-update檢視專案設定更新的 schema。apidog cli-schema get project-settings-update

環境與變數#

使用這些命令來管理 API 偵錯與自動化測試所使用的執行階段環境、全域變數與團隊變數。

環境管理#

命令說明範例
environment list列出專案中的環境。apidog environment list --project <projectId>
environment get檢視環境詳細資料,例如 base URL。apidog environment get <environmentId> --project <projectId>
environment create建立環境。apidog environment create <name> --project <projectId> --base-url <url>
environment update更新環境。apidog environment update <environmentId> --project <projectId> --file ./environment.json
environment delete刪除環境。apidog environment delete <environmentId> --project <projectId>
cli-schema get environment-update檢視環境更新的 schema。apidog cli-schema get environment-update

變數管理#

命令說明範例
variables list依範圍列出變數。apidog variables list --project <projectId> --scope global
variables get檢視變數的值。apidog variables get --project <projectId> --scope global --key <key>
variables set建立或更新變數。apidog variables set --project <projectId> --scope global --key <key> --value <value>
variables delete刪除變數。apidog variables delete --project <projectId> --scope global --key <key>
variables import從本機檔案匯入變數。apidog variables import --project <projectId> --scope global --file ./variables.json
variables export將變數匯出到本機檔案。apidog variables export --project <projectId> --scope global --output ./variables.json

API 設計資源#

使用這些命令管理 API 設計資源,包括 HTTP API 端點、schema、資料夾、模擬規則、通用參數、回應元件與安全性方案。建立或更新複雜資源時,建議先執行 cli-schema get <schemaKey> 和 cli-schema validate <schemaKey> --file <path>。

HTTP API 端點#

命令說明範例
endpoint list列出專案中的 HTTP API 端點。apidog endpoint list --project <projectId>
endpoint get檢視端點詳細資料。apidog endpoint get <endpointId> --project <projectId>
endpoint create從 JSON 檔案建立端點。apidog endpoint create --project <projectId> --file ./endpoint.json
endpoint update更新端點。apidog endpoint update <endpointId> --project <projectId> --file ./endpoint.json
endpoint delete刪除端點。apidog endpoint delete <endpointId> --project <projectId>
cli-schema get endpoint-create檢視端點建立的 schema。apidog cli-schema get endpoint-create
cli-schema get endpoint-update檢視端點更新的 schema。apidog cli-schema get endpoint-update

資料 Schema#

命令說明範例
schema list列出專案中的資料 schema。apidog schema list --project <projectId>
schema get檢視 schema 詳細資料。apidog schema get <schemaId> --project <projectId>
schema create從 JSON 檔案建立資料 schema。apidog schema create --project <projectId> --file ./schema.json
schema update更新資料 schema。apidog schema update <schemaId> --project <projectId> --file ./schema.json
schema delete刪除資料 schema。apidog schema delete <schemaId> --project <projectId>
cli-schema get schema-create檢視資料 schema 建立的 schema。apidog cli-schema get schema-create
cli-schema get schema-update檢視資料 schema 更新的 schema。apidog cli-schema get schema-update

Markdown 文件#

命令說明範例
doc list列出 Markdown 文件。apidog doc list --project <projectId>
doc get檢視 Markdown 文件詳細資料。apidog doc get <docId> --project <projectId>
doc create建立 Markdown 文件。apidog doc create --project <projectId> --file ./doc.json
doc update更新 Markdown 文件。apidog doc update <docId> --project <projectId> --file ./doc.json
doc delete刪除 Markdown 文件。apidog doc delete <docId> --project <projectId>

資源資料夾#

使用 folder 命令管理不同資源類型的資料夾樹。--type 選項會選擇資源類型,例如 endpoint、schema、test-scenario、response-component、security-scheme、test-suite 或 test-data。
命令說明範例
folder list依資源類型列出資料夾。apidog folder list --project <projectId> --type endpoint
folder create依資源類型建立資料夾。apidog folder create --project <projectId> --type endpoint --name "New Folder"
folder move將資料夾移至另一個父資料夾。apidog folder move <folderId> --project <projectId> --type endpoint --parent <parentId>
folder update更新資料夾名稱、描述或父資料夾。apidog folder update <folderId> --project <projectId> --type endpoint --name "New Folder Name"
folder delete刪除資料夾。apidog folder delete <folderId> --project <projectId> --type endpoint
cli-schema get folder-create檢視資料夾建立的 schema。apidog cli-schema get folder-create
cli-schema get folder-update檢視資料夾更新的 schema。apidog cli-schema get folder-update
--type 會選擇資源資料夾類型。它不是資料夾名稱。description 欄位僅支援 endpoint 和 test-scenario 資料夾;其他資料夾類型僅支援名稱與父資料夾更新。

模擬規則#

命令說明範例
mock list列出專案中或端點下的模擬規則。apidog mock list --project <projectId> --http-api-id <endpointId>
mock get檢視模擬規則。apidog mock get <mockId> --project <projectId>
mock create從 JSON 檔案建立模擬規則。apidog mock create --project <projectId> --file ./mock.json
mock update更新模擬規則。apidog mock update <mockId> --project <projectId> --file ./mock.json
mock delete刪除模擬規則。apidog mock delete <mockId> --project <projectId>
cli-schema get mock-create檢視模擬規則建立的 schema。apidog cli-schema get mock-create
cli-schema get mock-update檢視模擬規則更新的 schema。apidog cli-schema get mock-update

通用參數#

命令說明範例
common-parameter list列出可重複使用的通用參數。apidog common-parameter list --project <projectId>
common-parameter get檢視通用參數詳細資料。apidog common-parameter get <commonParameterId> --project <projectId>
common-parameter create從 JSON 檔案建立通用參數。apidog common-parameter create --project <projectId> --file ./common-parameter.json
common-parameter update更新通用參數。apidog common-parameter update <commonParameterId> --project <projectId> --file ./common-parameter.json
common-parameter import從檔案匯入通用參數。apidog common-parameter import --project <projectId> --file ./common-parameters.json
common-parameter export將通用參數匯出到本機檔案。apidog common-parameter export --project <projectId> --output ./common-parameters.json

回應元件#

命令說明範例
response-component list列出可重複使用的回應元件。apidog response-component list --project <projectId>
response-component get檢視回應元件詳細資料。apidog response-component get <responseComponentId> --project <projectId>
response-component create從 JSON 檔案建立回應元件。apidog response-component create --project <projectId> --file ./response-component.json
response-component update更新回應元件。apidog response-component update <responseComponentId> --project <projectId> --file ./response-component.json
response-component delete刪除回應元件。apidog response-component delete <responseComponentId> --project <projectId>

安全性方案#

命令說明範例
security-scheme list列出專案中的安全性方案。apidog security-scheme list --project <projectId>
security-scheme get檢視安全性方案詳細資料。apidog security-scheme get <schemeId> --project <projectId>
security-scheme create從 JSON 檔案建立安全性方案。apidog security-scheme create --project <projectId> --file ./scheme.json
security-scheme update更新安全性方案。apidog security-scheme update <schemeId> --project <projectId> --file ./scheme.json
security-scheme delete刪除安全性方案。apidog security-scheme delete <schemeId> --project <projectId>
API 路徑是 API 資源路徑,不是本機檔案路徑。如果你的 shell 會重寫以 / 開頭的值,請用引號包住路徑,例如 --path '/api/users',或使用 --file 提供端點資料。
對於 API 測試案例或測試情境 HTTP 步驟,responseId 應使用來自 endpoint.responses[].id 的端點回應定義 ID,而不是回應元件 ID。若要重複使用回應元件,請先在端點回應定義中連結它。

自動化測試#

使用這些命令管理 API 測試案例、測試情境、測試套件、測試資料、測試報告、runner 與排程任務。

API 測試案例#

命令說明範例
test-case list列出 API 測試案例,可選擇依端點篩選。apidog test-case list --project <projectId> --endpoint <endpointId>
test-case category列出測試案例分類。apidog test-case category --project <projectId>
test-case get檢視 API 測試案例詳細資料。apidog test-case get <caseId> --project <projectId>
test-case create從 JSON 檔案建立 API 測試案例。apidog test-case create --project <projectId> --file ./case.json
test-case update更新 API 測試案例。apidog test-case update <caseId> --project <projectId> --file ./case.json
test-case delete刪除 API 測試案例。apidog test-case delete <caseId> --project <projectId>
cli-schema get test-case-create檢視測試案例建立的 schema。apidog cli-schema get test-case-create
cli-schema get test-case-update檢視測試案例更新的 schema。apidog cli-schema get test-case-update

測試情境#

命令說明範例
test-scenario list列出專案中的測試情境。apidog test-scenario list --project <projectId>
test-scenario get檢視測試情境詳細資料。apidog test-scenario get <scenarioId> --project <projectId>
test-scenario create建立測試情境。apidog test-scenario create --project <projectId> --file ./scenario.json
test-scenario update更新測試情境。apidog test-scenario update <scenarioId> --project <projectId> --file ./scenario.json
test-scenario delete刪除測試情境。apidog test-scenario delete <scenarioId> --project <projectId>
test-scenario run執行測試情境。apidog test-scenario run <scenarioId> --project <projectId> --environment <environmentId>
cli-schema get test-scenario-create檢視測試情境建立的 schema。apidog cli-schema get test-scenario-create
cli-schema get test-scenario-update檢視測試情境更新的 schema。apidog cli-schema get test-scenario-update

測試套件#

命令說明範例
test-suite list列出專案中的測試套件。apidog test-suite list --project <projectId>
test-suite get檢視測試套件詳細資料。apidog test-suite get <testSuiteId> --project <projectId>
test-suite create建立測試套件。apidog test-suite create --project <projectId> --file ./suite.json
test-suite update更新測試套件。apidog test-suite update <testSuiteId> --project <projectId> --file ./suite.json
test-suite delete刪除測試套件。apidog test-suite delete <testSuiteId> --project <projectId>
test-suite run執行測試套件。apidog test-suite run <testSuiteId> --project <projectId> --environment <environmentId>

測試資料#

命令說明範例
test-data list列出測試資料集。apidog test-data list --project <projectId>
test-data get檢視測試資料集詳細資料。apidog test-data get <dataId> --project <projectId>
test-data create從 JSON 檔案建立測試資料集。apidog test-data create --project <projectId> --file ./test-data.json
test-data update更新測試資料集。apidog test-data update <dataId> --project <projectId> --file ./test-data.json
test-data delete刪除測試資料集。apidog test-data delete <dataId> --project <projectId>

測試報告#

命令說明範例
test-report list列出專案中的測試報告。apidog test-report list --project <projectId>
test-report get檢視測試報告詳細資料。apidog test-report get <reportId> --project <projectId>
test-report download將測試報告下載到本機檔案。apidog test-report download <reportId> --project <projectId> --format json --output ./report.json
test-report delete刪除測試報告。apidog test-report delete <reportId> --project <projectId>

Runners#

命令說明範例
runner list列出專案或團隊中的 runner。apidog runner list --project <projectId>
runner get檢視 runner 詳細資料。apidog runner get <runnerId> --project <projectId>
runner create建立團隊 runner。apidog runner create --team <teamId> --name <name> --runner-type <runnerType> --server-type <serverType>
runner check檢查 runner 健康狀態。apidog runner check <runnerId> --team <teamId>
runner delete刪除 runner。apidog runner delete <runnerId> --project <projectId>

排程任務#

命令說明範例
scheduled-task list列出專案中的排程任務。apidog scheduled-task list --project <projectId>
scheduled-task get檢視排程任務詳細資料。apidog scheduled-task get <taskId> --project <projectId>
scheduled-task create從 JSON 檔案建立排程任務。apidog scheduled-task create --project <projectId> --file ./scheduled-task.json
scheduled-task update更新排程任務。apidog scheduled-task update <taskId> --project <projectId> --file ./scheduled-task.json
scheduled-task delete刪除排程任務。apidog scheduled-task delete <taskId> --project <projectId>
scheduled-task run手動觸發排程任務。apidog scheduled-task run <taskId> --project <projectId>

核心執行命令:apidog run#

這是用於執行測試情境、測試情境資料夾、測試套件或本機匯出檔案的主要命令。你可以從 Apidog 用戶端 CI/CD 面板複製產生的命令,並在終端機或 CI/CD 工作流程中執行。

線上執行#

透過 Apidog 伺服器執行即時測試時,請使用下列命令。
搭配 Apidog 存取權杖與特定測試情境、測試情境目錄或測試套件的 ID 使用。例如:

本機執行#

使用匯出檔案執行離線測試時,請使用下列命令。
指定 Apidog 測試情境的 URL 或檔案路徑。例如:

執行選項#

選項說明
--access-token <accessToken>設定線上執行的驗證權杖
-t, --test-scenario <testScenarioId>指定要執行的測試情境 ID
-f, --test-scenario-folder <folderId>指定要執行的測試情境目錄 ID
--test-suite <testSuiteId>指定要執行的測試套件 ID
--project <projectId>指定專案 ID
--branch <branchName>指定分支名稱;若省略,伺服器預設使用 main 分支
-r, --reporters [reporters]指定測試報告類型(預設:["cli"])
--out-dir <outDir>測試報告輸出目錄(預設:./apidog-reports)
--out-file <outFile>測試報告輸出檔名,無需加上副檔名。你可以使用 {FOLDER_NAME}、{SCENARIO_NAME} 和 {GENERATE_TIME}
--out-json-failures-separated <outJsonFailuresSeparated>將失敗項目匯出為獨立 JSON 檔案
-e, --environment <environmentId>指定執行階段環境
-n, --iteration-count <n>設定迭代次數
-d, --iteration-data <path>設定案例迭代資料(JSON 或 CSV)
--on-error <behavior>設定錯誤處理行為(ignore、continue 或 end)
--variables <path>從本機檔案載入環境或全域變數
--global-var <value>設定全域變數(key=value 格式)
--env-var <value>設定環境變數(key=value 格式)
--notification <ids>執行完成後傳送通知
--notification-failed-event <ids>僅在執行失敗時傳送通知
--external-program-path <path>指定外部程式的檔案路徑
--database-connection <path>指定資料庫設定的檔案路徑
--ignore-redirects防止自動重新導向
--silent防止主控台輸出
--color <value>啟用或停用彩色主控台輸出
--delay-request [n]指定請求之間的延遲(ms)
--timeout-request [n]指定請求逾時時間(ms)
--timeout-script [n]指定指令碼執行逾時時間(ms)
-k, --insecure停用 SSL 驗證
--ssl-client-cert-list <path>指定用戶端憑證設定路徑
--ssl-client-cert <path>指定用戶端憑證路徑(PEM)
--ssl-client-key <path>指定用戶端憑證私鑰路徑
--ssl-client-passphrase <passphrase>指定用戶端憑證密碼片語
--ssl-extra-ca-certs <path>指定其他受信任的 CA 憑證
-b, --bigint啟用 bigint 相容性
--upload-report [value]將測試報告概覽上傳到雲端
--preferred-http-version <preferredHttpVersion>設定偏好的 HTTP 通訊協定版本
--verbose顯示詳細請求與回應資訊
--lang <language>設定 CLI 語言(en)
-h, --help顯示說明資訊
建立或更新複雜測試資源(例如測試情境、測試套件、測試案例、測試資料或排程任務)時,請先使用 cli-schema get <schemaKey>,然後使用 cli-schema validate <schemaKey> --file <path> 驗證你的本機檔案。

匯入與匯出#

使用匯入與匯出命令,將外部 API 文件帶入 Apidog,或將專案資料匯出為其他工具使用的格式。

匯入專案資料#

import 命令會將本機檔案匯入專案。支援的格式包括 openapi、postman、har、insomnia、jmeter、wsdl、yapi、rap2、apidoc、hoppscotch、markdown、jsonschema 和 apidog。
命令說明範例
import依格式將本機檔案匯入專案。apidog import --project <projectId> --format openapi --file ./openapi.json

自動匯入設定#

使用 import auto-import 維護從外部來源長期同步的自動匯入設定。
命令說明範例
import auto-import list列出專案中的自動匯入設定。apidog import auto-import list --project <projectId>
import auto-import create建立自動匯入設定。apidog import auto-import create --project <projectId> --file ./auto-import.json
import auto-import get檢視自動匯入設定。apidog import auto-import get <settingId> --project <projectId>
import auto-import delete刪除自動匯入設定。apidog import auto-import delete <settingId> --project <projectId>
cli-schema get import-auto-import-create檢視自動匯入設定的 schema。apidog cli-schema get import-auto-import-create

匯出專案資料#

export 命令會將專案資料匯出到本機檔案。支援的格式包括 openapi、markdown、html、postman 和 apidog。
對於原生 apidog 匯出,範圍支援 all、apis 和 tags。資料夾範圍僅適用於 OpenAPI 匯出。
命令說明範例
export依格式匯出專案資料。apidog export --project <projectId> --format openapi --output ./openapi.json
export --format apidog匯出原生專案資料。apidog export --project <projectId> --format apidog --output ./project.apidog.json
export --scope apis以原生格式匯出選取的 API。apidog export --project <projectId> --format apidog --scope apis --api-ids 1001,1002 --output ./selected.apidog.json
export --scope tags以原生格式依標籤匯出 API。apidog export --project <projectId> --format apidog --scope tags --include-tags pet,store --output ./tagged.apidog.json
export --format openapi --scope folders以 OpenAPI 格式匯出選取的資料夾。apidog export --project <projectId> --format openapi --scope folders --folder-ids 2001 --output ./openapi.json

OAS 匯出設定#

使用 export settings 維護可重複使用的 OAS 匯出設定。
命令說明範例
export settings list列出 OAS 匯出設定。apidog export settings list --project <projectId>
export settings create建立 OAS 匯出設定。apidog export settings create --project <projectId> --file ./export-setting.json
export settings get檢視 OAS 匯出設定。apidog export settings get <settingId> --project <projectId>
export settings update更新 OAS 匯出設定。apidog export settings update <settingId> --project <projectId> --file ./export-setting.json
export settings delete刪除 OAS 匯出設定。apidog export settings delete <settingId> --project <projectId>
cli-schema get export-settings-create檢視 OAS 匯出設定建立的 schema。apidog cli-schema get export-settings-create
cli-schema get export-settings-update檢視 OAS 匯出設定更新的 schema。apidog cli-schema get export-settings-update

文件分享#

使用這些命令發布與分享 API 文件。

文件網站#

命令說明範例
docs-site list列出文件網站。apidog docs-site list --project <projectId>
docs-site get檢視文件網站詳細資料。apidog docs-site get <siteId> --project <projectId>
docs-site create建立文件網站。apidog docs-site create --project <projectId> --file ./docs-site.json
docs-site update更新文件網站設定。apidog docs-site update <siteId> --project <projectId> --file ./docs-site.json
docs-site delete刪除文件網站。apidog docs-site delete <siteId> --project <projectId>

共享文件#

命令說明範例
shared-doc list列出共享文件。apidog shared-doc list --project <projectId>
shared-doc get檢視共享文件詳細資料。apidog shared-doc get <docId> --project <projectId>
shared-doc create建立共享文件。apidog shared-doc create --project <projectId> --file ./shared-doc.json
shared-doc update更新共享文件設定。apidog shared-doc update <docId> --project <projectId> --file ./shared-doc.json
shared-doc delete刪除共享文件。apidog shared-doc delete <docId> --project <projectId>

分支管理#

使用分支命令來隔離變更、協作處理專案資源,以及在分支之間合併選取的資源。

迭代分支#

命令說明範例
branch list --type all列出專案中的所有分支類型。apidog branch list --project <projectId> --type all
branch list --type sprint列出迭代分支。apidog branch list --project <projectId> --type sprint
branch get --type sprint檢視迭代分支。apidog branch get <branchName> --project <projectId> --type sprint
branch create --type sprint建立迭代分支。apidog branch create --project <projectId> --type sprint --name <branchName> --from main
branch update --type sprint更新迭代分支。apidog branch update <branchName> --project <projectId> --type sprint --name <newName>
branch merge將明確選取的資源從一個分支合併到另一個分支。apidog branch merge --project <projectId> --from <sourceBranchName> --to <targetBranchName> --endpoint-ids <ids>
branch pick-to將選取的資源從來源分支挑選到目標分支。apidog branch pick-to --project <projectId> --from <sourceBranchName> --to <targetBranchName> --endpoint-ids <ids>
branch archive --type sprint在刪除前封存迭代分支。apidog branch archive <branchName> --project <projectId> --type sprint
branch delete --type sprint刪除已封存的迭代分支。apidog branch delete <branchName> --project <projectId> --type sprint

AI 分支#

命令說明範例
branch list --type ai列出 AI 分支。apidog branch list --project <projectId> --type ai
branch get --type ai檢視 AI 分支。apidog branch get <branchName> --project <projectId> --type ai
branch create --type ai從來源分支建立 AI 分支。apidog branch create --project <projectId> --type ai --name <aiBranchName> --from <sourceBranchName>
branch update --type ai更新 AI 分支。apidog branch update <branchName> --project <projectId> --type ai --name <newName>
branch archive --type ai在刪除前封存 AI 分支。apidog branch archive <branchName> --project <projectId> --type ai
branch delete --type ai刪除已封存的 AI 分支。apidog branch delete <branchName> --project <projectId> --type ai

一般分支#

命令說明範例
branch list --type general列出一般分支。apidog branch list --project <projectId> --type general
branch get --type general檢視一般分支。apidog branch get <branchName> --project <projectId> --type general
branch create --type general建立一般分支。apidog branch create --project <projectId> --type general --name <branchName> --from main
branch update --type general更新一般分支。apidog branch update <branchName> --project <projectId> --type general --name <newName>
branch delete --type general刪除一般分支。apidog branch delete <branchName> --project <projectId> --type general
分支建立命令主要使用命令列選項,例如 --type、--name 和 --from。cli-schema get branch-*-create 用於檢查建立選項結構。若要查看實際命令選項,請執行 apidog branch create -h。

合併請求#

當目標分支需要審查流程時,請使用 merge-request。合併請求與直接合併都只會合併明確選取的資源。
命令說明範例
merge-request preview在建立合併請求或直接合併前掃描候選變更。apidog merge-request preview --project <projectId> --from <sourceBranchName> --to <targetBranchName>
merge-request list列出合併請求。apidog merge-request list --project <projectId> --to <targetBranchName>
merge-request get檢視合併請求詳細資料。apidog merge-request get <mergeRequestId> --project <projectId> --to <targetBranchName>
merge-request create建立合併請求。apidog merge-request create --project <projectId> --to <targetBranchName> --from <sourceBranchName> --reviewer-ids <userIds> --endpoint-ids <ids>
merge-request update更新合併請求。apidog merge-request update <mergeRequestId> --project <projectId> --to <targetBranchName> --file ./merge-request.json
merge-request approve核准合併請求。apidog merge-request approve <mergeRequestId> --project <projectId> --to <targetBranchName> --file ./approve.json
merge-request reject拒絕合併請求。apidog merge-request reject <mergeRequestId> --project <projectId> --to <targetBranchName>
merge-request delete刪除合併請求。apidog merge-request delete <mergeRequestId> --project <projectId> --to <targetBranchName>
為了保障專案資源安全,CLI 寫入權限預設可能受到限制。你可以透過 AI 分支編輯來源分支資料,或在主分支、標準迭代分支或一般分支需要直接編輯時,在專案功能設定中啟用外部編輯權限。在 AI 分支上所做的變更仍需要使用者確認後,才能 merge 或 merge-request。
建議 AI 分支名稱包含日期、來源分支與目的,例如 ai/20260312-from-main-user-register。
對於分支合併與挑選操作,資源 ID 選項會使用複數名稱與逗號分隔的數字 ID,例如 --endpoint-ids 1,2、--doc-ids 3,4 和 --test-suite-ids 5,6。

其他資源#

使用這些命令管理專案擴充資源與外部連線。

自訂欄位#

命令說明範例
custom-field list列出自訂欄位。apidog custom-field list --project <projectId>
custom-field create建立自訂欄位。apidog custom-field create --project <projectId> --file ./custom-field.json
custom-field update更新自訂欄位。apidog custom-field update <customFieldId> --project <projectId> --file ./custom-field.json
custom-field delete刪除自訂欄位。apidog custom-field delete <customFieldId> --project <projectId>

WebSocket API#

命令說明範例
websocket list列出 WebSocket API。apidog websocket list --project <projectId>
websocket get檢視 WebSocket API 詳細資料。apidog websocket get <websocketId> --project <projectId>
websocket create建立 WebSocket API。apidog websocket create --project <projectId> --name <name> --url <url>
websocket update更新 WebSocket API。apidog websocket update <websocketId> --project <projectId> --file ./websocket.json
websocket delete刪除 WebSocket API。apidog websocket delete <websocketId> --project <projectId>

Socket.IO API#

命令說明範例
socketio list列出 Socket.IO API。apidog socketio list --project <projectId>
socketio get檢視 Socket.IO API 詳細資料。apidog socketio get <socketioId> --project <projectId>
socketio create建立 Socket.IO API。apidog socketio create --project <projectId> --file ./socketio.json
socketio update更新 Socket.IO API。apidog socketio update <socketioId> --project <projectId> --file ./socketio.json
socketio delete刪除 Socket.IO API。apidog socketio delete <socketioId> --project <projectId>

通用指令碼#

命令說明範例
common-script list列出通用指令碼。apidog common-script list --project <projectId>
common-script get檢視通用指令碼詳細資料。apidog common-script get <scriptId> --project <projectId>
common-script create建立通用指令碼。apidog common-script create --project <projectId> --file ./common-script.json
common-script update更新通用指令碼。apidog common-script update <scriptId> --project <projectId> --file ./common-script.json
common-script delete刪除通用指令碼。apidog common-script delete <scriptId> --project <projectId>

資料庫連線#

命令說明範例
database-connection list列出資料庫連線。apidog database-connection list --project <projectId>
database-connection get檢視資料庫連線詳細資料。apidog database-connection get <connectionId> --project <projectId>
database-connection create建立資料庫連線。apidog database-connection create --project <projectId> --file ./database-connection.json
database-connection update更新資料庫連線。apidog database-connection update <connectionId> --project <projectId> --file ./database-connection.json
database-connection delete刪除資料庫連線。apidog database-connection delete <connectionId> --project <projectId>

Vault Provider#

命令說明範例
vault list列出 vault provider。apidog vault list --project <projectId>
vault get檢視 vault provider 詳細資料。apidog vault get <vaultProviderId> --project <projectId>
vault create建立 vault provider。apidog vault create --project <projectId> --file ./vault.json
vault update更新 vault provider。apidog vault update <vaultProviderId> --project <projectId> --file ./vault.json
vault delete刪除 vault provider。apidog vault delete <vaultProviderId> --project <projectId>

Git 連線#

命令說明範例
git-connection list列出 Git 連線。apidog git-connection list --project <projectId>
git-connection get檢視 Git 連線詳細資料。apidog git-connection get <connectionId> --project <projectId>
git-connection create建立 Git 連線。apidog git-connection create --project <projectId> --file ./git-connection.json
git-connection update更新 Git 連線。apidog git-connection update <connectionId> --project <projectId> --file ./git-connection.json
git-connection delete刪除 Git 連線。apidog git-connection delete <connectionId> --project <projectId>

管理與設定#

使用這些命令進行專案管理、通知、資源回收站、變更歷史與稽核日誌。

通知#

命令說明範例
notification list列出通知設定。apidog notification list --project <projectId>
notification get檢視通知詳細資料。apidog notification get <notificationId> --project <projectId>
notification create建立通知設定。apidog notification create --project <projectId> --file ./notification.json
notification update更新通知設定。apidog notification update <notificationId> --project <projectId> --file ./notification.json
notification delete刪除通知設定。apidog notification delete <notificationId> --project <projectId>

回收站#

命令說明範例
recycle list列出回收站中的資源。apidog recycle list --project <projectId>
recycle restore從回收站還原資源。apidog recycle restore <itemId> --project <projectId>
recycle delete永久刪除回收站資源。apidog recycle delete <itemId> --project <projectId>

歷史#

命令說明範例
history list列出專案變更歷史。apidog history list --project <projectId>
history get檢視變更歷史詳細資料。apidog history get <historyId> --project <projectId>

稽核日誌#

命令說明範例
audit-log list列出專案稽核日誌。apidog audit-log list --project <projectId>
audit-log get檢視稽核日誌詳細資料。apidog audit-log get <auditLogId> --project <projectId>

進階用法#

在 CLI 中上傳檔案#

使用需要上傳檔案的 API 時,準確設定要上傳檔案的路徑非常重要。你應該將檔案儲存在執行測試的同一台機器上,並使用其絕對或相對路徑來參照。請依照以下步驟參照要上傳的檔案。
1
事先將所需檔案複製到執行 CLI 的機器上。例如,如果你使用 GitHub Actions 作為 CI/CD 管線,請將所需檔案複製到與工作流程相同的 GitHub 儲存庫中。
2
在 Apidog 中,前往你的測試情境並找到需要檔案上傳的步驟。如下所示,點選 Bulk Edit 按鈕。
測試情境步驟詳細資料中的批次編輯按鈕
3
複製你已複製到 CLI 機器上的檔案路徑。然後將檔案欄位參數值替換為 CLI 機器上的檔案路徑。例如,如果你將 png 檔案放在 GitHub repo 的 data 資料夾下,可以使用 data/to-be-uploaded.png 來參照它。
批次編輯模式中的檔案路徑設定
完成此設定後,即可透過 CLI 將檔案正確傳送到 Apidog。
如果你想再次在本機執行此測試情境,則需要將參數值中的檔案路徑改回本機機器上的路徑。

在 CLI 中使用資料庫操作#

當你的測試情境包含資料庫操作時,由於資料庫設定儲存在本機而非雲端,因此需要額外幾個步驟。這表示你無法直接針對這些情境以雲端模式執行 CLI。以下是處理方式:
1
對於包含資料庫操作的測試情境,你會在命令列產生介面看到提示:「Download the database configuration file。」
2
下載此檔案並將其放在你計畫執行 Apidog CLI 的目錄中。
3
自動產生的命令列會包含 --database-connection 選項。你可以直接使用此命令列執行測試。

將本機 CLI 測試報告上傳到雲端#

若要將本機 CLI 測試報告上傳到雲端,你可以在 CLI 命令結尾加上 --upload-report 參數。做法如下:
1
將 --upload-report 參數加到 CLI 命令中:
2
此命令會執行測試,並在完成後自動將測試報告上傳到雲端。
3
若要檢視已上傳的報告:
前往 Apidog 儀表板中的「Test Reports」區段。
尋找「Team Reports」欄位。
4
注意:對於透過 CLI 上傳的報告,「Tester」欄位會顯示為空白。

在 CLI 中使用外部指令碼/程式#

執行 Apidog CLI 時,你可以在命令結尾加入路徑來參照外部指令碼或程式。做法如下:
在此範例中,CLI 會被指示參照位於 ./scripts 目錄中的程式。如果未指定階層,預設為目前 CLI 執行目錄。
管理這些外部指令碼有兩種主要方式:

1. 本機路徑#

為避免管理本機指令碼時混淆,建議:
依類別組織所有指令碼檔案
將它們放在特定目錄中
在 CLI 命令中指定對應的本機路徑

2. 雲端程式碼儲存庫#

或者,你可以:
將指令碼檔案託管在雲端程式碼儲存庫中
在 CI/CD 工作流程中設定 pull 命令,將外部指令碼擷取到本機環境
在 CLI 命令中指定外部指令碼的實際路徑

SSL#

用戶端憑證#

Apidog 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
[
    {
        "name": "domain1",
        "matches": ["https://test.domain1.com/*", "https://www.domain1/*"],
        "key": {"src": "/CI/client.domain1.key"},
        "cert": {"src": "/CI/client.domain1.crt"},
        "passphrase": "changeme"
    },
    {
        "name": "domain2",
        "matches": ["https://domain2.com/*"],
        "key": {"src": "/CI/client.domain2.key"},
        "cert": {"src": "/CI/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 Application-Layer Protocol Negotiation (ALPN),僅支援 HTTPS 請求。
2.
"HTTP/2-with-prior-knowledge" - HTTP/2 with prior knowledge。
3.
"HTTP/1" - HTTP/1.1。
此參數支援以下設定:
1.
為 HTTPS 和 HTTP 請求設定不同的通訊協定版本:
2.
為 HTTPS 和 HTTP 設定相同的通訊協定版本:
3.
為 HTTPS 和 HTTP 都設定 HTTP/2(不支援的值會被自動忽略):

FAQ#

如何處理錯誤訊息 Invalid character in header content['Authorization']?
此錯誤通常是由 Authorization 標頭中的無效字元造成,例如非 ASCII 字元、換行符號或多餘空格。如果你確定在 Apidog 用戶端或網頁介面中執行測試情境不會產生任何錯誤,請檢查是否已為環境中的變數設定 INITIAL 值,並確認 Authorization 值符合預期格式。
如何在不使用 AI 分支的情況下直接編輯專案資料?
為了安全起見,專案寫入權限可能受到限制。當需要直接編輯時,請檢查專案的功能設定並啟用外部編輯權限。
Modified at 2026-06-11 10:26:02
Previous
安裝並執行 Apidog CLI
Next
概述
Built with