プロジェクト API 変更ログ

この変更ログでは、 プロジェクト API の最新の変更、改善、および更新について知ることができます。 この変更ログでは、行われた変更をリリース日付の順にリストしています。 既存の API バージョンに対する変更は、既存のクライアント・アプリケーションの互換性が確保されるように設計されています。

2024 年 4 月 3 日

プロジェクト API v1.0.0 が使用可能になりました。 必ずベータ版からバージョンを更新してください。

以下の変更は、 list 操作のページ編集に影響します。 詳しくは、Projects API の資料の pagination セクションを参照してください。

リスト・プロジェクト

GET /v1/projects

  • ページ・トークン照会パラメーターの名前が start から token に変更されました。
    • 例えば、 list-projects 操作の呼び出しが GET /v1/projects?limit=5&start={page_token} から GET /v1/projects?limit=5&token={page_token} に変更されました。
  • 最初のページは、要求 URL にトークン照会パラメーターなしで返されます。 例えば、 GET /v1/projects?limit=5 または GET /v1/projects などです。
    • 最初のページは、指定されたページ・トークンが無効な場合にも戻されます。
  • last フィールドと previous フィールドはサポートされなくなり、応答ペイロードにも含まれなくなりました。

リスト構成

GET /v1/projects/{project_id}/configs

  • この操作は現在ページ編集されています。
  • ページ・サイズが limit 照会パラメーターで指定されていない場合は、デフォルトの 10 レコードが返されます。
    • 最大ページ・サイズは 100 レコードです。
  • 最初のページは、要求 URL にトークン照会パラメーターなしで返されます。 例えば、 GET /v1/projects/{project_id}/configs/?limit=5 または GET /v1/projects/{project_id}/configs などです。
    • 最初のページは、指定されたページ・トークンが無効な場合にも戻されます。

リスト環境

GET /v1/projects/{project_id}/environments

  • この操作は現在ページ編集されています。
  • limit 照会パラメーターでページ・サイズが指定されていない場合は、デフォルトの 10 レコードが返されます。
    • 最大ページ・サイズは 100 レコードです。
  • 最初のページは、要求 URL に token 照会パラメーターを指定せずに返されます。 例えば、 GET /v1/projects/{project_id}/environments/?limit=5 または GET /v1/projects/{project_id}/environmentsなどです。
    • 最初のページは、指定されたページ・トークンが無効な場合にも戻されます。

デプロイ可能なアーキテクチャーのスタッキングをサポートする方法

実験

デプロイ可能なアーキテクチャーのスタック をサポートするための試験的メソッドが追加されました。

2023 年 11 月 6 日

最新の更新には、以下の互換性のない変更が含まれています。

  • すべてのメソッドの configurations response モデルは、 pipeline_state を使用しなくなりました。 configuration のすべての状況情報は、 configuration の正規スキーマの拡張された state プロパティーで使用可能です。

プロジェクトおよび構成の変更

create-project: POST /v1/projects

  • これで、 resource_group および locationrequest ペイロードに組み込まれます。 これらは、照会パラメーターとしてサポートされなくなりました。

delete-config: PATCH /v1/projects/{project_id}/configs/{id}

  • draft_only 照会パラメーターは推奨されません。
  • API は、指定されたプロジェクト ID および versionconfiguration の削除をサポートするようになりました。 projects#delete-config-version を参照してください。

名前変更された構成エンドポイント

以下の構成エンドポイントは、以下のように名前変更されます。

  • POST /v1/projects/{project_id}/configs/{id}/checkPOST /v1/projects/{project_id}/configs/{id}/validate に変更されました。
  • POST /v1/projects/{project_id}/configs/{id}/installPOST /v1/projects/{project_id}/configs/{id}/deploy に変更されました。
  • POST /v1/projects/{project_id}/configs/{id}/uninstallPOST /v1/projects/{project_id}/configs/{id}/undeploy に変更されました。

置換された構成エンドポイント

drafts メソッドは、以下のように versions 操作に置き換えられました。

  • GET /v1/projects/{project_id}/configs/{config_id}/draftsGET /v1/projects/{project_id}/configs/{id}/versions に変更されました。
  • GET /v1/projects/{project_id}/configs/{config_id}/drafts/{version}GET /v1/projects/{project_id}/configs/{id}/versions/{version} に変更されました。

構成状態

configurations の状態モデルはフラット化されています。 pipeline_state は使用できなくなり、1 つの state プロパティーが拡張されて、 configuration の考えられるすべての状況が取り込まれるようになりました。

以下に、新しい state 値を示します。

  • approved
  • deleted
  • deleting
  • deleting_failed
  • discarded
  • deployed
  • deploying_failed
  • deploying
  • superceded
  • undeploying
  • undeploying_failed
  • validated
  • validating
  • validating_failed

すべての configuration エンドポイントは、この state プロパティーを response モデルに組み込みます。 例については、 projects#get-config-version-response を参照してください。

