0

私はGoogleアナリティクスレポートから非常に単純なデータセットを取得しようとしており、認証を取得していません。私は本当に失われています。私はAPIエクスプローラを使って私が何をしようとしているのかをテストしてきましたが、単純なバッチを行うことはできません。サービス> Google AnalyticsのレポートAPI v4の> analyticsreporting.reports.batchGetGoogle Analytics Reporting API throwing 401s

注:私は」私は、キーフィールド(OBV)

これは基本的に私は戻って送信するために取得しようとしているものですが打ち抜かましたOAuth2をやろうとしていませんが、サーバのAPIキーでこの機能を起動してください。

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet?fields=reports&key=XXX 
{ 
"reportRequests": [ 
    { 
    "dateRanges": [ 
{ 
"startDate": "2014-06-23", 
"endDate": "2016-06-23" 
} 
], 
"orderBys": [ 
{ 
"fieldName": "ga:pageviews", 
"sortOrder": "DESCENDING" 
} 
], 
"dimensions": [ 
{ 
"name": "ua:page" 
} 
] 
}, 
{ 
    "viewId": "7070072" 
} 
] 
} 

これは戻って来るものです:

{ 
    "error": { 
    "code": 401, 
    "message": "The request does not have valid authentication credentials.", 
    "status": "UNAUTHENTICATED" 
} 
} 

答えて

1

APIキーがGoogle Analytics Metadata APIのような認証されていないAPIののためのものです。 Analytics Reporting API V4には有効なOAuth tokenが必要です。このように考えると、APIキーを持つ人だけでGAデータにアクセスすることができますか? APIは、ユーザーがデータにアクセスする権限を持っていることを確認する必要があります。様々なOAuth Scenariosを読んで、あなたのユースケースに合ったものを見つけてください。

service accountで認証しているようです。問題はアナリティクスコードではなく、認証方法です。リクエストを行うには、有効なOAuthトークンを取得する必要があります。 に興味があると具体的に挙げているので、Google APIs .NET client library documentationをご覧ください。アクセスするGoogleアナリティクスビューにサービスアカウントのメールを追加する必要があります。

+0

ありがとうございました!私は実際にこれを金曜日に考え出しました(これを決して閉じませんでした)。ええ...サービスアカウントのルートに向かう。感謝します –

関連する問題