Channels: update

ตอนนี้ API รองรับความสามารถในการทำเครื่องหมายช่องหรือ วิดีโอของคุณเป็น "สร้างมาเพื่อเด็ก" แล้ว นอกจากนี้ channel และ video ทรัพยากรยังมีพร็อพเพอร์ตี้ที่ระบุสถานะ "สร้างมาเพื่อเด็ก" ของช่องหรือวิดีโอนั้นๆ ด้วย นอกจากนี้ เรายังได้อัปเดตข้อกำหนดในการให้บริการของบริการ API ของ YouTube และนโยบายสำหรับนักพัฒนาแอป เมื่อวันที่ 10 มกราคม 2020 ดูข้อมูลเพิ่มเติมได้ที่ประวัติการแก้ไขสำหรับ บริการ YouTube Data API และ ข้อกำหนดในการให้บริการของบริการ API ของ YouTube

อัปเดตข้อมูลเมตาของช่อง โปรดทราบว่าเมธอดนี้รองรับการอัปเดตเฉพาะออบเจ็กต์ brandingSettings, invideoPromotion และ localizations ของทรัพยากร channel รวมถึงพร็อพเพอร์ตี้ย่อยของออบเจ็กต์เหล่านั้น

ผลกระทบต่อโควต้า: การเรียกเมธอดนี้มีค่าใช้จ่ายโควต้า 50 หน่วย

กรณีการใช้งานทั่วไป

ส่งคำขอ

คำขอ HTTP

PUT https://www.googleapis.com/youtube/v3/channels

การให้สิทธิ์

คำขอนี้ต้องมีการให้สิทธิ์ที่มีขอบเขตอย่างน้อย 1 รายการต่อไปนี้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการตรวจสอบสิทธิ์และการให้สิทธิ์ได้ที่ การใช้การให้สิทธิ์ OAuth 2.0

ขอบเขต
https://www.googleapis.com/auth/youtubepartner
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

พารามิเตอร์

ตารางต่อไปนี้แสดงพารามิเตอร์ที่การค้นหานี้รองรับ พารามิเตอร์ทั้งหมดที่แสดงเป็นพารามิเตอร์การค้นหา

พารามิเตอร์
พารามิเตอร์ที่จำเป็น
part string
พารามิเตอร์ part มีไว้เพื่อวัตถุประสงค์ 2 อย่างในการดำเนินการนี้ โดยจะระบุพร็อพเพอร์ตี้ที่การดำเนินการเขียนจะตั้งค่า รวมถึงพร็อพเพอร์ตี้ที่การตอบกลับจาก API จะรวมไว้

API อนุญาตให้ตั้งค่าค่าพารามิเตอร์เป็น brandingSettings, invideoPromotion หรือ localizations เท่านั้น (คุณอัปเดตส่วนใดส่วนหนึ่งได้ด้วยคำขอเดียวเท่านั้น)

โปรดทราบว่าเมธอดนี้จะลบล้างค่าที่มีอยู่ของพร็อพเพอร์ตี้ที่เปลี่ยนแปลงได้ทั้งหมดซึ่งอยู่ในส่วนที่ค่าพารามิเตอร์ระบุ
พารามิเตอร์ที่ไม่บังคับ
onBehalfOfContentOwner string
พารามิเตอร์นี้ใช้ได้เฉพาะในคำขอที่ได้รับอนุญาตอย่างถูกต้อง

พารามิเตอร์ onBehalfOfContentOwner บ่งชี้ว่าผู้ใช้ที่ตรวจสอบสิทธิ์แล้วกำลังดำเนินการในนามของเจ้าของเนื้อหาที่ระบุไว้ในค่าพารามิเตอร์ พารามิเตอร์นี้มีไว้สำหรับพาร์ทเนอร์เนื้อหาของ YouTube ที่เป็นเจ้าของและจัดการช่อง YouTube หลายช่อง ซึ่งช่วยให้เจ้าของเนื้อหาตรวจสอบสิทธิ์ได้เพียงครั้งเดียวและเข้าถึงข้อมูลวิดีโอและช่องทั้งหมดได้โดยไม่ต้องระบุข้อมูลรับรองการตรวจสอบสิทธิ์สำหรับแต่ละช่อง บัญชี CMS จริงที่ผู้ใช้ใช้ตรวจสอบสิทธิ์ต้องลิงก์กับเจ้าของเนื้อหาของ YouTube ที่ระบุ

คุณต้องระบุพารามิเตอร์นี้หากคำขอได้รับการตรวจสอบสิทธิ์ด้วยข้อมูลเข้าสู่ระบบของผู้ใช้เจ้าของเนื้อหา CMS ที่ดำเนินการในช่องที่จัดการ หากไม่ระบุ ระบบจะดำเนินการคำขอในบริบทโดยตรงของผู้ใช้ที่ตรวจสอบสิทธิ์แล้วและแสดงข้อผิดพลาด HTTP 403 Forbidden

