一時 ID の使用

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

BatchJobService の強力な機能として、一時 ID を使用できることが挙げられます。

これを行うには、新しいリソースの resource_name を指定して負の ID を使用します。たとえば、キャンペーンを作成し、そのリソース名を customers/<YOUR_CUSTOMER_ID>/campaigns/-1 として指定した場合、後のオペレーションで広告グループを作成するときに、そのリソース名で参照できます。指定した -1 は、作成されたキャンペーンの実際の ID に自動的に置き換えられます。

一時的なリソース名を使用する場合は、次の点に注意してください。

  • 一時的なリソース名は、リソースで定義された後でのみ使用できます。以下の例では、オペレーションのリストで、広告グループのオペレーションの後に広告グループのオペレーションを表示する必要があります。
  • 一時的なリソース名は、ジョブまたは変更リクエスト間では記憶されません。前のジョブまたは変更リクエストで作成したリソースを参照するには、実際のリソース名を使用します。
  • 単一のジョブまたは変更リクエストでは、異なるリソースタイプからの場合でも、各一時リソース名は一意の負の数を使用する必要があります。一時 ID が単一のジョブまたは変更リクエストで再利用されると、エラーが返されます。

上記の状況の具体的な例で、キャンペーン、広告グループ、広告を 1 つの API リクエストに追加する例を示します。リクエストの構造は次のようなものになります。

mutate_operations: [
  {
    campaign_operation: {
      create: {
        resource_name: "customers/<YOUR_CUSTOMER_ID>/campaigns/-1",
        ...
      }
    }
  },
  {
    ad_group_operation: {
      create: {
        resource_name: "customers/<YOUR_CUSTOMER_ID>/adGroups/-2",
        campaign: "customers/<YOUR_CUSTOMER_ID>/campaigns/-1"
        ...
      }
    }
  },
  {
    ad_group_ad_operation: {
      create: {
        ad_group: "customers/<YOUR_CUSTOMER_ID>/adGroups/-2"
        ...
      }
    }
  },
]

広告グループには新しい一時 ID が使用されます。キャンペーンで使用した -1 は再利用できないため、この広告グループの作成時に広告グループも参照します。広告グループ自体は、リクエストの以前のオペレーションでキャンペーンのために設定したリソース名を参照します。一方、ad_group_ad_operationresource_name は、それ以上のオペレーションが参照されていないため、は必要ありません。