API Gateway で API ステージのタグをセットアップする
API Gateway では、API ステージにタグを追加したり、ステージからタグを削除したり、タグを表示したりすることができます。これを行うには、API Gateway コンソール、AWS CLI/SDK、または API Gateway REST API を使用できます。
ステージは、その親 REST API からタグを継承することもできます。詳細については、「Amazon API Gateway V1 API でのタグの継承」を参照してください。
API Gateway リソースのタグ付けの詳細については、「API Gateway リソースのタグ付け」を参照してください。
トピック
API Gateway コンソールを使用した API ステージのタグのセットアップ
次の手順では、API ステージのタグを設定する方法を説明します。
API Gateway コンソールを使用して API ステージのタグを設定するには
-
[API Gateway コンソール] にサインインします。
-
既存の API を選択するか、リソース、メソッド、および対応する統合を含む新しい API を作成します。
-
ステージを選択するか、新しいステージに API をデプロイします。
-
メインナビゲーションペインで、[ステージ] を選択します。
[タグ] タブを選択します。タブを表示するには、右矢印ボタンを選択する必要がある場合があります。
[Manage tags (タグの管理)] を選択します。
-
[タグエディター] で、[新しいタグの追加] を選択します。[キー] フィールドにタグキー (
Department
など) を入力し、[値] フィールドにタグ値 (Sales
など) を入力します。[保存] を選択してタグを保存します。 -
必要に応じて、ステップ 5 を繰り返して API ステージにさらにタグを追加します。ステージあたりのタグの最大数は 50 です。
-
既存のステージからタグを削除するには、[削除] を選択します。
-
API が API Gateway コンソールで既にデプロイされているという場合は、それを再度デプロイして変更を有効にする必要があります。
AWS CLI を使用して API ステージのタグを設定する
AWS CLI で create-stage コマンドまたは tag-resource コマンドを使用して API ステージのタグを設定できます。API ステージから 1 つ以上のタグを削除するには、untag-resource コマンドを使用できます。
次の例では、test
ステージの作成時にタグを追加します。
aws apigateway create-stage --rest-api-id
abc1234
--stage-name test --description 'Testing stage' --deployment-idefg456
--tag Department=Sales
次の例では、prod
ステージにタグを追加します。
aws apigateway tag-resource --resource-arn arn:aws:apigateway:
us-east-2
::/restapis/abc123
/stages/prod --tags Department=Sales
次の例では、test
ステージから Department=Sales
タグを削除します。
aws apigateway untag-resource --resource-arn arn:aws:apigateway:
us-east-2
::/restapis/abc123
/stages/test --tag-keys Department
API Gateway REST API を使用した API ステージのタグのセットアップ
API Gateway REST API を使用して API ステージのタグを設定するには、次のいずれかの操作を行います。
-
API ステージにタグ付けするには
tags:tag
を呼び出します。 -
API ステージから 1 つまたは複数のタグを削除するには
tags:untag
を呼び出します。 -
作成する API ステージに 1 つまたは複数のタグを追加するには
stage:create
を呼び出します。
また、API ステージでタグを記述するには tags:get
を呼び出します。
API ステージのタグ付け
ステージ (m5zr3vnks7
) に API (test
) をデプロイした後は、tags:tag
を呼び出すことで、ステージをタグ付けします。必須のステージである Amazon リソースネーム (ARN) (arn:aws:apigateway:us-east-1::/restapis/m5zr3vnks7/stages/test
) は URL エンコードされている必要があります (arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftest
)。
PUT /tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftest { "tags" : { "Department" : "Sales" } }
前回のリクエストを使用して既存のタグを新しい値で更新することもできます。
stage:create
を呼び出してステージを作成するときに、ステージにタグ付けできます。
POST /restapis/<restapi_id>/stages { "stageName" : "test", "deploymentId" : "adr134", "description" : "test deployment", "cacheClusterEnabled" : "true", "cacheClusterSize" : "500", "variables" : { "sv1" : "val1" }, "documentationVersion" : "test", "tags" : { "Department" : "Sales", "Division" : "Retail" } }
API ステージのタグ解除
ステージから Department
タグを削除するには、tags:untag
を呼び出します。
DELETE /tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftest?tagKeys=Department Host: apigateway.us-east-1.amazonaws.com Authorization: ...
複数のタグを削除するには、クエリ式でタグキーのカンマ区切りのリストを使用します (例: ?tagKeys=Department,Division,…
)。
API ステージのタグを説明する
特定のステージで既存のタグを記述するには、tags:get
を呼び出します。
GET /tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftags Host: apigateway.us-east-1.amazonaws.com Authorization: ...
正常に終了すると、レスポンスは以下のようになります。
200 OK { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-tags-{rel}.html", "name": "tags", "templated": true }, "tags:tag": { "href": "/tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftags" }, "tags:untag": { "href": "/tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftags{?tagKeys}", "templated": true } }, "tags": { "Department": "Sales" } }