เนื้อความของคำขอ

ระบุทรัพยากร channel ในเนื้อความของคำขอ สำหรับทรัพยากรดังกล่าว ให้ทำดังนี้

  • คุณต้องระบุค่าสำหรับพร็อพเพอร์ตี้ต่อไปนี้

    • id
  • คุณตั้งค่าสำหรับพร็อพเพอร์ตี้ต่อไปนี้ได้

    • brandingSettings.channel.country
    • brandingSettings.channel.description
    • brandingSettings.channel.defaultLanguage
    • brandingSettings.channel.keywords
    • brandingSettings.channel.trackingAnalyticsAccountId
    • brandingSettings.channel.unsubscribedTrailer
    • localizations.(key)
    • localizations.(key).title
    • localizations.(key).description
    • status.selfDeclaredMadeForKids

    หากคุณส่งคำขออัปเดตและคำขอไม่ได้ระบุค่าสำหรับพร็อพเพอร์ตี้ที่มีค่าอยู่แล้ว ระบบจะลบค่าที่มีอยู่ของพร็อพเพอร์ตี้นั้น

คำตอบ

หากทำสำเร็จ เมธอดนี้จะแสดงผลทรัพยากร channel ในเนื้อความของการตอบกลับ

ข้อผิดพลาด

ตารางต่อไปนี้ระบุข้อความแสดงข้อผิดพลาดที่ API อาจแสดงผลเพื่อตอบสนองต่อการเรียกเมธอดนี้ ดูรายละเอียดเพิ่มเติมได้ที่ YouTube Data API - ข้อผิดพลาด

