バージョンを管理する

このページは ApigeeApigee ハイブリッドに適用されます。

このトピックでは、API バージョンの作成と管理について説明します。バージョンの詳細については、バージョンの概要をご覧ください。

API にバージョンを追加する

API バージョンは、コンソールまたは REST API を使用して既存の API に追加できます。

Console

新しいバージョンを追加するには:

  1. Google Cloud コンソールで、[API ハブ] ページに移動します。

    [API Hub] に移動
  2. [API] をクリックします。
  3. バージョニングする API を見つけます。[フィルタ] を使用して、API のリストをフィルタするキーワードを指定します。必要に応じて、[検索] を使用して API を探します。
  4. API をクリックして詳細を表示します。
  5. [バージョン] タブで [バージョンを追加] をクリックします。
  6. [新しいバージョンを追加] フォームで、バージョンの詳細を指定します。表示名を指定してください。その他の属性は省略可能です。属性の詳細については、属性を管理するをご覧ください。
    • 名前: (必須)表示名を指定する必要があります。
    • 説明: バージョンの説明を追加します。
    • ライフサイクル: API のライフサイクル ステージを選択します。
    • コンプライアンス: コンプライアンス属性を選択します。
    • 認定: 認定属性を選択します。
    • ドキュメント: API のドキュメントの URL を入力します。
    • 仕様ファイルを追加する: API 仕様ファイルをインポートしてバージョンに関連付けます。API 仕様をバージョンに追加するをご覧ください。
    • デプロイにリンク: API に関連付けるデプロイを 1 つ以上選択します。
    • ユーザー定義の属性: ユーザー定義の属性は、組織またはチームのニーズに基づいて定義する属性です。ユーザー属性をご覧ください。
  7. [作成] をクリックします。

REST

Create an API version API を使用して新しいバージョンを追加するには:

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/apis/API_ID/versions?version_id=VERSION_ID"
  -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X POST -H "Content-Type: application/json" \
  '{
    "display-name": "DISPLAY_NAME",
    "description": "DESCRIPTION"               # description is an optional attribute
    }'

次のように置き換えます。

  • HUB_PROJECT: API Hub のホスト プロジェクトの名前。API Hub のプロビジョニング時にホスト プロジェクトが選択されました。
  • HUB_LOCATION: ホスト プロジェクトのロケーション。API Hub のプロビジョニング時にこのロケーションが選択されました。
  • API_ID: バージョンを追加する API リソースの一意の ID。
  • VERSION_ID:(省略可)API バージョンの一意の識別子。指定しない場合、システムで生成された ID が使用されます。名前は 4~63 文字の文字列にする必要があり、有効な文字は /[a-z][0-9]-/. です。
  • DISPLAY_NAME:(必須)バージョンの表示名。任意の名前を付けることができます。
  • DESCRIPTION:(省略可)説明、オーナー名、ドキュメントへのリンクなど、バージョンの説明に任意の属性を追加できます。これらの省略可能な属性は、バージョン リソースの定義に記載されています。

出力例:

{
  "name": "projects/myproject/locations/myproject/apis/docs-api-1/versions/myversion1",
  "displayName": "My Version 1",
  "createTime": "2024-04-02T18:48:41.162360Z",
  "updateTime": "2024-04-02T18:48:41.162360Z"
}

API バージョンを一覧表示する

このセクションでは、登録済みの API に関連付けられているバージョンを一覧表示する方法について説明します。

Console

コンソールで、登録済みの API に関連付けられているすべてのバージョンを表示するには:

  1. Google Cloud コンソールで、[API ハブ] ページに移動します。

    [API Hub] に移動
  2. [API] をクリックします。
  3. 検査する API を探します。[フィルタ] を使用して、API のリストをフィルタするキーワードを指定します。必要に応じて、[検索] を使用して API を探します。
  4. API を選択します。
  5. バージョンは、API の詳細ページの [バージョン] テーブルに表示されます。

REST

登録済みの API に関連付けられているすべてのバージョンを表示するには、List API versions API を使用します。

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/apis/API_ID/versions"
  -H "Authorization: Bearer: $(gcloud auth print-access-token)" -H "Content-Type: application/json"

次のように置き換えます。

  • HUB_PROJECT: API Hub のホスト プロジェクトの名前。API Hub のプロビジョニング時にホスト プロジェクトが選択されました。
  • HUB_LOCATION: ホスト プロジェクトのロケーション。API Hub のプロビジョニング時にロケーションが選択されました。
  • API_ID: API リソースの一意の ID。

出力例:

{
  "versions": [
    {
      "name": "projects/myproject/locations/us-central1/apis/streetcarts-test/versions/streetcarts-testv1",
      "displayName": "Streetcarts Test v1"
    }
  ]
}

API バージョンの詳細を取得する

このセクションでは、API バージョンの詳細(属性、オペレーション、デプロイ、仕様ファイルなど)を取得する方法について説明します。

Console

コンソールでバージョンの詳細を表示するには:

  1. Google Cloud コンソールで、[API ハブ] ページに移動します。

    [API Hub] に移動
  2. [API] をクリックします。
  3. 検査する API を探します。[フィルタ] を使用して、API のリストをフィルタするキーワードを指定します。必要に応じて、[検索] を使用して API を探します。
  4. API を選択します。
  5. [バージョン] テーブルでバージョンをクリックして、バージョンの詳細ページを表示します。

REST

