Trả về tập hợp kết quả tìm kiếm phù hợp với tham số truy vấn được chỉ định trong yêu cầu API. Theo mặc định, nhóm kết quả tìm kiếm xác định các tài nguyên video
, channel
và playlist
phù hợp, nhưng bạn cũng có thể định cấu hình các truy vấn để chỉ truy xuất một loại tài nguyên cụ thể.
Tác động định mức: Lệnh gọi phương thức này có hạn mức là 100 đơn vị.
Các trường hợp sử dụng phổ biến
Yêu cầu
Yêu cầu HTTP
GET https://www.googleapis.com/youtube/v3/search
Các tham số
Bảng sau liệt kê các tham số mà truy vấn này hỗ trợ. Tất cả tham số được liệt kê đều là tham số truy vấn.
Các tham số | ||
---|---|---|
Tham số bắt buộc | ||
part |
string Tham số part chỉ định danh sách được phân tách bằng dấu phẩy của một hoặc nhiều thuộc tính tài nguyên search mà phản hồi API sẽ đưa vào. Đặt giá trị tham số thành snippet .
|
|
Bộ lọc (chỉ định 0 hoặc 1 trong các tham số sau) | ||
forContentOwner |
boolean Bạn chỉ có thể sử dụng thông số này trong yêu cầu được uỷ quyền chính xác và thông số này chỉ dành cho các đối tác nội dung trên YouTube. Thông số forContentOwner hạn chế khả năng tìm kiếm để chỉ truy xuất video do chủ sở hữu nội dung đã xác định.onBehalfOfContentOwner Nếu bạn đặt forContentOwner thành true, thì yêu cầu cũng phải đáp ứng các yêu cầu sau:
|
|
forDeveloper |
boolean Thông số này chỉ được dùng trong một yêu cầu được uỷ quyền chính xác. Tham số forDeveloper giới hạn tìm kiếm để chỉ truy xuất các video được tải lên qua ứng dụng hoặc trang web của nhà phát triển. Máy chủ API sử dụng thông tin xác thực ủy quyền của yêu cầu để xác định nhà phát triển. Bạn có thể dùng tham số forDeveloper cùng với các tham số tìm kiếm không bắt buộc như tham số q .Đối với tính năng này, mỗi video đã tải lên sẽ tự động được gắn thẻ bằng số dự án liên kết với ứng dụng của nhà phát triển trong Bảng điều khiển dành cho nhà phát triển của Google. Khi có yêu cầu tìm kiếm sau đó đặt tham số forDeveloper thành true , máy chủ API sẽ sử dụng thông tin đăng nhập ủy quyền của yêu cầu để xác định nhà phát triển. Do đó, nhà phát triển chỉ có thể giới hạn kết quả trong các video được tải lên thông qua ứng dụng hoặc trang web của nhà phát triển đó. |
|
forMine |
boolean Thông số này chỉ được dùng trong một yêu cầu được uỷ quyền chính xác. Tham số forMine giới hạn tìm kiếm để chỉ truy xuất các video do người dùng đã xác thực sở hữu. Nếu đặt tham số này thành true , thì bạn cũng phải đặt giá trị của tham số type thành video . Ngoài ra, bạn không thể đặt bất kỳ thông số nào khác trong cùng một yêu cầu: videoDefinition , videoDimension , videoDuration , videoEmbeddable , videoLicense , videoPaidProductPlacement , videoSyndicated , videoType . |
|
Tham số không bắt buộc | ||
channelId |
string Tham số channelId cho biết rằng phản hồi API chỉ nên chứa các tài nguyên do kênh tạo. Lưu ý: Kết quả tìm kiếm bị hạn chế ở tối đa 500 video nếu yêu cầu của bạn chỉ định giá trị cho tham số channelId và đặt giá trị tham số type thành video , nhưng cũng không đặt một trong các bộ lọc forContentOwner , forDeveloper hoặc forMine . |
|
channelType |
string Tham số channelType cho phép bạn giới hạn phạm vi tìm kiếm trong một loại kênh cụ thể.Bạn có thể sử dụng các giá trị sau:
|
|
eventType |
string Thông số eventType hạn chế tìm kiếm đối với các sự kiện phát sóng. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
location |
string Thông số location cùng với thông số locationRadius xác định một khu vực địa lý hình tròn, đồng thời chỉ cho phép tìm kiếm trong những video chỉ định vị trí địa lý thuộc siêu dữ liệu trong siêu dữ liệu. Giá trị tham số là một chuỗi chỉ định vĩ độ/kinh độ, ví dụ: (37.42307,-122.08427 ).
location nhưng cũng không chỉ định giá trị cho tham số locationRadius .Lưu ý: Nếu chỉ định giá trị cho tham số này, thì bạn cũng phải đặt giá trị của tham số type thành video .
| |
locationRadius |
string Thông số locationRadius , cùng với thông số location , xác định một khu vực địa lý hình tròn.Giá trị thông số phải là một số thực, theo sau là đơn vị đo lường. Các đơn vị đo lường hợp lệ là m , km , ft và mi . Ví dụ: các giá trị thông số hợp lệ bao gồm 1500m , 5km , 10000ft và 0.75mi . API này không hỗ trợ các giá trị tham số locationRadius lớn hơn 1000 km.Lưu ý: Hãy xem định nghĩa của tham số location để biết thêm thông tin. |
|
maxResults |
unsigned integer Tham số maxResults chỉ định số lượng mục tối đa cần trả về trong nhóm kết quả. Giá trị có thể chấp nhận là từ 0 đến 50 . Giá trị mặc định là 5 . |
|
onBehalfOfContentOwner |
string Thông số này chỉ được dùng trong một yêu cầu được uỷ quyền chính xác. Lưu ý: Tham số này chỉ dành riêng cho các đối tác nội dung của YouTube. Tham số onBehalfOfContentOwner cho biết rằng thông tin xác thực ủy quyền của yêu cầu giúp xác định một người dùng YouTube CMS đang thay mặt chủ sở hữu nội dung được chỉ định trong giá trị thông số. Thông số này dành cho các đối tác nội dung của YouTube sở hữu và quản lý nhiều kênh YouTube khác nhau. Tính năng này cho phép chủ sở hữu nội dung xác thực một lần và có quyền truy cập vào tất cả dữ liệu video và kênh của họ mà không phải cung cấp thông tin xác thực cho từng kênh. Tài khoản CMS mà người dùng xác thực phải được liên kết với chủ sở hữu nội dung YouTube đã chỉ định. |
|
order |
string Tham số order chỉ định phương thức sẽ dùng để sắp xếp các tài nguyên trong phản hồi API. Giá trị mặc định là relevance .Giá trị được chấp nhận là:
|
|
pageToken |
string Tham số pageToken xác định một trang cụ thể trong tập hợp kết quả cần được trả về. Trong phản hồi API, thuộc tính nextPageToken và prevPageToken xác định những trang khác có thể truy xuất được. |
|
publishedAfter |
datetime Tham số publishedAfter cho biết rằng phản hồi API chỉ nên chứa các tài nguyên được tạo vào hoặc sau thời gian đã chỉ định. Giá trị là giá trị ngày-giờ được định dạng RFC 3339 (1970-01-01T00:00:00Z). |
|
publishedBefore |
datetime Tham số publishedBefore cho biết rằng phản hồi API chỉ nên chứa các tài nguyên được tạo trước hoặc tại thời điểm chỉ định. Giá trị là giá trị ngày-giờ được định dạng RFC 3339 (1970-01-01T00:00:00Z). |
|
q |
string Tham số q chỉ định cụm từ tìm kiếm để tìm kiếm.Yêu cầu của bạn cũng có thể sử dụng toán tử Boolean NOT ( - ) và OR (| ) để loại trừ video hoặc tìm video có liên kết với một trong các cụm từ tìm kiếm. Ví dụ: để tìm kiếm các video trùng khớp với phương tiện "thuyền" hoặc "du thuyền", hãy đặt giá trị thông số q thành boating|sailing . Tương tự, để tìm kiếm video khớp với phương tiện "chèo thuyền" hoặc "chèo thuyền" chứ không phải " câu cá", hãy đặt giá trị thông số q thành boating|sailing -fishing . Xin lưu ý rằng ký tự sổ sách phải là ký tự thoát URL khi được gửi trong yêu cầu API. Giá trị thoát URL của ký tự sổ thẳng là %7C . |
|
regionCode |
string Tham số regionCode hướng dẫn API trả về kết quả tìm kiếm cho video có thể xem được ở quốc gia xác định. Giá trị thông số là mã quốc gia ISO 3166-1 alpha-2. |
|
relevanceLanguage |
string Tham số relevanceLanguage hướng dẫn API trả về kết quả tìm kiếm phù hợp nhất với ngôn ngữ được chỉ định. Giá trị tham số thường là mã ngôn ngữ ISO 639-1 hai chữ cái. Tuy nhiên, bạn nên sử dụng các giá trị zh-Hans cho tiếng Trung giản thể và zh-Hant cho tiếng Trung phồn thể. Xin lưu ý rằng kết quả bằng các ngôn ngữ khác sẽ vẫn được trả về nếu chúng có liên quan cao đến cụm từ truy vấn tìm kiếm. |
|
safeSearch |
string Tham số safeSearch cho biết liệu kết quả tìm kiếm có bao gồm nội dung bị hạn chế hay nội dung chuẩn hay không.Giá trị được chấp nhận là:
|
|
topicId |
string Tham số topicId cho biết rằng phản hồi API chỉ nên chứa các tài nguyên liên kết với chủ đề đã chỉ định. Giá trị xác định mã chủ đề Freebase.Quan trọng: Do Freebase và API Freebase không được sử dụng nữa, tham số topicId bắt đầu hoạt động khác nhau kể từ ngày 27 tháng 2 năm 2017. Tại thời điểm đó, YouTube bắt đầu hỗ trợ một tập hợp nhỏ ID chủ đề được sắp xếp và bạn chỉ có thể sử dụng tập hợp ID nhỏ hơn đó làm giá trị cho thông số này. |
|
type |
string Tham số type hạn chế một cụm từ tìm kiếm để chỉ truy xuất một loại tài nguyên cụ thể. Giá trị là danh sách các loại tài nguyên được phân tách bằng dấu phẩy. Giá trị mặc định là video,channel,playlist .Giá trị được chấp nhận là:
|
|
videoCaption |
string Tham số videoCaption cho biết liệu API có nên lọc kết quả tìm kiếm video hay không dựa trên việc video đó có phụ đề hay không. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
videoCategoryId |
string Tham số videoCategoryId lọc kết quả tìm kiếm video theo danh mục. Nếu chỉ định một giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video . |
|
videoDefinition |
string Tham số videoDefinition cho phép bạn tìm kiếm để chỉ bao gồm video có độ phân giải cao (HD) hoặc độ phân giải chuẩn (SD). Video HD sẵn có để phát lại ở độ phân giải tối thiểu 720p, mặc dù độ phân giải cao hơn như 1080p cũng có thể khả dụng. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
videoDimension |
string Tham số videoDimension cho phép bạn giới hạn phạm vi tìm kiếm để chỉ truy xuất video 2D hoặc 3D. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
videoDuration |
string Tham số videoDuration lọc kết quả tìm kiếm video dựa trên thời lượng của chúng. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
videoEmbeddable |
string Tham số videoEmbeddable cho phép bạn giới hạn tìm kiếm ở những video chỉ nhúng được vào một trang web. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
videoLicense |
string Tham số videoLicense lọc kết quả tìm kiếm để chỉ bao gồm những video có giấy phép cụ thể. YouTube cho phép người tải lên video chọn đính kèm giấy phép Creative Commons hoặc giấy phép chuẩn của YouTube vào từng video của họ. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
|
videoPaidProductPlacement |
string Thông số videoPaidProductPlacement lọc kết quả tìm kiếm
để chỉ bao gồm những video mà nhà sáng tạo đã thể hiện là có quảng cáo trả phí. Nếu chỉ định
một giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type
thành video .Các giá trị có thể chấp nhận được là:
|
|
videoSyndicated |
string Tham số videoSyndicated cho phép bạn giới hạn tìm kiếm trong phạm vi những video có thể phát bên ngoài youtube.com. Nếu chỉ định một giá trị cho tham số này, thì bạn cũng phải đặt giá trị của tham số type thành video .Các giá trị được chấp nhận là:
|
|
videoType |
string Tham số videoType cho phép bạn giới hạn tìm kiếm trong một loại video cụ thể. Nếu chỉ định giá trị cho thông số này, thì bạn cũng phải đặt giá trị của thông số type thành video .Giá trị được chấp nhận là:
|
Nội dung yêu cầu
Không cung cấp nội dung yêu cầu khi gọi phương thức này.
Phản hồi
Nếu thành công, phương thức này sẽ trả về nội dung phản hồi có cấu trúc sau:
{ "kind": "youtube#searchListResponse", "etag": etag, "nextPageToken": string, "prevPageToken": string, "regionCode": string, "pageInfo": { "totalResults": integer, "resultsPerPage": integer }, "items": [ search Resource ] }
Thuộc tính
Bảng sau đây xác định các thuộc tính xuất hiện trong kết quả tìm kiếm:
Thuộc tính | |
---|---|
kind |
string Xác định loại tài nguyên API. Giá trị sẽ là youtube#searchListResponse . |
etag |
etag Etag của tài nguyên này. |
nextPageToken |
string Mã thông báo này có thể được dùng làm giá trị của thông số pageToken để truy xuất trang tiếp theo trong tập hợp kết quả. |
prevPageToken |
string Mã thông báo có thể dùng làm giá trị của thông số pageToken để truy xuất trang trước trong tập hợp kết quả. |
regionCode |
string Mã vùng được dùng cho cụm từ tìm kiếm. Giá trị thuộc tính là mã quốc gia ISO gồm hai chữ cái xác định khu vực. Phương thức i18nRegions.list trả về danh sách các khu vực được hỗ trợ. Giá trị mặc định là US . Nếu khu vực không được hỗ trợ được chỉ định, YouTube vẫn có thể chọn một khu vực khác thay vì giá trị mặc định để xử lý truy vấn. |
pageInfo |
object Đối tượng pageInfo đóng gói thông tin phân trang cho tập hợp kết quả. |
pageInfo.totalResults |
integer Tổng số kết quả trong nhóm kết quả.Xin lưu ý rằng giá trị này mang tính tương đối và có thể không phải là giá trị chính xác. Ngoài ra, giá trị tối đa là 1.000.000. Bạn không nên sử dụng giá trị này để tạo các liên kết phân trang. Thay vào đó, hãy sử dụng các giá trị thuộc tính nextPageToken và prevPageToken để xác định xem có hiển thị các đường liên kết phân trang hay không. |
pageInfo.resultsPerPage |
integer Số lượng kết quả có trong phản hồi API. |
items[] |
list Danh sách các kết quả khớp với tiêu chí tìm kiếm. |
Ví dụ
Lưu ý: Các mã mẫu sau đây có thể không đại diện cho tất cả các ngôn ngữ lập trình được hỗ trợ. Xem tài liệu về thư viện ứng dụng để biết danh sách các ngôn ngữ được hỗ trợ.
Apps Script
Hàm này tìm kiếm video có liên quan đến từ khoá 'chó'. ID video và tiêu đề của kết quả tìm kiếm được ghi vào nhật ký của Apps Script.Xin lưu ý rằng mẫu này giới hạn kết quả ở mức 25. Để trả về nhiều kết quả hơn, hãy chuyển các thông số bổ sung như được nêu tại đây: https://developers.google.com/youtube/v3/docs/search/list
function searchByKeyword() { var results = YouTube.Search.list('id,snippet', {q: 'dogs', maxResults: 25}); for(var i in results.items) { var item = results.items[i]; Logger.log('[%s] Title: %s', item.id.videoId, item.snippet.title); } }
Go
Mã mẫu này gọi phương thứcsearch.list
của API để truy xuất kết quả tìm kiếm liên kết với một từ khoá cụ thể.
Ví dụ này sử dụng Thư viện ứng dụng Go.
package main import ( "flag" "fmt" "log" "net/http" "google.golang.org/api/googleapi/transport" "google.golang.org/api/youtube/v3" ) var ( query = flag.String("query", "Google", "Search term") maxResults = flag.Int64("max-results", 25, "Max YouTube results") ) const developerKey = "YOUR DEVELOPER KEY" func main() { flag.Parse() client := &http.Client{ Transport: &transport.APIKey{Key: developerKey}, } service, err := youtube.New(client) if err != nil { log.Fatalf("Error creating new YouTube client: %v", err) } // Make the API call to YouTube. call := service.Search.List("id,snippet"). Q(*query). MaxResults(*maxResults) response, err := call.Do() handleError(err, "") // Group video, channel, and playlist results in separate lists. videos := make(map[string]string) channels := make(map[string]string) playlists := make(map[string]string) // Iterate through each item and add it to the correct list. for _, item := range response.Items { switch item.Id.Kind { case "youtube#video": videos[item.Id.VideoId] = item.Snippet.Title case "youtube#channel": channels[item.Id.ChannelId] = item.Snippet.Title case "youtube#playlist": playlists[item.Id.PlaylistId] = item.Snippet.Title } } printIDs("Videos", videos) printIDs("Channels", channels) printIDs("Playlists", playlists) } // Print the ID and title of each result in a list as well as a name that // identifies the list. For example, print the word section name "Videos" // above a list of video search results, followed by the video ID and title // of each matching video. func printIDs(sectionName string, matches map[string]string) { fmt.Printf("%v:\n", sectionName) for id, title := range matches { fmt.Printf("[%v] %v\n", id, title) } fmt.Printf("\n\n") }
.NET
Mã mẫu sau đây gọi phương thứcsearch.list
của API để truy xuất kết quả tìm kiếm
liên kết với một từ khoá cụ thể.
Ví dụ này sử dụng thư viện ứng dụng.NET.
using System; using System.Collections.Generic; using System.IO; using System.Reflection; using System.Threading; using System.Threading.Tasks; using Google.Apis.Auth.OAuth2; using Google.Apis.Services; using Google.Apis.Upload; using Google.Apis.Util.Store; using Google.Apis.YouTube.v3; using Google.Apis.YouTube.v3.Data; namespace Google.Apis.YouTube.Samples { /// <summary> /// YouTube Data API v3 sample: search by keyword. /// Relies on the Google APIs Client Library for .NET, v1.7.0 or higher. /// See https://developers.google.com/api-client-library/dotnet/get_started /// /// Set ApiKey to the API key value from the APIs & auth > Registered apps tab of /// https://cloud.google.com/console /// Please ensure that you have enabled the YouTube Data API for your project. /// </summary> internal class Search { [STAThread] static void Main(string[] args) { Console.WriteLine("YouTube Data API: Search"); Console.WriteLine("========================"); try { new Search().Run().Wait(); } catch (AggregateException ex) { foreach (var e in ex.InnerExceptions) { Console.WriteLine("Error: " + e.Message); } } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } private async Task Run() { var youtubeService = new YouTubeService(new BaseClientService.Initializer() { ApiKey = "REPLACE_ME", ApplicationName = this.GetType().ToString() }); var searchListRequest = youtubeService.Search.List("snippet"); searchListRequest.Q = "Google"; // Replace with your search term. searchListRequest.MaxResults = 50; // Call the search.list method to retrieve results matching the specified query term. var searchListResponse = await searchListRequest.ExecuteAsync(); List<string> videos = new List<string>(); List<string> channels = new List<string>(); List<string> playlists = new List<string>(); // Add each result to the appropriate list, and then display the lists of // matching videos, channels, and playlists. foreach (var searchResult in searchListResponse.Items) { switch (searchResult.Id.Kind) { case "youtube#video": videos.Add(String.Format("{0} ({1})", searchResult.Snippet.Title, searchResult.Id.VideoId)); break; case "youtube#channel": channels.Add(String.Format("{0} ({1})", searchResult.Snippet.Title, searchResult.Id.ChannelId)); break; case "youtube#playlist": playlists.Add(String.Format("{0} ({1})", searchResult.Snippet.Title, searchResult.Id.PlaylistId)); break; } } Console.WriteLine(String.Format("Videos:\n{0}\n", string.Join("\n", videos))); Console.WriteLine(String.Format("Channels:\n{0}\n", string.Join("\n", channels))); Console.WriteLine(String.Format("Playlists:\n{0}\n", string.Join("\n", playlists))); } } }
Ruby
Mẫu này gọi phương thứcsearch.list
của API để truy xuất kết quả tìm kiếm
liên kết với một từ khoá cụ thể.
Ví dụ này sử dụng thư viện ứng dụng Ruby.
#!/usr/bin/ruby require 'rubygems' gem 'google-api-client', '>0.7' require 'google/api_client' require 'trollop' # Set DEVELOPER_KEY to the API key value from the APIs & auth > Credentials # tab of # {{ Google Cloud Console }} <{{ https://cloud.google.com/console }}> # Please ensure that you have enabled the YouTube Data API for your project. DEVELOPER_KEY = 'REPLACE_ME' YOUTUBE_API_SERVICE_NAME = 'youtube' YOUTUBE_API_VERSION = 'v3' def get_service client = Google::APIClient.new( :key => DEVELOPER_KEY, :authorization => nil, :application_name => $PROGRAM_NAME, :application_version => '1.0.0' ) youtube = client.discovered_api(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION) return client, youtube end def main opts = Trollop::options do opt :q, 'Search term', :type => String, :default => 'Google' opt :max_results, 'Max results', :type => :int, :default => 25 end client, youtube = get_service begin # Call the search.list method to retrieve results matching the specified # query term. search_response = client.execute!( :api_method => youtube.search.list, :parameters => { :part => 'snippet', :q => opts[:q], :maxResults => opts[:max_results] } ) videos = [] channels = [] playlists = [] # Add each result to the appropriate list, and then display the lists of # matching videos, channels, and playlists. search_response.data.items.each do |search_result| case search_result.id.kind when 'youtube#video' videos << "#{search_result.snippet.title} (#{search_result.id.videoId})" when 'youtube#channel' channels << "#{search_result.snippet.title} (#{search_result.id.channelId})" when 'youtube#playlist' playlists << "#{search_result.snippet.title} (#{search_result.id.playlistId})" end end puts "Videos:\n", videos, "\n" puts "Channels:\n", channels, "\n" puts "Playlists:\n", playlists, "\n" rescue Google::APIClient::TransmissionError => e puts e.result.body end end main
Lỗi
Bảng sau đây xác định các thông báo lỗi mà API có thể trả về để phản hồi lệnh gọi phương thức này. Vui lòng xem tài liệu thông báo lỗi để biết thêm chi tiết.
Loại lỗi | Chi tiết lỗi | Nội dung mô tả |
---|---|---|
badRequest (400) |
invalidChannelId |
Tham số channelId được chỉ định một mã nhận dạng kênh không hợp lệ. |
badRequest (400) |
invalidLocation |
Giá trị thông số location và/hoặc locationRadius được định dạng không chính xác. |
badRequest (400) |
invalidRelevanceLanguage |
Giá trị tham số relevanceLanguage được định dạng không chính xác. |
badRequest (400) |
invalidSearchFilter |
Yêu cầu có chứa tổ hợp bộ lọc tìm kiếm và/hoặc hạn chế không hợp lệ. Lưu ý rằng bạn phải đặt tham số type thành video nếu bạn đặt tham số forContentOwner hoặc forMine thành true . Bạn cũng phải đặt tham số type thành video nếu bạn đặt giá trị cho các tham số eventType , videoCaption , videoCategoryId , videoDefinition , videoDimension , videoDuration , videoEmbeddable , videoLicense , videoSyndicated hoặc videoType . |
Hãy dùng thử!
Hãy sử dụng APIs Explorer để gọi API này cũng như xem yêu cầu và phản hồi của API đó.