使用 Azure CLI 來管理 API 詳細目錄
本文說明如何在 Azure CLI 中使用 az apic api
命令,以在 API 中心詳細目錄中新增和設定 API。 在 Azure CLI 中使用命令來編寫作業指令碼,以管理 API 詳細目錄和 API 中心的其他層面。
必要條件
Azure 訂用帳戶中的 API 中心。 如果您尚未建立,請參閱快速入門:建立 API 中心。
對於 Azure CLI:
在 Azure Cloud Shell 中使用 Bash 環境。 如需詳細資訊,請參閱 Azure Cloud Shell 中的 Bash 快速入門。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈如何在 Docker 容器中執行 Azure CLI〉。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱使用 Azure CLI 登入。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能詳細資訊,請參閱使用 Azure CLI 擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
注意
az apic
命令需要apic-extension
Azure CLI 延伸模組。 如果您尚未使用az apic
命令,則可以在執行第一個az apic
命令時動態安裝延伸模組,也可以手動安裝延伸模組。 深入了解 Azure CLI 延伸模組。如需
apic-extension
中的最新變更和更新,請參閱版本資訊。
註冊 API、API 版本和定義
下列步驟示範如何建立 API,並使單一 API 版本和 API 定義產生關聯。 如需 Azure API Center 中資料模型的背景,請參閱重要概念。
建立 API
使用 az apic api create 命令,在您的 API 中心建立 API。
下列範例會在 myResourceGroup 資源群組和 myAPICenter API 中心建立名為 Petstore API 的 API。 API 是 REST API。
az apic api create --resource-group myResourceGroup \
--service-name myAPICenter --api-id petstore-api \
--title "Petstore API" --type "rest"
建立 API 版本
使用 az apic api version create 命令來建立 API 的版本。
下列範例會針對您在上一節中建立的 petstore-api API,建立名為 v1-0-0 的 API 版本。 版本會設定為測試生命週期階段。
az apic api version create --resource-group myResourceGroup \
--service-name myAPICenter --api-id petstore-api \
--version-id v1-0-0 --title "v1-0-0" --lifecycle-stage "testing"
建立 API 定義並新增規格檔案
使用 az apic api definition 命令,為 API 版本新增定義和隨附的規格檔案。
建立定義
下列範例會使用 az apic api definition create 命令,針對您在上一節中建立的 petstore-api API 版本,建立名為 openapi 的定義。
az apic api definition create --resource-group myResourceGroup \
--service-name myAPICenter --api-id petstore-api \
--version-id v1-0-0 --definition-id openapi --title "OpenAPI"
匯入規格檔案
使用 az apic api definition import-specification 命令,將規格檔案匯入至定義。
下列範例會將 OpenAPI 規格檔案從可公開存取的 URL 匯入至您在上一個步驟中建立的 openapi 定義。 規格資源的 name
和 version
屬性會以 JSON 形式傳遞。
az apic api definition import-specification \
--resource-group myResourceGroup --service-name myAPICenter \
--api-id petstore-api --version-id v1-0-0 \
--definition-id openapi --format "link" \
--value 'https://petstore3.swagger.io/api/v3/openapi.json' \
--specification '{"name":"openapi","version":"3.0.2"}'
提示
您可以將 --format
參數設定為 inline
,並使用 --value
參數傳遞檔案內容,以內嵌方式匯入規格檔案。
匯出規格檔案
若要將 API 規格從 API 中心匯出至本機檔案,請使用 az apic api definition export-specification 命令。
下列範例會將規格檔案從您在上一節中建立的 openapi 定義匯出至名為 specificationFile.json 的本機檔案。
az apic api definition export-specification \
--resource-group myResourceGroup --service-name myAPICenter \
--api-id petstore-api --version-id v1-0-0 \
--definition-id openapi --file-name "/Path/to/specificationFile.json"
從規格檔案註冊 API - 單一步驟
您可以使用 az apic api register 命令,在單一步驟中從本機規格檔案註冊 API。 使用此選項,就會自動為 API 建立預設 API 版本和定義。
下列範例會從名為 specificationFile.json 的本機 OpenAPI 定義檔,在 myAPICenter API 中心註冊 API。
az apic api register --resource-group myResourceGroup \
--service-name myAPICenter --api-location "/Path/to/specificationFile.json"
- 命令會從定義檔中的值設定 API 屬性,例如名稱和類型。
- 根據預設,命令會將 API 的 [生命週期階段] 設定為 design。
- 建立 API 版本並根據 API 定義中的
version
屬性命名 (或預設為 1-0-0),以及建立 API 定義並根據規格格式命名 (例如,openapi)。
更新 API 屬性
註冊 API 之後,您可使用 az apic api update、az apic api version update 和 az apic api definition update 命令來更新 API 的屬性。
下列範例會將petstore-api API的標題更新為Petstore API v2。
az apic api update --resource-group myResourceGroup \
--service-name myAPICenter --api-id petstore-api \
--title "Petstore API v2"
下列範例會將 API 的布爾 值內部 自定義屬性設定為 false。
az apic api update --resource-group myResourceGroup \
--service-name myAPICenter --api-id petstore-api \
--set custom_properties.internal=false
刪除 API 資源
使用 az apic api delete 命令來刪除 API 及其所有的版本和定義資源。 例如:
az apic api delete \
--resource-group myResourceGroup --service-name myAPICenter \
--api-id petstore-api
若要刪除個別 API 版本和定義,請分別使用 az apic api version delete 和 az apic api definition delete。
相關內容
- 如需完整的命令清單,請參閱 Azure API Center 的 Azure CLI 參考,包括管理環境、部署、中繼資料結構描述及服務。
- 從 API 管理將 API 匯入至 API 中心
- 使用適用於 API 中心的 Visual Studio 延伸模組,從 Visual Studio Code 建置和註冊 API。
- 使用 GitHub Actions 在 API 中心註冊 API