2

我一直在嘗試學習如何使用Google AnalyticsAPI獲取網站流量數據。我不斷遇到錯誤,指出用戶沒有權限訪問配置文件。我將服務帳戶中的電子郵件地址添加到用戶,並試圖使其成爲可以訪問所有配置文件和管理員的用戶,但都無法使用。Google Analytics API錯誤403:「用戶無權訪問配置文件」

這是我的代碼,這是我從here有:

 string scope = AnalyticsService.Scopes.AnalyticsReadonly.GetStringValue(); 
     string clientId = "[email protected]"; 
     string keyFile = @"C:\Users\emorris\Downloads\xxxxxxxxxx-privatekey.p12"; 
     string keyPassword = "notasecret"; 

     AuthorizationServerDescription desc = GoogleAuthenticationServer.Description; 

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

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

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

     AnalyticsService gas = new AnalyticsService(new BaseClientService.Initializer() { Authenticator = auth }); 

     DataResource.GaResource.GetRequest r = gas.Data.Ga.Get("ga:xxxxxx", "2013-05-01", "2013-05-31", "ga:visitors"); 

     GaData d = r.Fetch(); 

它運行到這個問題,在最後一行,它給了我:

Google.Apis.Requests.RequestError

用戶對此配置文件沒有足夠的權限。 [403]

我看了here似乎有類似的問題,但它所說的是在API控制檯中添加電子郵件作爲用戶,我這樣做。任何人都知道我需要改變什麼?

+1

您是否在您的谷歌分析中以管理員級別的用戶身份註冊了[email protected]? –

+0

是的,我試過了,它仍然給我同樣的錯誤 – Liz

回答

1

只是爲了確認 - 在原文中,您表示您在「API控制檯」中添加了電子郵件。但實際上您需要使用Google Analytics網絡界面將電子郵件添加到Google Analytics配置文件。是你做的嗎?僅當您提出請求的用戶標識不在分析概要文件中時,纔會出現此錯誤。

+0

是的,這正是我所提到的 –

+0

我現在覺得真的很愚蠢,事實證明我只是有錯誤的帳號。多謝你們! – Liz

相關問題