docs.infowin.com.tw

開發者 API 文件

Infowin Hybrid Vault 技術整合文件。涵蓋 mTLS 連線設定、Heartbeat API、Schema Migration 觸發,以及 Cloudflare Tunnel 整合。

mTLS 雙向驗證
Heartbeat API
Schema Migration
Zero Trust 整合

認證方式

API Key 認證

大多數端點使用 API Key 認證。在 HTTP Header 中傳入 X-Vault-Key

X-Vault-Key: ivk_prod_XXXXXXXXXXXXXXXX

mTLS 憑證認證

地端 Agent 需要 mTLS 雙向驗證。在 Vault 控制台的「金鑰管理」頁面下載 client.pem 憑證。

--cert /certs/client.pem --key /certs/client.key

Base URL

https://api.infowin.com.tw

所有 API 請求使用 HTTPS,憑證需通過 mTLS 驗證(Heartbeat / Migrate 端點)。

API 端點總覽

方法路徑說明認證
GET
/api/vault/status查詢 Vault 連線狀態與健康度API Key
POST
/api/vault/heartbeat地端 Agent 定期心跳回報(每 60 秒)mTLS Cert
GET
/api/vault/schema取得最新 Schema Migration 版本資訊API Key
POST
/api/vault/migrate觸發地端 DB Schema Migration(需 Elite 權限)API Key + mTLS
GET
/api/vault/audit-logs查詢審計日誌記錄(支援分頁與篩選)API Key
POST
/api/vault/keys生成新的 API Key(需管理者身份)API Key
DELETE
/api/vault/keys/{keyId}撤銷指定 API KeyAPI Key
GET
/api/vault/tunnel/status查詢 Cloudflare Tunnel 連線狀態(Elite)API Key

Heartbeat API 範例

地端 Docker Agent 每 60 秒呼叫一次 Heartbeat,讓雲端掌握地端 DB 的運行狀態。Agent 無需暴露任何 Port;所有通訊由 Agent 主動發起。

// 地端 Docker Agent 每 60 秒呼叫一次
const response = await fetch('https://api.infowin.com.tw/api/vault/heartbeat', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-Vault-Key': process.env.VAULT_KEY,
  },
  body: JSON.stringify({
    localIp: '192.168.1.42',
    dbVersion: 'PostgreSQL 16.2',
    schemaVersion: 'v2024.03.15',
    diskUsage: { total: 500, used: 124 }, // GB
    cpuLoad: 12,
    ramUsed: 4.2,
  }),
});
// Response: { status: 'ok', nextMigration: null, tunnelActive: true }

Schema Migration

當雲端 SaaS 發布新版本時,系統自動向地端 Agent 發送 Schema Migration 指令。地端 Agent 執行後回報結果。您也可以手動觸發:

# 地端 Docker Agent 安裝後自動執行 Schema Sync
# 可手動觸發:
curl -X POST https://api.infowin.com.tw/api/vault/migrate \
  -H "X-Vault-Key: ivk_prod_XXXXXXXXXXXXXXXX" \
  --cert /certs/client.pem \
  --key /certs/client.key

錯誤代碼

HTTP 狀態碼錯誤代碼說明
401INVALID_KEYAPI Key 無效或已撤銷
403CERT_MISMATCHmTLS 憑證驗證失敗
404VAULT_NOT_FOUND找不到對應的 Vault 實例
409MIGRATION_IN_PROGRESSSchema Migration 正在執行中
429RATE_LIMIT請求頻率超過限制(Heartbeat 最大 1次/30秒)
500INTERNAL_ERROR伺服器內部錯誤,請聯繫技術支援

需要整合協助?

我們的工程師可協助您完成地端 Agent 設定、mTLS 憑證配置與 API 整合。