Search

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

วิธีการ

API รองรับวิธีการค้นหาต่อไปนี้

list
แสดงผลคอลเล็กชันผลการค้นหาที่ตรงกับพารามิเตอร์การค้นหาที่ระบุในคำขอ API โดยค่าเริ่มต้น ชุดผลการค้นหาจะระบุทรัพยากร video, channel และ playlist ที่ตรงกัน แต่คุณยังสามารถกำหนดค่าการค้นหาให้ดึงเฉพาะทรัพยากรประเภทที่ระบุได้ด้วย ลองเลย

การนำเสนอทรัพยากร

โครงสร้าง JSON ต่อไปนี้แสดงรูปแบบของผลการค้นหา

{
  "kind": "youtube#searchResult",
  "etag": etag,
  "id": {
    "kind": string,
    "videoId": string,
    "channelId": string,
    "playlistId": string
  },
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "thumbnails": {
      (key): {
        "url": string,
        "width": unsigned integer,
        "height": unsigned integer
      }
    },
    "channelTitle": string,
    "liveBroadcastContent": string
  }
}

พร็อพเพอร์ตี้

ตารางต่อไปนี้จะกำหนดพร็อพเพอร์ตี้ที่จะปรากฏในผลการค้นหา

พร็อพเพอร์ตี้
kind string
ระบุประเภทของทรัพยากร API ค่าจะเป็น youtube#searchResult
etag etag
Etag ของแหล่งข้อมูลนี้
id object
ออบเจ็กต์ id มีข้อมูลที่ใช้ระบุทรัพยากรที่ตรงกับคำขอการค้นหาได้โดยไม่ซ้ำกัน
id.kind string
ประเภทของทรัพยากร API
id.videoId string
หากค่าของพร็อพเพอร์ตี้ id.type คือ youtube#video พร็อพเพอร์ตี้นี้จะปรากฏ โดยค่าของพร็อพเพอร์ตี้จะมีรหัสที่ YouTube ใช้เพื่อระบุวิดีโอที่ตรงกับคำค้นหาโดยไม่ซ้ำกัน
id.channelId string
หากค่าของพร็อพเพอร์ตี้ id.type คือ youtube#channel พร็อพเพอร์ตี้นี้จะปรากฏ โดยค่าของพร็อพเพอร์ตี้จะมีรหัสที่ YouTube ใช้เพื่อระบุช่องที่ตรงกับคำค้นหาโดยไม่ซ้ำกัน
id.playlistId string
หากค่าของพร็อพเพอร์ตี้ id.type คือ youtube#playlist พร็อพเพอร์ตี้นี้จะปรากฏ โดยค่าของพร็อพเพอร์ตี้จะมีรหัสที่ YouTube ใช้เพื่อระบุเพลย์ลิสต์ที่ตรงกับคำค้นหาโดยไม่ซ้ำกัน
snippet object
ออบเจ็กต์ snippet มีรายละเอียดพื้นฐานเกี่ยวกับผลการค้นหา เช่น ชื่อหรือคำอธิบาย เช่น หากผลการค้นหาเป็นวิดีโอ ชื่อก็จะเป็นชื่อของวิดีโอ และคำอธิบายจะเป็นคำอธิบายของวิดีโอ
snippet.publishedAt datetime
วันที่และเวลาที่สร้างทรัพยากรที่ผลการค้นหาระบุ ค่าจะระบุไว้ในรูปแบบ ISO 8601
snippet.channelId string
ค่าที่ YouTube ใช้เพื่อระบุช่องที่เผยแพร่แหล่งข้อมูลที่ผลการค้นหาระบุโดยไม่ซ้ำกัน
snippet.title string
ชื่อของผลการค้นหา
snippet.description string
คำอธิบายผลการค้นหา
snippet.thumbnails object
แผนที่ภาพขนาดย่อที่เชื่อมโยงกับผลการค้นหา สำหรับวัตถุแต่ละรายการในแผนที่ คีย์คือชื่อของภาพขนาดย่อ และค่าคือวัตถุที่มีข้อมูลอื่นๆ เกี่ยวกับภาพขนาดย่อ
snippet.thumbnails.(key) object
คีย์-ค่าที่ใช้ได้มีดังนี้
  • default – ภาพขนาดย่อเริ่มต้น ภาพขนาดย่อเริ่มต้นของวิดีโอหรือทรัพยากรที่อ้างอิงไปยังวิดีโอ เช่น รายการเพลย์ลิสต์หรือผลการค้นหา มีความกว้าง 120px และสูง 90px ภาพขนาดย่อเริ่มต้นของช่องคือกว้าง 88 พิกเซลและสูง 88 พิกเซล
  • medium – ภาพปกเวอร์ชันที่มีความละเอียดสูงกว่า สำหรับวิดีโอ (หรือทรัพยากรที่อ้างถึงวิดีโอ) รูปภาพนี้จะกว้าง 320px และสูง 180px สำหรับช่อง รูปภาพนี้จะกว้าง 240 พิกเซลและสูง 240 พิกเซล
  • high – รูปภาพขนาดย่อเวอร์ชันความละเอียดสูง สำหรับวิดีโอ (หรือทรัพยากรที่อ้างถึงวิดีโอ) รูปภาพนี้จะกว้าง 480 พิกเซล และสูง 360 พิกเซล สำหรับช่อง รูปภาพนี้จะกว้าง 800 พิกเซลและสูง 800 พิกเซล
  • standard – รูปภาพขนาดย่อเวอร์ชันความละเอียดที่สูงกว่ารูปภาพความละเอียด high ภาพนี้พร้อมใช้งานสำหรับบางวิดีโอและแหล่งข้อมูลอื่นๆ ที่อ้างถึงวิดีโอ เช่น รายการเพลย์ลิสต์หรือผลการค้นหา รูปภาพนี้กว้าง 640 พิกเซลและสูง 480 พิกเซล
  • maxres – ภาพปกเวอร์ชันที่มีความละเอียดสูงสุด ขนาดภาพนี้ใช้ได้กับวิดีโอบางรายการและทรัพยากรอื่นๆ ที่อ้างถึงวิดีโอ เช่น รายการเพลย์ลิสต์หรือผลการค้นหา รูปภาพนี้กว้าง 1280 พิกเซลและสูง 720 พิกเซล
snippet.thumbnails.(key).url string
URL ของรูปภาพ
snippet.thumbnails.(key).width unsigned integer
ความกว้างของรูปภาพ
snippet.thumbnails.(key).height unsigned integer
ความสูงของรูปภาพ
snippet.channelTitle string
ชื่อช่องที่เผยแพร่แหล่งข้อมูลที่ผลการค้นหาระบุ
snippet.liveBroadcastContent string
ตัวบ่งชี้ว่าทรัพยากร video หรือ channel มีเนื้อหาการถ่ายทอดสด ค่าพร็อพเพอร์ตี้ที่ถูกต้องคือ upcoming, live และ none

สำหรับทรัพยากร video ค่า upcoming บ่งชี้ว่าวิดีโอเป็นการถ่ายทอดสดที่ยังไม่เริ่ม ในขณะที่ค่า live หมายถึงวิดีโอเป็นการถ่ายทอดสดที่ทำงานอยู่ สำหรับทรัพยากร channel ค่า upcoming บ่งชี้ว่าช่องมีการถ่ายทอดสดตามกำหนดการที่ยังไม่เริ่ม ในขณะที่ค่า live หมายความว่าช่องมีการถ่ายทอดสดที่ทำงานอยู่