ประเภทข้อผิดพลาด รายละเอียดข้อผิดพลาด คำอธิบาย
badRequest (400) brandingValidationError ค่าใดค่าหนึ่งในออบเจ็กต์ brandingSettings ไม่ผ่านการตรวจสอบ ใช้เมธอด channels.list เพื่อดึงข้อมูลการตั้งค่าที่มีอยู่สำหรับช่อง แล้วอัปเดตค่าพร็อพเพอร์ตี้ตามหลักเกณฑ์ในเอกสารประกอบทรัพยากร channels
badRequest (400) channelTitleUpdateForbidden เมื่ออัปเดต brandingSettings part ของช่อง คุณต้องตั้งค่าพร็อพเพอร์ตี้ brandingSettings.channel.title เป็นชื่อปัจจุบันของช่อง หรือไม่ระบุพร็อพเพอร์ตี้นั้น API จะแสดงข้อผิดพลาดหากคุณเปลี่ยนค่าของพร็อพเพอร์ตี้
badRequest (400) defaultLanguageNotSetError คุณต้องตั้งค่า defaultLanguage เพื่ออัปเดต localizations
badRequest (400) invalidBrandingOption การตั้งค่าแบรนด์ที่คุณระบุไม่มีอยู่ ใช้เมธอด channels.list เพื่อดึงข้อมูลค่าที่ถูกต้อง แล้วอัปเดตค่าเหล่านั้นตามหลักเกณฑ์ในเอกสารประกอบทรัพยากร channels
badRequest (400) invalidCustomMessage ข้อมูลเมตาของคำขอระบุข้อความที่กำหนดเองที่ไม่ถูกต้อง ตรวจสอบค่าของพร็อพเพอร์ตี้ invideoPromotion.items[].customMessage ในทรัพยากรที่คำขอส่ง
badRequest (400) invalidDuration ข้อมูลเมตาของคำขอระบุระยะเวลาที่ไม่ถูกต้องในส่วน invideoPromotion
badRequest (400) invalidDuration ข้อมูลเมตาของคำขอระบุประเภทตำแหน่งที่ไม่ถูกต้องเพื่อกำหนดวิธีจัดตำแหน่งรายการที่โปรโมตในวิดีโอเพลเยอร์ ตรวจสอบค่าของพร็อพเพอร์ตี้ invideoPromotion.position.type ในทรัพยากรที่คำขอส่ง
badRequest (400) invalidRecentlyUploadedBy ข้อมูลเมตาของคำขอระบุรหัสช่องที่ไม่ถูกต้อง ตรวจสอบค่าของพร็อพเพอร์ตี้ invideoPromotion.items[].id.recentlyUploadedBy ในทรัพยากรที่คำขอส่ง
badRequest (400) invalidTimingOffset ข้อมูลเมตาของคำขอระบุออฟเซ็ตเวลาที่ไม่ถูกต้องในส่วน invideoPromotion
badRequest (400) invalidTimingOffset ข้อมูลเมตาของคำขอระบุออฟเซ็ตเวลาที่ไม่ถูกต้องเพื่อกำหนดเวลาที่ควรแสดงรายการที่โปรโมตในวิดีโอเพลเยอร์ ตรวจสอบค่าของพร็อพเพอร์ตี้ invideoPromotion.timing.offsetMs ในทรัพยากรที่คำขอส่ง
badRequest (400) invalidTimingType ข้อมูลเมตาของคำขอระบุวิธีการกำหนดเวลาที่ไม่ถูกต้องเพื่อกำหนดเวลาที่ควรแสดงรายการที่โปรโมตในวิดีโอเพลเยอร์ ตรวจสอบค่าของพร็อพเพอร์ตี้ invideoPromotion.timing.type ในทรัพยากรที่คำขอส่ง
badRequest (400) localizationValidationError ค่าใดค่าหนึ่งในออบเจ็กต์ localizations ไม่ผ่านการตรวจสอบ ใช้เมธอด channels.list เพื่อดึงข้อมูลค่าที่ถูกต้อง แล้วอัปเดตค่าเหล่านั้นตามหลักเกณฑ์ใน เอกสารประกอบทรัพยากร channels
badRequest (400) tooManyPromotedItems จำนวนรายการที่โปรโมตที่อนุญาตเกินในส่วน invideoPromotion
forbidden (403) channelForbidden ช่องที่ระบุในพารามิเตอร์ id ไม่รองรับคำขอ หรือคำขอไม่ได้รับอนุญาตอย่างถูกต้อง
forbidden (403) promotedVideoNotAllowed ไม่พบช่องที่คำขอ API พยายามอัปเดต ตรวจสอบค่าของพร็อพเพอร์ตี้ id ในทรัพยากร channel ที่คำขอส่งเพื่อให้แน่ใจว่ารหัสช่องถูกต้อง
forbidden (403) websiteLinkNotAllowed ไม่อนุญาต URL ของเว็บไซต์ที่ระบุ
notFound (404) channelNotFound ไม่พบช่องที่ระบุในพารามิเตอร์ id
notFound (404) channelNotFound ไม่พบช่องที่ระบุโดยพารามิเตอร์ id หรือช่องดังกล่าวไม่มีตัวเลือกการสร้างแบรนด์
notFound (404) unknownChannelId ไม่พบรหัสช่องที่ระบุ
notFound (404) unknownChannelId ไม่พบรหัสช่อง recentlyUploadedBy ที่ระบุ
notFound (404) unknownVideoId ไม่พบรหัสวิดีโอที่ระบุเป็นรายการที่โปรโมต
required (400) requiredItemIdType ข้อมูลเมตาของคำขอต้องระบุประเภทรายการในส่วน invideoPromotion
required (400) requiredItemId ข้อมูลเมตาของคำขอต้องระบุรหัสสินค้าในส่วน invideoPromotion
required (400) requiredTimingOffset ข้อมูลเมตาของคำขอต้องระบุออฟเซ็ตเวลาเริ่มต้นเพื่อให้ YouTube กำหนดเวลาที่จะแสดงรายการที่โปรโมตได้ ตั้งค่าพร็อพเพอร์ตี้ invideoPromotion.defaultTiming.offsetMs ในทรัพยากรที่คำขอส่ง
required (400) requiredTimingOffset ข้อมูลเมตาของคำขอต้องระบุออฟเซ็ตเวลาเพื่อให้ YouTube กำหนดเวลาที่จะแสดงรายการที่โปรโมตได้ ตั้งค่าพร็อพเพอร์ตี้ invideoPromotion.timing.offsetMs ในทรัพยากรที่คำขอส่ง
required (400) requiredTimingType ข้อมูลเมตาของคำขอต้องระบุวิธีการกำหนดเวลาเพื่อให้ YouTube กำหนดเวลาที่จะแสดงรายการที่โปรโมตได้ ตั้งค่าพร็อพเพอร์ตี้ invideoPromotion.defaultTiming.type ในทรัพยากรที่คำขอส่ง
required (400) requiredTimingType ข้อมูลเมตาของคำขอต้องระบุวิธีการกำหนดเวลาเพื่อให้ YouTube กำหนดเวลาที่จะแสดงรายการที่โปรโมตได้ ตั้งค่าพร็อพเพอร์ตี้ invideoPromotion.timing.type ในทรัพยากรที่คำขอส่ง
required (400) requiredTiming ข้อมูลเมตาของคำขอต้องระบุเวลาสำหรับแต่ละรายการในส่วน invideoPromotion
required (400) requiredVideoId ข้อมูลเมตาของคำขอต้องระบุรหัสวิดีโอเพื่อระบุรายการที่โปรโมต
required (400) requiredWebsiteUrl ข้อมูลเมตาของคำขอต้องระบุ URL ของเว็บไซต์ในส่วน invideoPromotion ตั้งค่าพร็อพเพอร์ตี้ invideoPromotion.items[].id.websiteUrl ในทรัพยากรที่คำขอส่ง

ลองใช้งาน

ใช้ APIs Explorer เพื่อเรียก API นี้และดูคำขอและการตอบกลับของ API