2013-03-21 67 views
7

嘗試使用CMS帳戶獲取youtube分析API數據時,出現403 Forbidden錯誤。將YouTube分析API與CMS帳戶配合使用

只是爲了確認,是一個內容管理系統帳戶同樣的事情作爲一個服務帳戶?

我可以得到由該用戶的oauth2擁有渠道的分析數據,但我得到的,我有機會通過我的CMS帳戶,但我不是的內容所有者的任何其他渠道403。 (我有CMS帳戶上的管理員帳戶級別和渠道,我得到403錯誤上有「託管」關係)

問題:是否有任何計劃讓youtube.analytics api支持查詢CMS帳戶下管理的渠道?

看來,因爲我可以使用該帳戶來獲取所有這些頻道使用CMS的用戶界面,我應該能夠使用API​​做同樣的分析數據。

回答

10

YouTube內容管理系統帳戶是不一樣的事,作爲一個Service Account。由於該服務帳戶無法訪問任何實際的YouTube頻道,因此如果您認證爲服務帳戶,則無法使用YouTube API。然而,認證爲CMS帳戶會給你想要的。

很多這個最近做了它投入生產,所以讓我奠定了在這裏的全部步驟,解釋與YouTube CMS訪問人怎麼能運行對他們管理的頻道和視頻的YouTube Analytics(分析)API的報告。

(可選)雖然通過OAuth 2作爲CMS帳戶的授權,同時使用https://www.googleapis.com/auth/youtube.readonlyhttps://www.googleapis.com/auth/youtubepartner範圍,使YouTube數據API V3 channels.list()調用以下參數:part=snippet,contentDetailsmanagedByMe=truemaxResults=50onBehalfOfContentOwner=CONTENT_OWNER_IDCONTENT_OWNER_ID是您必須在此處進行硬編碼的一個值,並且應將其設置爲您的YouTube CMS帳戶的「合作伙伴代碼」。這會讓您返回CMS帳戶管理的最多50個頻道的列表。 (如果您需要超過50個,則需要翻閱結果。)每個頻道的ID將返回channel.id以及其他有用信息(如上傳列表ID,如果您想獲取視頻列表在該頻道中)也將被退回。

如果您已經知道要運行報告的渠道的UC...渠道ID,則可以跳過該步驟直接轉到Analytics報告。

要在管理通道運行通道電平報告,同時授權爲CMS帳戶,請與下面的參數YouTube Analytics API requestids=contentOwner==CONTENT_OWNER_IDfilters=channel==UC...,然後任何其他報表參數你想要的。

要運行視頻級報告,請設置ids=contentOwner==CONTENT_OWNER_IDfilters=video==VIDEO_ID,其中VIDEO_ID是CMS帳戶管理的任何頻道中的任何視頻的ID。

大約有內容所有者報告in the docs更多細節。

+0

Jeff,非常感謝您澄清CMS與服務帳戶問題以及查詢分析API爲CMS帳戶的所有詳細信息。這會幫助我很多。 – kk64738 2013-03-28 06:28:42

+0

Jeff,剛剛在此處發佈了後續問題:(http://stackoverflow.com/q/15822889/2194129)非常感謝您是否有任何想法? – kk64738 2013-04-04 22:34:51

相關問題