Trang này liệt kê các thay đổi và nội dung cập nhật về tài liệu liên quan đến YouTube Data API (phiên bản 3). Đăng ký nhận nhật ký thay đổi này.
Ngày 30 tháng 10 năm 2024
API hiện hỗ trợ khả năng xác định những video có chứa nội dung Đã chỉnh sửa hoặc nhân tạo (A/S) trông giống như thật. Tìm hiểu thêm về các chính sách của YouTube liên quan đến nội dung sửa chữa và bảo dưỡng.
Ví dụ về nội dung A/S bao gồm những video:
- Có hình ảnh người thật có vẻ như nói và làm điều gì đó, nhưng trên thực thế là họ không làm như vậy
- Chỉnh sửa cảnh quay của một sự kiện hoặc địa điểm có thật
- Tạo ra một cảnh trông giống thật nhưng không thực sự xảy ra
Để cho biết liệu một video có chứa nội dung A/S hay không, hãy đặt thuộc tính status.containsSyntheticMedia
. Bạn có thể đặt thuộc tính này khi gọi phương thức videos.insert
hoặc videos.update
. Nếu được đặt, thuộc tính này sẽ được trả về trong tài nguyên video
.
Ngày 30 tháng 4 năm 2024
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Bản cập nhật này bao gồm các thay đổi sau:
API này không còn hỗ trợ tính năng chèn hoặc truy xuất các cuộc thảo luận trên kênh nữa. Thay đổi này phù hợp với chức năng được hỗ trợ trên trang web YouTube. Trang web này không hỗ trợ tính năng đăng bình luận trên kênh.
Ngày 13 tháng 3 năm 2024
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Bản cập nhật này bao gồm các thay đổi sau:
Tham số sync
cho các phương thức captions.insert
và captions.update
không còn được dùng nữa. Kể từ ngày 12 tháng 4 năm 2024, YouTube sẽ ngừng hỗ trợ tham số này.
Do thay đổi này, nhà phát triển phải thêm thông tin về thời gian khi chèn hoặc cập nhật các bản lồng tiếng, nếu không quá trình tải lên sẽ không thành công.
Ngày 12 tháng 3 năm 2024
Bản cập nhật này bao gồm các thay đổi sau:
Tài liệu về tài nguyên captions
đã được cập nhật để lưu ý rằng độ dài tối đa được phép cho trường snippet.name
là 150 ký tự. API sẽ trả về lỗi nameTooLong
nếu tên bản nhạc dài hơn.
Ngày 7 tháng 3 năm 2024
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Thuộc tính tài nguyên channel
brandingSettings.channel.moderateComments
không được dùng nữa. Kể từ ngày 7 tháng 3 năm 2024, YouTube sẽ ngừng hỗ trợ thông số này.
Ngày 31 tháng 1 năm 2024
Bản cập nhật này bao gồm các thay đổi sau:
Tham số forHandle
mới của phương thức channels.list
cho phép bạn truy xuất thông tin về một kênh bằng cách chỉ định tên người dùng YouTube của kênh đó.
Ngày 9 tháng 11 năm 2023
Tất cả các tham chiếu đến tài nguyên videoId
trong Comments
đã bị xoá vì tài nguyên videoId
không được trả về bằng lệnh gọi API.
Ngày 12 tháng 9 năm 2023
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Phương thức comments.markAsSpam
không còn được dùng nữa trong vài năm qua. Phương thức này không còn được hỗ trợ trên YouTube và không còn được hỗ trợ thông qua API.
Thông báo về việc ngừng sử dụng đã được thêm vào tất cả tài liệu tham chiếu đến phương thức comments.markAsSpam
.
Ngày 22 tháng 8 năm 2023
Phương thức search.list
hiện hỗ trợ tham số videoPaidProductPlacement
. Tham số này cho phép bạn lọc kết quả tìm kiếm để chỉ bao gồm những video mà nhà sáng tạo đã đánh dấu là có quảng cáo có tính phí.
Ngày 18 tháng 8 năm 2023
Chúng tôi đã cập nhật định nghĩa của liveStreamingDetails.concurrentViewers
của tài nguyên video
để lưu ý rằng số người xem đồng thời mà YouTube Data API trả về có thể khác với số người xem đồng thời đã được xử lý và loại bỏ nội dung rác thông qua YouTube Analytics. Trung tâm trợ giúp của YouTube cung cấp thêm thông tin về các chỉ số của sự kiện phát trực tiếp.
Ngày 7 tháng 8 năm 2023
Như đã thông báo vào ngày 12 tháng 6 năm 2023, tham số relatedToVideoId
của phương thức search.list
không còn được dùng nữa. Tham số đó không còn được hỗ trợ và các tệp tham chiếu đến tham số đó đã bị xoá khỏi tài liệu API.
Ngày 28 tháng 6 năm 2023
Phương thức thumbnails.set hiện hỗ trợ lỗi uploadRateLimitExceeded
. Lỗi này cho biết rằng kênh đã tải lên quá nhiều hình thu nhỏ trong 24 giờ qua và bạn nên thử lại sau.
Ngày 12 tháng 6 năm 2023
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Tham số relatedToVideoId
của phương thức search.list không còn được dùng nữa. Kể từ ngày 7 tháng 8 năm 2023, YouTube sẽ ngừng hỗ trợ tham số này.
Hiện tại, chúng tôi đã thêm thông báo về việc ngừng sử dụng vào tài liệu của phương thức search.list
. Tham số này sẽ bị xoá hoàn toàn khỏi tài liệu search.list
kể từ ngày 7 tháng 8 năm 2023.
Ngoài ra, một ví dụ minh hoạ cách truy xuất video có liên quan đã bị xoá khỏi hướng dẫn triển khai API.
Ngày 22 tháng 8 năm 2022
Sửa chú thích loại cho các trường video.statistics thành chuỗi từ long chưa ký.
Ngày 5 tháng 8 năm 2022
YouTube đã thay đổi cách tạo mã nhận dạng phụ đề. Trong quá trình thay đổi đó, chúng tôi sẽ chỉ định mã nhận dạng phụ đề mới cho tất cả các bản phụ đề. Thay đổi này có thể là một thay đổi không tương thích ngược đối với các ứng dụng lưu trữ giá trị caption_id
, mặc dù thay đổi này sẽ không ảnh hưởng đến các ứng dụng không lưu trữ giá trị caption_id
.
Từ nay đến ngày 1 tháng 12 năm 2022, các phương thức captions.list
, captions.update
, captions.download
và captions.delete
sẽ hỗ trợ cả mã bản lồng tiếng cũ và mới. Tuy nhiên, kể từ ngày 1 tháng 12 năm 2022, YouTube sẽ ngừng hỗ trợ mã của bản lồng tiếng cũ. Tại thời điểm đó, việc gọi bất kỳ phương thức API nào trong số đó bằng mã bản lồng tiếng cũ sẽ dẫn đến lỗi captionNotFound
.
Để chuẩn bị cho thay đổi này, bạn nên lên kế hoạch thay thế toàn bộ dữ liệu của kênh phụ đề đã lưu trữ từ nay đến ngày 1 tháng 12 năm 2022. Điều này có nghĩa là đối với mọi video mà bạn lưu trữ dữ liệu của bản lồng tiếng, bạn nên xoá dữ liệu hiện đang được lưu trữ, sau đó gọi phương thức captions.list
để truy xuất tập hợp bản lồng tiếng hiện tại cho video và lưu trữ dữ liệu trong phản hồi API như bình thường.
Ngày 12 tháng 7 năm 2022
Chúng tôi đã cập nhật Điều khoản dịch vụ của Dịch vụ API YouTube. Vui lòng xem Điều khoản dịch vụ của Dịch vụ API YouTube – Nhật ký sửa đổi để biết thêm thông tin.
Ngày 27 tháng 4 năm 2022
Nội dung mô tả phương thức videos.insert
đã được cập nhật để lưu ý rằng kích thước tệp tối đa cho video được tải lên đã tăng từ 128 GB lên 256 GB.
Ngày 8 tháng 4 năm 2022
Chúng tôi đã cập nhật định nghĩa tham số myRecentSubscribers
và mySubscribers
của phương thức subscriptions.list
để lưu ý rằng số lượng người đăng ký tối đa mà API trả về có thể bị giới hạn.
Thay đổi này là nội dung sửa đổi tài liệu chứ không phải thay đổi về hành vi của API.
Ngày 15 tháng 12 năm 2021
Như đã thông báo vào ngày 18 tháng 11 năm 2021, cùng với những thay đổi để chuyển số lượt không thích video sang chế độ riêng tư trên toàn bộ nền tảng YouTube, thuộc tính statistics.dislikeCount
của tài nguyên video
hiện đã chuyển sang chế độ riêng tư.
Bạn có thể tìm hiểu thêm về sự thay đổi này trên blog chính thức của YouTube.
Ngày 18 tháng 11 năm 2021
Cùng với những thay đổi để không hiển thị công khai số lượt không thích video trên toàn bộ nền tảng YouTube, thuộc tính statistics.dislikeCount
của tài nguyên video
sẽ chuyển sang chế độ riêng tư kể từ ngày 13 tháng 12 năm 2021. Điều này có nghĩa là thuộc tính này sẽ chỉ được đưa vào phản hồi API từ điểm cuối videos.list
nếu yêu cầu API đã được chủ sở hữu video xác thực.
Thay đổi này không ảnh hưởng đến điểm cuối videos.rate
.
Những nhà phát triển không hiển thị số lượt không thích công khai và vẫn cần số lượt không thích cho ứng dụng API của họ có thể đăng ký để được đưa vào danh sách cho phép để được miễn trừ. Để đăng ký miễn trừ, bạn phải hoàn tất biểu mẫu đăng ký này.
Bạn có thể tìm hiểu thêm về sự thay đổi này trên blog chính thức của YouTube.
Ngày 2 tháng 7 năm 2021
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Điểm cuối commentThreads.update
đã ngừng hoạt động và không còn được hỗ trợ nữa.
Điểm cuối này có chức năng trùng lặp thông qua các điểm cuối API khác. Thay vào đó, bạn có thể gọi comments.update
commentThreads
, hãy thực hiện lệnh gọi phụ đến phương thức commentThreads.list
.
Ngày 1 tháng 7 năm 2021
Tất cả nhà phát triển sử dụng Dịch vụ API của YouTube đều phải hoàn tất quy trình Kiểm tra mức độ tuân thủ API để được cấp hạn mức nhiều hơn hạn mức mặc định là 10.000 đơn vị. Cho đến nay, cả quy trình kiểm tra mức độ tuân thủ và yêu cầu phân bổ thêm đơn vị hạn mức đều do nhà phát triển thực hiện bằng cách điền và gửi Biểu mẫu kiểm tra và yêu cầu tăng hạn mức của Dịch vụ API YouTube.
Để làm rõ các quy trình này và đáp ứng tốt hơn nhu cầu của nhà phát triển sử dụng Dịch vụ API của chúng tôi, chúng tôi sẽ thêm 3 biểu mẫu mới và hướng dẫn để hoàn tất các biểu mẫu đó:
- Biểu mẫu yêu cầu dành cho nhà phát triển đã được kiểm tra: Những nhà phát triển đã vượt qua quy trình Kiểm tra việc tuân thủ API có thể điền và gửi biểu mẫu ngắn hơn này để yêu cầu gia hạn hạn mức đã phân bổ.
- Biểu mẫu khiếu nại: Những nhà phát triển có dự án API không vượt qua quy trình kiểm tra mức độ tuân thủ (hoặc bị từ chối tăng đơn vị định mức) có thể điền và gửi biểu mẫu này.
- Biểu mẫu thay đổi quyền kiểm soát: Nhà phát triển hoặc bất kỳ bên nào vận hành ứng dụng API thay mặt cho nhà phát triển, trải qua sự thay đổi quyền kiểm soát (ví dụ: thông qua việc mua hoặc bán cổ phiếu, sáp nhập hoặc hình thức giao dịch công ty khác) liên quan đến một dự án API phải điền và gửi biểu mẫu này. Việc này giúp nhóm API của YouTube cập nhật hồ sơ, kiểm tra việc tuân thủ trường hợp sử dụng của dự án API mới và xác thực mức phân bổ hạn mức hiện tại của nhà phát triển.
Mỗi biểu mẫu mới sẽ cho chúng tôi biết mục đích sử dụng API của YouTube của bạn, nhờ đó chúng tôi có thể hỗ trợ bạn tốt hơn.
Bạn có thể xem thêm thông tin chi tiết trong hướng dẫn mới của chúng tôi về quy trình Kiểm tra việc tuân thủ API.
Ngày 12 tháng 5 năm 2021
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Bản cập nhật này bao gồm các thay đổi sau đây về API:
-
Thuộc tính
contentDetails.relatedPlaylists.favorites
của tài nguyênchannel
không được dùng nữa. Chức năng video yêu thích đã ngừng hoạt động trong vài năm như đã nêu trong mục nhật ký sửa đổi vào ngày 28 tháng 4 năm 2016.Trước bản cập nhật này, API vẫn sẽ tạo một danh sách phát mới nếu ứng dụng API cố gắng thêm một video vào danh sách phát yêu thích không tồn tại. Từ giờ trở đi, danh sách phát sẽ không được tạo trong trường hợp này và API sẽ trả về lỗi. Tất cả các nỗ lực sửa đổi danh sách phát yêu thích bằng cách thêm, sửa đổi hoặc xoá các mục cũng không còn được dùng nữa theo thông báo trước đó và có thể bắt đầu trả về lỗi bất cứ lúc nào.
-
Các thuộc tính tài nguyên
channel
sau đây không còn được dùng nữa. Những tài sản này không được hỗ trợ trong giao diện người dùng của YouTube Studio và trên YouTube. Do đó, các tính năng này cũng không còn được hỗ trợ qua API nữa.brandingSettings.channel.defaultTab
brandingSettings.channel.featuredChannelsTitle
brandingSettings.channel.featuredChannelsUrls[]
brandingSettings.channel.profileColor
brandingSettings.channel.showBrowseView
brandingSettings.channel.showRelatedChannels
Tất cả các thuộc tính đã bị xoá khỏi
channel
đại diện tài nguyên và định nghĩa của các thuộc tính đó đã bị xoá khỏi danh sách thuộc tính của tài nguyên. Ngoài ra, các lỗi liên quan đến các thuộc tính này đã bị xoá khỏi tài liệu dành riêng cho phương thức. -
Các thuộc tính tài nguyên
channelSection
sau đây không còn được dùng nữa. Những tài sản này không được hỗ trợ trong giao diện người dùng của YouTube Studio và trên YouTube. Do đó, các tính năng này cũng không còn được hỗ trợ qua API nữa.snippet.style
snippet.defaultLanguage
snippet.localized.title
localizations
localizations.(key)
localizations.(key).title
targeting
targeting.languages[]
targeting.regions[]
targeting.countries[]
Cùng với thay đổi này, thông số
hl
của phương thứcchannelSection.list
cũng không còn được dùng nữa vì các tính năng mà thông số này hỗ trợ không được hỗ trợ.Tất cả các thuộc tính đã bị xoá khỏi
channelSection
đại diện tài nguyên và định nghĩa của các thuộc tính đó đã bị xoá khỏi danh sách thuộc tính của tài nguyên. Ngoài ra, các lỗi liên quan đến các thuộc tính này đã bị xoá khỏi tài liệu dành riêng cho phương thức. -
Đối với thuộc tính
snippet.type
của tài nguyênchannelSection
, các giá trị sau đây không còn được dùng nữa. Các giá trị này không được hỗ trợ trên trang kênh YouTube, do đó, chúng cũng không còn được hỗ trợ thông qua API.likedPlaylists
likes
postedPlaylists
postedVideos
recentActivity
recentPosts
-
Thuộc tính
snippet.tags[]
của tài nguyênplaylist
không được dùng nữa. Thuộc tính này không được hỗ trợ trên YouTube, do đó, thuộc tính này không còn được hỗ trợ thông qua API.
Ngày 9 tháng 2 năm 2021
Tài nguyên playlistItem
hỗ trợ hai thuộc tính mới:
- Thuộc tính
snippet.videoOwnerChannelId
xác định mã nhận dạng của kênh đã tải video trong danh sách phát lên. - Thuộc tính
snippet.videoOwnerChannelTitle
xác định tên của kênh đã tải video trong danh sách phát lên.
Ngày 28 tháng 1 năm 2021
Bản cập nhật này bao gồm các thay đổi sau:
-
Các phương thức
playlistItems.delete
,playlistItems.insert
,playlistItems.list
,playlistItems.update
,playlists.delete
,playlists.list
vàplaylists.update
đều hỗ trợ lỗiplaylistOperationUnsupported
mới. Lỗi này xảy ra khi một yêu cầu tìm cách thực hiện một thao tác không được phép đối với một danh sách phát cụ thể. Ví dụ: người dùng không thể xoá một video khỏi danh sách phát video đã tải lên hoặc xoá chính danh sách phát đó.Trong mọi trường hợp, lỗi này sẽ trả về mã phản hồi HTTP
400
(Yêu cầu không hợp lệ). -
Các lỗi
watchHistoryNotAccessible
vàwatchLaterNotAccessible
của phương thứcplaylistItems.list
đã bị xoá khỏi tài liệu. Mặc dù danh sách xem sau và danh sách xem của người dùng thực sự không truy cập được qua API, nhưng API không trả về các lỗi cụ thể này.
Ngày 15 tháng 10 năm 2020
Chúng tôi đã thêm hai mục mới vào Chính sách dành cho nhà phát triển:
- Mục III.E.4.i mới cung cấp thêm thông tin về dữ liệu được thu thập và gửi qua trình phát được nhúng của YouTube. Bạn chịu trách nhiệm về mọi dữ liệu người dùng mà bạn gửi cho chúng tôi thông qua trình phát YouTube được nhúng trước khi người dùng tương tác với trình phát để cho biết ý định phát. Bạn có thể giới hạn dữ liệu được chia sẻ với YouTube trước khi người dùng tương tác với trình phát bằng cách đặt chế độ Tự động phát thành false.
- Mục III.E.4.j mới liên quan đến việc kiểm tra trạng thái nội dung dành cho trẻ em (MFK) trước khi nhúng nội dung đó vào trang web và ứng dụng của bạn. Bạn chịu trách nhiệm biết thời điểm video mà bạn nhúng trên Ứng dụng API được tạo dành cho trẻ em và xử lý dữ liệu được thu thập từ trình phát được nhúng cho phù hợp. Do đó, bạn phải kiểm tra trạng thái của nội dung bằng Dịch vụ API Dữ liệu YouTube trước khi nhúng nội dung đó vào Ứng dụng API thông qua bất kỳ trình phát được nhúng nào của YouTube.
Hướng dẫn mới về Cách tìm trạng thái video dành cho trẻ em giải thích cách tra cứu trạng thái MFK của một video bằng Dịch vụ API dữ liệu của YouTube.
Cùng với những thay đổi này, chúng tôi đã thêm một lời nhắc vào tài liệu về Tham số trình phát được nhúng để giải thích rằng nếu bạn bật tính năng Tự động phát, thì quá trình phát sẽ diễn ra mà không cần người dùng tương tác với trình phát; do đó, việc thu thập và chia sẻ dữ liệu phát sẽ diễn ra khi tải trang.
Ngày 8 tháng 10 năm 2020
Bản cập nhật này bao gồm 3 thay đổi nhỏ liên quan đến tài nguyên channel
:
- Đối tượng
snippet.thumbnails
giúp xác định hình thu nhỏ của kênh có thể trống đối với các kênh mới tạo và có thể mất đến một ngày để điền. - Thuộc tính
statistics.videoCount
chỉ phản ánh số lượng video công khai của kênh, ngay cả đối với chủ sở hữu. Hành vi này nhất quán với số lượt xem hiển thị trên trang web của YouTube. - Từ khoá của kênh được xác định trong thuộc tính
brandingSettings.channel.keywords
có thể bị cắt bớt nếu vượt quá độ dài tối đa cho phép là 500 ký tự hoặc nếu chứa dấu ngoặc kép không được thoát ("
). Xin lưu ý rằng giới hạn 500 ký tự không phải là giới hạn cho mỗi từ khoá mà là giới hạn về tổng độ dài của tất cả từ khoá. Hành vi này nhất quán với hành vi trên trang web YouTube.
Ngày 9 tháng 9 năm 2020
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Bản cập nhật này bao gồm các thay đổi sau về API. Tất cả thay đổi sẽ có hiệu lực từ ngày 9 tháng 9 năm 2020 (ngày phát hành thông báo này). Do đó, nhà phát triển không nên tiếp tục dựa vào bất kỳ tính năng API nào được liệt kê dưới đây.
-
Các tài nguyên, phương thức, thông số và thuộc tính tài nguyên API sau đây không còn được dùng nữa và sẽ ngừng hoạt động kể từ ngày thông báo này:
- Các thuộc tính tài nguyên
channel
sau:- Thuộc tính
statistics.commentCount
- Đối tượng
brandingSettings.image
và tất cả thuộc tính con của đối tượng đó - Danh sách
brandingSettings.hints
và tất cả thuộc tính con của danh sách đó
- Thuộc tính
- Tham số bộ lọc
categoryId
của phương thứcchannels.list
- Tài nguyên
guideCategories
và phương thứcguideCategories.list
- Các thuộc tính tài nguyên
-
Phản hồi API cho phương thức
channels.list
không còn chứa thuộc tínhprevPageToken
nếu yêu cầu API đặt tham sốmanagedByMe
thànhtrue
. Thay đổi này không ảnh hưởng đến thuộc tínhprevPageToken
đối với các yêu cầuchannels.list
khác và không ảnh hưởng đến thuộc tínhnextPageToken
đối với bất kỳ yêu cầu nào. -
Các thuộc tính
contentDetails.relatedPlaylists.watchLater
vàcontentDetails.relatedPlaylists.watchHistory
của tài nguyênchannel
đều được thông báo là không dùng nữa vào ngày 11 tháng 8 năm 2016. Giờ đây, tính năng hỗ trợ của phương thứcplaylistItems.insert
và phương thứcplaylistItems.delete
đối với các danh sách phát này cũng không còn được dùng nữa và hai thuộc tính này đã bị xoá khỏi tài liệu. -
Tham số
mySubscribers
của phương thứcchannels.list
, được thông báo là không còn được dùng nữa vào ngày 30 tháng 7 năm 2013, đã bị xoá khỏi tài liệu. Sử dụng phương thứcsubscriptions.list
và tham sốmySubscribers
của phương thức này để truy xuất danh sách người đăng ký kênh của người dùng đã xác thực. -
Đối tượng
invideoPromotion
của tài nguyênchannel
và tất cả các thuộc tính con của đối tượng này (được thông báo là không dùng nữa vào ngày 27 tháng 11 năm 2017) đã bị xoá khỏi tài liệu.
Ngày 29 tháng 7 năm 2020
Chúng tôi đã đơn giản hoá quy trình tính hạn mức cho các yêu cầu API bằng cách xoá chi phí bổ sung liên quan đến tham số part
. Kể từ ngay hôm nay, chúng tôi sẽ chỉ tính phí chi phí cơ bản cho phương thức được gọi. Bạn có thể xem thêm thông tin về hạn mức đơn giản hoá tại đây.
Tác động của thay đổi này là hầu hết các lệnh gọi API sẽ có chi phí hạn mức thấp hơn một chút, trong khi một số lệnh gọi API vẫn sẽ có cùng chi phí. Thay đổi này không làm tăng chi phí của bất kỳ lệnh gọi API nào. Nhìn chung, tác động có thể xảy ra là hạn mức được phân bổ của bạn (có thể xem trong Google Cloud Console) sẽ tăng thêm một chút.
Tất cả nhà phát triển đều nên hoàn tất quy trình kiểm tra mức độ tuân thủ cho các dự án của mình để đảm bảo tiếp tục có quyền truy cập vào Dịch vụ API YouTube.
Mục nhập nhật ký sửa đổi này được xuất bản lần đầu vào ngày 20 tháng 7 năm 2020.
Ngày 28 tháng 7 năm 2020
Tất cả video được tải lên thông qua điểm cuối videos.insert
từ các dự án API chưa được xác minh được tạo sau ngày 28 tháng 7 năm 2020 sẽ bị hạn chế ở chế độ xem riêng tư. Để gỡ bỏ quy định hạn chế này, mỗi dự án phải trải qua quy trình kiểm tra để xác minh việc tuân thủ Điều khoản dịch vụ.
Những nhà sáng tạo sử dụng ứng dụng API chưa được xác minh để tải video lên sẽ nhận được email giải thích rằng video của họ đã bị khoá ở chế độ riêng tư và họ có thể tránh bị hạn chế bằng cách sử dụng ứng dụng chính thức hoặc ứng dụng đã được kiểm tra.
Thay đổi này hiện không ảnh hưởng đến các dự án API được tạo trước ngày 28 tháng 7 năm 2020. Tuy nhiên, tất cả nhà phát triển nên hoàn tất quy trình kiểm tra mức độ tuân thủ cho dự án của mình để đảm bảo tiếp tục có quyền truy cập vào Dịch vụ API YouTube.
Ngày 21 tháng 7 năm 2020
[Cập nhật ngày 28 tháng 7 năm 2020.] Nội dung cập nhật tài liệu được tham chiếu trong mục nhật ký sửa đổi này đã được xuất bản lại vào ngày 28 tháng 7 năm 2020.
Hôm qua, chúng tôi đã phát hành tài liệu cập nhật liên quan đến quy trình tính phí hạn mức. Tuy nhiên, do một số trường hợp ngoài dự kiến, thay đổi về hạn mức này chưa có hiệu lực. Do đó, tài liệu đã được hoàn nguyên để đảm bảo tính chính xác. Để tránh gây nhầm lẫn, mục nhập trong nhật ký sửa đổi giải thích về thay đổi này đã bị xoá và sẽ được xuất bản lại trong thời gian sắp tới.
Ngày 7 tháng 7 năm 2020
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Các tham số autoLevels
và stabilize
của phương thức videos.insert
hiện không được dùng nữa và cả hai tham số này đã bị xoá khỏi tài liệu. Các giá trị này sẽ bị bỏ qua và không ảnh hưởng đến cách xử lý video mới tải lên.
Ngày 15 tháng 6 năm 2020
Hướng dẫn mới về Tuân thủ Chính sách dành cho nhà phát triển của YouTube cung cấp hướng dẫn và ví dụ để giúp bạn đảm bảo rằng ứng dụng API của mình tuân thủ các phần cụ thể trong Điều khoản và Chính sách (Điều khoản dịch vụ API) của Dịch vụ API YouTube.
Hướng dẫn này cung cấp thông tin chi tiết về cách YouTube thực thi một số khía cạnh của Điều khoản dịch vụ API, nhưng không thay thế bất kỳ tài liệu hiện có nào. Hướng dẫn này giải đáp một số câu hỏi thường gặp nhất mà nhà phát triển đặt ra trong quá trình kiểm tra việc tuân thủ API. Chúng tôi hy vọng tài liệu này sẽ giúp bạn đơn giản hoá quy trình phát triển tính năng bằng cách giúp bạn hiểu cách chúng tôi diễn giải và thực thi chính sách.
Ngày 4 tháng 6 năm 2020
Lưu ý: Đây là thông tin cập nhật cho thông báo trước đó về việc ngừng sử dụng.
Tính năng thông báo của kênh hiện đã ngừng hoạt động hoàn toàn. Thay đổi này được công bố lần đầu vào ngày 17 tháng 4 năm 2020 và hiện đã có hiệu lực. Do đó, phương thức activities.insert
không còn được hỗ trợ và phương thức activities.list
không còn trả về thông báo của kênh nữa. Để biết thêm thông tin chi tiết, vui lòng tham khảo Trung tâm trợ giúp của YouTube.
Ngày 17 tháng 4 năm 2020
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
YouTube sẽ ngừng sử dụng tính năng thông báo trên kênh. Do đó, phương thức activities.insert
sẽ không được dùng nữa và phương thức activities.list
sẽ ngừng trả về thông báo của kênh. Những thay đổi này sẽ có hiệu lực trong API kể từ ngày 18 tháng 5 năm 2020. Để biết thêm thông tin chi tiết, vui lòng tham khảo Trung tâm trợ giúp của YouTube.
Ngày 31 tháng 3 năm 2020
Bản cập nhật này bao gồm các thay đổi sau:
-
Các tài nguyên và phương thức mới
-
Tài nguyên
member
mới đại diện cho một hội viên của kênh YouTube. Hội viên hỗ trợ tài chính định kỳ cho một nhà sáng tạo và nhận các lợi ích đặc biệt. Ví dụ: hội viên có thể trò chuyện khi nhà sáng tạo bật chế độ trò chuyện chỉ dành cho hội viên.Tài nguyên này thay thế tài nguyên
sponsor
được ghi nhận là một phần của API Phát trực tiếp trên YouTube. Tài nguyênsponsor
hiện không còn được dùng nữa và ứng dụng API nên cập nhật các lệnh gọi đến phương thứcsponsors.list
để sử dụng phương thứcmembers.list
. -
Tài nguyên
membershipsLevel
mới xác định một cấp giá do nhà sáng tạo quản lý và đã cho phép yêu cầu API. Phương thứcmembershipsLevels.list
truy xuất danh sách tất cả các cấp độ thành viên của nhà sáng tạo.
-
Ngày 10 tháng 1 năm 2020
API hiện hỗ trợ khả năng xác định nội dung hướng đến trẻ em, mà YouTube gọi là "dành cho trẻ em". Tìm hiểu thêm về nội dung "dành cho trẻ em" trong Trung tâm trợ giúp của YouTube.
Tài nguyên channel
và video
hỗ trợ hai thuộc tính mới để giúp nhà sáng tạo nội dung và người xem xác định nội dung dành cho trẻ em:
-
Thuộc tính
selfDeclaredMadeForKids
cho phép nhà sáng tạo nội dung chỉ định xem một kênh hoặc video có dành cho trẻ em hay không.
Đối với các kênh, bạn có thể đặt thuộc tính này khi gọi phương thứcchannels.update
. Đối với video, bạn có thể đặt thuộc tính này khi gọi phương thứcvideos.insert
hoặcvideos.update
.
Xin lưu ý rằng thuộc tính này chỉ có trong các phản hồi API chứa tài nguyênchannel
hoặcvideo
nếu chủ sở hữu kênh đã cho phép yêu cầu API. -
Thuộc tính
madeForKids
cho phép mọi người dùng truy xuất trạng thái "dành cho trẻ em" của một kênh hoặc video. Ví dụ: trạng thái có thể được xác định dựa trên giá trị của thuộc tínhselfDeclaredMadeForKids
. Hãy truy cập vào Trung tâm trợ giúp của YouTube để biết thêm thông tin về cách đặt đối tượng người xem cho kênh, video hoặc sự kiện phát trực tiếp của bạn.
Chúng tôi cũng đã cập nhật Điều khoản dịch vụ và Chính sách dành cho nhà phát triển của Dịch vụ API YouTube. Vui lòng xem Điều khoản dịch vụ của Dịch vụ API YouTube – Nhật ký sửa đổi để biết thêm thông tin. Các thay đổi đối với Điều khoản dịch vụ của Dịch vụ API YouTube và Chính sách dành cho nhà phát triển sẽ có hiệu lực từ ngày 10 tháng 1 năm 2020 theo giờ Thái Bình Dương.
Ngày 10 tháng 9 năm 2019
Tài liệu tham khảo về API đã được cập nhật để phản ánh sự thay đổi về cách báo cáo số người đăng ký trên YouTube và do đó, trong các phản hồi API. Do thay đổi này, số người đăng ký do Dịch vụ API dữ liệu YouTube trả về sẽ được làm tròn xuống còn ba chữ số có ý nghĩa đối với những kênh có số người đăng ký lớn hơn 1.000. Thay đổi này ảnh hưởng đến thuộc tính statistics.subscriberCount của tài nguyên channel
.
Lưu ý: Thay đổi này ảnh hưởng đến giá trị thuộc tính này ngay cả trong trường hợp người dùng gửi yêu cầu được uỷ quyền về dữ liệu của chính kênh của họ. Chủ sở hữu kênh vẫn có thể xem số người đăng ký chính xác trong YouTube Studio.
Ví dụ: nếu một kênh có 123.456 người đăng ký, thì thuộc tính statistics.subscriberCount
sẽ chứa giá trị 123000
.
Bảng dưới đây cho thấy ví dụ về cách làm tròn số người đăng ký trong các phản hồi API và viết tắt số người đăng ký trong các giao diện người dùng YouTube hiển thị công khai khác:
Ví dụ về số người đăng ký | API Dữ liệu YouTube | Giao diện người dùng YouTube hiển thị công khai |
---|---|---|
1.234 | 1230 | 1,23 N |
12,345 | 12300 | 12,3 N |
123.456 | 123000 | 123 N |
1.234.567 | 1230000 | 1,23 TR |
12.345.678 | 12300000 | 12,3 TR |
123.456.789 | 123000000 | 123 TR |
Ngày 4 tháng 4 năm 2019
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài liệu tham khảo API đã được cập nhật để giải thích rõ hơn các trường hợp sử dụng phổ biến cho từng phương thức và cung cấp các mẫu mã linh động, chất lượng cao thông qua tiện ích Trình khám phá API. Hãy xem tài liệu về phương thức
channels.list
để biết ví dụ. Hiện có hai phần tử mới trên các trang mô tả phương thức API:-
Tiện ích Trình khám phá API cho phép bạn chọn phạm vi uỷ quyền, nhập tham số mẫu và giá trị thuộc tính, sau đó gửi yêu cầu API thực tế và xem phản hồi API thực tế. Tiện ích này cũng cung cấp chế độ xem toàn màn hình hiển thị các mẫu mã hoàn chỉnh, tự động cập nhật để sử dụng các phạm vi và giá trị mà bạn đã nhập.
-
Mục Trường hợp sử dụng phổ biến mô tả một hoặc nhiều trường hợp sử dụng phổ biến của phương thức được giải thích trên trang. Ví dụ: bạn có thể gọi phương thức
channels.list
để truy xuất dữ liệu về một kênh cụ thể hoặc để truy xuất dữ liệu về kênh của người dùng hiện tại.Bạn có thể sử dụng các đường liên kết trong phần đó để điền sẵn các giá trị mẫu cho trường hợp sử dụng của mình vào Trình khám phá API hoặc để mở Trình khám phá API ở chế độ toàn màn hình với các giá trị đó đã được điền sẵn. Những thay đổi này nhằm giúp bạn dễ dàng xem các mẫu mã có thể áp dụng trực tiếp cho trường hợp sử dụng mà bạn đang cố gắng triển khai trong ứng dụng của riêng mình.
Các mẫu mã hiện được hỗ trợ cho Java, JavaScript, PHP, Python và curl.
-
-
Công cụ mẫu mã cũng đã được cập nhật với giao diện người dùng mới cung cấp tất cả các tính năng tương tự như mô tả ở trên. Khi sử dụng công cụ đó, bạn có thể khám phá các trường hợp sử dụng cho nhiều phương thức, tải các giá trị vào Trình khám phá API và mở Trình khám phá API ở chế độ toàn màn hình để lấy các mẫu mã trong Java, JavaScript, PHP và Python.
Cùng với thay đổi này, các trang trước đây liệt kê các mã mẫu hiện có cho Java, JavaScript, PHP và Python đã bị xoá.
-
Chúng tôi đã cập nhật hướng dẫn nhanh cho Java, JavaScript, PHP và Python. Hướng dẫn sửa đổi giải thích cách chạy một mẫu bằng khoá API và một mẫu khác bằng mã ứng dụng OAuth 2.0 bằng cách sử dụng các mẫu mã từ Trình khám phá API.
Xin lưu ý rằng những thay đổi được mô tả ở trên sẽ thay thế một công cụ tương tác đã được thêm vào tài liệu API vào năm 2017.
Ngày 9 tháng 7 năm 2018
Bản cập nhật này bao gồm các thay đổi sau:
-
Định nghĩa của thuộc tính
snippet.thumbnails
của tài nguyênchannel
đã được cập nhật để lưu ý rằng khi hiển thị hình thu nhỏ trong ứng dụng, mã của bạn phải sử dụng URL hình ảnh chính xác như được trả về trong các phản hồi API. Ví dụ: ứng dụng của bạn không được sử dụng miềnhttp
thay vì miềnhttps
trong URL được trả về trong phản hồi API.Kể từ tháng 7 năm 2018, URL hình thu nhỏ của kênh sẽ chỉ có trong miền
https
. Đây là cách URL xuất hiện trong các phản hồi API. Sau thời điểm đó, bạn có thể thấy hình ảnh bị hỏng trong ứng dụng nếu ứng dụng đó cố gắng tải hình ảnh YouTube từ miềnhttp
. -
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Thuộc tính
recordingDetails.location.altitude
của tài nguyênvideo
không được dùng nữa. Chúng tôi không đảm bảo rằng video sẽ trả về giá trị cho thuộc tính này. Tương tự, ngay cả khi các yêu cầu API cố gắng đặt giá trị cho thuộc tính đó, dữ liệu đến có thể sẽ không được lưu trữ.
Ngày 22 tháng 6 năm 2018
Hướng dẫn triển khai (trước đây gọi là Hướng dẫn triển khai và di chuyển) đã được cập nhật để xoá hướng dẫn di chuyển từ API v2 sang API v3. Ngoài ra, chúng tôi cũng đã xoá hướng dẫn về các tính năng không còn được dùng trong API phiên bản 3, chẳng hạn như video yêu thích.
Ngày 27 tháng 11 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
-
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
YouTube sẽ ngừng hỗ trợ các tính năng Video nổi bật và Trang web nổi bật. Các tính năng này được hỗ trợ trong API thông qua đối tượng
invideoPromotion
của tài nguyênchannel
. Do đó, đối tượng đó, bao gồm cả tất cả các thuộc tính con của đối tượng đó, sẽ không được dùng nữa.Bạn vẫn có thể truy xuất và đặt dữ liệu
invideoPromotion
cho đến hết ngày 14 tháng 12 năm 2017. Sau ngày đó:- Nếu bạn cố gắng truy xuất phần
invideoPromotion
khi gọichannels.list
, thì thao tác này sẽ trả về mộtinvideoPromotion
trống hoặc không trả về dữ liệuinvideoPromotion
nào cả. - Các nỗ lực cập nhật dữ liệu
invideoPromotion
khi gọichannels.update
sẽ trả về phản hồi thành công cho đến ít nhất là ngày 27 tháng 5 năm 2018, nhưng các nỗ lực này sẽ được coi là không hoạt động, nghĩa là chúng sẽ không thực sự thực hiện cập nhật.
Sau ngày 27 tháng 5 năm 2018, các yêu cầu này có thể trả về thông báo lỗi để cho biết, ví dụ:
invalidPromotion
là một phần không hợp lệ. - Nếu bạn cố gắng truy xuất phần
Ngày 16 tháng 11 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
-
Công cụ đoạn mã tương tác hiện hỗ trợ các mẫu mã Node.js. Các mẫu này cũng xuất hiện trong tài liệu về hầu hết các phương thức API, chẳng hạn như phương thức
channels.list
.Các mẫu có thể tuỳ chỉnh được thiết kế để cung cấp cho bạn một điểm xuất phát dành riêng cho trường hợp sử dụng cho ứng dụng Node.js. Chức năng này tương tự như mã trong hướng dẫn nhanh về Node.js. Tuy nhiên, các mẫu này có chứa một số hàm tiện ích không xuất hiện trong phần bắt đầu nhanh:
- Hàm
removeEmptyParameters
nhận danh sách cặp khoá-giá trị tương ứng với các tham số yêu cầu API và xoá các tham số không có giá trị. - Hàm
createResource
lấy danh sách các cặp khoá-giá trị tương ứng với các thuộc tính trong tài nguyên API. Sau đó, phương thức này sẽ chuyển đổi các thuộc tính thành một đối tượng JSON có thể được sử dụng trong các thao tácinsert
vàupdate
. Ví dụ bên dưới cho thấy một tập hợp tên và giá trị thuộc tính cũng như đối tượng JSON mà mã sẽ tạo cho các thuộc tính đó:# Key-value pairs: {'id': 'ABC123', 'snippet.title': 'Resource title', 'snippet.description': 'Resource description', 'status.privacyStatus': 'private'} # JSON object: { 'id': 'ABC123', 'snippet': { 'title': 'Resource title', 'description': 'Resource description', }, 'status': { 'privacyStatus': 'private' } }
Tất cả các mẫu này đều được thiết kế để tải xuống và chạy cục bộ. Để biết thêm thông tin, hãy xem các điều kiện tiên quyết để chạy toàn bộ mã mẫu trên máy trong hướng dẫn về công cụ đoạn mã.
- Hàm
Ngày 25 tháng 10 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
-
Các mẫu mã Python trong công cụ đoạn mã tương tác đã được cập nhật để sử dụng thư viện
google-auth
vàgoogle-auth-oauthlib
thay vì thư việnoauth2client
hiện không còn được dùng nữa.Ngoài thay đổi đó, công cụ này hiện cung cấp các mã mẫu đầy đủ cho các ứng dụng Python đã cài đặt và các ứng dụng máy chủ web Python, sử dụng các luồng uỷ quyền hơi khác nhau. Để xem toàn bộ mẫu (và thay đổi này):
- Chuyển đến công cụ đoạn mã tương tác hoặc tài liệu về bất kỳ phương thức API nào, chẳng hạn như phương thức
channels.list
. - Nhấp vào thẻ
Python
phía trên các mẫu mã. - Nhấp vào nút bật/tắt phía trên các thẻ để chuyển từ xem đoạn mã sang xem mẫu đầy đủ.
- Giờ đây, thẻ này sẽ hiển thị một mẫu mã hoàn chỉnh sử dụng quy trình uỷ quyền
InstalledAppFlow
. Phần mô tả phía trên mẫu này giải thích điều này và cũng liên kết đến một mẫu cho ứng dụng máy chủ web. - Nhấp vào đường liên kết để chuyển sang ví dụ về máy chủ web. Mẫu đó sử dụng khung ứng dụng web Flask và một quy trình uỷ quyền khác.
Tất cả các mẫu này đều được thiết kế để tải xuống và chạy cục bộ. Nếu bạn muốn chạy các mẫu, hãy xem hướng dẫn chạy toàn bộ mẫu mã trên máy trong hướng dẫn về công cụ đoạn mã.
- Chuyển đến công cụ đoạn mã tương tác hoặc tài liệu về bất kỳ phương thức API nào, chẳng hạn như phương thức
Ngày 29 tháng 8 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
- Định nghĩa của tham số
forContentOwner
của phương thứcsearch.list
đã được cập nhật để lưu ý rằng nếu tham số đó được đặt thànhtrue
, thì tham sốtype
phải được đặt thànhvideo
. - Định nghĩa của tham số
regionCode
của phương thứcsearch.list
đã được cập nhật để làm rõ rằng tham số này giới hạn kết quả tìm kiếm ở những video có thể xem được ở khu vực được chỉ định. - YouTube đã cập nhật biểu trưng và biểu tượng thương hiệu. Bạn có thể tải biểu trưng mới "được phát triển với YouTube" xuống từ trang nguyên tắc sử dụng thương hiệu. Các biểu trưng và biểu tượng mới khác của YouTube cũng xuất hiện trên trang đó và bạn có thể tải xuống từ trang web thương hiệu của YouTube.
Ngày 24 tháng 7 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
- Chúng tôi đã phát hành hướng dẫn bắt đầu nhanh mới về API Dữ liệu YouTube dành cho iOS. Hướng dẫn này giải thích cách sử dụng YouTube Data API trong một ứng dụng iOS đơn giản được viết bằng Objective-C hoặc Swift.
- Công cụ đoạn mã tương tác cho YouTube Data API hiện có tài liệu giải thích một số tính năng của công cụ này:
- Thực thi yêu cầu API
- Chuyển đổi giữa đoạn mã và mã mẫu đầy đủ
- Sử dụng hàm nguyên mẫu
- Tải tài nguyên hiện có (dành cho phương thức cập nhật)
Lưu ý: Công cụ này cũng được nhúng trong tài liệu tham khảo API cho các phương thức API (ví dụ).
Ngày 1 tháng 6 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
-
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Các thuộc tính tài nguyên
video
sau đây không còn được dùng nữa. Mặc dù các thuộc tính này sẽ được hỗ trợ cho đến ngày 1 tháng 12 năm 2017, nhưng chúng tôi không đảm bảo rằng video sẽ tiếp tục trả về giá trị cho các thuộc tính đó cho đến thời điểm đó. Tương tự, các yêu cầuvideos.insert
vàvideos.update
đặt các giá trị thuộc tính đó sẽ không tạo lỗi trước ngày đó, nhưng có thể dữ liệu đến sẽ không được lưu trữ.
Ngày 17 tháng 5 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài liệu tham khảo API đã được cập nhật để các đoạn mã trở nên phổ biến và tương tác hơn. Các trang giải thích phương thức API, chẳng hạn như
channels.list
hoặcvideos.rate
, hiện có một công cụ tương tác cho phép bạn xem và tuỳ chỉnh các đoạn mã trong Java, JavaScript, PHP, Python, Ruby, Apps Script và Go.Đối với bất kỳ phương thức nào, công cụ này sẽ hiển thị các đoạn mã cho một hoặc nhiều trường hợp sử dụng, và mỗi trường hợp sử dụng sẽ mô tả một cách phổ biến để gọi phương thức đó. Ví dụ: bạn có thể gọi phương thức
channels.list
để truy xuất dữ liệu về một kênh cụ thể hoặc về kênh của người dùng hiện tại.Bạn cũng có thể tương tác với các mẫu mã:
-
Sửa đổi giá trị tham số và thuộc tính, các đoạn mã sẽ tự động cập nhật để phản ánh các giá trị bạn cung cấp.
-
Chuyển đổi giữa đoạn mã và mẫu đầy đủ. Đoạn mã cho thấy phần mã gọi phương thức API. Mẫu đầy đủ chứa đoạn mã đó cũng như mã nguyên mẫu để uỷ quyền và gửi yêu cầu. Bạn có thể sao chép và chạy các mẫu đầy đủ từ dòng lệnh hoặc máy chủ web cục bộ.
-
Thực thi các yêu cầu bằng cách nhấp vào một nút. (Để thực thi các yêu cầu, bạn cần uỷ quyền cho công cụ thay mặt bạn gọi API.)
Xin lưu ý rằng công cụ này đã thay thế Trình khám phá API trên các trang có công cụ này. (Mỗi trang đều hiển thị một đường liên kết để bạn có thể tải yêu cầu mà bạn đang xử lý trong Trình khám phá API.)
-
-
Công cụ Đoạn mã API dữ liệu cũng đã được cập nhật với giao diện người dùng mới cung cấp tất cả các tính năng tương tự như mô tả ở trên. Các tính năng mới chính có trên trang này là:
- Hỗ trợ các yêu cầu API ghi dữ liệu.
- Hỗ trợ các mẫu Java.
- Mã nguyên mẫu linh hoạt và toàn diện hơn để uỷ quyền cho người dùng và tạo yêu cầu API.
Ngày 27 tháng 4 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
- Hướng dẫn nhanh mới giải thích cách thiết lập một ứng dụng đơn giản để tạo các yêu cầu API Dữ liệu YouTube. Hướng dẫn hiện có sẵn cho Android, Apps Script, Go, Java, JavaScript, Node.js, PHP, Python và Ruby.
Ngày 30 tháng 3 năm 2017
Bản cập nhật này bao gồm các thay đổi sau:
- Thuộc tính
topicDetails.topicCategories[]
mới của tài nguyênchannel
chứa danh sách URL của Wikipedia mô tả nội dung của kênh. Các URL tương ứng với mã chủ đề được trả về trong thuộc tínhtopicDetails.topicIds[]
của tài nguyên. - Thuộc tính
contentDetails.videoPublishedAt
mới của tài nguyênplaylistItem
xác định thời điểm video được xuất bản lên YouTube. Tài nguyên này đã chứa thuộc tínhsnippet.publishedAt
, giúp xác định thời điểm thêm mục vào danh sách phát. - Giống như tài nguyên
channel
, tài nguyênvideo
hiện trả về thuộc tínhtopicDetails.topicCategories[]
. Thuộc tính này chứa danh sách URL của Wikipedia mô tả nội dung của video. Đối với tài nguyênvideo
, URL tương ứng với mã chủ đề được trả về trong thuộc tínhtopicDetails.relevantTopicIds[]
của tài nguyên. - Thuộc tính
contentDetails.contentRating.mpaatRating
mới của tài nguyênvideo
xác định mức phân loại mà Hiệp hội Điện ảnh Hoa Kỳ đưa ra cho một đoạn giới thiệu hoặc bản xem trước phim.
Ngày 27 tháng 2 năm 2017
Như đã thông báo vào ngày 11 tháng 8 năm 2016, YouTube đã chuyển danh sách mã chủ đề được hỗ trợ sang danh sách được tuyển chọn. Danh sách đầy đủ các mã nhận dạng chủ đề được hỗ trợ có trong các thuộc tính topicDetails
cho tài nguyên channel
và video
, cũng như trong tham số topicId
của phương thức search.list
.
Xin lưu ý rằng danh sách do chúng tôi tuyển chọn có một số thay đổi:
- Các chủ đề sau đã được thêm làm chủ đề phụ của
Society
:Tên mã chủ đề Doanh nghiệp /m/09s1f
Sức khỏe /m/0kt51
Quân đội /m/01h6rj
Chính trị /m/05qt0
Tôn giáo /m/06bvp
- Chủ đề
Animated cartoon
, trước đây là một phần tử con củaEntertainment
, đã bị xoá. - Chủ đề
Children's music
, trước đây là một phần tử con củaMusic
, đã bị xoá.
Do thay đổi này, các chủ đề liên quan đến một video hiện luôn được trả về trong giá trị thuộc tính topicDetails.relevantTopicIds[]
của tài nguyên video
.
Ngày 29 tháng 11 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Có 3 thay đổi nhỏ đối với danh sách mã chủ đề sẽ được hỗ trợ kể từ ngày 10 tháng 2 năm 2017:
- Danh mục
Professional wrestling
, trước đây là danh mục con của danh mụcSports
, hiện là danh mục con củaEntertainment
. - Danh mục
TV shows
(là một phần tử con củaEntertainment
) là mới. - Danh mục
Health
, trước đây là một phần tử con củaLifestyle
, đã bị xoá.
Ngoài ra, xin lưu ý rằng có một số danh mục mẹ (
Entertainment
,Gaming
,Lifestyle
,Music
vàSports
). Mọi video được liên kết với một danh mục con, chẳng hạn nhưTennis
, cũng sẽ được liên kết với danh mục mẹ (Sports
). - Danh mục
Ngày 10 tháng 11 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Như đã thông báo lần đầu vào ngày 11 tháng 8 năm 2016, việc ngừng sử dụng Freebase và API Freebase đòi hỏi một số thay đổi liên quan đến mã chủ đề. Mã chủ đề xác định các chủ đề liên kết với tài nguyên
channel
vàvideo
. Bạn cũng có thể sử dụng thông số tìm kiếmtopicId
để tìm các kênh hoặc video liên quan đến một chủ đề cụ thể.Kể từ ngày 10 tháng 2 năm 2017, YouTube sẽ bắt đầu trả về một nhóm nhỏ mã chủ đề thay vì nhóm mã chi tiết hơn nhiều như hiện tại. Ngoài ra, xin lưu ý rằng các kênh và video không được đảm bảo sẽ liên kết với bất kỳ chủ đề nào, điều này nhất quán với hành vi hiện tại của API.
Để bạn có thể chuẩn bị ứng dụng API cho những thay đổi đó, chúng tôi đã cập nhật định nghĩa của các tham số và thuộc tính API sau đây để liệt kê mã chủ đề sẽ được hỗ trợ sau thời điểm đó. Xin lưu ý rằng danh sách danh mục giống nhau cho tất cả tài sản.
- Thuộc tính
topicDetails.topicIds[]
của tài nguyênchannel
. - Thuộc tính
topicDetails.relevantTopicIds[]
của tài nguyênvideo
. - Tham số
topicId
của phương thứcsearch.list
.
- Thuộc tính
-
Lưu ý: Đây là thông báo về việc ngừng sử dụng.
Các thuộc tính sau đây không còn được dùng nữa:
- Thuộc tính
topicDetails.topicIds[]
của tài nguyênchannel
. Chúng tôi sẽ hỗ trợ thuộc tính này cho đến hết ngày 10 tháng 11 năm 2017. - Thuộc tính
topicDetails.relevantTopicIds[]
của tài nguyênvideo
. Chúng tôi sẽ hỗ trợ thuộc tính này cho đến hết ngày 10 tháng 11 năm 2017. - Thuộc tính
topicDetails.topicIds[]
của tài nguyênvideo
. Thuộc tính này sẽ không chứa giá trị sau ngày 10 tháng 2 năm 2017. (Sau ngày đó, giá trị thuộc tínhtopicDetails.relevantTopicIds[]
sẽ xác định tất cả chủ đề liên kết với một video.)
- Thuộc tính
-
Vì Freebase đã ngừng hoạt động nên hướng dẫn Tìm kiếm bằng Chủ đề Freebase đã bị xoá khỏi tài liệu. Hướng dẫn đó cung cấp các mã mẫu để cho thấy cách một ứng dụng hoạt động với API Freebase.
Ngoài ra, một số mã mẫu liên quan đến mã nhận dạng chủ đề đã bị xoá khỏi tài liệu của phương thức
search.list
.
Ngày 2 tháng 11 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Các thuộc tính và thông số mới
-
Tài nguyên
video
chứa một số thuộc tính mới:-
Thuộc tính
player.embedHtml
chứa thẻ<iframe>
mà bạn có thể dùng để nhúng trình phát phát video. Các thuộc tínhplayer.embedHeight
vàplayer.embedWidth
mới xác định kích thước của trình phát được nhúng. Các thuộc tính này chỉ được trả về nếu yêu cầu API chỉ định giá trị cho ít nhất một trong các tham sốmaxHeight
hoặcmaxWidth
. Hai tham số mới đó được giải thích ở phần sau trong mục nhật ký sửa đổi này. -
Thuộc tính
hasCustomThumbnail
mới cho biết liệu người tải video lên có cung cấp hình thu nhỏ tuỳ chỉnh cho video hay không. Xin lưu ý rằng chỉ người đăng tải video mới nhìn thấy thuộc tính này. -
fpbRatingReasons[]
mới xác định lý do video nhận được mức phân loại của FPB (Nam Phi). -
mcstRating
mới xác định mức phân loại mà video nhận được tại Việt Nam.
-
-
Phương thức
videos.list
hỗ trợ hai tham số mới làmaxHeight
vàmaxWidth
. Bạn có thể sử dụng một hoặc cả hai tham số khi truy xuất phầnplayer
trong tài nguyênvideo
.Theo mặc định, chiều cao của
<iframe>
được trả về trong thuộc tínhplayer.embedHtml
là 360px. Chiều rộng sẽ điều chỉnh cho phù hợp với tỷ lệ khung hình của video, nhờ đó đảm bảo rằng trình phát được nhúng không có các thanh màu đen bao quanh video. Ví dụ: nếu tỷ lệ khung hình của video là 16:9, thì chiều rộng của trình phát sẽ là 640px.Với các tham số mới, bạn có thể chỉ định rằng thay vì kích thước mặc định, mã nhúng phải sử dụng chiều cao và/hoặc chiều rộng phù hợp với bố cục ứng dụng. Máy chủ API điều chỉnh tỷ lệ kích thước trình phát cho phù hợp để đảm bảo rằng trình phát được nhúng không có các thanh màu đen bao quanh video. Xin lưu ý rằng cả hai tham số này đều chỉ định kích thước tối đa của trình phát được nhúng. Do đó, nếu bạn chỉ định cả hai tham số, thì một phương diện vẫn có thể nhỏ hơn số lượng tối đa được phép cho phương diện đó.
Ví dụ: giả sử một video có tỷ lệ khung hình 16:9. Do đó, thẻ
player.embedHtml
sẽ chứa trình phát 640x360 nếu bạn không đặt tham sốmaxHeight
hoặcmaxWidth
.- Nếu bạn đặt tham số
maxHeight
thành720
và không đặt tham sốmaxWidth
, thì API sẽ trả về trình phát 1280x720. - Nếu bạn đặt tham số
maxWidth
thành960
và không đặt tham sốmaxHeight
, thì API sẽ trả về một trình phát 960x540. - Nếu bạn đặt tham số
maxWidth
thành960
và tham sốmaxHeight
thành450
, thì API sẽ trả về một trình phát 800x450.
Các thuộc tính
player.embedHeight
vàplayer.embedWidth
mới (như mô tả ở trên) xác định kích thước của trình phát. - Nếu bạn đặt tham số
-
-
Nội dung cập nhật đối với các phương thức, thuộc tính và tham số hiện có
-
Nội dung mô tả tài nguyên
channelSection
đã được cập nhật để lưu ý rằng một kênh có thể tạo tối đa 10 kệ mà không cần đặt dữ liệu nhắm mục tiêu và có thể tạo tối đa 100 kệ có dữ liệu nhắm mục tiêu.Ngoài ra, thuộc tính
targeting
của tài nguyênchannelSection
đã được cập nhật để phản ánh việc bạn chỉ có thể đặt các tuỳ chọn nhắm mục tiêu bằng API. Các lựa chọn nhắm mục tiêu sẽ bị xoá nếu bạn sửa đổi phần kênh bằng giao diện người dùng trên trang web YouTube. -
Định nghĩa của thuộc tính
snippet.name
của tài nguyêni18nLanguage
đã được sửa để phản ánh rằng giá trị này thể hiện tên của một ngôn ngữ vì nó được viết bằng ngôn ngữ do tham sốhl
của phương thứci18nLanguage.list
chỉ định. -
Thuộc tính
contentDetails.note
của tài nguyênplaylistItem
đã được cập nhật để lưu ý rằng độ dài tối đa của giá trị thuộc tính là 280 ký tự. -
Các thuộc tính
contentDetails.startAt
vàcontentDetails.endAt
của tài nguyênplaylistItem
không còn được dùng nữa. Các trường này sẽ bị bỏ qua nếu được đặt trong các yêu cầuplaylistItems.insert
hoặcplaylistItems.update
. -
Phương thức
playlistItems.delete
vàplaylistItems.update
hiện hỗ trợ tham sốonBehalfOfContentOwner
, tham số này đã được hỗ trợ cho một số phương thức khác. Các yêu cầu sử dụng phương thức đó cũng cần được uỷ quyền bằng mã thông báo cấp quyền truy cập vào phạm vihttps://www.googleapis.com/auth/youtubepartner
. -
Cả tham số
publishedBefore
vàpublishedAfter
của phương thứcsearch.list
đều đã được cập nhật để cho biết rằng các giá trị tham số là bao gồm. Ví dụ: nếu bạn đặt thông sốpublishedBefore
, API sẽ trả về các tài nguyên được tạo trước hoặc tại thời điểm đã chỉ định. -
Thuộc tính
contentDetails.contentRating.grfilmRating
của tài nguyênvideo
hỗ trợ thêm 3 giá trị:grfilmK12
,grfilmK15
vàgrfilmK18
. -
Nội dung mô tả phương thức
videos.insert
đã được cập nhật để lưu ý rằng kích thước tệp tối đa cho video tải lên đã tăng từ 64 GB lên 128 GB.
-
-
Lỗi mới và lỗi đã cập nhật
-
API này hỗ trợ các lỗi mới sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả forbidden (403)
homeParameterDeprecated
Phương thức activities.list
trả về lỗi này để cho biết rằng không có dữ liệu hoạt động trên trang chủ của người dùng thông qua API này. Lỗi này có thể xảy ra nếu bạn đặt tham sốhome
thànhtrue
trong một yêu cầu trái phép.invalidValue (400)
invalidContentDetails
Phương thức playlistItems.insert
trả về lỗi này để cho biết đối tượngcontentDetails
trong yêu cầu không hợp lệ. Một lý do khiến lỗi này xảy ra là trườngcontentDetails.note
dài hơn 280 ký tự.forbidden (403)
watchHistoryNotAccessible
Phương thức playlistItems.list
trả về lỗi này để cho biết rằng yêu cầu đã cố gắng truy xuất các mục danh sách phát "danh sách xem", nhưng không thể truy xuất các mục đó bằng API.forbidden (403)
watchLaterNotAccessible
Phương thức playlistItems.list
trả về lỗi này để cho biết rằng yêu cầu đã cố gắng truy xuất các mục trong danh sách phát "xem sau", nhưng không thể truy xuất các mục đó bằng API.badRequest (400)
uploadLimitExceeded
Phương thức videos.insert
trả về lỗi này để cho biết rằng kênh đã vượt quá số lượng video mà kênh có thể tải lên.forbidden (403)
forbiddenEmbedSetting
Phương thức videos.update
trả về lỗi này để cho biết rằng yêu cầu API cố gắng đặt chế độ cài đặt nhúng không hợp lệ cho video. Xin lưu ý rằng một số kênh có thể không được cấp quyền cung cấp trình phát được nhúng cho sự kiện phát trực tiếp. Hãy truy cập vào Trung tâm trợ giúp của YouTube để biết thêm thông tin. -
Phương thức
playlistItems.insert
không còn trả về lỗi nếu bạn chèn một video trùng lặp vào danh sách phát. Lỗi này từng xảy ra với một số danh sách phát (chẳng hạn như danh sách video yêu thích) không cho phép video trùng lặp nhưng hiện không còn được hỗ trợ nữa. Nhìn chung, danh sách phát cho phép video trùng lặp.
-
-
Nội dung cập nhật khác
-
Mục nhật ký sửa đổi vào ngày 15 tháng 9 năm 2016 đã được cập nhật để làm rõ rằng bất cứ khi nào thuộc tính
contentDetails.relatedPlaylists.watchHistory
vàcontentDetails.relatedPlaylists.watchLater
của tài nguyênchannel
được đưa vào phản hồi, các thuộc tính này luôn chứa giá trịHL
vàWL
tương ứng. Hơn nữa, những thuộc tính đó chỉ được đưa vào nếu người dùng được uỷ quyền đang truy xuất dữ liệu về kênh của chính người dùng đó.
-
Ngày 15 tháng 9 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Bản cập nhật nhật ký sửa đổi ngày 11 tháng 8 năm 2016 đã thảo luận về một số thay đổi liên quan đến mã chủ đề, bao gồm cả việc nhóm mã chủ đề được hỗ trợ sẽ thay đổi kể từ ngày 10 tháng 2 năm 2017. Danh sách các chủ đề sẽ được hỗ trợ sẽ được công bố muộn nhất vào ngày 10 tháng 11 năm 2016.
-
Những thay đổi sau đây hiện đã có hiệu lực. Chúng tôi đã thông báo về những thay đổi này trong bản cập nhật nhật ký sửa đổi vào ngày 11 tháng 8 năm 2016:
-
Nếu phương thức
activities.list
được gọi với tham sốhome
được đặt thànhtrue
, thì phản hồi API hiện sẽ chứa các mục tương tự như nội dung mà người dùng YouTube đã đăng xuất sẽ thấy trên trang chủ.Đây là một thay đổi nhỏ nhằm mang lại trải nghiệm tốt hơn cho người dùng so với hành vi được mô tả trong bản cập nhật nhật ký sửa đổi vào ngày 11 tháng 8 năm 2016. Nội dung cập nhật đó đã nêu rõ rằng các yêu cầu sử dụng tham số
home
sẽ trả về một danh sách trống. -
Các thuộc tính
contentDetails.relatedPlaylists.watchHistory
vàcontentDetails.relatedPlaylists.watchLater
của tài nguyênchannel
hiện chứa các giá trị tương ứng làHL
vàWL
cho tất cả các kênh.Xin lưu ý rằng chỉ người dùng được uỷ quyền truy xuất dữ liệu về kênh của chính họ mới thấy được các thuộc tính này. Các thuộc tính này luôn chứa các giá trị
HL
vàWL
, ngay cả đối với người dùng được uỷ quyền truy xuất dữ liệu về kênh của chính người dùng đó. Do đó, bạn không thể truy xuất nhật ký xem và mã danh sách phát xem sau qua API.Ngoài ra, các yêu cầu truy xuất thông tin chi tiết về danh sách phát (
playlists.list
) hoặc mục trong danh sách phát (playlistItems.list
) cho danh sách xem sau hoặc danh sách video đã xem của một kênh hiện sẽ trả về danh sách trống. Hành vi này đúng với các giá trị mới,HL
vàWL
, cũng như với mọi danh sách phát xem sau hoặc danh sách xem đã lưu mà Ứng dụng API của bạn có thể đã lưu trữ.
-
-
Đối tượng
fileDetails.recordingLocation
của tài nguyênvideo
và các thuộc tính con của đối tượng đó không còn được trả về nữa. Trước đây, chỉ chủ sở hữu video mới có thể truy xuất dữ liệu này (chẳng hạn như đối tượngfileDetails
gốc).
Ngày 11 tháng 8 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Điều khoản dịch vụ mới được phát hành của Dịch vụ API YouTube ("Điều khoản mới"), được thảo luận chi tiết trên Blog về kỹ thuật và nhà phát triển của YouTube, cung cấp nhiều nội dung cập nhật cho Điều khoản dịch vụ hiện tại. Ngoài Điều khoản mới cập nhật (có hiệu lực từ ngày 10 tháng 2 năm 2017), nội dung cập nhật này còn bao gồm một số tài liệu hỗ trợ để giải thích các chính sách mà nhà phát triển phải tuân thủ.
Toàn bộ bộ tài liệu mới được mô tả trong nhật ký sửa đổi của Điều khoản mới cập nhật. Ngoài ra, những thay đổi trong tương lai đối với Điều khoản mới cập nhật hoặc đối với các tài liệu hỗ trợ đó cũng sẽ được giải thích trong nhật ký sửa đổi đó. Bạn có thể đăng ký nguồn cấp dữ liệu RSS liệt kê các thay đổi trong nhật ký sửa đổi đó qua một đường liên kết trong tài liệu đó.
-
Việc ngừng sử dụng Freebase và Freebase API đang gây ra một số thay đổi liên quan đến mã nhận dạng chủ đề. Mã chủ đề được dùng trong các tài nguyên và phương thức API sau:
- Phần
topicDetails
của tài nguyênchannel
xác định các chủ đề liên quan đến kênh. - Phần
topicDetails
của tài nguyênvideo
xác định các chủ đề liên quan đến video. - Tham số
topicId
của phương thứcsearch.list
cho phép bạn tìm kiếm video hoặc kênh có liên quan đến một chủ đề cụ thể.
Những thay đổi đối với các tính năng này như sau:
-
Kể từ ngày 10 tháng 2 năm 2017, YouTube sẽ bắt đầu trả về một nhóm nhỏ mã chủ đề thay vì nhóm mã chi tiết hơn nhiều như hiện tại. Tập hợp chủ đề được hỗ trợ đó sẽ xác định các danh mục cấp cao như Thể thao hoặc Bóng rổ, nhưng ví dụ: chúng sẽ không xác định các đội hoặc cầu thủ cụ thể. Chúng tôi sẽ công bố danh sách các chủ đề được hỗ trợ để bạn có thời gian chuẩn bị ứng dụng cho sự thay đổi này.
-
Bạn có thể dùng mọi mã chủ đề Freebase mà bạn đã truy xuất để tìm kiếm nội dung cho đến hết ngày 10 tháng 2 năm 2017. Tuy nhiên, sau thời điểm đó, bạn chỉ có thể sử dụng nhóm chủ đề nhỏ hơn được xác định trong mục trước để truy xuất kết quả tìm kiếm theo chủ đề.
-
Sau ngày 10 tháng 2 năm 2017, nếu bạn tìm kiếm kết quả bằng mã chủ đề không có trong nhóm nhỏ mã chủ đề được hỗ trợ, thì API sẽ trả về một tập hợp kết quả trống.
- Phần
-
Một số trường và tham số API sẽ ngừng hoạt động kể từ ngày 12 tháng 9 năm 2016:
-
Tham số
home
của phương thứcactivities.list
cho phép người dùng được uỷ quyền truy xuất nguồn cấp dữ liệu hoạt động sẽ hiển thị trên trang chủ YouTube cho người dùng đó. Các yêu cầu sử dụng tham số này sau ngày 12 tháng 9 năm 2016 sẽ trả về danh sách trống. -
Chỉ người dùng được uỷ quyền truy xuất dữ liệu về kênh của chính họ mới thấy được các thuộc tính
contentDetails.relatedPlaylists.watchHistory
vàcontentDetails.relatedPlaylists.watchLater
của tài nguyênchannel
. Sau ngày 12 tháng 9 năm 2016,contentDetails.relatedPlaylists.watchHistory
sẽ trả về giá trịHL
và thuộc tínhcontentDetails.relatedPlaylists.watchLater
sẽ trả về giá trịWL
cho tất cả các kênh.Các yêu cầu truy xuất thông tin chi tiết về danh sách phát (
playlists.list
) cho danh sách xem sau hoặc danh sách xem của một kênh sẽ trả về danh sách trống sau ngày 12 tháng 9 năm 2016. Các yêu cầu truy xuất mục trong danh sách phát (playlistItems.list
) trong một trong hai danh sách phát đó cũng sẽ trả về danh sách trống sau thời điểm đó. Điều này đúng với các giá trị mới,HL
vàWL
, cũng như đối với mọi mã danh sách phát xem sau hoặc danh sách xem mà Ứng dụng API của bạn có thể đã lưu trữ. -
Đối tượng
fileDetails.recordingLocation
của tài nguyênvideo
hoặc bất kỳ thuộc tính con nào của tài nguyên này sẽ không còn được trả về sau ngày 12 tháng 9 năm 2016. Chỉ chủ sở hữu video mới có thể truy xuất dữ liệu này vì chỉ chủ sở hữu video mới có thể truy xuất đối tượngfileDetails
mẹ.
-
Ngày 13 tháng 6 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Thuộc tính
contentDetails.googlePlusUserId
của tài nguyênchannel
không được dùng nữa. Trước đây, thuộc tính này chỉ xuất hiện nếu kênh được liên kết với một hồ sơ Google+. Sau khi ngừng hoạt động, thuộc tính này sẽ không còn xuất hiện trong bất kỳ tài nguyênchannel
nào. -
Thuộc tính
snippet.authorGoogleplusProfileUrl
của tài nguyêncomment
không được dùng nữa. Trước đây, thuộc tính này chỉ xuất hiện nếu kênh được liên kết với một hồ sơ Google+. Sau khi ngừng hoạt động, thuộc tính này sẽ không còn xuất hiện trong bất kỳ tài nguyêncomment
nào.
Vì cả hai thuộc tính này sẽ không được trả về sau khi ngừng hoạt động, nên cả hai thuộc tính này đã bị xoá khỏi tài liệu tài nguyên tương ứng.
Ngày 31 tháng 5 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Tham số
myRecentSubscribers
mới của phương thứcsubscriptions.list
truy xuất danh sách người đăng ký của kênh của người dùng đã xác thực theo thứ tự thời gian đảo ngược từ thời điểm họ đăng ký kênh.Xin lưu ý rằng tham số mới này chỉ hỗ trợ truy xuất 1.000 người đăng ký gần đây nhất của kênh mà người dùng đã xác thực. Để truy xuất danh sách đầy đủ người đăng ký, hãy sử dụng tham số
mySubscribers
. Thông số đó không trả về người đăng ký theo thứ tự cụ thể và không giới hạn số lượng người đăng ký có thể truy xuất. -
Chúng tôi đã cập nhật định nghĩa của thuộc tính
snippet.thumbnails.(key)
cho các tài nguyên hoạt động, playlistItem, danh sách phát, kết quả tìm kiếm, hình thu nhỏ và video để lưu ý rằng một số video có thêm kích thước hình thu nhỏ.- Hình ảnh
standard
có chiều rộng 640px và chiều cao 480px. - Hình ảnh
maxres
có chiều rộng 1280px và chiều cao 720px.
- Hình ảnh
-
Định nghĩa của tham số
part
của phương thứcchannelSection.list
đã được cập nhật để lưu ý rằng bạn có thể truy xuất phầntargeting
với chi phí là2
đơn vị hạn mức. -
Phương thức
videos.list
hiện trả về lỗi forbidden (403
) (bị cấm) khi một yêu cầu được uỷ quyền không đúng cách cố gắng truy xuất các phầnfileDetails
,processingDetails
hoặcsuggestions
của tài nguyênvideo
. Chỉ chủ sở hữu video mới có thể xem những phần đó.
Ngày 17 tháng 5 năm 2016
Công cụ Đoạn mã Data API mới cung cấp các đoạn mã ngắn cho các trường hợp sử dụng phổ biến của Data API YouTube. Đoạn mã hiện có sẵn cho tất cả các phương thức API chỉ đọc trong Apps Script, Go, JavaScript, PHP, Python và Ruby.
Đối với mỗi phương thức, công cụ này sẽ hiển thị mã mẫu cho một hoặc nhiều trường hợp sử dụng. Ví dụ: tài liệu này cung cấp 5 đoạn mã cho phương thức search.list
:
- Liệt kê video theo từ khoá
- Liệt kê video theo vị trí
- Liệt kê sự kiện phát trực tiếp
- Tìm kiếm video của người dùng đã xác thực
- Liệt kê các video có liên quan
Đối với mỗi trường hợp sử dụng, công cụ sẽ hiển thị các thông số được sử dụng trong yêu cầu API. Bạn có thể sửa đổi các giá trị tham số. Trong trường hợp này, công cụ sẽ cập nhật các đoạn mã để phản ánh các giá trị tham số mà bạn đã cung cấp.
Cuối cùng, công cụ này sẽ hiển thị phản hồi của API cho từng yêu cầu. Nếu bạn đã sửa đổi các tham số yêu cầu, thì phản hồi API sẽ dựa trên các giá trị tham số mà bạn cung cấp. Xin lưu ý rằng bạn cần uỷ quyền cho công cụ này thay mặt bạn gửi yêu cầu để các phản hồi API hiển thị.
Ngày 28 tháng 4 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Thuộc tính
contentDetails.projection
mới của tài nguyênvideo
chỉ định định dạng chiếu của video. Các giá trị thuộc tính hợp lệ là360
vàrectangular
. -
Cả thuộc tính
recordingDetails.location
vàfileDetails.recordingLocation
của tài nguyênvideo
đều đã được cập nhật để giải thích sự khác biệt giữa hai thuộc tính này:- Thuộc tính
recordingDetails.location
xác định vị trí mà chủ sở hữu video muốn liên kết với video. Bạn có thể chỉnh sửa, tìm kiếm địa điểm này trên video công khai và địa điểm này có thể hiển thị cho người dùng đối với video công khai. - Giá trị thuộc tính
fileDetails.recordingLocation
là không thể thay đổi và đại diện cho vị trí được liên kết với tệp video gốc đã tải lên. Chỉ chủ sở hữu video mới thấy được giá trị này.
- Thuộc tính
-
Định nghĩa của thuộc tính
contentDetails.relatedPlaylists.favorites
của tài nguyênchannel
đã được cập nhật để lưu ý rằng giá trị thuộc tính có thể chứa mã danh sách phát tham chiếu đến một danh sách phát trống và không thể tìm nạp. Lý do là chức năng video yêu thích đã ngừng hoạt động. Xin lưu ý rằng thuộc tính này không tuân theo chính sách ngừng sử dụng API. -
Định nghĩa về lỗi
ineligibleAccount
(có thể được phương thứccomments.insert
,comments.update
,commentThreads.insert
hoặccommentThreads.update
trả về) đã được cập nhật để phản ánh rằng lỗi này xảy ra khi tài khoản YouTube dùng để uỷ quyền yêu cầu API chưa được hợp nhất với tài khoản Google của người dùng.
Ngày 20 tháng 4 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Định nghĩa của tham số
part
của phương thứcchannels.update
đã được cập nhật để lưu ý rằnglocalizations
cũng là một giá trị hợp lệ cho tham số đó. -
Chúng tôi đã cập nhật phần Mức sử dụng hạn mức trong hướng dẫn Bắt đầu sử dụng để liên kết đến Google Developers Console. Tại đây, bạn có thể xem hạn mức thực tế và mức sử dụng hạn mức.
Ngày 16 tháng 3 năm 2016
Bản cập nhật này bao gồm các thay đổi sau:
-
Nội dung cập nhật đối với các tài nguyên và phương thức hiện có
-
Tài liệu về tài nguyên
channelBanner
đã được cập nhật để lưu ý rằng kích thước đề xuất cho hình ảnh biểu ngữ kênh được tải lên là 2560px x 1440px. Kích thước tối thiểu (2048px x 1152px) không thay đổi. -
Thuộc tính
snippet.customUrl
mới của tài nguyênchannel
xác định URL tuỳ chỉnh được liên kết với kênh. (Không phải kênh nào cũng có URL tuỳ chỉnh.) Trung tâm trợ giúp của YouTube giải thích các yêu cầu để có thể nhận URL tuỳ chỉnh cũng như cách thiết lập URL đó. -
Đối tượng
brandingSettings.watch
của tài nguyênchannel
và tất cả thuộc tính con của đối tượng này không còn được dùng nữa. -
Phản hồi của API cho yêu cầu
search.list
hiện chứa thuộc tínhregionCode
. Thuộc tính này xác định mã khu vực được dùng cho cụm từ tìm kiếm. Mã khu vực hướng dẫn API trả về kết quả tìm kiếm cho quốc gia được chỉ định.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 bạn chỉ định một khu vực không được hỗ trợ, 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. -
Chúng tôi đã cập nhật định nghĩa của các thuộc tính
snippet.label
vàsnippet.secondaryReasons[].label
của tài nguyênvideoAbuseReportReason
để lưu ý rằng các thuộc tính này chứa văn bản nhãn được bản địa hoá cho lý do báo cáo hành vi sai trái.Ngoài ra, phương thức
videoAbuseReportReasons.list
hiện hỗ trợ tham sốhl
. Tham số này chỉ định ngôn ngữ cần sử dụng cho văn bản nhãn trong phản hồi API. Giá trị tham số mặc định làen_US
. -
Thuộc tính
contentDetails.contentRating.ecbmctRating
mới của tài nguyênvideo
xác định mức phân loại của video theo Hội đồng Đánh giá và Phân loại của Bộ Văn hoá và Du lịch Thổ Nhĩ Kỳ.Ngoài ra, các thuộc tính API cho các hệ thống phân loại khác hỗ trợ các giá trị thuộc tính mới sau:
contentDetails.contentRating.fpbRating
(Nam Phi)
Mức phân loại: 10; giá trị thuộc tính:fpb10
contentDetails.contentRating.moctwRating
(Đài Loan)
Mức phân loại: R-12; giá trị thuộc tính:moctwR12
contentDetails.contentRating.moctwRating
(Đài Loan)
Điểm xếp hạng: R-15; giá trị thuộc tính:moctwR15
-
Thuộc tính
liveStreamingDetails.activeLiveChatId
của tài nguyênvideo
chứa mã nhận dạng của cuộc trò chuyện trực tiếp đang hoạt động được liên kết với video. Giá trị thuộc tính này chỉ xuất hiện nếu video là sự kiện phát trực tiếp đang diễn ra và đã bật tính năng trò chuyện trực tiếp. Sau khi sự kiện phát trực tiếp kết thúc và cuộc trò chuyện trực tiếp kết thúc, thuộc tính này sẽ không còn được trả về cho video. -
Thuộc tính
status.rejectionReason
của tài nguyênvideo
hỗ trợ giá trị thuộc tính mớilegal
.
-
-
API này hỗ trợ các lỗi mới sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest (400)
notEditable
Phương thức channelSections.insert
,channelSections.update
vàchannelSections.delete
trả về lỗi này để cho biết rằng bạn không thể tạo, cập nhật hoặc xoá phần kênh đã chỉ định.badRequest (400)
styleRequired
Phương thức channelSections.insert
vàchannelSections.update
trả về lỗi này để cho biết rằng tài nguyênchannelSection
được gửi trong yêu cầu API phải chỉ định giá trị cho thuộc tínhsnippet.style
.badRequest (400)
typeRequired
Phương thức channelSections.insert
vàchannelSections.update
trả về lỗi này để cho biết rằng tài nguyênchannelSection
được gửi trong yêu cầu API phải chỉ định giá trị cho thuộc tínhsnippet.type
.badRequest (400)
processingFailure
Phương thức commentThreads.list
trả về lỗi này để cho biết máy chủ API không xử lý được yêu cầu. Mặc dù đây có thể là lỗi tạm thời, nhưng thường cho biết rằng dữ liệu đầu vào của yêu cầu không hợp lệ. Kiểm tra cấu trúc của tài nguyêncommentThread
trong phần nội dung yêu cầu để đảm bảo tài nguyên đó hợp lệ.forbidden (403)
commentsDisabled
Phương thức commentThreads.list
trả về lỗi này để cho biết rằng video được xác định bằng tham sốvideoId
đã tắt tính năng bình luận.badRequest (400)
commentTextTooLong
Phương thức commentThreads.insert
trả về lỗi này để cho biết tài nguyêncomment
đang được chèn chứa quá nhiều ký tự trong thuộc tínhsnippet.topLevelComment.snippet.textOriginal
.invalidValue (400)
videoAlreadyInAnotherSeriesPlaylist
Phương thức playlistItems.insert
trả về lỗi này để cho biết rằng video bạn đang cố gắng thêm vào danh sách phát đã có trong một danh sách phát theo bộ khác. Hãy xem Trung tâm trợ giúp của YouTube để biết thêm thông tin về danh sách phát theo bộ.badRequest (400)
subscriptionForbidden
Phương thức subscriptions.insert
trả về lỗi này để cho biết rằng bạn đã đạt đến số lượng gói thuê bao tối đa hoặc bạn đã tạo quá nhiều gói thuê bao gần đây. Trong trường hợp thứ hai, bạn có thể thử lại yêu cầu sau vài giờ.badRequest (400)
invalidCategoryId
Phương thức videos.update
trả về lỗi này để cho biết rằng thuộc tínhsnippet.categoryId
trong tài nguyênvideo
đã tải lên đã chỉ định mã danh mục không hợp lệ. Sử dụng phương thứcvideoCategories.list
để truy xuất các danh mục được hỗ trợ.badRequest (400)
invalidDescription
Phương thức videos.update
trả về lỗi này để cho biết rằng thuộc tínhsnippet.description
trong tài nguyênvideo
đã tải lên đã chỉ định một giá trị không hợp lệ.badRequest (400)
invalidPublishAt
Phương thức videos.update
trả về lỗi này để cho biết rằng thuộc tínhstatus.publishAt
trong tài nguyênvideo
đã tải lên đã chỉ định thời gian phát hành theo lịch không hợp lệ.badRequest (400)
invalidRecordingDetails
Phương thức videos.update
trả về lỗi này để cho biết rằng đối tượngrecordingDetails
trong tài nguyênvideo
đã tải lên đã chỉ định thông tin ghi không hợp lệ.badRequest (400)
invalidTags
Phương thức videos.update
trả về lỗi này để cho biết rằng thuộc tínhsnippet.tags
trong tài nguyênvideo
đã tải lên đã chỉ định một giá trị không hợp lệ.badRequest (400)
invalidTitle
Phương thức videos.update
trả về lỗi này để cho biết rằng thuộc tínhsnippet.title
trong tài nguyênvideo
đã tải lên đã chỉ định tiêu đề video không hợp lệ hoặc trống.badRequest (400)
invalidVideoMetadata
Phương thức videos.update
trả về lỗi này để cho biết siêu dữ liệu yêu cầu không hợp lệ. Lỗi này xảy ra nếu yêu cầu cập nhật phầnsnippet
của tài nguyênvideo
nhưng không đặt giá trị cho cả thuộc tínhsnippet.title
vàsnippet.categoryId
.
Ngày 18 tháng 12 năm 2015
Theo luật của Liên minh Châu Âu (EU), bạn phải công bố một số thông tin nhất định và nhận được sự đồng ý của người dùng cuối ở EU. Do đó, đối với người dùng cuối ở Liên minh Châu Âu, bạn phải tuân thủ Chính sách về sự đồng ý của người dùng ở Liên minh Châu Âu. Chúng tôi đã thêm thông báo về yêu cầu này vào Điều khoản dịch vụ của API YouTube.
Ngày 19 tháng 11 năm 2015
API hiện hỗ trợ khả năng đặt và truy xuất văn bản đã bản địa hoá cho thuộc tính snippet.title
và snippet.description
của tài nguyên playlist
và video
, thuộc tính snippet.title
của tài nguyên channelSection
và thuộc tính snippet.description
của tài nguyên channel
.
-
Đặt tiêu đề và nội dung mô tả đã bản địa hoá
Bạn có thể đặt giá trị đã bản địa hoá cho một tài nguyên khi gọi phương thức
insert
hoặcupdate
cho tài nguyên đó. Để đặt giá trị đã bản địa hoá cho một tài nguyên, hãy làm cả hai việc sau:-
Đảm bảo rằng bạn đã đặt giá trị cho thuộc tính
snippet.defaultLanguage
của tài nguyên. Thuộc tính đó xác định ngôn ngữ của các thuộc tínhsnippet.title
vàsnippet.description
của tài nguyên. Giá trị của thuộc tính này có thể là bất kỳ ngôn ngữ ứng dụng được hỗ trợ nào hoặc hầu hết các mã ngôn ngữ ISO 639-1:2002 khác. Ví dụ: nếu tải một video có tiêu đề và nội dung mô tả bằng tiếng Anh lên, bạn sẽ đặt thuộc tínhsnippet.defaultLanguage
thànhen
.Lưu ý khi cập nhật tài nguyên
channel
: Để đặt thuộc tínhsnippet.defaultLanguage
cho tài nguyênchannel
, bạn thực sự cần cập nhật thuộc tínhbrandingSettings.channel.defaultLanguage
. -
Thêm đối tượng
localizations
vào tài nguyên mà bạn đang cập nhật. Mỗi khoá đối tượng là một chuỗi xác định ngôn ngữ của ứng dụng hoặc mã ngôn ngữ ISO 639-1:2002, và mỗi khoá liên kết với một đối tượng chứa tiêu đề (và nội dung mô tả) đã bản địa hoá cho tài nguyên.Đoạn mã mẫu bên dưới đặt ngôn ngữ mặc định của tài nguyên thành tiếng Anh. Công cụ này cũng thêm tiêu đề và nội dung mô tả đã bản địa hoá bằng tiếng Đức và tiếng Tây Ban Nha vào video:
{ "kind": "youtube#video", ... "snippet": { "title": "Playing soccer", "description": "We play soccer in the park on Sundays.", "defaultLanguage": "en", ... }, "localizations": "de": { "title": "Fußball spielen", "description": "Wir spielen Fußball im Park am Sonntag" }, "es": { "title": "Jugar al fútbol", "description": "Nosotros jugamos fútbol en el parque los domingos", } } }
Lưu ý quan trọng: Hãy nhớ rằng khi bạn cập nhật dữ liệu đã bản địa hoá cho một tài nguyên, yêu cầu API của bạn phải bao gồm tất cả các phiên bản dữ liệu đã bản địa hoá hiện có. Ví dụ: nếu bạn gửi một yêu cầu tiếp theo để thêm dữ liệu tiếng Bồ Đào Nha vào video trong ví dụ trên, thì yêu cầu đó cần phải bao gồm dữ liệu đã bản địa hoá cho tiếng Đức, tiếng Tây Ban Nha và tiếng Bồ Đào Nha.
-
-
Truy xuất giá trị đã bản địa hoá
API hỗ trợ hai cách để truy xuất giá trị đã bản địa hoá cho một tài nguyên:
-
Thêm tham số
hl
vào yêu cầuchannels.list
,channelSections.list
,playlists.list
hoặcvideos.list
để truy xuất dữ liệu đã bản địa hoá cho một ngôn ngữ ứng dụng cụ thể mà trang web YouTube hỗ trợ. Nếu có thông tin chi tiết về tài nguyên được bản địa hoá bằng ngôn ngữ đó, thì đối tượngsnippet.localized
của tài nguyên sẽ chứa các giá trị được bản địa hoá. Tuy nhiên, nếu không có thông tin chi tiết được bản địa hoá, thì đối tượngsnippet.localized
sẽ chứa thông tin chi tiết về tài nguyên bằng ngôn ngữ mặc định của tài nguyên.Ví dụ: giả sử một yêu cầu
videos.list
đã truy xuất dữ liệu cho video được mô tả ở trên bằng dữ liệu đã bản địa hoá bằng tiếng Đức và tiếng Tây Ban Nha. Nếu bạn đặt tham sốhl
thànhde
, thì tài nguyên sẽ chứa dữ liệu sau:{ "kind": "youtube#video", ... "snippet": { "title": "Playing soccer", "description": "We play soccer in the park on Sundays.", "defaultLanguage": "en", "localized": { "title": "Fußball spielen", "description": "Wir spielen Fußball im Park am Sonntag" } ... } }
Tuy nhiên, nếu bạn đặt tham số
hl
thànhfr
, thì đối tượngsnippet.localized
sẽ chứa tiêu đề và nội dung mô tả bằng tiếng Anh vì tiếng Anh là ngôn ngữ mặc định cho tài nguyên và không có thông tin chi tiết được bản địa hoá bằng tiếng Pháp.Lưu ý quan trọng: Tham sốhl
chỉ hỗ trợ các giá trị xác định ngôn ngữ ứng dụng mà trang web YouTube hỗ trợ. Để xác định xem có văn bản được bản địa hoá cho các ngôn ngữ khác hay không, bạn cần truy xuất phầnlocalizations
cho tài nguyên và bộ lọc để xác định xem có văn bản được bản địa hoá hay không.
Ví dụ: bạn cần truy xuất danh sách đầy đủ các bản địa hoá để xác định xem có văn bản được bản địa hoá bằng tiếng Anh Appalachian hay không.
-
Khi truy xuất tài nguyên, hãy đưa
localizations
vào giá trị tham sốpart
để truy xuất tất cả thông tin chi tiết đã bản địa hoá cho tài nguyên đó. Nếu đang truy xuất dữ liệu bản địa hoá cho một ngôn ngữ không phải là ngôn ngữ hiện tại của ứng dụng YouTube, bạn cần sử dụng phương pháp này để truy xuất tất cả bản địa hoá, sau đó lọc để xác định xem dữ liệu bản địa hoá mong muốn có tồn tại hay không.
-
-
Lỗi liên quan đến giá trị văn bản đã bản địa hoá
API này cũng hỗ trợ các lỗi mới sau đây đối với giá trị văn bản được bản địa hoá:
Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest (400)
defaultLanguageNotSetError
Lỗi này cho biết yêu cầu cố gắng chèn hoặc cập nhật đối tượng localizations
cho một tài nguyên không thành công vì thuộc tínhsnippet.defaultLanguage
không được đặt cho tài nguyên đó. Các phương thứcchannels.update
,channelSections.insert
,channelSections.update
,playlists.insert
,playlists.update
,videos.insert
vàvideos.update
hỗ trợ lỗi này.badRequest (400)
localizationValidationError
Lỗi này cho biết một trong các giá trị trong đối tượng localizations
của tài nguyên không được xác thực. Ví dụ: lỗi này có thể xảy ra nếu đối tượng chứa mã ngôn ngữ không hợp lệ. Các phương thứcchannels.update
,channelSections.insert
,channelSections.update
,playlists.insert
vàplaylists.update
hỗ trợ lỗi này.
Ngày 4 tháng 11 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Nội dung cập nhật đối với các tài nguyên và phương thức hiện có
-
Tham số
order
của phương thứcsearch.list
đã được cập nhật để lưu ý rằng nếu bạn sắp xếp các sự kiện phát trực tiếp theoviewCount
, thì kết quả API sẽ được sắp xếp theo số lượng người xem đồng thời của các sự kiện phát trực tiếp trong khi các sự kiện phát trực tiếp vẫn đang diễn ra. -
Tham số
relatedToVideoId
của phương thứcsearch.list
đã được cập nhật để lưu ý rằng nếu bạn đặt tham số này, thì các tham số khác được hỗ trợ chỉ làpart
,maxResults
,pageToken
,regionCode
,relevanceLanguage
,safeSearch
,type
(phải được đặt thànhvideo
) vàfields
. Nội dung cập nhật này không phản ánh sự thay đổi trong hành vi của API. -
Chúng tôi đã cập nhật định nghĩa của thuộc tính
snippet.publishedAt
của tài nguyênvideo
để lưu ý rằng giá trị thuộc tính (chỉ định ngày và giờ xuất bản video) có thể khác với thời gian tải video lên. Ví dụ: nếu một video được tải lên ở chế độ riêng tư rồi sau đó chuyển sang chế độ công khai, thì giá trị thuộc tính này sẽ chỉ định thời điểm video được chuyển sang chế độ công khai. Định nghĩa mới cũng giải thích cách điền giá trị này cho video riêng tư và video không công khai.Thay đổi này không phản ánh sự thay đổi trong hành vi của API.
-
Chúng tôi đã cập nhật định nghĩa của thuộc tính
status.publishAt
của tài nguyênvideo
để lưu ý:- Nếu đặt giá trị của thuộc tính này khi gọi phương thức
videos.update
, bạn cũng phải đặt giá trị thuộc tínhstatus.privacyStatus
thànhprivate
ngay cả khi video đã ở chế độ riêng tư. - Nếu yêu cầu lên lịch xuất bản video vào một thời điểm trong quá khứ, thì video đó sẽ được xuất bản ngay lập tức. Do đó, hiệu quả của việc đặt thuộc tính
status.publishAt
thành ngày và giờ trong quá khứ cũng giống như hiệu quả của việc thay đổiprivacyStatus
của video từprivate
thànhpublic
.
- Nếu đặt giá trị của thuộc tính này khi gọi phương thức
-
Thuộc tính
contentDetails.contentRating.cncRating
của tài nguyênvideo
chỉ định mức phân loại của video theo Commission de classification cinematographique của Pháp. Thuộc tính này thay thế cho thuộc tínhcontentDetails.contentRating.fmocRating
hiện không được dùng nữa. -
Định nghĩa của brandingSettings.channel.keywords của tài nguyên
channel
đã được cập nhật để phản ánh chính xác rằng giá trị thuộc tính chứa danh sách chuỗi được phân tách bằng dấu cách chứ không phải danh sách được phân tách bằng dấu phẩy như đã ghi nhận trước đó. Nội dung cập nhật này không phản ánh sự thay đổi trong hành vi của API. -
Tài liệu về phương thức
thumbnails.set
đã được cập nhật để phản ánh chính xác rằng nội dung của yêu cầu chứa hình thu nhỏ mà bạn đang tải lên và liên kết với một video. Nội dung yêu cầu không chứa tài nguyênthumbnail
. Trước đây, tài liệu cho biết bạn không nên cung cấp nội dung yêu cầu khi gọi phương thức này. Nội dung cập nhật này không phản ánh sự thay đổi trong hành vi của API. -
Phần mô tả tài nguyên
activity
đã được cập nhật để phản ánh thực tế là phương thứcactivities.list
hiện không bao gồm các tài nguyên liên quan đến bình luận mới trên video.snippet.type
vàcontentDetails.comment
của tài nguyên cũng đã được cập nhật.
-
-
Lỗi mới và lỗi đã cập nhật
-
API hiện hỗ trợ các lỗi sau:
Chi tiết về lỗi activities.insert
Mã phản hồi HTTP badRequest (400)
Lý do invalidMetadata
Mô tả Thuộc tính kind
không khớp với loại mã nhận dạng được cung cấp.commentThreads.update
comments.insert
comments.update
Mã phản hồi HTTP badRequest (400)
Lý do commentTextTooLong
Mô tả Tài nguyên comment
đang được chèn hoặc cập nhật chứa quá nhiều ký tự trong thuộc tínhsnippet.topLevelComment.snippet.textOriginal
.playlistItems.insert
playlistItems.update
Mã phản hồi HTTP forbidden (403)
Lý do playlistItemsNotAccessible
Mô tả Yêu cầu không được uỷ quyền đúng cách để chèn, cập nhật hoặc xoá mục danh sách phát đã chỉ định. playlists.delete
playlists.insert
playlists.update
Mã phản hồi HTTP badRequest (400)
Lý do playlistForbidden
Mô tả Thao tác này bị cấm hoặc yêu cầu không được uỷ quyền đúng cách. search.list
Mã phản hồi HTTP badRequest (400)
Lý do invalidLocation
Mô tả Giá trị thông số location
và/hoặclocationRadius
được định dạng không chính xác.search.list
Mã phản hồi HTTP badRequest (400)
Lý do invalidRelevanceLanguage
Mô tả Giá trị thông số relevanceLanguage
được định dạng không chính xác.subscriptions.insert
Mã phản hồi HTTP badRequest (400)
Lý do subscriptionForbidden
Mô tả Lỗi này xảy ra khi bất kỳ điều kiện nào sau đây là đúng: - Gói thuê bao mà bạn đang cố gắng tạo đã tồn tại
- Bạn đã đạt đến số lượng gói thuê bao tối đa
- Bạn đang cố đăng ký theo dõi kênh của chính mình. Chúng tôi không hỗ trợ việc này.
- Gần đây, bạn đã tạo quá nhiều gói thuê bao nên cần phải chờ vài giờ trước khi thử lại yêu cầu.
videos.update
Mã phản hồi HTTP badRequest (400)
Lý do invalidDefaultBroadcastPrivacySetting
Mô tả Yêu cầu này cố gắng đặt chế độ cài đặt quyền riêng tư không hợp lệ cho thông báo truyền tin mặc định.
-
Ngày 28 tháng 8 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Nội dung cập nhật đối với các tài nguyên và phương thức hiện có
-
Thuộc tính
statistics.favoriteCount
của tài nguyênvideo
không được dùng nữa.Theo chính sách ngừng sử dụng của chúng tôi, thuộc tính này sẽ tiếp tục được đưa vào tài nguyên
video
trong ít nhất một năm sau khi có thông báo này. Tuy nhiên, giá trị thuộc tính hiện luôn được đặt thành0
.
-
Ngày 7 tháng 8 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Nội dung cập nhật đối với các tài nguyên và phương thức hiện có
-
Định nghĩa của thuộc tính
snippet.tags[]
của tài nguyênvideo
đã được cập nhật để cung cấp thêm thông tin về cách máy chủ API tính toán độ dài của giá trị thuộc tính. Xin lưu ý rằng nội dung cập nhật này không phản ánh sự thay đổi trong hành vi của API.Cụ thể, định nghĩa hiện giải thích rằng nếu một thẻ chứa dấu cách, thì máy chủ API sẽ xử lý giá trị thẻ như thể giá trị đó được gói trong dấu ngoặc kép và dấu ngoặc kép sẽ tính vào giới hạn ký tự. Vì vậy, đối với giới hạn ký tự, thẻ Foo-Baz chứa 7 ký tự, nhưng thẻ Foo Baz chứa 9 ký tự.
-
Phương thức
commentThreads.insert
không còn hỗ trợ tham sốshareOnGooglePlus
. Trước đây, tham số này cho biết liệu bình luận và các câu trả lời cho bình luận đó có được đăng lên hồ sơ Google+ của tác giả hay không. Nếu một yêu cầu gửi thông số, máy chủ API sẽ bỏ qua thông số đó nhưng xử lý yêu cầu.
-
Ngày 18 tháng 6 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Nội dung cập nhật đối với các tài nguyên và phương thức hiện có
-
Tham số
order
mới của phương thứccommentThreads.list
chỉ định thứ tự mà phản hồi API sẽ liệt kê các chuỗi bình luận. Bạn có thể sắp xếp các chuỗi tin nhắn theo thời gian hoặc mức độ liên quan. Hành vi mặc định là sắp xếp các sự kiện theo thời gian. -
Thuộc tính
snippet.defaultAudioLanguage
mới của tài nguyênvideo
chỉ định ngôn ngữ được nói trong bản âm thanh mặc định của video. -
Chúng tôi đã cập nhật định nghĩa của thuộc tính
contentDetails.licensedContent
của tài nguyênvideo
để làm rõ rằng nội dung phải được tải lên một kênh liên kết với đối tác nội dung của YouTube, sau đó được đối tác đó xác nhận quyền sở hữu. Điều này không thể hiện sự thay đổi trong hành vi thực tế của API. -
Các phương thức
captions.delete
,captions.download
,captions.insert
,captions.list
vàcaptions.update
hiện hỗ trợ tham sốonBehalfOfContentOwner
, tham số này đã được hỗ trợ cho một số phương thức khác. Các yêu cầu sử dụng phương thức đó cũng cần được uỷ quyền bằng mã thông báo cấp quyền truy cập vào phạm vihttps://www.googleapis.com/auth/youtubepartner
.
-
-
Lỗi mới và lỗi đã cập nhật
-
API hiện hỗ trợ các lỗi sau:
Chi tiết về lỗi videos.rate
Mã phản hồi HTTP badRequest (400)
Lý do emailNotVerified
Mô tả Người dùng phải xác minh địa chỉ email của mình trước khi đánh giá video. videos.rate
Mã phản hồi HTTP badRequest (400)
Lý do videoPurchaseRequired
Mô tả Chỉ những người dùng đã thuê video mới có thể xếp hạng video thuê. -
Phương thức
subscriptions.delete
vàsubscriptions.insert
không còn hỗ trợ lỗiaccountClosed
vàaccountSuspended
nữa.
-
Ngày 27 tháng 4 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Các tài nguyên và phương thức mới
-
Tài nguyên
videoAbuseReportReason
mới chứa thông tin về lý do một video bị gắn cờ do chứa nội dung sai trái. Phương thứcvideoAbuseReportReasons.list
cho phép bạn truy xuất danh sách tất cả lý do khiến video có thể bị gắn cờ. -
Phương thức
videos.reportAbuse
mới cung cấp cách thực sự gắn cờ video có chứa nội dung sai trái. Nội dung của yêu cầu này chứa một đối tượng JSON chỉ định video đang bị gắn cờ cũng như lý do video đó bị coi là chứa nội dung sai trái. Bạn có thể lấy lý do hợp lệ từ phương thứcvideoAbuseReportReason.list
được mô tả ở trên.Hướng dẫn di chuyển cũng đã được cập nhật bằng một ví dụ về cách báo cáo video có hành vi sai trái. Với thay đổi này, API phiên bản 3 hiện hỗ trợ tất cả các tính năng API phiên bản 2 mà API phiên bản 3 dự kiến sẽ hỗ trợ. Các tính năng này cũng được giải thích trong hướng dẫn di chuyển.
-
-
Nội dung cập nhật đối với các tài nguyên và phương thức hiện có
-
Thông số bộ lọc
forDeveloper
mới của phương thứcsearch.list
hạn chế một lượt tìm kiếm chỉ truy xuất những video được tải lên thông qua ứng dụng hoặc trang web của nhà phát triển. Bạn có thể sử dụng tham sốforDeveloper
kết hợp 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 được tải lên sẽ tự động được gắn thẻ bằng mã số dự án được liên kết với ứng dụng của nhà phát triển trong Google Developers Console.
Khi một yêu cầu tìm kiếm sau đó đặt tham số
forDeveloper
thànhtrue
, máy chủ API sẽ sử dụng thông tin xác thực uỷ quyền của yêu cầu đó để xác định nhà phát triển. Do đó, nhà phát triển có thể giới hạn kết quả chỉ cho những video được tải lên thông qua ứng dụng hoặc trang web của chính nhà phát triển, chứ không phải cho những video được tải lên thông qua các ứng dụng hoặc trang web khác.Tính năng mới này cung cấp chức năng tương tự, mặc dù không giống hệt với chức năng thẻ nhà phát triển mà API v2 hỗ trợ.
-
Thuộc tính
snippet.country
mới của tài nguyênchannel
cho phép chủ sở hữu kênh liên kết kênh của họ với một quốc gia cụ thể.Lưu ý: Để đặt thuộc tính
snippet.country
cho tài nguyênchannel
, bạn thực sự cần cập nhật thuộc tínhbrandingSettings.channel.country
. -
API hiện hỗ trợ tính năng nhắm mục tiêu cho tài nguyên
channelSection
. Tính năng nhắm mục tiêu theo phần kênh giúp bạn hạn chế việc hiển thị một phần nội dung cho những người dùng phù hợp với các tiêu chí cụ thể.API này hiển thị 3 tuỳ chọn nhắm mục tiêu. Người dùng phải đáp ứng tất cả chế độ cài đặt nhắm mục tiêu để một phần kênh xuất hiện.
-
targeting.languages[]
: Danh sách ngôn ngữ ứng dụng YouTube. Những người dùng đã chọn một trong những ngôn ngữ đó có thể thấy phần kênh tương ứng. -
targeting.regions[]
: Danh sách các khu vực có nội dung ưu tiên trên YouTube. Phần kênh sẽ hiển thị cho những người dùng đã chọn một trong những khu vực đó cũng như những người dùng mà hệ thống tự động chọn một trong những khu vực đó. -
targeting.countries[]
: Danh sách quốc gia có thể xem phần kênh. Mỗi giá trị trong danh sách là một mã quốc gia theo ISO 3166-1 alpha-2.
-
-
Định nghĩa của thuộc tính
contentDetails.duration
của tài nguyênvideo
đã được sửa để phản ánh rằng giá trị có thể phản ánh giờ, ngày, v.v. -
Tài liệu về phương thức
channelSections.delete
,playlistItems.delete
,playlists.delete
,subscriptions.delete
vàvideos.delete
đã được sửa để phản ánh rằng khi thành công, tất cả các phương thức đó đều trả về mã phản hồi204
HTTP (No Content
).
-
-
Lỗi mới và lỗi đã cập nhật
-
API hiện hỗ trợ các lỗi sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest (400)
targetInvalidCountry
Phương thức channelSections.insert
vàchannelSections.update
trả về lỗi này nếu tài nguyênchannelSection
được chèn chứa giá trị không hợp lệ cho thuộc tínhtargeting.countries[]
.badRequest (400)
targetInvalidLanguage
Phương thức channelSections.insert
vàchannelSections.update
trả về lỗi này nếu tài nguyênchannelSection
được chèn chứa giá trị không hợp lệ cho thuộc tínhtargeting.languages[]
.badRequest (400)
targetInvalidRegion
Phương thức channelSections.insert
vàchannelSections.update
trả về lỗi này nếu tài nguyênchannelSection
được chèn chứa giá trị không hợp lệ cho thuộc tínhtargeting.regions[]
.badRequest (400)
operationNotSupported
Phương thức comments.insert
trả về lỗi này nếu người dùng API không thể chèn nhận xét để trả lời nhận xét cấp cao nhất do thuộc tínhsnippet.parentId
xác định. Trong tài nguyêncommentThread
, thuộc tínhsnippet.canReply
cho biết liệu người xem hiện tại có thể trả lời chuỗi tin nhắn hay không.badRequest (400)
invalidChannelId
Phương thức search.list
sẽ trả về lỗi này nếu tham sốchannelId
trong yêu cầu chỉ định mã nhận dạng kênh không hợp lệ.badRequest (400)
subscriptionForbidden
Phương thức subscriptions.insert
sẽ trả về lỗi này nếu người dùng API cố gắng đăng ký theo dõi kênh của chính người dùng đó. -
Phương thức
captions.update
không còn hỗ trợ lỗiinvalidMetadata
vàvideoNotFound
nữa.
-
Ngày 16 tháng 4 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Hướng dẫn di chuyển đã được cập nhật để giải thích cách di chuyển các ứng dụng vẫn sử dụng chức năng nhận xét từ API phiên bản 2.
Hướng dẫn này cũng nêu một số tính năng bình luận mà API phiên bản 2 không hỗ trợ nhưng được hỗ trợ trong API phiên bản 3. bao gồm:
- Truy xuất bình luận về một kênh
- Truy xuất tất cả chuỗi bình luận liên quan đến một kênh. Điều này có nghĩa là phản hồi của API có thể chứa các bình luận về kênh hoặc bất kỳ video nào của kênh đó.
- Cập nhật văn bản của một nhận xét
- Đánh dấu bình luận là vi phạm
- Đặt trạng thái kiểm duyệt của bình luận
-
Chúng tôi đã cập nhật hướng dẫn Đăng ký nhận thông báo đẩy để phản ánh việc thông báo chỉ được đẩy đến trung tâm Google PubSubHubBub chứ không phải trung tâm Superfeedr như đã chỉ định trước đó.
Ngày 9 tháng 4 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài nguyên
commentThread
vàcomment
mới của API cho phép bạn truy xuất, chèn, cập nhật, xoá và kiểm duyệt bình luận.-
Tài nguyên
commentThread
chứa thông tin về một chuỗi bình luận trên YouTube, bao gồm một bình luận cấp cao nhất và các câu trả lời (nếu có) cho bình luận đó. Tài nguyêncommentThread
có thể đại diện cho các bình luận về một video hoặc một kênh.Bình luận cấp cao nhất và các câu trả lời thực sự là tài nguyên
comment
được lồng bên trong tài nguyêncommentThread
. Điều quan trọng cần lưu ý là tài nguyêncommentThread
không nhất thiết phải chứa tất cả các câu trả lời cho một bình luận và bạn cần sử dụng phương thứccomments.list
nếu muốn truy xuất tất cả các câu trả lời cho một bình luận cụ thể. Ngoài ra, một số bình luận không có câu trả lời.API này hỗ trợ các phương thức sau đây cho tài nguyên
commentThread
:commentThreads.list
– Truy xuất danh sách chuỗi bình luận. Sử dụng phương thức này để truy xuất các bình luận liên kết với một video hoặc kênh cụ thể.commentThreads.insert
– Tạo một nhận xét cấp cao nhất mới. (Sử dụng phương thứccomments.insert
để trả lời một nhận xét hiện có.)commentThreads.update
– Sửa đổi nhận xét cấp cao nhất.
-
Tài nguyên
comment
chứa thông tin về một bình luận trên YouTube. Tài nguyêncomment
có thể đại diện cho một bình luận về video hoặc kênh. Ngoài ra, bình luận có thể là bình luận cấp cao nhất hoặc bình luận trả lời bình luận cấp cao nhất.API này hỗ trợ các phương thức sau đây cho tài nguyên
comment
:comments.list
– Truy xuất danh sách nhận xét. Sử dụng phương thức này để truy xuất tất cả các câu trả lời cho một bình luận cụ thể.comments.insert
– Tạo một bình luận trả lời.comments.update
– Sửa đổi nhận xét.comments.markAsSpam
– Gắn cờ một hoặc nhiều bình luận là vi phạm.comments.setModerationStatus
– Đặt trạng thái kiểm duyệt cho một hoặc nhiều bình luận. Ví dụ: xoá một bình luận để hiển thị công khai hoặc từ chối một bình luận vì không phù hợp để hiển thị. Yêu cầu API phải được chủ sở hữu của kênh hoặc video liên kết với các bình luận đó cho phép.comments.delete
– Xoá bình luận.
Xin lưu ý rằng phạm vi
https://www.googleapis.com/auth/youtube.force-ssl
mới của API, được mô tả trong nhật ký sửa đổi ngày 2 tháng 4 năm 2015, là bắt buộc đối với các lệnh gọi đến phương thứccomments.insert
,comments.update
,comments.markAsSpam
,comments.setModerationStatus
,comments.delete
,commentThreads.insert
vàcommentThreads.update
. -
-
Hướng dẫn mới về Đăng ký thông báo đẩy giải thích tính năng hỗ trợ mới của API cho thông báo đẩy thông qua PubSubHubBub, một giao thức phát hành/đăng ký từ máy chủ đến máy chủ cho các tài nguyên có thể truy cập trên web. Máy chủ gọi lại PubSubHubBub có thể nhận thông báo về nguồn cấp dữ liệu Atom khi một kênh thực hiện bất kỳ hoạt động nào sau đây:
- tải video lên
- cập nhật tiêu đề của video
- cập nhật nội dung mô tả của video
-
Hướng dẫn di chuyển cũng đã được cập nhật để lưu ý về tính năng hỗ trợ mới cho thông báo đẩy. Tuy nhiên, vì API phiên bản 2 hỗ trợ nhiều loại thông báo đẩy khác không được hỗ trợ trong API phiên bản 3, nên nội dung đề cập đến việc hỗ trợ PubSubHubBub vẫn được liệt kê trong phần Không dùng nữa của hướng dẫn đó.
-
Phạm vi
https://www.googleapis.com/auth/youtube.force-ssl
mới của API hiện là phạm vi hợp lệ cho mọi phương thức API trước đây đã hỗ trợ phạm vihttps://www.googleapis.com/auth/youtube
. -
API hiện hỗ trợ các lỗi sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest (400)
invalidRating
Phương thức videos.rate
trả về lỗi này nếu yêu cầu chứa một giá trị không mong muốn cho tham sốrating
. -
Phương thức
subscriptions.insert
không còn hỗ trợ lỗisubscriptionLimitExceeded
. Trước đây, lỗi này cho biết rằng người đăng ký được xác định bằng yêu cầu đã vượt quá giới hạn tỷ lệ gói thuê bao.
Ngày 2 tháng 4 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài nguyên
captions
mới đại diện cho một bản phụ đề trên YouTube. Một bản phụ đề được liên kết với đúng một video trên YouTube.API này hỗ trợ các phương thức để liệt kê, chèn, cập nhật, tải xuống và xoá các bản lồng tiếng.
-
Hướng dẫn di chuyển cũng đã được cập nhật để giải thích cách di chuyển các ứng dụng vẫn sử dụng chức năng phụ đề trong API phiên bản 2.
-
Phạm vi
https://www.googleapis.com/auth/youtube.force-ssl
mới của API yêu cầu giao tiếp với máy chủ API phải diễn ra qua kết nối SSL.Phạm vi mới này cấp quyền truy cập giống như phạm vi
https://www.googleapis.com/auth/youtube
. Và trên thực tế, hai phạm vi đó giống hệt nhau về chức năng vì máy chủ API YouTube chỉ có sẵn thông qua điểm cuối HTTPS. Do đó, mặc dù phạm vihttps://www.googleapis.com/auth/youtube
không yêu cầu kết nối SSL, nhưng thực tế không có cách nào khác để tạo yêu cầu API.Bạn cần có phạm vi mới cho các lệnh gọi đến tất cả phương thức của tài nguyên
caption
.
Ngày 11 tháng 3 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Hướng dẫn di chuyển API dữ liệu YouTube (phiên bản 3) có một thẻ mới có tên là Tính năng mới trong API phiên bản 3. Thẻ này liệt kê các tính năng mà API phiên bản 3 hỗ trợ và API phiên bản 2 không hỗ trợ. Các tính năng tương tự trước đây và vẫn được liệt kê trong các thẻ khác trong hướng dẫn. Ví dụ: tính năng mới giải thích cách cập nhật dữ liệu về chiến dịch quảng bá trong video của một kênh cũng được liệt kê trong thẻ Kênh (hồ sơ).
-
Chúng tôi đã cập nhật hướng dẫn di chuyển YouTube Data API (phiên bản 3) để lưu ý rằng API phiên bản 3 sẽ hỗ trợ tính năng sau đây của API phiên bản 2:
-
Hướng dẫn di chuyển API Dữ liệu YouTube (phiên bản 3) đã được cập nhật để lưu ý rằng các tính năng API v2 sau đây sẽ không được hỗ trợ trong API v3:
-
Truy xuất video đề xuất – API phiên bản 3 không truy xuất danh sách chỉ chứa những video được đề xuất cho người dùng API hiện tại. Tuy nhiên, bạn có thể sử dụng API phiên bản 3 để tìm các video đề xuất bằng cách gọi phương thức
activities.list
và đặt giá trị thông sốhome
thànhtrue
.Trong phản hồi API, một tài nguyên tương ứng với một video được đề xuất nếu giá trị của thuộc tính
snippet.type
làrecommendation
. Trong trường hợp đó, các thuộc tínhcontentDetails.recommendation.reason
vàcontentDetails.recommendation.seedResourceId
sẽ chứa thông tin về lý do video được đề xuất. Xin lưu ý rằng chúng tôi không đảm bảo rằng phản hồi sẽ chứa một số lượng video đề xuất cụ thể. -
Truy xuất video mới trong danh sách kênh đăng ký – API phiên bản 3 không truy xuất danh sách chỉ chứa những video mới được tải lên các kênh mà người dùng API đăng ký theo dõi. Tuy nhiên, bạn có thể sử dụng API phiên bản 3 để tìm các video mới của kênh đăng ký bằng cách gọi phương thức
activities.list
và đặt giá trị thông sốhome
thànhtrue
.Trong phản hồi API, một tài nguyên tương ứng với một video mới trong danh sách kênh đăng ký nếu giá trị của thuộc tính
snippet.type
làupload
. Xin lưu ý rằng chúng tôi không đảm bảo rằng phản hồi sẽ chứa một số lượng video mới cụ thể trong danh sách kênh đăng ký. -
Thông báo đẩy cho nội dung cập nhật của nguồn cấp dữ liệu – API phiên bản 2 hỗ trợ thông báo đẩy, sử dụng Giao thức cập nhật đơn giản (SUP) hoặc PubSubHubbub để theo dõi nguồn cấp dữ liệu hoạt động của người dùng YouTube. Thông báo được gửi khi có người đăng ký kênh mới và khi video được đánh giá, chia sẻ, đánh dấu là video yêu thích, bình luận hoặc tải lên.
API phiên bản 3 sẽ hỗ trợ thông báo đẩy bằng giao thức PubSubHubbub, nhưng thông báo sẽ chỉ bao gồm các video tải lên và nội dung cập nhật cho tiêu đề hoặc nội dung mô tả video.
-
Vị trí của kênh – API phiên bản 2 sử dụng thẻ
<yt:location>
để xác định vị trí của người dùng như đã nhập trong hồ sơ công khai của kênh trên YouTube. Mặc dù một số nhà phát triển đã sử dụng trường này để liên kết một kênh với một quốc gia cụ thể, nhưng dữ liệu của trường này không thể được sử dụng nhất quán cho mục đích đó. -
Đặt hoặc truy xuất thẻ nhà phát triển – API phiên bản 2 hỗ trợ khả năng liên kết từ khoá hoặc thẻ nhà phát triển với một video tại thời điểm video được tải lên. Người dùng YouTube sẽ không thấy thẻ nhà phát triển, nhưng chủ sở hữu video có thể truy xuất những video khớp với một thẻ nhà phát triển cụ thể.
API phiên bản 3 sẽ cung cấp một tính năng tương tự nhưng không giống hệt. Cụ thể, nhà phát triển có thể tìm kiếm video do ứng dụng của chính nhà phát triển tải lên. Đối với tính năng này, mỗi video được tải lên sẽ tự động được gắn thẻ bằng mã số dự án được liên kết với ứng dụng của nhà phát triển trong Google Developers Console. Sau đó, nhà phát triển sử dụng cùng một số dự án để tìm video.
-
Liệt kê video theo ngày phát hành, số lượt xem hoặc điểm xếp hạng – Trong API phiên bản 2, thông số
orderby
cho phép bạn sắp xếp các video trong danh sách phát theo vị trí, thời lượng, ngày phát hành, tiêu đề và một số giá trị khác. Trong API phiên bản 3, các mục trong danh sách phát thường được sắp xếp theo vị trí theo thứ tự tăng dần và không có các tuỳ chọn sắp xếp khác.Tuy nhiên, vẫn có một số ngoại lệ. Video tải lên mới, video yêu thích, video bạn thích hoặc video đã xem gần đây sẽ tự động được thêm làm mục đầu tiên (
snippet.position
=0
) cho các loại danh sách phát sau. Vì vậy, mỗi danh sách này được sắp xếp hiệu quả theo thứ tự từ mới nhất đến cũ nhất dựa trên thời điểm các mục được thêm vào danh sách.- nội dung do người dùng tải lên
- video yêu thích
- video đã thích
- lịch sử xem
Tuy nhiên, xin lưu ý rằng mục mới được thêm vào danh sách phát "Xem sau" sẽ được thêm vào dưới dạng mục cuối cùng trong danh sách đó. Vì vậy, danh sách đó sẽ được sắp xếp hiệu quả từ mục cũ nhất đến mục mới nhất.
-
Xử lý hàng loạt – API phiên bản 3 hỗ trợ một trong những trường hợp sử dụng xử lý hàng loạt mà API phiên bản 2 đã hỗ trợ. Các phương thức
channels.list
,channelSections.list
,guideCategories.list
,playlistItems.list
,playlists.list
,subscriptions.list
,videoCategories.list
vàvideos.list
của API phiên bản 3 đều hỗ trợ tham sốid
. Tham số này có thể dùng để chỉ định danh sách mã nhận dạng được phân tách bằng dấu phẩy (mã video, mã kênh, v.v.). Khi sử dụng các phương thức đó, bạn có thể truy xuất danh sách nhiều tài nguyên bằng một yêu cầu duy nhất.
Với những thay đổi này, hướng dẫn hiện xác định tất cả chức năng được hỗ trợ trong API cũ (phiên bản 2) sẽ không được dùng nữa trong phiên bản API hiện tại (phiên bản 3).
-
Ngày 4 tháng 3 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
channelSections.delete
vàchannelSections.update
hiện hỗ trợ tham sốonBehalfOfContentOwner
, tham số này đã được hỗ trợ cho một số phương thức khác. -
Các thuộc tính sau đây và các thuộc tính con của chúng không còn được dùng nữa:
brandingSettings.image.backgroundImageUrl
brandingSettings.image.largeBrandedBannerImageImapScript
brandingSettings.image.largeBrandedBannerImageUrl
brandingSettings.image.smallBrandedBannerImageImapScript
brandingSettings.image.smallBrandedBannerImageUrl
Lưu ý: Không có tài sản nào trong số này phải tuân thủ Chính sách về việc ngừng sử dụng API.
-
Thuộc tính
contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasons
mới của tài nguyênvideo
xác định lý do giải thích tại sao video nhận được mức phân loại DJCQT (Brazil). -
API hiện hỗ trợ các lỗi sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả notFound (404)
channelNotFound
Phương thức channels.update
sẽ trả về lỗi này nếu tham sốid
của yêu cầu chỉ định một kênh không tìm thấy.badRequest (400)
manualSortRequiredinvalidValue
Phương thức playlistItems.insert
vàplaylistItems.update
trả về lỗi này nếu yêu cầu cố gắng đặt vị trí của mục danh sách phát, nhưng danh sách phát không sử dụng tính năng sắp xếp thủ công. Ví dụ: các mục trong danh sách phát có thể được sắp xếp theo ngày hoặc mức độ phổ biến. Bạn có thể khắc phục lỗi này bằng cách xoá phần tửsnippet.position
khỏi tài nguyên được gửi trong phần nội dung yêu cầu. Nếu muốn mục danh sách phát có một vị trí cụ thể trong danh sách, trước tiên, bạn cần cập nhật chế độ cài đặt thứ tự của danh sách phát thành Thủ công. Bạn có thể điều chỉnh chế độ cài đặt này trong Trình quản lý video của YouTube.forbidden (403)
channelClosed
Phương thức playlists.list
sẽ trả về lỗi này nếu tham sốchannelId
của yêu cầu chỉ định một kênh đã bị đóng.forbidden (403)
channelSuspended
Phương thức playlists.list
sẽ trả về lỗi này nếu tham sốchannelId
của yêu cầu chỉ định một kênh đã bị tạm ngưng.forbidden (403)
playlistForbidden
Phương thức playlists.list
trả về lỗi này nếu tham sốid
của yêu cầu không hỗ trợ yêu cầu hoặc yêu cầu không được uỷ quyền đúng cách.notFound (404)
channelNotFound
Phương thức playlists.list
sẽ trả về lỗi này nếu tham sốchannelId
của yêu cầu chỉ định một kênh không tìm thấy.notFound (404)
playlistNotFound
Phương thức playlists.list
trả về lỗi này nếu tham sốid
của yêu cầu chỉ định một danh sách phát không tìm thấy.notFound (404)
videoNotFound
Phương thức videos.list
sẽ trả về lỗi này nếu tham sốid
của yêu cầu chỉ định một video không tìm thấy.badRequest (400)
invalidRating
Phương thức videos.rate
sẽ trả về lỗi này nếu yêu cầu chứa một giá trị không mong muốn cho tham sốrating
.
Ngày 2 tháng 3 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
search.list
hiện hỗ trợ tham sốrelevanceLanguage
, cho phép bạn yêu cầu kết quả có liên quan nhất đến một ngôn ngữ cụ thể.Hướng dẫn di chuyển YouTube Data API (phiên bản 3) cũng đã được cập nhật để giải thích cách sử dụng thông số mới này. Tham số này giải quyết sự khác biệt về tính năng trước đây giữa phiên bản API hiện tại (phiên bản 3) và phiên bản trước (phiên bản 2) không còn được dùng nữa.
-
Chúng tôi cũng đã cập nhật hướng dẫn di chuyển YouTube Data API (phiên bản 3) để cho biết việc ngừng sử dụng nguồn cấp dữ liệu đặc biệt và các trường siêu dữ liệu mà API phiên bản 2 cung cấp để mô tả phim, đoạn giới thiệu, chương trình truyền hình, mùa truyền hình và tập truyền hình.
Ngày 14 tháng 1 năm 2015
Bản cập nhật này bao gồm các thay đổi sau:
-
Chúng tôi đã cập nhật hướng dẫn di chuyển API Dữ liệu YouTube (phiên bản 3) để giải thích cách sử dụng API phiên bản 3 nhằm tải video lên bằng JavaScript. (Xem phần Tải video lên để biết thông tin chi tiết.) Chức năng này tương đương với chức năng tải lên dựa trên trình duyệt mà API v2 hỗ trợ. Xin lưu ý rằng thay đổi này đối với hướng dẫn di chuyển không phản ánh thay đổi thực tế đối với API mà là việc có sẵn mã mẫu mới để tải video lên bằng JavaScript phía máy khách.
Do tính năng hỗ trợ tải video lên bằng thư viện ứng dụng JavaScript và CORS, hướng dẫn di chuyển không còn liệt kê tính năng tải lên bằng trình duyệt là một tính năng có thể không còn được dùng trong API phiên bản 3.
-
Tài liệu về phương thức
videos.insert
đã được cập nhật để bao gồm mã JavaScript mẫu mới được mô tả ở trên. Danh sách mã mẫu JavaScript cho API Dữ liệu YouTube (phiên bản 3) cũng đã được cập nhật.
Ngày 11 tháng 11 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Chi phí hạn mức cho một lệnh gọi đến phương thức
search.list
đã thay đổi thành 100 đơn vị.Lưu ý quan trọng: Trong nhiều trường hợp, bạn có thể sử dụng các phương thức API khác để truy xuất thông tin với chi phí hạn mức thấp hơn. Ví dụ: hãy cân nhắc 2 cách sau để tìm video được tải lên kênh GoogleDevelopers.
-
Chi phí hạn mức: 100 đơn vị
Gọi phương thức
search.list
và tìm kiếmGoogleDevelopers
. -
Chi phí hạn mức: 6 đơn vị
Gọi phương thức
channels.list
để tìm mã nhận dạng kênh phù hợp. Đặt tham sốforUsername
thànhGoogleDevelopers
và tham sốpart
thànhcontentDetails
. Trong phản hồi API, thuộc tínhcontentDetails.relatedPlaylists.uploads
chỉ định mã danh sách phát cho các video đã tải lên của kênh.Sau đó, hãy gọi phương thức
playlistItems.list
và đặt tham sốplaylistId
thành mã nhận dạng đã chụp và tham sốpart
thànhsnippet
.
-
Ngày 8 tháng 10 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài nguyên
channel
chứa hai thuộc tính mới:-
Thuộc tính
status.longUploadsStatus
cho biết liệu kênh có đủ điều kiện tải video dài hơn 15 phút lên hay không. Thuộc tính này chỉ được trả về nếu chủ sở hữu kênh đã cho phép yêu cầu API. Các giá trị thuộc tính hợp lệ là:allowed
– Kênh có thể tải video dài hơn 15 phút lên.eligible
– Kênh đủ điều kiện tải video dài hơn 15 phút lên nhưng trước tiên phải bật tính năng này.disallowed
– Kênh không thể hoặc không đủ điều kiện tải video dài hơn 15 phút lên.
Hãy xem định nghĩa thuộc tính để biết thêm thông tin về các giá trị này. Trung tâm trợ giúp của YouTube cũng cung cấp thêm thông tin chi tiết về tính năng này.
-
Thuộc tính
invideoPromotion.useSmartTiming
cho biết liệu chiến dịch quảng bá của kênh có sử dụng "thời gian thông minh" hay không. Tính năng này cố gắng hiển thị nội dung quảng bá tại thời điểm video có nhiều khả năng được nhấp vào và ít gây gián đoạn trải nghiệm xem. Tính năng này cũng chọn một video quảng bá để hiển thị trên mỗi video.
-
-
Chúng tôi đã cập nhật định nghĩa của các thuộc tính
snippet.title
vàsnippet.categoryId
của tài nguyênvideo
để làm rõ cách API xử lý các lệnh gọi đến phương thứcvideos.update
. Nếu gọi phương thức đó để cập nhật phầnsnippet
của tài nguyênvideo
, bạn phải đặt giá trị cho cả hai thuộc tính đó.Nếu bạn cố gắng cập nhật phần
snippet
của tài nguyênvideo
và không đặt giá trị cho cả hai thuộc tính đó, thì API sẽ trả về lỗiinvalidRequest
. Nội dung mô tả lỗi đó cũng đã được cập nhật. -
Thuộc tính
contentDetails.contentRating.oflcRating
của tài nguyênvideo
(xác định mức phân loại của video theo Cơ quan phân loại phim và văn học của New Zealand) hiện hỗ trợ hai mức phân loại mới:oflcRp13
vàoflcRp16
. Các giá trị này tương ứng với điểm xếp hạngRP13
vàRP16
. -
Phương thức
channelBanners.insert
hiện hỗ trợ lỗi sau:Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest
bannerAlbumFull
Album Hình ảnh kênh YouTube của chủ sở hữu kênh có quá nhiều hình ảnh. Chủ sở hữu kênh nên truy cập vào http://photos.google.com, chuyển đến trang album rồi xoá một số ảnh khỏi album đó.
Ngày 12 tháng 9 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Chi phí hạn mức cho một lệnh gọi đến phương thức
search.list
đã thay đổi từ 1 đơn vị thành 2 đơn vị, ngoài chi phí của các phần tài nguyên đã chỉ định.
Ngày 13 tháng 8 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
subscriptions.insert
hiện hỗ trợ lỗi sau:Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest
subscriptionLimitExceeded
Người đăng ký được xác định bằng yêu cầu này đã vượt quá hạn mức tỷ lệ gói thuê bao. Bạn có thể thử thêm các gói thuê bao khác sau vài giờ.
Ngày 12 tháng 8 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Hướng dẫn mới có tiêu đề Di chuyển ứng dụng sang YouTube Data API (phiên bản 3) giải thích cách sử dụng YouTube Data API (phiên bản 3) để thực hiện chức năng có trong YouTube Data API (phiên bản 2). API cũ đã chính thức ngừng hoạt động kể từ ngày 4 tháng 3 năm 2014. Hướng dẫn này nhằm giúp bạn di chuyển các ứng dụng vẫn sử dụng API phiên bản 2 sang phiên bản API mới nhất.
Ngày 8 tháng 7 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
playlists.insert
hiện hỗ trợ lỗi sau:Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest
maxPlaylistExceeded
Lỗi này xảy ra nếu bạn không thể tạo danh sách phát vì kênh đã có số lượng danh sách phát tối đa được phép.
Ngày 18 tháng 6 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Nội dung mô tả của từng phương thức API đã được cập nhật để bao gồm chi phí hạn mức phát sinh do lệnh gọi đến phương thức đó. Tương tự, các định nghĩa của tham số
part
đã được cập nhật để chỉ định chi phí hạn mức của từng phần có thể được truy xuất trong lệnh gọi API. Ví dụ: lệnh gọi đến phương thứcsubscriptions.insert
có chi phí hạn mức khoảng 50 đơn vị. Tài nguyênsubscription
cũng chứa 3 phần (snippet
,contentDetails
vàsubscriberSnippet
), mỗi phần có chi phí là 2 đơn vị.Xin lưu ý rằng chi phí hạn mức có thể thay đổi mà không có thông báo trước.
-
Tài nguyên
video
hiện hỗ trợ 43 hệ thống phân loại nội dung mới. Các hệ thống này xác định mức phân loại mà video nhận được từ nhiều cơ quan phân loại quốc gia. Các hệ thống phân loại mới được hỗ trợ là của Argentina, Áo, Bỉ, Bulgaria, Chile (truyền hình), Chile (phim), Cộng hoà Séc, Colombia, Đan Mạch, Ai Cập, Estonia, Phần Lan, Pháp, Hy Lạp, Hong Kong, Iceland, Indonesia, Ireland, Israel, Ý, Kenya, Latvia, Luxembourg, Malaysia, Maldives, Malta, Hà Lan, Nigeria, Na Uy, Peru, Philippines, Bồ Đào Nha, Romania, Singapore, Slovakia, Nam Phi, Thuỵ Điển, Thuỵ Sĩ, Đài Loan, Thái Lan và Venezuela.
Ngày 28 tháng 5 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
search.list
hiện hỗ trợ các tham sốlocation
vàlocationRadius
, cho phép bạn tìm kiếm video liên kết với một vị trí địa lý. Yêu cầu phải chỉ định giá trị cho cả hai tham số để truy xuất kết quả dựa trên vị trí và API sẽ trả về lỗi nếu yêu cầu chỉ bao gồm một trong hai tham số.-
Tham số
location
chỉ định toạ độ vĩ độ/kinh độ ở chính giữa khu vực địa lý hình tròn. -
Thông số
locationRadius
chỉ định khoảng cách tối đa từ vị trí được liên kết với một video đến tâm của khu vực để video đó vẫn xuất hiện trong kết quả tìm kiếm.
-
Ngày 13 tháng 5 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Chúng tôi đã cập nhật thuộc tính
invideoPromotion.items[]
của tài nguyênchannel
để lưu ý rằng bạn thường chỉ có thể đặt một mục được quảng bá cho kênh của mình. Nếu bạn cố gắng chèn quá nhiều mặt hàng được quảng bá, API sẽ trả về lỗitooManyPromotedItems
có mã trạng thái HTTP400
. -
Tài nguyên
channelSection
hiện có thể chứa thông tin về một số loại nội dung nổi bật mới. Thuộc tínhsnippet.type
của tài nguyênchannelSection
hiện hỗ trợ các giá trị sau:postedPlaylists
– danh sách phát mà chủ sở hữu kênh đăng lên trang cập nhật hoạt động của kênhpostedVideos
– video mà chủ sở hữu kênh đăng vào trang dữ liệu hoạt động của kênhsubscriptions
– những kênh mà chủ sở hữu kênh đã đăng ký
-
Thuộc tính
contentDetails.contentRating.ifcoRating
mới của tài nguyênvideo
xác định mức phân loại mà một video nhận được từ Cơ quan phân loại phim của Ireland. -
Định nghĩa của thuộc tính
position.cornerPosition
của tài nguyênwatermark
đã được cập nhật để lưu ý rằng hình mờ luôn xuất hiện ở góc trên bên phải của trình phát. -
Chúng tôi đã cập nhật định nghĩa của tham số
q
cho phương thứcsearch.list
để lưu ý rằng cụm từ tìm kiếm có thể sử dụng toán tử Boolean NOT (-
) để loại trừ những video liên kết với một cụm từ tìm kiếm cụ thể. Giá trị này cũng có thể sử dụng toán tử OR (|
) Boolean để tìm những video liên kết với một trong nhiều cụm từ tìm kiếm. -
Định nghĩa của thuộc tính
pageInfo.totalResults
được trả về trong phản hồi API cho lệnh gọisearch.list
đã được cập nhật để lưu ý rằng giá trị này là giá trị gần đúng và có thể không thể hiện 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 đường liên kết phân trang. Thay vào đó, hãy sử dụng các giá trị thuộc tínhnextPageToken
vàprevPageToken
để xác định xem có hiển thị các đường liên kết phân trang hay không. -
Các phương thức
watermarks.set
vàwatermarks.unset
đã được cập nhật để phản ánh việc API trả về mã phản hồi204
HTTP cho các yêu cầu thành công đối với các phương thức đó.
Ngày 2 tháng 5 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài nguyên
i18nLanguage
mới xác định ngôn ngữ ứng dụng mà trang web YouTube hỗ trợ. Ngôn ngữ ứng dụng cũng có thể được gọi là ngôn ngữ giao diện người dùng. Đối với trang web YouTube, ngôn ngữ ứng dụng có thể được tự động chọn dựa trên chế độ cài đặt Tài khoản Google, ngôn ngữ trình duyệt hoặc vị trí IP. Ngoài ra, người dùng cũng có thể tự chọn ngôn ngữ giao diện người dùng mong muốn trong chân trang của trang web YouTube.API này hỗ trợ một phương thức để liệt kê các ngôn ngữ ứng dụng được hỗ trợ. Bạn có thể sử dụng các ngôn ngữ được hỗ trợ làm giá trị của tham số
hl
khi gọi các phương thức API nhưvideoCategories.list
vàguideCategories.list
. -
Tài nguyên
i18nRegion
mới xác định một khu vực địa lý mà người dùng YouTube có thể chọn làm khu vực nội dung ưu tiên. Khu vực nội dung cũng có thể được gọi là ngôn ngữ nội dung. Đối với trang web YouTube, một khu vực nội dung có thể được tự động chọn dựa trên các phương pháp phỏng đoán như miền YouTube hoặc vị trí địa lý theo địa chỉ IP của người dùng. Ngoài ra, người dùng cũng có thể tự chọn khu vực nội dung mong muốn trong chân trang của trang web YouTube.API này hỗ trợ một phương thức để liệt kê các khu vực nội dung được hỗ trợ. Bạn có thể sử dụng mã khu vực được hỗ trợ làm giá trị của tham số
regionCode
khi gọi các phương thức API nhưsearch.list
,videos.list
,activities.list
vàvideoCategories.list
.
Ngày 7 tháng 4 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài nguyên
channelSection
mới chứa thông tin về một nhóm video mà một kênh đã chọn để giới thiệu. Ví dụ: một phần có thể giới thiệu các video tải lên gần đây nhất, video tải lên phổ biến nhất hoặc video trong một hoặc nhiều danh sách phát của kênh.API này hỗ trợ các phương thức để liệt kê, chèn, cập nhật hoặc xoá các phần trên kênh. Bạn có thể truy xuất danh sách các phần kênh cho kênh của người dùng đã xác thực bằng cách chỉ định một mã nhận dạng kênh cụ thể hoặc chỉ định danh sách các mã nhận dạng phần kênh riêng biệt.
Tài liệu về lỗi cũng đã được cập nhật để mô tả thông báo lỗi mà API hỗ trợ dành riêng cho các phương thức mới này.
-
Định nghĩa của đối tượng
fileDetails
của tài nguyênvideo
đã được cập nhật để giải thích rằng đối tượng đó sẽ chỉ được trả về nếu thuộc tínhprocessingDetails.fileDetailsAvailability
của video có giá trị làavailable
.Tương tự, định nghĩa của đối tượng
suggestions
của tài nguyênvideo
đã được cập nhật để giải thích rằng đối tượng đó sẽ chỉ được trả về nếu thuộc tínhprocessingDetails.tagSuggestionsAvailability
của video hoặc thuộc tínhprocessingDetails.editorSuggestionsAvailability
của video có giá trị làavailable
. -
Tài liệu cho các phương thức
videos.insert
vàvideos.update
đã được cập nhật để phản ánh rằng bạn có thể đặt thuộc tínhstatus.publishAt
khi gọi các phương thức đó. -
Chúng tôi đã cập nhật định nghĩa của đối tượng
invideoPromotion
của tài nguyênchannel
để giải thích rằng chỉ chủ sở hữu kênh mới có thể truy xuất đối tượng này. -
Danh sách tham số cho phương thức
videos.rate
đã được cập nhật để phản ánh rằng phương thức đó thực sự không hỗ trợ tham sốonBehalfOfContentOwner
. Đây là lỗi tài liệu vì các yêu cầuvideos.rate
đặt thông số này sẽ trả về lỗi500
.
Ngày 31 tháng 3 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
Thuộc tính
status.publishAt
mới của tài nguyênvideo
cho phép bạn chỉ định ngày và giờ xuất bản video riêng tư theo lịch. Bạn chỉ có thể đặt thuộc tính này nếu trạng thái quyền riêng tư của video làprivate
và video chưa từng được xuất bản. Thuộc tính mới này không tuân theo chính sách ngừng sử dụng.
Ngày 13 tháng 3 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
API hiện hỗ trợ phần
contentOwnerDetails
cho tài nguyênchannel
. Phần mới này chứa dữ liệu kênh có liên quan đến các đối tác YouTube được liên kết với kênh, bao gồm mã nhận dạng của chủ sở hữu nội dung được liên kết với kênh, cũng như ngày và giờ liên kết giữa chủ sở hữu nội dung và kênh. Xin lưu ý rằng phần mới này không tuân theo chính sách ngừng sử dụng. -
Tài liệu hiện liệt kê độ dài ký tự tối đa được hỗ trợ cho các thuộc tính sau:
Tài nguyên Thuộc tính Số ngày tối đa channel
invideoPromotion.items[].customMessage
40 ký tự video
snippet.title
100 ký tự video
snippet.description
5.000 byte video
snippet.tags
500 ký tự. Xin lưu ý rằng giá trị thuộc tính là một danh sách và dấu phẩy giữa các mục trong danh sách sẽ được tính vào giới hạn. -
Thuộc tính
brandingSettings.watch.featuredPlaylistId
của tài nguyênchannel
không được dùng nữa. API sẽ trả về lỗi nếu bạn cố gắng đặt giá trị của API. -
Các thuộc tính tài nguyên
video
sau đây đã được thêm vào danh sách các giá trị có thể được đặt khi chèn hoặc cập nhật video: -
Tài liệu về lỗi hiện chỉ định mã phản hồi HTTP cho từng loại lỗi.
-
API hiện hỗ trợ các lỗi sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest (400)
invalidCriteria
Phương thức channels.list
sẽ trả về lỗi này nếu yêu cầu chỉ định các tham số bộ lọc không thể sử dụng cùng nhau.badRequest (400)
channelTitleUpdateForbidden
Phương thức channels.update
sẽ trả về lỗi này nếu bạn cố gắng cập nhật phầnbrandingSettings
của kênh và thay đổi giá trị của thuộc tínhbrandingSettings.channel.title
. (Xin lưu ý rằng API sẽ không trả về lỗi nếu bạn bỏ qua thuộc tính này.)badRequest (400)
invalidRecentlyUploadedBy
Phương thức channels.update
sẽ trả về lỗi này nếu thuộc tínhinvideoPromotion.items[].id.recentlyUploadedBy
chỉ định mã nhận dạng kênh không hợp lệ.badRequest (400)
invalidTimingOffset
Phương thức channels.update
trả về lỗi này nếu phầninvideoPromotion
chỉ định độ lệch thời gian không hợp lệ.badRequest (400)
tooManyPromotedItems
Phương thức channels.update
sẽ trả về lỗi này nếu phầninvideoPromotion
chỉ định nhiều hơn số lượng mục được quảng bá được phép.forbidden (403)
promotedVideoNotAllowed
Phương thức channels.update
sẽ trả về lỗi này nếu thuộc tínhinvideoPromotion.items[].id.videoId
chỉ định mã video không tìm thấy hoặc không thể dùng làm mục được quảng bá.forbidden (403)
websiteLinkNotAllowed
Phương thức channels.update
sẽ trả về lỗi này nếu thuộc tínhinvideoPromotion.items[].id.websiteUrl
chỉ định một URL không được phép.required (400)
requiredTimingType
Phương thức channels.update
sẽ trả về lỗi này nếu một yêu cầu không chỉ định chế độ cài đặt thời gian mặc định cho thời điểm YouTube hiển thị một mục được quảng bá.required (400)
requiredTiming
Phương thức channels.update
phải chỉ định một đối tượnginvideoPromotion.items[].timing
cho mỗi mục được quảng bá.required (400)
requiredWebsiteUrl
Phương thức channels.update
phải chỉ định một thuộc tínhinvideoPromotion.items[].id.websiteUrl
cho mỗi mục được quảng bá.badRequest (400)
invalidPublishAt
Phương thức videos.insert
sẽ trả về lỗi này nếu siêu dữ liệu yêu cầu chỉ định thời gian phát hành theo lịch không hợp lệ.
Ngày 4 tháng 3 năm 2014
Bản cập nhật này bao gồm các thay đổi sau:
-
YouTube Data API phiên bản 3 hiện tuân theo Chính sách ngừng sử dụng được mô tả trong Điều khoản dịch vụ của API YouTube. Xin lưu ý rằng trang liệt kê các API tuân theo chính sách ngừng sử dụng cụ thể là loại trừ một số chức năng API phiên bản 3 khỏi chính sách này.
Ngày 5 tháng 12 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài liệu của phương thức
search.list
đã được cập nhật để phản ánh chính xác rằng bạn không cần chỉ định giá trị cho đúng một tham số bộ lọc khi gửi yêu cầu tìm kiếm. Thay vào đó, bạn có thể đặt giá trị cho tham số bộ lọc rỗng hoặc cho một tham số bộ lọc. -
Chúng tôi đã cập nhật định nghĩa cho các tham số của phương thức
search.list
để lưu ý rằng bạn phải đặt giá trị của tham sốtype
thànhvideo
nếu bạn cũng chỉ định giá trị cho bất kỳ tham số nào sau đây:eventType
videoCaption
videoCategoryId
videoDefinition
videoDimension
videoDuration
videoEmbeddable
videoLicense
videoSyndicated
videoType
-
Kích thước tối thiểu của hình ảnh biểu ngữ kênh được tải lên đã giảm xuống còn 2048 pixel x 1152 pixel. (Trước đây, kích thước tối thiểu là 2120px x 1192px.) Ngoài ra, xin lưu ý rằng tài liệu về tài nguyên
channel
chỉ định kích thước tối đa của tất cả hình ảnh biểu ngữ được phân phát từ API. Ví dụ: kích thước tối đa của hình ảnhbrandingSettings.image.bannerTvImageUrl
cho các ứng dụng truyền hình là 2120px x 1192px, nhưng hình ảnh thực tế có thể là 2048px x 1152px. Trung tâm trợ giúp của YouTube cung cấp thêm hướng dẫn về cách tối ưu hoá hình ảnh kênh để hiển thị trên nhiều loại thiết bị. -
Một số định nghĩa thuộc tính tài nguyên
channel
đã được cập nhật để phản ánh thông tin sau:- Giá trị của thuộc tính
brandingSettings.channel.description
có độ dài tối đa là 1000 ký tự. - Thuộc tính
brandingSettings.channel.featuredChannelsTitle
có độ dài tối đa là 30 ký tự. - Thuộc tính
brandingSettings.channel.featuredChannelsUrls[]
hiện có thể liệt kê tối đa 100 kênh. - Giá trị thuộc tính
brandingSettings.channel.unsubscribedTrailer
(nếu được đặt) phải chỉ định mã video trên YouTube của một video công khai hoặc không công khai thuộc quyền sở hữu của chủ sở hữu kênh.
- Giá trị của thuộc tính
-
Phương thức
channels.update
hiện hỗ trợ các nội dung cập nhật cho thuộc tínhinvideoPromotion.items[].promotedByContentOwner
. Thuộc tính đó cho biết tên của chủ sở hữu nội dung có xuất hiện khi hiển thị chương trình khuyến mãi hay không. Bạn chỉ có thể đặt giá trị này nếu yêu cầu API đặt giá trị thuộc tính được thực hiện thay mặt cho chủ sở hữu nội dung bằng cách sử dụng tham sốonBehalfOfContentOwner
. -
Phương thức
playlistItems.list
vàplaylistItems.insert
hiện hỗ trợ tham sốonBehalfOfContentOwner
, tham số này đã được hỗ trợ cho một số phương thức khác. -
Giờ đây, thuộc tính
contentDetails.contentRating.acbRating
có thể chỉ định mức phân loại của Hội đồng phân loại của Úc (ACB) đối với phim hoặc của Cơ quan truyền thông và truyền thông của Úc (ACMA) đối với chương trình truyền hình dành cho trẻ em. -
Thuộc tính
contentDetails.contentRating.catvRating
vàcontentDetails.contentRating.catvfrRating
mới xác định mức phân loại mà một video nhận được theo Hệ thống phân loại chương trình truyền hình của Canada và hệ thống phân loại Régie du cinéma bằng tiếng Pháp (dùng ở Québec). -
Thuộc tính
snippet.assignable
mới của tài nguyênvideoCategory
cho biết liệu bạn có thể liên kết video đã cập nhật hoặc video mới tải lên với danh mục video đó hay không. -
Thêm mã mẫu cho các phương thức sau:
activities.insert
(Go)channelBanners.insert
(Python)channels.update
(Python)playlistItems.list
(Go)search.list
(Go)thumbnails.set
(Java)videos.insert
(Go)
Ngày 24 tháng 10 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
API này có thêm hai tính năng được thiết kế để giúp tìm và giới thiệu nội dung phát trực tiếp:
Thuộc tính
snippet.liveBroadcastContent
mới trong kết quả tìm kiếm cho biết liệu một video hoặc tài nguyên kênh có nội dung phát trực tiếp hay không. Các giá trị thuộc tính hợp lệ làupcoming
,active
vànone
.-
Thuộc tính
snippet.liveBroadcastContent
mới của tài nguyênvideo
cho biết liệu video đó có phải là một sự kiện phát trực tiếp sắp diễn ra hay đang diễn ra hay không. Danh sách dưới đây giải thích các giá trị có thể có của thuộc tính:upcoming
– Video là sự kiện phát trực tiếp chưa bắt đầu.active
– Video đang phát trực tiếp.none
– Video không phải là sự kiện phát trực tiếp sắp diễn ra hoặc đang diễn ra. Đây sẽ là giá trị thuộc tính cho các chương trình phát sóng đã kết thúc và vẫn có thể xem được trên YouTube.
-
Thuộc tính
liveStreamingDetails
mới của tài nguyênvideo
là một đối tượng chứa siêu dữ liệu về sự kiện phát trực tiếp video. Để truy xuất siêu dữ liệu này, hãy đưaliveStreamingDetails
vào danh sách các phần tài nguyên của giá trị tham sốpart
. Siêu dữ liệu bao gồm các thuộc tính mới sau:liveStreamingDetails.actualStartTime
– Thời gian thực sự bắt đầu phát sóng. (Giá trị này sẽ xuất hiện khi trạng thái của thông báo truyền tin làactive
.)liveStreamingDetails.actualEndTime
– Thời điểm chương trình phát sóng thực sự kết thúc. (Giá trị này sẽ xuất hiện sau khi sự kiện phát trực tiếp kết thúc.)liveStreamingDetails.scheduledStartTime
– Thời gian bắt đầu phát trực tiếp theo lịch.liveStreamingDetails.scheduledEndTime
– Thời gian dự kiến kết thúc chương trình phát sóng. Nếu giá trị thuộc tính trống hoặc không có thuộc tính, thì thông báo truyền tin sẽ được lên lịch tiếp tục vô thời hạn.liveStreamingDetails.concurrentViewers
– Số người đang xem sự kiện phát trực tiếp.
Để truy xuất siêu dữ liệu này, hãy đưa
liveStreamingDetails
vào giá trị tham sốpart
khi gọi phương thứcvideos.list
,videos.insert
hoặcvideos.update
.
Xin lưu ý rằng hai tính năng khác để xác định nội dung phát trực tiếp đã được phát hành vào ngày 1 tháng 10 năm 2013 – tham số
eventType
của phương thứcsearch.list
và thuộc tínhsnippet.liveBroadcastContent
của kết quả tìm kiếm. -
-
Phương thức
videos.insert
hiện hỗ trợ thông sốnotifySubscribers
. Thông số này cho biết liệu YouTube có nên gửi thông báo về video mới cho những người dùng đăng ký kênh của video đó hay không. Giá trị mặc định của tham số này làTrue
, cho biết rằng người đăng ký sẽ được thông báo về các video mới tải lên. Tuy nhiên, chủ sở hữu kênh tải nhiều video lên có thể nên đặt giá trị này thànhFalse
để tránh gửi thông báo về từng video mới cho người đăng ký của kênh. -
Danh sách các thuộc tính có thể được sửa đổi khi gọi phương thức
channels.update
đã được cập nhật để bao gồm các thuộc tínhinvideoPromotion.items[].customMessage
vàinvideoPromotion.items[].websiteUrl
. Ngoài ra, danh sách này đã được sửa đổi để xác định các thuộc tínhbrandingSettings
có thể sửa đổi. Các thuộc tínhbrandingSettings
này đã có thể sửa đổi, vì vậy, thay đổi về tài liệu không phản ánh thay đổi đối với chức năng hiện có của API. -
Các phương thức
playlists.insert
,playlists.update
vàplaylists.delete
hiện hỗ trợ tham sốonBehalfOfContentOwner
. Tham số này đã được hỗ trợ cho một số phương thức khác. -
Phương thức
playlists.insert
hiện hỗ trợ tham sốonBehalfOfContentOwnerChannel
, tham số này đã được hỗ trợ cho một số phương thức khác. -
Thuộc tính
contentDetails.contentRating.tvpgRating
của tài nguyênvideo
hiện hỗ trợ giá trịpg14
, tương ứng với điểm xếp hạngTV-14
. -
Định nghĩa của thuộc tính
snippet.liveBroadcastContent
(thuộc kết quả tìm kiếm) đã được sửa để cho biết rằnglive
là giá trị thuộc tính hợp lệ, nhưngactive
không phải là giá trị thuộc tính hợp lệ. -
Thuộc tính
contentDetails.contentRating.mibacRating
của tài nguyênvideo
hiện hỗ trợ thêm hai mức phân loại:mibacVap
(VAP) – Trẻ em phải có người lớn đi cùng.mibacVm6
(V.M.6) – Chỉ dành cho người từ 6 tuổi trở lên.mibacVm12
(V.M.12) – Chỉ dành cho người từ 12 tuổi trở lên.
-
Thuộc tính
invideoPromotion.items[].promotedByContentOwner
mới của tài nguyênchannel
cho biết liệu tên của chủ sở hữu nội dung có xuất hiện khi hiển thị video quảng bá hay không. Bạn chỉ có thể đặt trường này nếu yêu cầu API đặt giá trị được thực hiện thay mặt cho chủ sở hữu nội dung. Hãy xem tham sốonBehalfOfContentOwner
để biết thêm thông tin.
Ngày 1 tháng 10 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Đối tượng
auditDetails
mới của tài nguyênchannel
chứa dữ liệu kênh mà mạng đa kênh (MCN) sẽ đánh giá trong khi xác định xem có chấp nhận hay từ chối một kênh cụ thể hay không. Xin lưu ý rằng mọi yêu cầu API truy xuất phần tài nguyên này đều phải cung cấp mã uỷ quyền chứa phạm vihttps://www.googleapis.com/auth/youtubepartner-channel-audit
. Ngoài ra, mọi mã thông báo sử dụng phạm vi đó phải bị thu hồi khi MCN quyết định chấp nhận hoặc từ chối kênh hoặc trong vòng hai tuần kể từ ngày mã thông báo được phát hành. -
Thuộc tính
invideoPromotion.items[].id.type
của tài nguyênchannel
hiện hỗ trợ giá trịrecentUpload
, cho biết mục được quảng bá là video được tải lên gần đây nhất của một kênh cụ thể.Theo mặc định, kênh này giống với kênh mà bạn đặt dữ liệu quảng bá trong video. Tuy nhiên, bạn có thể quảng bá video mới tải lên gần đây nhất từ một kênh khác bằng cách đặt giá trị của thuộc tính
invideoPromotion.items[].id.recentlyUploadedBy
mới thành mã nhận dạng kênh của kênh đó. -
Tài nguyên
channel
chứa 3 thuộc tính mới –brandingSettings.image.bannerTvLowImageUrl
,brandingSettings.image.bannerTvMediumImageUrl
,brandingSettings.image.bannerTvHighImageUrl
– chỉ định URL cho hình ảnh biểu ngữ xuất hiện trên các trang kênh trong ứng dụng truyền hình. -
Thuộc tính
snippet.liveBroadcastContent
mới trong kết quả tìm kiếm cho biết liệu một video hoặc tài nguyên kênh có nội dung phát trực tiếp hay không. Các giá trị thuộc tính hợp lệ làupcoming
,active
vànone
.- Đối với tài nguyên
video
, giá trịupcoming
cho biết video là một chương trình phát trực tiếp chưa bắt đầu, còn giá trịactive
cho biết video là một chương trình phát trực tiếp đang diễn ra. - Đối với tài nguyên
channel
, giá trịupcoming
cho biết kênh có một chương trình phát sóng theo lịch chưa bắt đầu, trong khi giá trịacive
cho biết kênh đang phát sóng trực tiếp.
- Đối với tài nguyên
-
Trong tài nguyên
watermark
, thuộc tínhtargetChannelId
đã thay đổi từ đối tượng thành chuỗi. Thay vì chứa một thuộc tính con chỉ định mã nhận dạng kênh YouTube của kênh mà hình mờ liên kết đến, thuộc tínhtargetChannelId
hiện tự chỉ định giá trị đó. Do đó, thuộc tínhtargetChannelId.value
của tài nguyên đã bị xoá. -
Phương thức
thumbnails.set
hiện hỗ trợ tham sốonBehalfOfContentOwner
, tham số này đã được hỗ trợ cho một số phương thức khác. -
Phương thức
search.list
hiện hỗ trợ tham sốeventType
. Tham số này hạn chế việc tìm kiếm chỉ trả về các sự kiện phát sóng đang hoạt động, sắp diễn ra hoặc đã hoàn tất. -
Thuộc tính
contentDetails.contentRating.mibacRating
mới xác định mức phân loại mà một video nhận được từ Bộ Di sản, Hoạt động văn hoá và Du lịch của Ý. -
API hiện hỗ trợ các lỗi sau:
Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest
invalidImage
Phương thức thumbnails.set
sẽ trả về lỗi này nếu nội dung hình ảnh được cung cấp không hợp lệ.forbidden
videoRatingDisabled
Phương thức videos.rate
sẽ trả về lỗi này nếu chủ sở hữu của video đang được phân loại đã tắt tính năng phân loại cho video đó.
Ngày 27 tháng 8 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Tài nguyên
watermark
mới xác định một hình ảnh hiển thị trong khi phát video của một kênh cụ thể. Bạn cũng có thể chỉ định một kênh mục tiêu mà hình ảnh sẽ liên kết đến, cũng như thông tin chi tiết về thời gian xác định thời điểm hình mờ xuất hiện trong khi phát video và thời lượng hiển thị hình mờ.Phương thức
watermarks.set
tải hình ảnh hình mờ của kênh lên và đặt hình ảnh đó. Phương thứcwatermarks.unset
xoá hình mờ của kênh.Tài liệu về lỗi mô tả thông báo lỗi mà API hỗ trợ cụ thể cho các phương thức
watermarks.set
vàwatermarks.unset
. -
Thuộc tính
statistics.hiddenSubscriberCount
mới của tài nguyênchannel
chứa một giá trị boolean cho biết số người đăng ký của kênh có bị ẩn hay không. Do đó, giá trị của thuộc tính này làfalse
nếu số người đăng ký của kênh hiển thị công khai. -
Phương thức
playlists.list
hiện hỗ trợ các tham sốonBehalfOfContentOwner
vàonBehalfOfContentOwnerChannel
. Cả hai tham số này đều được hỗ trợ cho một số phương thức khác. -
Phương thức
videos.list
hiện hỗ trợ tham sốregionCode
, giúp xác định vùng nội dung cần truy xuất biểu đồ. Bạn chỉ có thể sử dụng tham số này cùng với tham sốchart
. Giá trị thông số là mã quốc gia theo ISO 3166-1 alpha-2. -
error documentation
mô tả lỗi yêu cầu phổ biến mới sau đây, có thể xảy ra với nhiều phương thức API:Loại lỗi Thông tin chi tiết về lỗi Mô tả forbidden
insufficientPermissions
Phạm vi liên kết với mã thông báo OAuth 2.0 được cung cấp cho yêu cầu này không đủ để truy cập vào dữ liệu được yêu cầu.
Ngày 15 tháng 8 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Đối tượng
invideoPromotion
của tài nguyênchannel
có các thuộc tính mới và được cập nhật sau:-
API hiện hỗ trợ việc chỉ định một trang web làm mục được quảng bá. Để làm như vậy, hãy đặt giá trị thuộc tính
invideoPromotion.items[].id.type
thànhwebsite
và sử dụng thuộc tínhinvideoPromotion.items[].id.websiteUrl
mới để chỉ định URL. Ngoài ra, hãy sử dụng thuộc tínhinvideoPromotion.items[].customMessage
mới để xác định một thông báo tuỳ chỉnh sẽ hiển thị cho chương trình khuyến mãi.Đường liên kết có thể là đến các trang web liên kết, trang web của người bán hoặc trang mạng xã hội. Hãy xem hướng dẫn trong Trung tâm trợ giúp của YouTube về trang web được liên kết và trang web thương mại để biết thêm thông tin về cách bật tính năng liên kết cho nội dung của bạn.
Khi thêm đường liên kết quảng bá, bạn đồng ý rằng những đường liên kết đó sẽ không được dùng để chuyển hướng lưu lượng truy cập đến các trang web trái phép và những đường liên kết đó sẽ tuân thủ chính sách của AdWords, chính sách quảng cáo của YouTube, Nguyên tắc cộng đồng của YouTube và Điều khoản dịch vụ của YouTube.
-
Các thuộc tính liên quan đến chế độ cài đặt thời gian hiển thị các mục được quảng bá trong khi phát video đã được tái cấu trúc:
-
Đối tượng
invideoPromotion.timing
đã được di chuyển sanginvideoPromotion.items[].timing
. Giờ đây, đối tượng này cho phép bạn tuỳ chỉnh dữ liệu thời gian cho từng mục được quảng bá trong danh sáchinvideoPromotion.items[]
. -
Đối tượng
invideoPromotion.defaultTiming
mới chỉ định chế độ cài đặt thời gian mặc định cho chương trình khuyến mãi. Những chế độ cài đặt đó xác định thời điểm một mặt hàng được quảng bá sẽ xuất hiện trong lúc phát một trong các video trên kênh của bạn. Bạn có thể ghi đè thời gian mặc định cho bất kỳ mục được quảng bá nào bằng cách sử dụng đối tượnginvideoPromotion.items[].timing
. -
Thuộc tính
invideoPromotion.items[].timing.durationMs
mới chỉ định khoảng thời gian (tính bằng mili giây) mà chương trình khuyến mãi sẽ hiển thị. Đối tượnginvideoPromotion.defaultTiming
cũng chứa trườngdurationMs
chỉ định khoảng thời gian mặc định mà mục được quảng bá sẽ hiển thị.
-
-
Cả hai thuộc tính
invideoPromotion.items[].type
vàinvideoPromotion.items[].videoId
đều đã được di chuyển vào đối tượnginvideoPromotion.items[].id
.
-
-
Phương thức
subscriptions.list
hiện hỗ trợ các tham sốonBehalfOfContentOwner
vàonBehalfOfContentOwnerChannel
. Cả hai tham số này đều được hỗ trợ cho một số phương thức khác. -
Trong phản hồi API cho yêu cầu
thumbnails.set
, giá trị thuộc tínhkind
đã thay đổi từyoutube#thumbnailListResponse
thànhyoutube#thumbnailSetResponse
. -
Thêm mã mẫu cho các phương thức sau:
channels.update
(Java, Python)playlists.insert
(.NET, PHP)subscriptions.insert
(PHP, Python)thumbnails.set
(PHP, Python)videos.insert
(PHP)videos.list
(PHP)videos.rate
(Python)videos.update
(Java, PHP, Python)
Xin lưu ý rằng ví dụ về Python cho phương thức
playlistItems.insert
cũng đã bị xoá vì chức năng mà ví dụ này minh hoạ hiện được phương thứcvideos.rate
xử lý. -
error documentation
mô tả lỗi ngữ cảnh yêu cầu mới sau đây. Lỗi này có thể xảy ra với bất kỳ phương thức API nào hỗ trợ tham số yêu cầumine
:Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest
invalidMine
Bạn không thể sử dụng tham số mine
trong các yêu cầu mà người dùng được xác thực là đối tác YouTube. Bạn nên xoá thông sốmine
, xác thực dưới dạng người dùng YouTube bằng cách xoá thông sốonBehalfOfContentOwner
hoặc đóng vai trò là một trong các kênh của đối tác bằng cách cung cấp thông sốonBehalfOfContentOwnerChannel
nếu có cho phương thức được gọi.
Ngày 8 tháng 8 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Chúng tôi đã cập nhật phần Mức sử dụng hạn mức trong hướng dẫn Bắt đầu sử dụng YouTube Data API để phản ánh sự thay đổi về chi phí hạn mức của một lượt tải video lên từ khoảng 16.000 đơn vị xuống còn khoảng 1.600 đơn vị.
Ngày 30 tháng 7 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Trong tài nguyên
channelBanner
, giá trị của thuộc tínhkind
đã thay đổi từyoutube#channelBannerInsertResponse
thànhyoutube#channelBannerResource
. Tài nguyên này được trả về để phản hồi yêu cầuchannelBanners.insert
. -
Thuộc tính
brandingSettings.channel.profileColor
mới của tài nguyênchannel
chỉ định một màu nổi bật bổ sung cho nội dung của kênh. Giá trị thuộc tính là dấu thăng (#) theo sau là một chuỗi thập lục phân gồm 6 ký tự, chẳng hạn như#2793e6
.#
-
API hiện hỗ trợ việc chỉ định xem một lượt đăng ký là dành cho tất cả hoạt động của một kênh hay chỉ dành cho các video tải lên mới. Thuộc tính
contentDetails.activityType
mới của tài nguyênsubscription
xác định các loại hoạt động mà người đăng ký sẽ được thông báo. Các giá trị thuộc tính hợp lệ làall
vàuploads
. -
Phương thức
videos.list
hỗ trợ các tham số mới để truy xuất bảng xếp hạng các video phổ biến nhất trên YouTube:- Tham số
chart
xác định biểu đồ mà bạn muốn truy xuất. Hiện tại, giá trị duy nhất được hỗ trợ làmostPopular
. Xin lưu ý rằng tham sốchart
là một tham số bộ lọc, nghĩa là bạn không thể sử dụng tham số này trong cùng một yêu cầu với các tham số bộ lọc khác (id
vàmyRating
). - Tham số
videoCategoryId
xác định danh mục video mà bạn muốn truy xuất biểu đồ. Bạn chỉ có thể sử dụng tham số này cùng với tham sốchart
. Theo mặc định, biểu đồ không bị giới hạn ở một danh mục cụ thể.
- Tham số
-
Thuộc tính
topicDetails.relevantTopicIds[]
mới của tài nguyênvideo
cung cấp danh sách mã chủ đề Freebase có liên quan đến video hoặc nội dung của video đó. Các chủ đề này có thể được đề cập hoặc xuất hiện trong video. -
Đổi tên thuộc tính
recordingDetails.location.elevation
của tài nguyênvideo
thànhrecordingDetails.location.altitude
và đổi tên thuộc tínhfileDetails.recordingLocation.location.elevation
thànhfileDetails.recordingLocation.location.altitude
. -
Đối tượng
contentDetails.contentRating
của tài nguyênvideo
chỉ định mức phân loại mà một video nhận được theo nhiều hệ thống phân loại, bao gồm cả mức phân loại của MPAA, TVPG, v.v. Đối với mỗi hệ thống phân loại, API hiện hỗ trợ giá trị phân loại cho biết video chưa được phân loại. Xin lưu ý rằng đối với mức phân loại của MPAA, mức phân loại "unrated" (chưa được phân loại) thường được dùng để xác định các phiên bản chưa cắt của phim mà phiên bản đã cắt của phim đã nhận được mức phân loại chính thức. -
Thuộc tính
contentDetails.contentRating.ytRating
mới của tài nguyênvideo
xác định nội dung bị giới hạn độ tuổi. Giá trị thuộc tính này sẽ làytAgeRestricted
nếu YouTube xác định video đó chứa nội dung không phù hợp với người dùng dưới 18 tuổi. Nếu không có thuộc tính này hoặc nếu giá trị của thuộc tính này là trống, thì nội dung đó chưa được xác định là nội dung có giới hạn độ tuổi. -
Tham số
mySubscribers
của phương thứcchannels.list
không còn được dùng nữa. Sử dụng phương thứcsubscriptions.list
và tham sốmySubscribers
của phương thức này để truy xuất danh sách người đăng ký kênh của người dùng đã xác thực. -
Các phương thức
channelBanners.insert
,channels.update
,videos.getRating
vàvideos.rate
hiện đều hỗ trợ tham sốonBehalfOfContentOwner
. Thông số đó cho biết rằng người dùng đã xác thực đang thay mặt cho chủ sở hữu nội dung được chỉ định trong giá trị thông số. -
Tài liệu của phương thức
channels.update
đã được cập nhật để phản ánh thực tế là phương thức đó có thể được dùng để cập nhật đối tượngbrandingSettings
của tài nguyênchannel
và các thuộc tính con của đối tượng đó. Tài liệu hiện cũng liệt kê danh sách các thuộc tính đã cập nhật mà bạn có thể đặt cho đối tượnginvideoPromotion
của tài nguyênchannel
. -
error documentation
mô tả các lỗi mới sau:Loại lỗi Thông tin chi tiết về lỗi Mô tả forbidden
accountDelegationForbidden
Lỗi này không chỉ xảy ra với một phương thức API cụ thể. Mã này cho biết người dùng đã xác thực không được phép thay mặt cho Tài khoản Google đã chỉ định. forbidden
authenticatedUserAccountClosed
Lỗi này không chỉ xảy ra với một phương thức API cụ thể. Mã này cho biết tài khoản YouTube của người dùng đã xác thực đã bị đóng. Nếu người dùng đang thay mặt cho một Tài khoản Google khác, thì lỗi này cho biết rằng tài khoản khác đó đã bị đóng. forbidden
authenticatedUserAccountSuspended
Lỗi này không dành riêng cho một phương thức API cụ thể. Mã này cho biết tài khoản YouTube của người dùng đã xác thực bị tạm ngưng. Nếu người dùng đang thay mặt cho một Tài khoản Google khác, thì lỗi này cho biết rằng tài khoản khác đó đang bị tạm ngưng. forbidden
authenticatedUserNotChannel
Lỗi này không dành riêng cho một phương thức API cụ thể. Lỗi này cho biết máy chủ API không thể xác định kênh được liên kết với yêu cầu API. Nếu yêu cầu được uỷ quyền và sử dụng tham số onBehalfOfContentOwner
, bạn cũng nên đặt tham sốonBehalfOfContentOwnerChannel
.forbidden
cmsUserAccountNotFound
Lỗi này không dành riêng cho một phương thức API cụ thể. Người dùng CMS không được phép hành động thay mặt cho chủ sở hữu nội dung được chỉ định. notFound
contentOwnerAccountNotFound
Lỗi này không dành riêng cho một phương thức API cụ thể. Không tìm thấy tài khoản chủ sở hữu nội dung được chỉ định. badRequest
invalidPart
Lỗi này không dành riêng cho một phương thức API cụ thể. Tham số part
của yêu cầu chỉ định các phần không thể ghi cùng một lúc.badRequest
videoChartNotFound
Phương thức videos.list
trả về lỗi này khi yêu cầu chỉ định một biểu đồ video không được hỗ trợ hoặc không có sẵn.notFound
videoNotFound
Phương thức videos.update
trả về lỗi này để cho biết rằng không tìm thấy video mà bạn đang cố gắng cập nhật. Kiểm tra giá trị của thuộc tínhid
trong phần nội dung yêu cầu để đảm bảo giá trị đó chính xác.
Ngày 10 tháng 6 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Tham số
forUsername
mới của phương thứcchannels.list
cho phép bạn truy xuất thông tin về một kênh bằng cách chỉ định tên người dùng YouTube của kênh đó. -
Phương thức
activities.list
hiện hỗ trợ tham sốregionCode
. Tham số này hướng dẫn API trả về kết quả liên quan đến quốc gia đã chỉ định. YouTube sử dụng giá trị này khi hoạt động trước đây của người dùng được uỷ quyền trên YouTube không cung cấp đủ thông tin để tạo nguồn cấp dữ liệu hoạt động. -
Các tài nguyên danh sách phát hiện chứa thuộc tính
snippet.tags
. Thuộc tính này sẽ chỉ được trả về cho những người dùng được uỷ quyền đang truy xuất dữ liệu về danh sách phát của chính họ. Người dùng được uỷ quyền cũng có thể đặt thẻ danh sách phát khi gọi phương thứcplaylists.insert
hoặcplaylists.update
. -
Tham số
onBehalfOfContentOwner
trước đây được hỗ trợ cho các phương thứcchannels.list
vàsearch.list
, hiện cũng được hỗ trợ cho các phương thứcvideos.insert
,videos.update
vàvideos.delete
. Xin lưu ý rằng khi tham số này được dùng trong lệnh gọi đến phương thứcvideos.insert
, yêu cầu cũng phải chỉ định giá trị cho tham sốonBehalfOfContentOwnerChannel
mới. Tham số này xác định kênh mà video sẽ được thêm vào. Kênh phải được liên kết với chủ sở hữu nội dung mà tham sốonBehalfOfContentOwner
chỉ định.Thông số này cho biết rằng thông tin xác thực uỷ quyền của yêu cầu xác định một người dùng CMS của YouTube đang thay mặt cho chủ sở hữu nội dung được chỉ định trong giá trị thông số. 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 được chỉ định trên YouTube.
Thông số này dành cho những đối tác nội dung sở hữu và quản lý nhiều kênh YouTube. Tham số này cho phép các đối tác đó 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 cần phải cung cấp thông tin xác thực cho từng kênh riêng lẻ.
Cụ thể, trong bản phát hành này, thông số này cho phép đối tác nội dung chèn, cập nhật hoặc xoá video trong bất kỳ kênh YouTube nào mà đối tác sở hữu.
-
error documentation
mô tả các lỗi mới sau:Loại lỗi Thông tin chi tiết về lỗi Mô tả forbidden
insufficientCapabilities
Lỗi này không dành riêng cho một phương thức API cụ thể. Lỗi này cho biết rằng người dùng CMS gọi API không có đủ quyền để thực hiện thao tác được yêu cầu. Lỗi này liên quan đến việc sử dụng tham số onBehalfOfContentOwner
được hỗ trợ cho một số phương thức API.unauthorized
authorizationRequired
Phương thức activities.list
trả về lỗi này khi yêu cầu sử dụng tham sốhome
nhưng không được uỷ quyền đúng cách. -
Trong tài nguyên
channels
, thuộc tínhinvideoPromotion.channelId
đã bị xoá vì mã nhận dạng kênh đã được chỉ định bằng thuộc tínhid
của tài nguyên. -
Hướng dẫn mới về Cách xử lý mã nhận dạng kênh giải thích cách API sử dụng mã nhận dạng kênh. Hướng dẫn này có thể đặc biệt hữu ích cho những nhà phát triển di chuyển từ phiên bản API trước đó và có các ứng dụng yêu cầu nội dung cho người dùng
default
hoặc dựa trên quan niệm rằng mọi kênh YouTube đều có tên người dùng duy nhất (hiện không còn đúng nữa).
Ngày 22 tháng 5 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
channelBanners.insert
mới cho phép bạn tải hình ảnh biểu ngữ lên để sau đó đặt làm hình ảnh biểu ngữ cho một kênh bằng cách sử dụng thuộc tínhbrandingSettings.image.bannerExternalUrl
mới của tài nguyênchannel
. -
Tài liệu về phương thức
channels.update
đã được cập nhật để liệt kê các thuộc tính có thể được sửa đổi khi gọi phương thức. -
Tài liệu về tài nguyên
video
không còn liệt kêunspecified
dưới dạng giá trị thuộc tính hợp lệ cho các thuộc tínhsuggestions.processingErrors[]
,suggestions.processingHints[]
,suggestions.processingWarnings[]
vàsuggestions.editorSuggestions[]
. -
Tham số
maxResults
của phương thứcvideos.list
hiện có giá trị mặc định là5
. -
error documentation
hiện liệt kê các lỗi cho phương thứcchannelBanners.insert
vàsubscriptions.list
. Tệp này cũng liệt kê một số lỗi mới cho phương thứcchannels.update
.
Ngày 14 tháng 5 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Các trang độc lập hiện liệt kê các mã mẫu cho Java, .NET, PHP và Ruby.
-
Trang liệt kê các mã mẫu Python hiện có các ví dụ về cách thêm gói thuê bao, tạo danh sách phát và cập nhật video.
Ngày 10 tháng 5 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
YouTube không còn xác định các tính năng và dịch vụ API thử nghiệm nữa. Thay vào đó, chúng tôi hiện cung cấp danh sách các API YouTube tuân theo chính sách ngừng sử dụng.
Ngày 8 tháng 5 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Các tài nguyên kênh hiện hỗ trợ đối tượng
inVideoPromotion
. Đối tượng này chứa thông tin về một chiến dịch quảng bá liên kết với kênh. Một kênh có thể sử dụng chiến dịch quảng bá trong video để hiển thị hình thu nhỏ của một video được quảng bá trong trình phát video trong khi người dùng phát các video của kênh.Bạn có thể truy xuất dữ liệu này bằng cách đưa
invideoPromotion
vào giá trị tham sốpart
trong yêu cầuchannels.list
. -
Bạn có thể sử dụng phương thức
channels.update
mới để cập nhật dữ liệu về chiến dịch quảng bá trong video của một kênh. Xin lưu ý rằng phương thức này chỉ hỗ trợ cập nhật cho phầninvideoPromotion
của tài nguyênchannel
và chưa hỗ trợ cập nhật cho các phần khác của tài nguyên đó.
Ngày 2 tháng 5 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Các tài nguyên kênh hiện hỗ trợ thuộc tính
status.isLinked
. Thuộc tính này cho biết liệu dữ liệu kênh có xác định được người dùng đã liên kết với tên người dùng trên YouTube hoặc tài khoản Google+ hay không. Người dùng có một trong những đường liên kết này đã có danh tính công khai trên YouTube. Đây là điều kiện tiên quyết để thực hiện một số hành động, chẳng hạn như tải video lên. -
Tài nguyên thuê bao hiện hỗ trợ phần
subscriberSnippet
. Đối tượng đó đóng gói dữ liệu đoạn trích cho kênh của người đăng ký. -
API hiện hỗ trợ phương thức
videos.getRating
. Phương thức này truy xuất điểm xếp hạng mà người dùng đã xác thực đã đưa ra cho danh sách một hoặc nhiều video. -
Thông số
myRating
mới của phương thứcvideos.list
cho phép bạn truy xuất danh sách video mà người dùng đã xác thực đã đánh giá bằng điểm xếp hạnglike
hoặcdislike
.Tham số
myRating
và tham sốid
hiện được coi là tham số bộ lọc, nghĩa là một yêu cầu API phải chỉ định chính xác một trong các tham số đó. (Trước đây, tham sốid
là tham số bắt buộc cho phương thức này.)Phương thức này trả về lỗi
forbidden
đối với các yêu cầu cố gắng truy xuất thông tin về mức phân loại video nhưng không được uỷ quyền đúng cách để thực hiện việc này. -
Với việc giới thiệu tham số
myRating
, phương thứcvideos.list
cũng đã được cập nhật để hỗ trợ phân trang. Tuy nhiên, xin lưu ý rằng các tham số phân trang chỉ được hỗ trợ cho các yêu cầu sử dụng tham sốmyRating
. (Thông tin và thông số phân trang không được hỗ trợ cho các yêu cầu sử dụng thông sốid
.)-
Tham số
maxResults
chỉ định số lượng video tối đa mà API có thể trả về trong tập kết quả và tham sốpageToken
xác định một trang cụ thể trong tập kết quả mà bạn muốn truy xuất. -
Tài nguyên
youtube#videoListResponse
được trả về để phản hồi yêu cầuvideos.list
, hiện chứa đối tượngpageInfo
, trong đó có thông tin chi tiết như tổng số kết quả và số kết quả có trong tập kết quả hiện tại. Tài nguyênyoutube#videoListResponse
cũng có thể bao gồm các thuộc tínhnextPageToken
vàprevPageToken
, mỗi thuộc tính cung cấp một mã thông báo có thể dùng để truy xuất một trang cụ thể trong tập hợp kết quả.
-
-
Phương thức
videos.insert
hỗ trợ các tham số mới sau:autoLevels
– Đặt giá trị tham số này thànhtrue
để hướng dẫn YouTube tự động cải thiện độ sáng và màu sắc của video.stabilize
– Đặt giá trị tham số này thànhtrue
để hướng dẫn YouTube điều chỉnh video bằng cách loại bỏ hiện tượng rung do chuyển động của máy ảnh.
-
Đã thêm thuộc tính
channelTitle
vàosnippet
cho các tài nguyên sau:playlistItem
– Thuộc tính này chỉ định tên của kênh đã thêm mục danh sách phát.playlist
– Thuộc tính này chỉ định tên của kênh đã tạo danh sách phát.subscription
– Thuộc tính này chỉ định tên của kênh được đăng ký.
-
Thêm mã mẫu cho các phương thức sau:
activities.insert
(Ruby)playlistItems.list
(.NET)search.list
(.NET)subscriptions.insert
(Java, Ruby)videos.insert
(.NET, Ruby)
-
Tham số
mySubscribers
mới của phương thứcsubscriptions.list
cho phép bạn truy xuất danh sách người đăng ký của người dùng hiện đã xác thực. Bạn chỉ có thể sử dụng thông số này trong một yêu cầu được uỷ quyền đúng cách.Lưu ý: Chức năng này nhằm thay thế tham số
mySubscribers
hiện được hỗ trợ cho phương thứcchannels.list
. Thông số đó sẽ không được dùng nữa. -
Trong tài nguyên
video
, giá trị thuộc tínhunspecified
không còn là giá trị có thể có cho bất kỳ thuộc tính nào sau đây: -
Các yêu cầu API chứa tham số không mong muốn hiện sẽ trả về lỗi
badRequest
và lý do được báo cáo cho lỗi này làunexpectedParameter
. -
Lỗi mà phương thức
playlistItems.insert
trả về khi danh sách phát đã chứa số lượng mục tối đa được phép đã được cập nhật. Lỗi hiện được báo cáo là lỗiforbidden
và lý do lỗi làplaylistContainsMaximumNumberOfVideos
.
Ngày 19 tháng 4 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Phương thức
videos.rate
mới cho phép người dùng đặt mức phân loạilike
hoặcdislike
cho một video hoặc xoá mức phân loại khỏi một video.Tài liệu về lỗi cũng đã được cập nhật để liệt kê các lỗi mà API có thể trả về khi phản hồi lệnh gọi phương thức
videos.rate
. -
Hình thu nhỏ hiện được xác định trong tài liệu API là một tài nguyên riêng biệt và phương thức
thumbnails.set
mới cho phép bạn tải hình thu nhỏ video tuỳ chỉnh lên YouTube và đặt hình thu nhỏ đó cho một video.Tài liệu về lỗi cũng đã được cập nhật để liệt kê các lỗi mà API có thể trả về khi phản hồi lệnh gọi phương thức
thumbnails.set
.Xin lưu ý rằng thay đổi này không thực sự ảnh hưởng đến các tài nguyên hiện có trả về hình thu nhỏ. Hình thu nhỏ được trả về trong các tài nguyên đó theo cách tương tự như trước đây, mặc dù tài liệu hiện liệt kê tên của các kích thước hình thu nhỏ khác nhau mà API có thể trả về.
-
Phần
brandingSettings
mới của tài nguyênchannel
xác định chế độ cài đặt, văn bản và hình ảnh cho trang kênh và trang xem video của kênh. -
Tài nguyên
playlistItem
chứa các thuộc tính mới sau:-
Đối tượng
status
mới đóng gói thông tin trạng thái về mục danh sách phát và thuộc tínhstatus.privacyStatus
xác định trạng thái quyền riêng tư của mục danh sách phát.
-
-
Tài nguyên
video
chứa các thuộc tính mới sau:-
Thuộc tính
status.publicStatsViewable
cho biết liệu số liệu thống kê mở rộng về video trên trang xem có thể xem công khai hay không. Theo mặc định, những số liệu thống kê đó có thể xem được và các số liệu thống kê như số lượt xem và điểm xếp hạng của video vẫn sẽ xuất hiện công khai ngay cả khi bạn đặt giá trị của thuộc tính này thànhfalse
. Bạn có thể đặt giá trị của thuộc tính này khi gọi phương thứcvideos.insert
hoặcvideos.update
. -
Đối tượng
contentDetails.contentRating
đóng gói các mức phân loại mà video nhận được theo nhiều hệ thống phân loại. Danh sách bên dưới xác định các hệ thống xếp hạng được hỗ trợ và cung cấp đường liên kết đến cơ sở lưu trú liên kết với từng hệ thống xếp hạng. Định nghĩa thuộc tính xác định các giá trị phân loại được hỗ trợ cho từng hệ thống.Quốc gia Hệ thống phân loại Thuộc tính Hoa Kỳ Hiệp hội Điện ảnh Hoa Kỳ (MPAA) contentDetails.contentRating.mpaaRating
Hoa Kỳ TV Parental Guidelines (một hệ thống phân loại truyền hình) contentDetails.contentRating.tvpgRating
Úc Australian Classification Board (Ủy ban phân loại Úc) contentDetails.contentRating.acbRating
Brazil Departamento de Justiça, Classificação, Qualificação e Títulos contentDetails.contentRating.djctqRating
Canada Hệ thống phân loại video gia đình của Canada (CHVRS) contentDetails.contentRating.chvrsRating
Pháp Centre national du cinéma et de l'image animée (Bộ Văn hoá Pháp) contentDetails.contentRating.fmocRating
Đức Freiwillige Selbstkontrolle der Filmwirtschaft (FSK) contentDetails.contentRating.fskRating
Vương quốc Anh Hội đồng phân loại phim của Anh (BBFC) contentDetails.contentRating.bbfcRating
Ấn Độ Hội đồng phân loại phim trung ương (CBFC) contentDetails.contentRating.cbfcRating
Nhật Bản 映倫管理委員会 (EIRIN) contentDetails.contentRating.eirinRating
Hàn Quốc 영상물등급위원회 (KMRB) contentDetails.contentRating.kmrbRating
Mexico Tổng cục Phát thanh, Truyền hình và Điện ảnh (RTC) contentDetails.contentRating.rtcRating
New Zealand Văn phòng phân loại phim và văn học contentDetails.contentRating.oflcRating
Nga Cơ quan đăng ký phim quốc gia của Liên bang Nga contentDetails.contentRating.russiaRating
Tây Ban Nha Instituto de la Cinematografía y de las Artes Audiovisuales (ICAA) contentDetails.contentRating.icaaRating
-
-
Tài liệu của phương thức
playlistItems.update
đã được cập nhật để phản ánh thực tế là thuộc tínhsnippet.resourceId
phải được chỉ định trong tài nguyên được gửi dưới dạng nội dung yêu cầu. -
Phương thức
search.list
hiện hỗ trợ chức năng sau:-
Thông số
forMine
mới giới hạn nội dung tìm kiếm chỉ truy xuất video của người dùng đã xác thực. -
Tham số
order
hiện hỗ trợ khả năng sắp xếp kết quả theo thứ tự bảng chữ cái theo tiêu đề (order=title
) hoặc theo số lượng video theo thứ tự giảm dần (order=videoCount
). -
Tham số
safeSearch
mới cho biết liệu kết quả tìm kiếm có bao gồm nội dung bị hạn chế hay không.
-
-
Phương thức
videos.insert
hỗ trợ một số lỗi mới, được liệt kê trong bảng bên dưới:Loại lỗi Thông tin chi tiết về lỗi Mô tả badRequest
invalidCategoryId
Thuộc tính snippet.categoryId
chỉ định mã danh mục không hợp lệ. Sử dụng phương thứcvideoCategories.list
để truy xuất các danh mục được hỗ trợ.badRequest
invalidRecordingDetails
metadata specifies invalid recording details.
badRequest
invalidVideoGameRating
Siêu dữ liệu yêu cầu chỉ định mức phân loại trò chơi điện tử không hợp lệ. badRequest
invalidVideoMetadata
Siêu dữ liệu yêu cầu không hợp lệ. -
Tham số
onBehalfOfContentOwner
đã bị xoá khỏi danh sách các tham số được hỗ trợ cho phương thứcvideos.update
vàvideos.delete
.
Ngày 12 tháng 3 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Đã thêm thuộc tính
channelTitle
vàosnippet
cho các tài nguyên sau: -
Phương thức
search.list
hỗ trợ các tham số mới sau:-
Tham số
channelType
cho phép bạn hạn chế tìm kiếm kênh để truy xuất tất cả kênh hoặc chỉ truy xuất chương trình. -
Tham số
videoType
cho phép bạn hạn chế tìm kiếm video để truy xuất tất cả video hoặc chỉ truy xuất phim hoặc chỉ truy xuất các tập của chương trình.
-
-
Chúng tôi đã cập nhật định nghĩa của phần
recordingDetails
của tài nguyênvideo
để lưu ý rằng đối tượng này sẽ chỉ được trả về cho một video nếu bạn đã đặt dữ liệu vị trí địa lý hoặc thời gian quay video. -
Phương thức
playlistItems.update
hiện trả về lỗiinvalidSnippet
. Lỗi này được trả về nếu yêu cầu API không chỉ định một đoạn mã hợp lệ. -
Một số phương thức API hỗ trợ các tham số mới dành riêng cho đối tác nội dung của YouTube. Đối tác nội dung của YouTube bao gồm các hãng phim và truyền hình, hãng thu âm và những nhà sáng tạo nội dung khác cung cấp nội dung của họ trên YouTube.
-
Thông số
onBehalfOfContentOwner
cho biết thông tin xác thực uỷ quyền của yêu cầu xác định một người dùng CMS của YouTube đang thay mặt cho chủ sở hữu nội dung được chỉ định trong giá trị thông số. 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 được chỉ định trên YouTube.Thông số này dành cho những đối tác nội dung sở hữu và quản lý nhiều kênh YouTube. Tham số này cho phép các đối tác đó 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 cần phải cung cấp thông tin xác thực cho từng kênh riêng lẻ.
Các phương thức
channels.list
,search.list
,videos.delete
,videos.list
vàvideos.update
đều hỗ trợ tham số này. -
Tham số
managedByMe
do phương thứcchannels.list
hỗ trợ, hướng dẫn API trả về tất cả các kênh do chủ sở hữu nội dung sở hữu mà tham sốonBehalfOfContentOwner
chỉ định. -
Thông số
forContentOwner
do phương thứcsearch.list
hỗ trợ sẽ hướng dẫn API hạn chế kết quả tìm kiếm chỉ bao gồm các tài nguyên thuộc sở hữu của chủ sở hữu nội dung mà thông sốonBehalfOfContentOwner
chỉ định.
-
Ngày 25 tháng 2 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
API này hỗ trợ một số phần và thuộc tính mới cho tài nguyên
video
:-
Các phần
fileDetails
,processingDetails
vàsuggestions
mới cung cấp thông tin cho chủ sở hữu video về video mà họ tải lên. Dữ liệu này rất hữu ích trong các ứng dụng cho phép tải video lên và bao gồm những thông tin sau:- trạng thái và tiến trình xử lý
- lỗi hoặc các vấn đề khác gặp phải trong quá trình xử lý video
- có hình thu nhỏ hay không
- đề xuất để cải thiện chất lượng video hoặc siêu dữ liệu
- thông tin chi tiết về tệp gốc được tải lên YouTube
Chỉ chủ sở hữu video mới có thể truy xuất tất cả các phần này. Danh sách bên dưới mô tả ngắn gọn các phần mới và tài liệu tài nguyên
video
xác định tất cả các thuộc tính mà mỗi phần chứa.-
Đối tượng
fileDetails
chứa thông tin về tệp video đã tải lên YouTube, bao gồm độ phân giải, thời lượng, bộ mã hoá và giải mã âm thanh và video, tốc độ bit của luồng, v.v. -
Đối tượng
processingProgress
chứa thông tin về tiến trình xử lý tệp video đã tải lên của YouTube. Các thuộc tính của đối tượng này cho biết trạng thái xử lý hiện tại và ước tính thời gian còn lại cho đến khi YouTube xử lý xong video. Phần này cũng cho biết liệu video có các loại dữ liệu hoặc nội dung khác nhau (chẳng hạn như thông tin chi tiết về tệp hoặc hình thu nhỏ) hay không.Đối tượng này được thiết kế để được thăm dò ý kiến để người tải video lên có thể theo dõi tiến trình xử lý tệp video đã tải lên của YouTube.
-
Đối tượng
suggestions
chứa các đề xuất xác định cơ hội cải thiện chất lượng video hoặc siêu dữ liệu cho video đã tải lên.
-
Phần
contentDetails
chứa 4 thuộc tính mới. Bạn có thể truy xuất các thuộc tính này bằng các yêu cầu chưa xác thực.dimension
– Cho biết video có ở định dạng 2D hay 3D.definition
– Cho biết video có độ phân giải chuẩn hay cao.caption
– Cho biết video có phụ đề hay không.licensedContent
– Cho biết liệu video có chứa nội dung mà một đối tác nội dung trên YouTube đã xác nhận quyền sở hữu hay không.
-
Phần
status
chứa hai thuộc tính mới. Chủ sở hữu video có thể đặt giá trị cho cả hai thuộc tính này khi chèn hoặc cập nhật video. Bạn cũng có thể truy xuất các thuộc tính này bằng các yêu cầu chưa xác thực.embeddable
– Cho biết liệu có thể nhúng video trên một trang web khác hay không.license
– Chỉ định giấy phép của video. Các giá trị hợp lệ làcreativeCommon
vàyoutube
.
-
-
Định nghĩa của tham số
part
đã được cập nhật cho các phương thứcvideos.list
,videos.insert
vàvideos.update
để liệt kê các phần mới thêm được mô tả ở trên cũng như phầnrecordingDetails
đã vô tình bị bỏ qua. -
Thuộc tính
contentDetails.googlePlusUserId
mới của tài nguyênchannel
chỉ định mã hồ sơ Google+ được liên kết với kênh. Bạn có thể dùng giá trị này để tạo đường liên kết đến hồ sơ Google+. -
Giờ đây, mỗi đối tượng hình thu nhỏ sẽ chỉ định chiều rộng và chiều cao của hình ảnh. Hình thu nhỏ hiện được trả về trong các tài nguyên
activity
,channel
,playlist
,playlistItem
,search result
,subscription
vàvideo
. -
playlistItems.list
hiện hỗ trợ tham sốvideoId
. Bạn có thể sử dụng tham số này kết hợp với tham sốplaylistId
để chỉ truy xuất mục danh sách phát đại diện cho video đã chỉ định.API sẽ trả về lỗi
notFound
nếu không tìm thấy video mà thông số này xác định trong danh sách phát. -
Tài liệu về lỗi mô tả lỗi
forbidden
mới, cho biết rằng một yêu cầu không được uỷ quyền đúng cách cho hành động được yêu cầu. -
Thuộc tính
snippet.channelId
của tài nguyênchannel
đã bị xoá. Thuộc tínhid
của tài nguyên cung cấp cùng một giá trị.
Ngày 30 tháng 1 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Trang lỗi mới liệt kê các lỗi mà API có thể trả về. Trang này bao gồm các lỗi chung có thể xảy ra với nhiều phương thức API khác nhau, cũng như các lỗi dành riêng cho phương thức.
Ngày 16 tháng 1 năm 2013
Bản cập nhật này bao gồm các thay đổi sau:
-
Hiện tại, chúng tôi đã cung cấp mã mẫu cho các phương thức và ngôn ngữ trong danh sách bên dưới:
activities.insert
– JavaplaylistItems.insert
– PythonplaylistItems.list
– Java, JavaScript, PHP, Python, Rubyplaylists.insert
– Java, JavaScript, Pythonsearch.list
– Java, JavaScript, Python, Rubyvideos.insert
– Java
-
Giờ đây, tài nguyên
activity
có thể báo cáo hành độngchannelItem
. Hành động này xảy ra khi YouTube thêm một video vào kênh YouTube được tạo tự động. (YouTube xác định các chủ đề có mức độ hiện diện đáng kể trên trang web YouTube bằng thuật toán và tự động tạo kênh cho các chủ đề đó.) -
Các tham số
search.list
sau đây đã được cập nhật:- Tham số
q
không còn được chỉ định làm bộ lọc, nghĩa là .... - Đổi tên tham số
relatedToVideo
thànhrelatedToVideoId
. - Tham số
published
đã được thay thế bằng hai tham số mới làpublishedAfter
vàpublishedBefore
, được mô tả dưới đây.
- Tham số
-
Phương thức
search.list
hỗ trợ các tham số mới sau:Tên thông số Giá trị Mô tả channelId
string
Trả về các tài nguyên do kênh đã chỉ định tạo. publishedAfter
datetime
Trả về các tài nguyên được tạo sau thời gian đã chỉ định. publishedBefore
datetime
Trả về các tài nguyên được tạo trước thời gian đã chỉ định. regionCode
string
Trả về tài nguyên cho quốc gia được chỉ định. videoCategoryId
string
Lọc kết quả tìm kiếm video để chỉ bao gồm những video liên kết với danh mục video đã chỉ định. videoEmbeddable
string
Lọc kết quả tìm kiếm video để chỉ bao gồm những video có thể phát trong trình phát được nhúng trên trang web. Đặt giá trị tham số thành true
để chỉ truy xuất các video có thể nhúng.videoSyndicated
string
Lọc kết quả tìm kiếm video để chỉ bao gồm những video có thể phát bên ngoài YouTube.com. Đặt giá trị tham số thành true
để chỉ truy xuất video được phân phối. -
Một số tài nguyên API hỗ trợ các thuộc tính mới. Bảng bên dưới xác định các tài nguyên và thuộc tính mới của tài nguyên:
Tài nguyên Tên tài sản Giá trị Mô tả activity
contentDetails.playlistItem.playlistItemId
string
Mã mục trong danh sách phát do YouTube chỉ định để nhận dạng duy nhất mục đó trong danh sách phát. activity
contentDetails.channelItem
object
Một đối tượng chứa thông tin về tài nguyên đã được thêm vào một kênh. Thuộc tính này chỉ xuất hiện nếu snippet.type
làchannelItem
.activity
contentDetails.channelItem.resourceId
object
Một đối tượng xác định tài nguyên đã được thêm vào kênh. Giống như các thuộc tính resourceId
khác, thuộc tính này chứa một thuộc tínhkind
chỉ định loại tài nguyên, chẳng hạn như video hoặc danh sách phát. Tệp này cũng chứa đúng một trong số các thuộc tính –videoId
,playlistId
, v.v. – chỉ định mã nhận dạng duy nhất cho tài nguyên đó.channel
status
object
Đối tượng này đóng gói thông tin về trạng thái quyền riêng tư của kênh. channel
status.privacyStatus
string
Trạng thái quyền riêng tư của kênh. Các giá trị hợp lệ là private
vàpublic
.playlist
contentDetails
object
Đối tượng này chứa siêu dữ liệu về nội dung của danh sách phát. playlist
contentDetails.itemCount
unsigned integer
Số lượng video trong danh sách phát. playlist
player
object
Đối tượng này chứa thông tin mà bạn sẽ sử dụng để phát danh sách phát trong trình phát được nhúng. playlist
player.embedHtml
string
Thẻ <iframe>
nhúng trình phát video để phát danh sách phát.video
recordingDetails
object
Đối tượng này đóng gói thông tin xác định hoặc mô tả địa điểm và thời gian quay video. video
recordingDetails.location
object
Đối tượng này chứa thông tin vị trí địa lý liên kết với video. video
recordingDetails.location.latitude
double
Vĩ độ tính bằng độ. video
recordingDetails.location.longitude
double
Kinh độ tính bằng độ. video
recordingDetails.location.elevation
double
Độ cao so với Trái Đất, tính bằng mét. video
recordingDetails.locationDescription
string
Nội dung mô tả bằng văn bản về địa điểm quay video. video
recordingDetails.recordingDate
datetime
Ngày và giờ quay video. Giá trị được chỉ định ở định dạng ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ
). -
Tài liệu cho một số phương thức API hiện xác định các thuộc tính phải được chỉ định trong phần nội dung yêu cầu hoặc được cập nhật dựa trên các giá trị trong phần nội dung yêu cầu. Bảng dưới đây liệt kê các phương thức đó cũng như các thuộc tính bắt buộc hoặc có thể sửa đổi.
Lưu ý: Tài liệu cho các phương thức khác có thể đã liệt kê các thuộc tính bắt buộc và có thể sửa đổi.
Phương thức Thuộc tính activities.insert
Thuộc tính bắt buộc: snippet.description
snippet.description
contentDetails.bulletin.resourceId
playlists.update
Thuộc tính bắt buộc: id
playlistItems.update
Thuộc tính bắt buộc: id
videos.update
Thuộc tính bắt buộc: id
-
API không còn báo cáo lỗi
playlistAlreadyExists
nếu bạn cố gắng create hoặc cập nhật một danh sách phát có cùng tên với một danh sách phát đã tồn tại trong cùng một kênh. -
Một số phương thức API hỗ trợ các loại lỗi mới. Bảng dưới đây xác định phương thức và các lỗi mới được hỗ trợ:
Phương thức Loại lỗi Thông tin chi tiết về lỗi Mô tả guideCategories.list
notFound
notFound
Không tìm thấy danh mục hướng dẫn được xác định bằng thông số id
. Sử dụng phương thức guideCategories.list để truy xuất danh sách các giá trị hợp lệ.playlistItems.delete
forbidden
playlistItemsNotAccessible
Yêu cầu không được uỷ quyền đúng cách để xoá mục danh sách phát đã chỉ định. videoCategories.list
notFound
videoCategoryNotFound
Không tìm thấy danh mục video được xác định bằng thông số id
. Sử dụng phương thức videoCategories.list để truy xuất danh sách các giá trị hợp lệ.