Google Ads API では、Google 広告アカウントを他のプロダクト アカウントにリンクできます。このガイドでは、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 に更新します。 |
|
招待を取り消す | 既存の
ProductLinkInvitation を取り消すには、
ProductLinkInvitationService.RemoveProductLinkInvitation メソッドを使用します。 |
このワークフローでは、次の一般的なエラーが発生する可能性があります。
エラーコード | 説明 |
---|---|
ProductLinkInvitationError.PERMISSION_DENIED |
お客様には、この操作を実行する権限がありません。 |
ProductLinkError.NO_INVITATION_REQUIRED |
ユーザーは招待されたアカウントの管理者権限をすでに持っているため、招待を作成できませんでした。ユーザーは ProductLinkService を使用して、アクティブなリンクを直接作成する必要があります。 |
直接リンク フロー
直接リンク フローは、Google 広告アカウントとサービス アカウントの両方に管理者権限がある場合に使用されます。この場合、招待状を送信するのではなく、Google 広告アカウントをプロダクト アカウントに直接リンクします。
このシナリオでは、次のメソッドが使用されます。
アクション | 備考 |
---|---|
アクティブ リンクを作成する |
ProductLinkService.createProductLink を使用して ProductLink を作成します。 |
アクティブなリンクを無効にする |
ProductLinkService.removeProductLink を使用して、アクティブな ProductLink を削除します。 |
アクティブなリンクを取得する |
GoogleAdsService.Search または GoogleAdsService.SearchStream を使用して、
product_link リソースをクエリします。 |
このワークフローでは、次の一般的なエラーが発生する可能性があります。
エラーコード | 説明 |
---|---|
ProductLinkError.CREATION_NOT_PERMITTED |
直接リンク フローを使用してアカウント リンクが試みられましたが、権限がないためサポートされていません。代わりに ProductLinkInvitationService を使用して招待フローを行う必要があります。 |
ProductLinkError.INVITATION_EXISTS |
保留中の招待がすでに存在するため、リンクを作成できません。 |
AccountLinkService
の変更
AccountLinkService
を使用して Google 広告アカウントを別のプロダクト アカウントにリンクする場合は、既存のアプリケーションを前述のワークフローのいずれかに移行する必要があります。次のリンクタイプについては、AccountLinkService
から移行して ProductLinkService
を使用します。
GoogleAdsIdentifier
MerchantCenterIdentifier
AdvertisingPartnerIdentifier
ThirdPartyAppAnalyticsLinkIdentifier
には、引き続き AccountLinkService
を使用します。