リソース名

Google Ads API におけるエンティティの固有識別子はリソース名と呼ばれ、予測可能な形式の文字列として表されます。リソース名の構成要素がわかっている場合は、多くの Service オブジェクトに存在するヘルパー メソッドを使用してリソース名を生成できます。

サービスパス メソッド

API で特定のタイプのオブジェクトの読み取りや変更を処理するように設計されたすべての Service には、resource_names を簡単に構築できるヘルパー メソッドがあります。たとえば、Campaign オブジェクトのリソース名を作成する場合は次のようになります。

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage()
customer_id = "7892134783"
campaign_id = "1234567890"
campaign_service = client.get_service("CampaignService")
resource_name = campaign_service.campaign_path(customer_id, campaign_id)

バージョン 10.0.0 以降のクライアント ライブラリには、resource_name を個々のセグメントに分解する parse_*_path メソッドも各サービスに付属しています。次に例を示します。

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage()
resource_name = "customers/7892134783/campaigns/1234567890"
campaign_service = client.get_service('CampaignService')
segments = campaign_service.parse_campaign_path(resource_name)
customer_id = segments["customer_id"]
campaign_id = segments["campaign_id"]

複合リソース名

バージョン 9.0.0 以降のクライアント ライブラリでは、サービスのパスヘルパーがリソース名の複合セグメントを構築します。メソッドでは、複合 ID のさまざまなセグメントを個別のパラメータとして受け取ります。

from google.ads.google_ads.client import GoogleAdsClient

customer_id = "0987654321"
ad_group_id = "1234567890"
criterion_id = "74932"

client = GoogleAdsClient.load_from_storage()
ad_group_criterion_service = client.get_service("AdGroupCriterionService")

# An AdGroupCriterion resource name that uses the above IDs looks like this:
# "customers/0987654321/adGroupCriteria/1234567890~74932"
resource_name = ad_group_criterion_service.ad_group_criterion_path(
    customer_id, ad_group_id, criterion_id
)

9.0.0 より前のバージョン

バージョン 9.0.0 より前では、サービスのパスヘルパーはリソース名の複合セグメントを作成しません。これらのセグメントは呼び出し元から提供される必要があります。クライアント ライブラリには、この作業に役立つ小さなユーティリティがあります。

from google.ads.google_ads.client import GoogleAdsClient
from google.ads.google_ads.util import ResourceName

customer_id = "0987654321"
ad_group_id = "1234567890"
criterion_id = "74932"

client = GoogleAdsClient.load_from_storage()
ad_group_criterion_service = client.get_service("AdGroupCriterionService")

# An AdGroupCriterion resource name that uses the above IDs looks like this:
# "customers/0987654321/adGroupCriteria/1234567890~74932"
composite_id = ResourceName.format_composite(ad_group_id, criterion_id)
resource_name = ad_group_criterion_service.ad_group_criterion_path(
    customer_id, composite_id
)