新規メタデータの構成

configurations 操作の response モデルで、新規メタデータがルートに定義されるようになりました。 approve ジョブが configuration で実行された場合、 approved_version プロパティーが response ペイロードに含まれます。 同様に、 deploy ジョブが configuration で実行された場合、 response 本体で deployed_version および last_deployed メタデータが使用可能です。 validation ジョブを実行するとメタデータ last_validated が生成され、 undeploy ジョブを実行するとメタデータ last_undeployedresponse に生成されます。

2023 年 10 月 25 日

createupdate などの projects および configurations 操作では、 namedescription などの定義プロパティーを definition ラッパーで提供する必要があります。 同様に、これらのプロパティーは、 createupdateget、および list 操作の response ペイロードの definition ブロック内でのみ使用できるようになりました。 これは、2023 年 7 月 6 日に最初にリリースされた破壊的な変更です。 以下のセクションでは、この更新の影響を受けるメソッドについて詳しく説明します。

プロジェクト

create-project: POST /v1/projects

  • request & response では、 namedescription、および destroy_on_delete の両方が definition オブジェクト内でラップされるようになりました。
  • これで、このエンドポイントの呼び出し元は、このラッパー内の定義プロパティーを提供することになります。以下に例を示します。
    • definition: {“name”: “test”, “description”: “This is a test project”, “destroy_on_delete”: false}.
      • destroy_on_delete が指定されていない場合、プロジェクト作成操作でデフォルト値 true が割り当てられます。
    • projects#create-project-request を参照してください。
  • 同様に、 response 本体では、前述のプロパティーが definition ブロックで使用可能になりました。

update-project: PATCH /v1/projects/{id}

  • request & response では、 namedescription、および destroy_on_delete の両方が definition オブジェクト内でラップされるようになりました。
  • これで、このエンドポイントの呼び出し元は、このラッパー内の定義プロパティーを提供することになります。以下に例を示します。
    • definition: {“name”: “test_update”, “description”: “This is an updated test project“}.
    • projects#update-project-request を参照してください。
  • 同様に、 response 本体では、前述のプロパティーが definition ブロックで使用可能になりました。

get-projects: GET /v1/projects/{id}

  • この操作の response では、 namedescription、および destroy_on_deletedefinition ブロック内でラップされるようになりました。

list-project: GET /v1/projects

  • response 配列で返される各プロジェクトは、 definition ブロック内の namedescription、および destroy_on_delete プロパティーをラップします。

構成

create-config: POST /v1/projects/{project_id}/configs

  • 両方の request & response で、 locator_idnamelabelsauthorizationscompliance_profileinputsettingdescriptiondefinition オブジェクト内でラップされるようになりました。
  • これで、このエンドポイントの呼び出し元は、このラッパー内の定義プロパティーを提供することになります。以下に例を示します。
    • definition: {“name”: “test”, “description”: “This is a test config”, “locator_id”: “1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.cd596f95-95a2-4f21-9b84-477f21fd1e95-global”}.
    • projects#create-config-request を参照してください。
  • 同様に、 response 本体では、前述のプロパティーが definition ブロックで使用可能になりました。

update-config: PATCH /v1/projects/{project_id}/configs/{id}

  • 両方の request & response で、 locator_idnamelabelsauthorizationscompliance_profileinputsettingdescriptiondefinition オブジェクト内でラップされるようになりました。
  • これで、このエンドポイントの呼び出し元は、このラッパー内の定義プロパティーを提供することになります。以下に例を示します。
    • definition: {“name”: “test”, “description”: “This is a test config”, “locator_id”: “1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.cd596f95-95a2-4f21-9b84-477f21fd1e95-global”}.
    • projects#update-config-request を参照してください。
  • 同様に、 response 本体では、前述のプロパティーが definition ブロックに移動されます。

get-config: GET /v1/projects/{id}

  • この操作の response では、 locator_idnamelabelsauthorizationscompliance_profileinputsettingdescription、および settingdefinition オブジェクト内でラップされるようになりました。

list-configs: GET /v1/projects/{project_id}/configs

  • この操作の response では、 namedescriptiondefinition オブジェクト内でラップされるようになりました。

2023 年 7 月 6 日

すべてのメソッドの応答モデルで、 state 値に小文字のスネーク・ケース・フォーマットが適用されるようになりました。 この形式は、プロジェクト・エンドポイントおよび構成エンドポイントを呼び出すときに、応答で予期されるものです。 この更新は、互換性のない変更です。

プロジェクトの state 値を readydeleting、および deleting_failed にできるようになりました。 例については、 update-project メソッドの応答スキーマ を参照してください。

構成 state 値は、 deleteddeletingdeleting_failedinstalledinstalled_failedinstallingnot_installeduninstallinguninstalling_failed、および active にすることができるようになりました。 例については、 get-config メソッドの応答スキーマ を参照してください。