YouTube Content ID 服務可讓您在 Apps Script 中使用 YouTube Content ID API。開發人員可透過這個 API,直接與 YouTube 的 Content ID 著作權管理系統互動。YouTube 合作夥伴可使用這項 API 建立及管理資產、著作權聲明和廣告活動。
參考資料
如要進一步瞭解這項服務,請參閱公開版 YouTube Content ID API 的參考說明文件。與 Apps Script 中的所有進階服務一樣,進階 YouTube Content ID 服務使用的物件、方法和參數都與公開 API 相同。詳情請參閱「如何判斷方法簽章」。
/** * This function creates a partner-uploaded claim on a video with the specified * asset and policy rules. * @see https://developers.google.com/youtube/partner/docs/v1/claims/insert */functionclaimYourVideoWithMonetizePolicy(){// The ID of the content owner that you are acting on behalf of.constonBehalfOfContentOwner='replaceWithYourContentOwnerID';// A YouTube video ID to claim. In this example, the video must be uploaded// to one of your onBehalfOfContentOwner's linked channels.constvideoId='replaceWithYourVideoID';constassetId='replaceWithYourAssetID';constclaimToInsert={'videoId':videoId,'assetId':assetId,'contentType':'audiovisual',// Set the claim policy to monetize. You can also specify a policy ID here// instead of policy rules.// For details, please refer to the YouTube Content ID API Policies// documentation:// https://developers.google.com/youtube/partner/docs/v1/policies'policy':{'rules':[{'action':'monetize'}]}};try{constclaimInserted=YouTubeContentId.Claims.insert(claimToInsert,{'onBehalfOfContentOwner':onBehalfOfContentOwner});console.log('Claim created on video %s: %s',videoId,claimInserted);}catch(e){console.log('Failed to create claim on video %s, error: %s',videoId,e.message);}}
/** * This function updates your onBehalfOfContentOwner's ownership on an existing * asset. * @see https://developers.google.com/youtube/partner/docs/v1/ownership/update */functionupdateAssetOwnership(){// The ID of the content owner that you are acting on behalf of.constonBehalfOfContentOwner='replaceWithYourContentOwnerID';// Replace values with your asset idconstassetId='replaceWithYourAssetID';// The new ownership here would replace your existing ownership on the asset.constmyAssetOwnership={'general':[{'ratio':100,'owner':onBehalfOfContentOwner,'type':'include','territories':['US','CA']}]};try{constupdatedOwnership=YouTubeContentId.Ownership.update(myAssetOwnership,assetId,{'onBehalfOfContentOwner':onBehalfOfContentOwner});console.log('Ownership updated on asset %s: %s',assetId,updatedOwnership);}catch(e){console.log('Ownership update failed on asset %s, error: %s',assetId,e.message);}}
/** * This function releases an existing claim your onBehalfOfContentOwner has * on a video. * @see https://developers.google.com/youtube/partner/docs/v1/claims/patch */functionreleaseClaim(){// The ID of the content owner that you are acting on behalf of.constonBehalfOfContentOwner='replaceWithYourContentOwnerID';// The ID of the claim to be released.constclaimId='replaceWithYourClaimID';// To release the claim, change the resource's status to inactive.constclaimToBeReleased={'status':'inactive'};try{constclaimReleased=YouTubeContentId.Claims.patch(claimToBeReleased,claimId,{'onBehalfOfContentOwner':onBehalfOfContentOwner});console.log('Claim %s was released: %s',claimId,claimReleased);}catch(e){console.log('Failed to release claim %s, error: %s',claimId,e.message);}}