Search

搜尋結果會包含與 API 要求中指定的搜尋參數相符的 YouTube 影片、頻道或播放清單的相關資訊。雖然搜尋結果指向的是明確識別資源 (例如影片),但其並沒有持續性資料。

方法

API 支援下列搜尋方法:

list
傳回一組與 API 要求中指定的查詢參數相符的搜尋結果。根據預設,搜尋結果集會識別相符的 videochannelplaylist 資源,但您也可以設定查詢,僅擷取特定類型的資源。立即試用

資源表示法

下列 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。
id.channelId string
如果 id.type 屬性值是 youtube#channel,則此屬性會顯示,且其值會包含 YouTube 用來識別符合搜尋查詢的頻道 ID。
id.playlistId string
如果 id.type 屬性值是 youtube#playlist,則這個屬性會顯示此屬性,且值包含 YouTube 用來識別符合搜尋查詢的播放清單的 ID。
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:預設的縮圖圖片。影片的預設縮圖或參照影片的資源 (例如播放清單項目或搜尋結果) 的預設縮圖寬度為 120 像素,高度為 90 像素。頻道的預設縮圖寬度為 88 像素、高度 88 像素。
  • medium:縮圖解析度更高的版本。如為影片 (或參照影片的資源),這張圖片的寬度為 320 像素,高度為 180 像素。頻道的圖片寬度為 240 像素,高度為 240 像素。
  • high:縮圖的高解析度版本。如為影片 (或參照影片的資源),這張圖片的寬度為 480 像素,高度為 360 像素。對頻道而言,這張圖片寬度為 800 像素,高度為 800 像素。
  • standard:比 high 解析度圖片更高版本的縮圖圖片。這張圖片適用於某些參照影片的影片和其他資源,例如播放清單項目或搜尋結果。這張圖片寬度為 640 像素,高度為 480 像素。
  • maxres:縮圖解析度最高的版本。這個圖片大小適用於某些參照影片的影片和其他資源,例如播放清單項目或搜尋結果。這張圖片的寬度為 1280 像素,高度為 720 像素。
snippet.thumbnails.(key).url string
圖片的網址。
snippet.thumbnails.(key).width unsigned integer
圖片的寬度。
snippet.thumbnails.(key).height unsigned integer
圖片的高度。
snippet.channelTitle string
搜尋結果所識別資源所屬的頻道標題。
snippet.liveBroadcastContent string
表示 videochannel 資源是否具備現場直播內容。有效屬性值為 upcominglivenone

如果是 video 資源,如果值為 upcoming,表示影片是尚未開始的現場直播,而 live 值表示影片正在進行現場直播。如果是 channel 資源,如果值為 upcoming,表示頻道有已安排的直播尚未開始,如果值為 live,則代表頻道有正在進行的現場直播。