search
結果包含 YouTube 影片、頻道或播放清單的資訊,這些資訊與 API 要求中指定的搜尋參數相符。雖然搜尋結果會指向可辨識的資源 (例如影片),但它沒有自己的持續性資料。
方法
這個 API 支援下列搜尋方法:
資源表示法
以下 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 有效的鍵值如下:
|
snippet.thumbnails.(key).url |
string 圖片的網址。 |
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 ,則表示頻道有正在進行的直播。 |