Google Ads API では、Google 広告アカウントを他のサービス アカウントにリンクできます。 このガイドでは、バージョン v16 の API を使用してアカウントをリンクする方法について説明します。
アカウントをリンクする方法
Google 広告アカウントを別のサービス アカウントにリンクする方法は 2 つあります。
招待フロー
招待フローは、Google 広告アカウントの管理者権限はあっても、サービス アカウントの管理者権限がない場合に使用されます。このフローは、次の 2 つのシナリオで機能します。
- この 2 つのアカウントをリンクし、サービス アカウントの管理者宛ての招待状を作成します。サービス アカウント管理者が招待を承認し、アカウントのリンクプロセスを完了します。
- サービス アカウントの管理者が 2 つのアカウントをリンクすることを希望していますが、Google 広告アカウントへのアクセス権がありません。サービス アカウントの管理者が招待を作成し、招待を承諾してリンク処理を完了します。
このシナリオでは、次の方法が使用されます。
シナリオ | アクション | 備考 |
---|---|---|
シナリオ 1 | 招待状を作成する |
ProductLinkInvitationService.CreateProductLinkInvitation メソッドを使用して招待を作成します。
ProductLinkInvitation の status は設定しないでください。API 呼び出しが正常に完了すると、Google Ads API サーバーはこの値を REQUESTED に設定します。 |
招待のステータスを調べる | GoogleAdsService.Search または GoogleAdsService.SearchStream を使用して product_link_invitation リソースをクエリし、そのステータスを調べます。 |
|
シナリオ 2 | 招待状を取得する | GoogleAdsService.Search または GoogleAdsService.SearchStream を使用して、product_link_invitation リソースをクエリします。保留中の招待を承諾または拒否するには、
status = PENDING_APPROVAL をフィルタします。 |
招待を承諾または拒否する |
ProductLinkInvitationService.UpdateProductLinkInvitation メソッドを使用して、
ProductLinkInvitation のステータスを ACCEPTED または REJECTED に更新します。 |
|
招待を取り消す |
ProductLinkInvitationService.RemoveProductLinkInvitation メソッドを使用して、既存の
ProductLinkInvitation を取り消します。 |
このワークフローでは、次の一般的なエラーがスローされる可能性があります。
エラーコード | 解説 |
---|---|
ProductLinkInvitationError.PERMISSION_DENIED |
お客様にはこの操作を行う権限がありません。 |
ProductLinkError.NO_INVITATION_REQUIRED |
このユーザーはすでに招待されたアカウントの管理者権限を持つため、招待を作成できませんでした。ユーザーは ProductLinkService を使用して、有効なリンクを直接作成する必要があります。 |
直接リンクのフロー
直接リンクのフローは、Google 広告アカウントとサービス アカウントの両方の管理者権限がある場合に使用されます。この場合、招待状を送信するのではなく、Google 広告アカウントをサービス アカウントに直接リンクします。
このシナリオでは、次の方法が使用されます。
アクション | 備考 |
---|---|
有効なリンクを作成する |
ProductLinkService.createProductLink を使用して ProductLink を作成します。 |
有効なリンクを無効にする | アクティブな ProductLink を削除するには、
ProductLinkService.removeProductLink を使用します。 |
アクティブなリンクを取得する |
GoogleAdsService.Search または GoogleAdsService.SearchStream を使用して、
product_link リソースをクエリします。 |
このワークフローでは、次の一般的なエラーがスローされることがあります。
エラーコード | 解説 |
---|---|
ProductLinkError.CREATION_NOT_PERMITTED |
直接リンクフローを使用してアカウント リンクが試行されましたが、権限がないためサポートされていません。ユーザーは、代わりに ProductLinkInvitationService を使用して招待フローを行う必要があります。
|
ProductLinkError.INVITATION_EXISTS |
保留中の招待がすでに存在するため、リンクを作成できません。 |
AccountLinkService と MerchantCenterLinkService の変更
過去に MerchantCenterLinkService または AccountLinkService を使用して Google 広告アカウントを別のサービス アカウントにリンクしていた場合は、既存のアプリケーションを前述のワークフローのいずれかに移行する必要があります。次の表に移行ステータスを示します。
リンク タイプ | 新しいサービスでのサポート | サポート提供開始日: | 備考 |
---|---|---|---|
DataPartnerIdentifier |
○ | v15 | MerchantCenterLinkService から移行する |
GoogleAdsIdentifier |
○ | v16 | AccountLinkService から移行する |
MerchantCenterIdentifier |
○ | v16 | AccountLinkService から移行する |
AdvertisingPartnerIdentifier |
○ | v16 | AccountLinkService から移行する |
ThirdPartyAppAnalyticsLinkIdentifier |
× | – | AccountLinkService を引き続き使用する |