1

Google アナリティクスからデータをインポートしたい。

var gas = new AnalyticsService(auth);

var r = gas.Data.Ga.Get("ga:6332XXXX", "2013-02-01", "2013-02-11", "ga:visits");

r.Dimensions = "ga:date";
r.Sort = "ga:visits";
r.StartIndex = 1;

var data = r.Fetch();

Fetch メソッドで 400 bad request エラーが発生します。私のコードの何が間違っていますか?

次のような私の完全なコード:

var scope = AnalyticsService.Scopes.AnalyticsReadonly.ToString();
var clientId = "--------.apps.googleusercontent.com";
var keyFile = @"C:\-----------------privatekey.p12";
var keyPassword = "notasecret";

var desc = GoogleAuthenticationServer.Description;

var key = new X509Certificate2(keyFile, keyPassword, X509KeyStorageFlags.Exportable);

var client = new AssertionFlowClient(desc, key)
{
    ServiceAccountId = clientId,
    Scope = scope
};

var auth = new OAuth2Authenticator<AssertionFlowClient>(client, AssertionFlowClient.GetState);

var gas = new AnalyticsService(auth);

var r = gas.Data.Ga.Get("ga:6332XXXX", "2013-02-01", "2013-02-11", "ga:visits");

r.Dimensions = "ga:date";
r.Sort = "ga:visits";
r.StartIndex = 1;

var data = r.Fetch();

ご関心をお寄せいただきありがとうございます。

4

1 に答える 1

1

いくつかのアイデア:

  1. clientId は、サービス アカウントの電子メール (ID ではない) にする必要があります。
  2. スコープは「https://www.googleapis.com/auth/analytics.readonly」にする必要があります

これが機能しない場合は、@Martyn の回答を確認してください

于 2013-09-19T05:25:10.370 に答える