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 を実行します。
API、API バージョン、定義を登録する
次の手順では、API を作成し、1 つの API バージョンと API 定義を関連付ける方法を示します。 Azure API Center でのデータ モデルの背景については、主な概念に関する記事を参照してください。
API の作成
API センターに API を作成するには、az apic api create コマンドを使用します。
次の例では、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"
Note
API を作成したら、az apic api update コマンドを使用して API のプロパティを更新できます。
API バージョンを作成する
API のバージョンを作成するには、az apic api version create コマンドを使用します。
次の例では、前のセクションで作成した 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 定義を作成し、仕様ファイルを追加する
API バージョンの定義と不随する仕様ファイルを追加するには、az apic api definition コマンドを使用します。
定義を作成する
次の例では、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 コマンドを使用して仕様ファイルを定義にインポートします。
次の例では、パブリックにアクセスできる URL から、前の手順で作成した openapi 定義に 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 を登録する - 1 回のステップ
az apic api register コマンドを使用すると、1 回のステップでローカル仕様ファイルから 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 定義の
version
プロパティに従って名前付けされた API バージョン (または、既定で 1-0-0) と、仕様形式に従って名前が付けられた API 定義 (openapi など) が作成されます。
API を登録したら、az apic api update、az apic api version update、az apic api definition update コマンドを使用して API のプロパティを更新できます。
API リソースを削除する
API とそのすべてのバージョンおよび定義リソースを削除するには、az apic api delete コマンドを使用します。 次に例を示します。
az apic api delete \
--resource-group myResoureGroup --service-name myAPICenter \
--api-id petstore-api
API バージョンと定義を個別に削除するには、それぞれ az apic api version delete コマンドと az apic api definition delete コマンドを使用します。
関連するコンテンツ
- 環境、デプロイ、メタデータ スキーマ、サービスを管理するためのコマンドなど、完全なコマンド一覧については、Azure API センターの Azure CLI リファレンスを参照してください。
- API Management から API センターに API をインポートする
- API センター向け Visual Studio 拡張機能を使用して Visual Studio Code から API をビルドして登録する。
- GitHub Actions を使用して API Center に API を登録する