164

このページの Google アナリティクスのステップバイステップ ガイドに基づいて、スクリプトを作成しています。

https://developers.google.com/analytics/resources/tutorials/hello-analytics-api

データにアクセスしようとするまで、認証は問題なく行われます。戻りコードは 403 で、エラー メッセージは次のとおりです。

ユーザーは Google アナリティクス アカウントを持っていません

このメッセージは意味がありません。私のアカウントには複数の Web サイトを追跡する Google アナリティクス データがあり、Web ブラウザーから問題なくアクセスできます。Google API コンソールから Analytics API を許可しました。API アクセスで適切なデータが得られます。

4

15 に答える 15

340

私もこの問題を抱えていました。アクセスしたいGoogleAnalyticsプロファイルにサービスアカウントのメールアドレスを追加して修正しました。

Google APIコンソールの[APIアクセス]タブで、サービスアカウントのメールアドレス(xxxxxx@developer.gserviceaccount.comなど)を取得しました。

次に、Analyticsプロファイルにメールアドレスを追加するためのGoogleの指示に従いました。これで、すべてが期待どおりに機能しています。

幸運を!

于 2012-10-31T21:53:05.730 に答える
9

上記のコメントに記載されていますが、アカウントのユーザー管理にメールアドレスを追加すると機能しません。画面の表示部分の下にある [ユーザー管理] をクリックする必要があります。

ここに画像の説明を入力

于 2016-08-25T13:52:58.653 に答える
5

https://console.cloud.google.com/apis/credentialsに移動します

「サービス アカウント」のメールアドレスをコピーします。

ここに画像の説明を入力

Google アナリティクスを開き、上記のメールを新しいユーザーとして追加します。

于 2020-10-28T20:51:32.320 に答える
4

認証しようとしている Google アカウントでログインしたことがない場合にも、このエラーが発生します。

于 2013-03-23T15:20:12.977 に答える
1

403 エラーが発生していました。これらの手順により、私はそれを回避しました。明確にするために、私はGoogleのサンプル「HelloAnalytics.php」をOAuthで動作させようとしていました(ユーザー操作なし、cronジョブなどに適しています)。

Analytics API を有効にした後、APIs & Auth/Credentials の下に新しい「サービス アカウント」を作成しました。.p12 キーペアを保存しました。次に、Analytics ユーザー管理コンソールに移動し、そのサービス ユーザーのメール アドレスを追加しました。

権限リストで読み取りと分析」のみをチェックすると、PHP API を使用した .p12 認証が機能します。「ユーザーの管理」および/または「編集」を追加すると、403 が表示されます。

于 2015-09-15T22:25:46.197 に答える
0

私もこの問題を抱えていましたが、問題は私があまりにも多くの許可を要求したことであることがわかりました。開発者コンソールは、http://www.googleapis.com/auth/analytics http://www.googleapis.com/auth/analytics.readonlyパーミッションの両方を要求するように指示します。クレームも使用していた場合、これは機能しませんでしたsub。クレームは、別のユーザー(私の場合は、サービス アカウントを所有する Google アカウント) に代わっsubて動作するアクセス トークンを発行するよう Google に指示します。私は許可を削除し、サブクレームに固執しました:analyticsanalytics.readonly

{
  "iss":"123123123123123-xxxxxxxxxxxxxxxxxxxxxxxx@developer.gserviceaccount.com",
  "sub":"me.example@gmail.com"
  "scope":"http://www.googleapis.com/auth/analytics",
  ...
}

発行された Bearer トークンを使用すると、完全に異なる Google アカウントが所有しているが、私の gmail ユーザー (me.example@gmail.com) と共有 (読み取り専用) されているプロファイルに対して、(少なくともいくつかの) Google アナリティクス クエリを実行できます。 .

于 2014-08-01T21:38:20.893 に答える
0

The problem happens since we dont provide a "sub" argument. Unless we provide this, the call happens on behalf of that long service account email.

So just provide a sub argument, with an email which you already have given access in the report and things should work well!

于 2015-03-02T06:00:49.643 に答える
0

私はそれを確認することでこれを修正することができました

client = Google::APIClient.new(:application_name => 'X',:application_version => '1')

上記のアプリケーション名変数 'X は、アクセスしたいサイトの実際の URL である PROPERTY 名ではなく、GA ダッシュボードの ACCOUNT 名でした。

紛らわしいですが、ありがたいことに修正されました(Googleに感謝しません!)

于 2014-09-11T15:50:17.500 に答える