Get API version details API を使用してバージョンの詳細を表示するには:

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/apis/API_ID/versions/VERSION_ID"
  -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X GET -H "Content-Type: application/json"

次のように置き換えます。

  • HUB_PROJECT: API Hub のホスト プロジェクトの名前。このホスト プロジェクトは API Hub のプロビジョニング時に選択されたものです。
  • HUB_LOCATION: ホスト プロジェクトの場所。この場所は API Hub のプロビジョニング時に選択されたものです。
  • API_ID: API リソースの一意の ID。
  • VERSION_ID: バージョンの一意の ID。

出力例:

{
  "name": "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1",
  "displayName": "Test Version 3",
  "documentation": {},
  "specs": [
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/specs/docs-spec-1"
  ],
  "apiOperations": [
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/operations/listpets",
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/operations/createpets",
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/operations/deletepet",
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/operations/getpetbyid",
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/operations/updatepet"
  ],
  "definitions": [
    "projects/myproject/locations/us-central1/apis/streetcarts/versions/streetcarts_testv1/definitions/pet"
  ],
  "createTime": "2024-04-04T14:53:57.299213423Z",
  "updateTime": "2024-04-04T14:53:58.027321138Z"
}

API バージョンを削除する

このセクションでは、API リソースに関連付けられている API バージョンを削除する方法について説明します。

Console

UI でバージョンを削除すると、バージョンに関連付けられている基盤となる仕様(存在する場合)がすべて削除されます。

バージョンを削除するには:

  1. Google Cloud コンソールで、[API ハブ] ページに移動します。

    [API Hub] に移動
  2. [API] をクリックします。
  3. 削除するバージョンを含む API を見つけます。[フィルタ] を使用して、API のリストをフィルタするキーワードを指定します。必要に応じて、[検索] を使用して API を探します。
  4. API を選択します。
  5. [バージョン] 表で、削除するバージョンを見つけます。
  6. 操作メニュー(バージョンを含む行の右側)で、[削除] をクリックします。

REST

デフォルトでは、バージョンを削除できるのは、基盤となる仕様がすべて削除された場合のみです。バージョンのすべての仕様を 1 回で削除するには、Delete REST API で force クエリ パラメータを true に設定します。

Delete API version API を使用してバージョンを削除するには:

curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  'https://apihub.googleapis.com/v1/projects/API_PROJECT/locations/API_LOCATION/apis/API_ID/versions/VERSION_ID'

次のように置き換えます。

  • API_PROJECT: API Hub のホスト プロジェクトの名前。API Hub のプロビジョニング時にホスト プロジェクトが選択されました。
  • API_LOCATION: ホスト プロジェクトのロケーション。API Hub のプロビジョニング時にロケーションが選択されました。
  • API_ID: API リソースの一意の ID。
  • VERSION_ID: 削除するバージョンの ID。

バージョンと基盤となるすべての仕様を削除するには、force クエリ パラメータを true に設定します。次に例を示します。

curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  'https://apihub.googleapis.com/v1/projects/API_PROJECT/locations/API_LOCATION/apis/API_ID/versions/VERSION_ID?force=true'

バージョンを編集する

Console

バージョンを編集するには:

  1. Google Cloud コンソールで、[API ハブ] ページに移動します。

    [API Hub] に移動
  2. [API] をクリックします。
  3. [フィルタ] を使用して、API のリストをフィルタするキーワードを指定します。 必要に応じて、[検索] を使用して API を探します。
  4. API を選択します。
  5. [バージョン] 表で、編集するバージョンを見つけます。
  6. バージョン行の右側にある [アクション] メニューから [編集] を選択します。バージョンの詳細ページで [バージョンを編集] をクリックして、編集機能にアクセスすることもできます。詳細ページに移動するには、バージョン テーブルでバージョンをクリックします。
  7. 編集が完了したら、[保存] をクリックして変更内容を保存します。編集可能な属性の説明については、REST API リファレンスのバージョン リソースの説明をご覧ください。

REST

REST API を使用してバージョンを編集するには:

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/apis/API_ID/versions/VERSION_ID?updateMask=LIST_OF_ATTRIBUTES"
    -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X PATCH -H "Content-Type: application/json" \
    '{
      "display-name": DISPLAY_NAME,  # Use the request body to specify attribute changes
      "description": "DESCRIPTION"

    }'

次のように置き換えます。

  • HUB_PROJECT: API Hub のホスト プロジェクトの名前。API Hub のプロビジョニング時にホスト プロジェクトが選択されました。
  • HUB_LOCATION: ホスト プロジェクトの場所。この場所は API Hub のプロビジョニング時に選択されたものです。
  • API_ID: 編集するバージョンを含む API の一意の ID。
  • VERSION_ID: 編集するバージョンの ID。
  • DESCRIPTION: リクエスト本文に、説明などの他の編集可能な属性を追加できます。編集可能な属性は、Apigee Hub API リファレンスに記載されています。Patch version API
  • LIST_OF_ATTRIBUTES: 完全修飾属性名のカンマ区切りリスト。例: ?updateMask="description"

出力例:

{
  "name": "projects/myproject/locations/us-central1/apis/streetcarts-test/versions/streetcarts-testv1",
  "displayName": "Streetcarts Test v1",
  "description": "This is a revision of the test version.",
  "documentation": {},
  "createTime": "2024-04-18T19:57:11.870761Z",
  "updateTime": "2024-04-18T20:23:42.465324Z"
}