Channels: update

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

อัปเดตข้อมูลเมตาของช่อง โปรดทราบว่าเมธอดนี้รองรับเฉพาะการอัปเดตออบเจ็กต์ 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 ที่ระบุ

เนื้อหาของคำขอ

ระบุแหล่งข้อมูล 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 ค่าหนึ่งในออบเจ็กต์การแปลไม่ผ่านการตรวจสอบ ใช้เมธอด channels.list เพื่อดึงค่าที่ถูกต้อง และอย่าลืมอัปเดตค่าตามหลักเกณฑ์ในเอกสารประกอบเกี่ยวกับทรัพยากรของช่อง
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