giip
SES 商機登記
2分鐘閱讀

Azure 資源群組管理 API 參考

用於查詢、註冊/修改、刪除專案(CSN)與 Azure 資源群組(RG)對應的 API 詳細規範。這些 API 與頁面功能 Azure 資源群組管理 所使用的完全相同。

🔌 前往 Azure 資源群組管理 →

📋 概述

CSN↔Azure RG 對應 API 透過 giipApi 端點以 text 命令分發。認證使用 AK(byAK):伺服器先以 @ak → dbo.lwGetUSNbyat(@ak) 確定使用者,再驗證其對目標 CSN 的所屬(tCorpUserRel/tCorpUser)。非成員將回傳 403

  • 端點: POST https://giipfaw.azurewebsites.net/api/giipApi
  • Content-Type: application/x-www-form-urlencoded
  • 主要表單欄位: text(命令與參數名列表)、jsondata(參數值 JSON)、認證金鑰
  • 綁定規約: text 中參數名的排列順序 = SP 參數順序(positional),值透過 jsondata 的鍵對應。

🔍 主要命令

1. 查詢對應清單 — AzureRgListpApiAzureRgListbyAK

查詢目前使用者可存取 CSN 的 RG 對應清單。

  • text: AzureRgList csn
  • jsondata: { "csn": <CSN> }(省略則為使用者所屬的全部 CSN)
  • 回傳: carSn, cSn, carResourceGroup, carSubscriptionId, carSubscriptionName, carLSsn, carNote, carStatus, carRegdt 的列清單,無權限時為 Proc_MSG='403|...'

2. 註冊/修改對應 — AzureRgPutpApiAzureRgPutbyAK

註冊新對應或修改既有對應(upsert)。

  • text: AzureRgPut csn carResourceGroup carSubscriptionId carSubscriptionName carLSsn carNote carSn
  • jsondata: { "csn":<CSN>, "carResourceGroup":"rg-...", "carSubscriptionId":"...", "carSubscriptionName":"...", "carLSsn":<lssn|null>, "carNote":"...", "carSn":<修改時指定> }
  • 規則: 指定 carSn 為 update,未指定時依 (cSn, carResourceGroup) 唯一鍵 upsert
  • 回傳: Proc_MSG 200|OK / 400|... / 403|... / 404|Not found

3. 刪除對應 — AzureRgDelpApiAzureRgDelbyAK

carSn 刪除一筆對應。

  • text: AzureRgDel carSn
  • jsondata: { "carSn": <carSn> }
  • 回傳: Proc_MSG 200|OK / 403|... / 404|Not found

🛠️ 使用範例 (cURL)

# 1) 查詢 CSN 47 的 RG 對應清單
curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
     -H "Content-Type: application/x-www-form-urlencoded" \
     --data-urlencode 'text=AzureRgList csn' \
     --data-urlencode 'jsondata={"csn":47}' \
     --data-urlencode 'ak=YOUR_AK'

# 2) 註冊新的 RG 對應
curl -X POST "https://giipfaw.azurewebsites.net/api/giipApi" \
     -H "Content-Type: application/x-www-form-urlencoded" \
     --data-urlencode 'text=AzureRgPut csn carResourceGroup carSubscriptionId carSubscriptionName carLSsn carNote carSn' \
     --data-urlencode 'jsondata={"csn":47,"carResourceGroup":"rg-example-prod","carSubscriptionName":"prod-sub","carNote":"正式 RG"}' \
     --data-urlencode 'ak=YOUR_AK'

💡 注意事項

  • run.ps1 不修改原則: 上述 API 僅透過新增 3 個 SP(pApiAzureRgListbyAK/pApiAzureRgPutbyAK/pApiAzureRgDelbyAK)即可運作。受保護的 run.ps1 不做修改。
  • 同一 CSN 內 RG 名稱唯一(UNIQUE(cSn, carResourceGroup))。以相同名稱且不帶 carSn 呼叫 AzureRgPut 會更新既有列。
  • carLSsn 是費用來源提示,用於 Azure 費用連動擴充(本版本提供以對應為基礎的篩選/小計)。

疑難排解

症狀原因解決
回傳 `Proc_MSG='403...'`呼叫使用者不屬於目標 CSN
AzureRgPut 回傳 400缺少必填值(csn/carResourceGroup)務必包含 csncarResourceGroup
意外更新了既有對應未帶 carSn 重複註冊相同 (csn, RG)新建請用新的 RG 名稱,修改請指定 carSn
jsondata 解析錯誤JSON 引號跳脫錯誤以有效且正確跳脫的 JSON 傳送 jsondata
RstVal/Proc_MSG 非 200參數/權限問題參考 API 結果代碼指南 查看原因代碼

版本: 1.0 最後更新: 2026-07-24 來源: giipv3/public/help/api-azure-rg.zh-TW.md


相關文件: