Ta strona zawiera listę zmian w interfejsie YouTube Data API (wersja 3) i aktualizacje dokumentacji. Subskrybuj ten dziennik zmian. 
1 czerwca 2026 r.
Interfejs YouTube Data API przechodzi na szczegółowy system limitów obejmujący mniejsze zestawy metod, począwszy od videos.insert i search.list.
Ta aktualizacja upraszcza proces zwiększania limitów, ponieważ umożliwia YouTube łatwiejsze weryfikowanie i zatwierdzanie próśb na podstawie konkretnego sposobu wykorzystania. Ta zmiana jest też kluczowym elementem naszego zobowiązania do zapewnienia stabilności i bezpieczeństwa platformy. Dzięki temu każdy deweloper może działać w chronionym ekosystemie, zachowując jednocześnie poziomy dostępu niezbędne w przypadku zatwierdzonych zastosowań.
Wywołania interfejsu API metod videos.insert i search.list będą rozliczane w ramach odpowiednich limitów. Wywołania interfejsu API do wszystkich innych metod będą obciążać istniejący limit. Deweloperzy mogą wyświetlać limity w konsoli Google Cloud i prosić o dodatkowe limity za pomocą formularza prośby o zwiększenie limitu.
4 grudnia 2025 r.
Zaktualizowaliśmy dokumentację interfejsu YouTube Data API i kalkulator limitów, aby odzwierciedlić zmianę kosztu limitu przesyłania filmu z około 1600 jednostek na około 100 jednostek.
10 lipca 2025 r.
21 lipca 2025 r. YouTube dostosuje treści zwracane przez wykres mostPopular metody video.list. W przeszłości wykres mostPopular odzwierciedlał filmy z listy Na czasie. Teraz na liście mostPopular będą się pojawiać filmy z list Na czasie w kategoriach Muzyka, Filmy i Gry. Ta zmiana w interfejsie API jest powiązana z wycofaniem karty Na czasie w YouTube.
26 marca 2025 r.
Od 31 marca 2025 r. YouTube zmieni sposób zliczania wyświetleń filmów Short. W przeszłości w przypadku filmów Short wyświetlenie było zliczane po odtworzeniu filmu przez określoną liczbę sekund. Wyświetlenia będą teraz odzwierciedlać, ile razy rozpoczęto lub ponowiono odtwarzanie filmu Short, bez minimalnego czasu oglądania. Więcej informacji
Od 31 marca 2025 r. te pola w interfejsie Data API będą zwracać liczbę wyświetleń filmów Short zgodnie z tą zmianą:
channels.statistics.viewCountvideos.statistics.viewCount
30 października 2024 r.
Interfejs API umożliwia teraz identyfikowanie filmów zawierających realistyczne zmodyfikowane lub wygenerowane syntetycznie (Z/S) treści. Dowiedz się więcej o zasadach YouTube dotyczących treści związanych z alkoholem, tytoniem i innymi produktami objętymi ograniczeniami wiekowymi.
Przykłady treści związanych z alkoholem i tytoniem to filmy, które:
- przedstawiają prawdziwą osobę, która mówi lub robi coś, czego wcale nie powiedziała ani nie zrobiła;
- zmieniać materiał przedstawiający prawdziwe wydarzenie lub miejsce;
- treści przedstawiają realistycznie wyglądającą scenę, która faktycznie nie miała miejsca.
Aby wskazać, czy film zawiera treści związane z alkoholem lub tytoniem, ustaw właściwość status.containsSyntheticMedia. Tę właściwość można ustawić podczas wywoływania metod videos.insert lub videos.update. Jeśli ta właściwość jest ustawiona, jest zwracana w zasobie video.
30 kwietnia 2024 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Ta aktualizacja zawiera następujące zmiany:
Interfejs API nie obsługuje już wstawiania ani pobierania dyskusji na kanale. Ta zmiana jest zgodna z funkcją obsługiwaną w witrynie YouTube, która nie umożliwia publikowania komentarzy na kanałach.
13 marca 2024 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Ta aktualizacja zawiera następujące zmiany:
Parametr sync dla metod captions.insert i captions.update został wycofany. 12 kwietnia 2024 r. YouTube przestanie obsługiwać parametr
.
W wyniku tej zmiany programiści muszą podawać informacje o czasie podczas wstawiania lub aktualizowania ścieżek z napisami. W przeciwnym razie przesyłanie się nie powiedzie.
12 marca 2024 r.
Ta aktualizacja zawiera następujące zmiany:
Zaktualizowaliśmy dokumentację zasobu captions, aby poinformować, że maksymalna dozwolona długość pola snippet.name to 150 znaków. Jeśli nazwa ścieżki jest dłuższa, interfejs API zwraca błąd nameTooLong.
7 marca 2024 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Właściwość zasobu channelbrandingSettings.channel.moderateComments została wycofana. 7 marca 2024 r. YouTube przestanie obsługiwać ten parametr.
31 stycznia 2024 r.
Ta aktualizacja zawiera następujące zmiany:
Nowy parametr forHandle metody channels.list umożliwia pobieranie informacji o kanale przez podanie jego nicka w YouTube.
9 listopada 2023 r.
Usunęliśmy wszystkie odwołania do zasobu videoId w sekcji Comments, ponieważ zasób videoId nie jest zwracany w wywołaniu interfejsu API.
12 września 2023 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Metoda comments.markAsSpam jest przestarzała od kilku lat. Ta metoda nie jest już obsługiwana w YouTube ani w interfejsie API.
Do wszystkich dokumentów, w których występuje metoda comments.markAsSpam, dodaliśmy powiadomienie o wycofaniu.
22 sierpnia 2023 r.
Metoda search.list obsługuje teraz parametr videoPaidProductPlacement. Ten parametr umożliwia filtrowanie wyników wyszukiwania, tak aby obejmowały tylko filmy, w których twórca oznaczył, że zawierają płatną promocję.
18 sierpnia 2023 r.
Zaktualizowaliśmy definicję video zasobuliveStreamingDetails.concurrentViewers, aby uwzględnić informację, że liczba jednoczesnych widzów zwracana przez YouTube Data API może różnić się od przetworzonej i oczyszczonej z niechcianych wiadomości liczby jednoczesnych widzów dostępnej w Statystykach YouTube. Więcej informacji o danych transmisji na żywo znajdziesz w Centrum pomocy YouTube.
7 sierpnia 2023 r.
Jak ogłosiliśmy 12 czerwca 2023 r., parametr relatedToVideoId metody search.list został wycofany. Ten parametr nie jest już obsługiwany, a odwołania do niego zostały usunięte z dokumentacji API.
28 czerwca 2023 r.
Metoda thumbnails.set obsługuje teraz błąd uploadRateLimitExceeded, który oznacza, że w ciągu ostatnich 24 godzin kanał przesłał zbyt wiele miniatur i powinien spróbować ponownie później.
12 czerwca 2023 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Parametr relatedToVideoId metody search.list został wycofany. 7 sierpnia 2023 r. przestaniemy obsługiwać parametr
.
Do dokumentacji metody search.list dodaliśmy powiadomienie o wycofaniu. Ten parametr zostanie całkowicie usunięty z search.listdokumentacji nie wcześniej niż 7 sierpnia 2023 r.
Ponadto z przewodnika po implementacji interfejsu API usunęliśmy przykład pokazujący, jak pobrać powiązane filmy.
22 sierpnia 2022 r.
Poprawiono adnotacje typu dla pól video.statistics z niepodpisanego typu long na ciąg znaków.
5 sierpnia 2022 r.
YouTube zmienił sposób generowania identyfikatorów napisów i w ramach tej zmiany przypisuje nowe identyfikatory napisów do wszystkich ścieżek napisów. Ta zmiana może być niekompatybilna wstecznie w przypadku aplikacji, które przechowują wartości caption_id, ale nie będzie miała wpływu na aplikacje, które nie przechowują wartości caption_id.
Od teraz do 1 grudnia 2022 r. metody
captions.list,
captions.update,
captions.download i
captions.delete będą obsługiwać zarówno stare, jak i nowe identyfikatory ścieżek z napisami. Jednak 1 grudnia 2022 r. lub później YouTube przestanie obsługiwać stare identyfikatory ścieżek z napisami. Od tego czasu wywoływanie dowolnej z tych metod interfejsu API ze starym identyfikatorem ścieżki z napisami będzie powodować błąd captionNotFound.
Aby przygotować się na tę zmianę, zaplanuj całkowite zastąpienie wszystkich przechowywanych danych ścieżki z napisami w okresie od teraz do 1 grudnia 2022 r. Oznacza to, że w przypadku każdego filmu, dla którego przechowujesz dane ścieżki z napisami, musisz usunąć aktualnie przechowywane dane, a następnie wywołać metodę captions.list, aby pobrać bieżący zestaw ścieżek z napisami do filmu i zapisać dane w odpowiedzi interfejsu API w zwykły sposób.
12 lipca 2022 r.
Zaktualizowaliśmy Warunki korzystania z usług YouTube API. Więcej informacji znajdziesz w historii zmian Warunków korzystania z usług YouTube API.
27 kwietnia 2022 r.
Zaktualizowaliśmy opis metody videos.insert, aby poinformować, że maksymalny rozmiar przesyłanych filmów wzrósł ze 128 GB do 256 GB.
8 kwietnia 2022 r.
Definicje parametrów subscriptions.list metody myRecentSubscribers i mySubscribers zostały zaktualizowane, aby uwzględnić informację, że maksymalna liczba subskrybentów zwracanych przez interfejs API może być ograniczona.
Ta zmiana to korekta w dokumentacji, a nie zmiana w działaniu interfejsu API.
15 grudnia 2021 r.
Zgodnie z ogłoszeniem z 18 listopada 2021 roku w związku ze zmianami, które sprawią, że liczba kliknięć „Nie lubię” będzie prywatna na całej platformie YouTube, właściwość statistics.dislikeCount zasobu video jest teraz prywatna.
Więcej informacji o tej zmianie znajdziesz na oficjalnym blogu YouTube.
18 listopada 2021 r.
W związku ze zmianami, które mają na celu ustawienie liczby kliknięć „Nie podoba mi się” jako prywatnej na całej platformie YouTube, właściwość video zasobustatistics.dislikeCount zostanie ustawiona jako prywatna 13 grudnia 2021 r. Oznacza to, że właściwość będzie uwzględniana w odpowiedzi interfejsu API z punktu końcowego videos.list tylko wtedy, gdy żądanie do interfejsu API zostało uwierzytelnione przez właściciela filmu.
Ta zmiana nie ma wpływu na punkt końcowy videos.rate.
Deweloperzy, którzy nie wyświetlają publicznie liczby negatywnych ocen, ale nadal potrzebują jej w swoim kliencie interfejsu API, mogą poprosić o dodanie do listy dozwolonych, aby uzyskać wyjątek. Aby ubiegać się o wyjątek, musisz wypełnić ten formularz zgłoszeniowy.
Więcej informacji o tej zmianie znajdziesz na oficjalnym blogu YouTube.
2 lipca 2021 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Punkt końcowy commentThreads.update został wycofany i nie jest już obsługiwany.
Ten punkt końcowy duplikował funkcje dostępne w innych punktach końcowych interfejsu API. Zamiast tego możesz zadzwonić pod numer comments.update
commentThreads zasobu, wykonaj dodatkowe wywołanie metody commentThreads.list.
1 lipca 2021 r.
Wszyscy deweloperzy korzystający z usług interfejsu API YouTube muszą przejść kontrolę zgodności z interfejsem API,aby uzyskać limit większy niż domyślna pula 10 000 jednostek. Do tej pory zarówno proces audytu zgodności, jak i wnioski o dodatkowe przydziały jednostek limitu były przeprowadzane przez deweloperów, którzy wypełniali i przesyłali formularz dotyczący audytu i zwiększenia limitów usług YouTube API.
Aby wyjaśnić te procesy i lepiej spełniać potrzeby deweloperów korzystających z naszych usług API, dodajemy 3 nowe formularze i przewodnik po ich wypełnianiu:
- Formularz wniosku dewelopera po audycie: deweloperzy, którzy przeszli już audyt zgodności z zasadami dotyczącymi interfejsu API, mogą wypełnić i przesłać ten krótszy formularz, aby poprosić o zwiększenie przydzielonego limitu.
- Formularz odwołania: deweloperzy, których projekty API nie przeszły audytu zgodności (lub którym odmówiono zwiększenia limitu jednostek), mogą wypełnić i przesłać ten formularz.
- Formularz zmiany kontroli: deweloperzy lub dowolny podmiot zarządzający klientem API w imieniu dewelopera, u których nastąpiła zmiana kontroli (np. w wyniku zakupu lub sprzedaży akcji, fuzji przedsiębiorstw bądź innego rodzaju transakcji firmowej) związana z projektem API, muszą wypełnić i przesłać ten formularz. Dzięki temu zespół interfejsu API YouTube może zaktualizować nasze dane, sprawdzić, czy nowy projekt interfejsu API jest zgodny z przypadkiem użycia, i zweryfikować bieżący przydział limitu dewelopera.
Każdy nowy formularz poinformuje nas o Twoim zamierzonym sposobie korzystania z interfejsu API YouTube i umożliwi nam lepsze wsparcie.
Więcej informacji znajdziesz w naszym nowym przewodniku po audytach zgodności interfejsu API.
12 maja 2021 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Ta aktualizacja obejmuje te zmiany w interfejsie API:
-
Właściwość
contentDetails.relatedPlaylists.favoriteszasobuchannelzostała wycofana. Funkcja ulubionych filmów została wycofana kilka lat temu, o czym wspominaliśmy w historii zmian z 28 kwietnia 2016 r..Przed tą aktualizacją interfejs API nadal tworzył nową playlistę, jeśli klient interfejsu API próbował dodać film do nieistniejącej playlisty ulubionych. W takim przypadku playlista nie zostanie utworzona, a interfejs API zwróci błąd. Próby modyfikowania ulubionych playlist przez dodawanie, zmienianie lub usuwanie elementów również zostały wycofane zgodnie z wcześniejszymi ogłoszeniami i w każdej chwili mogą zacząć zwracać błędy.
-
Te właściwości zasobu
channelzostały wycofane. Te właściwości nie są już obsługiwane w interfejsie YouTube Studio ani w YouTube. W związku z tym nie są one już obsługiwane przez interfejs API.brandingSettings.channel.defaultTabbrandingSettings.channel.featuredChannelsTitlebrandingSettings.channel.featuredChannelsUrls[]brandingSettings.channel.profileColorbrandingSettings.channel.showBrowseViewbrandingSettings.channel.showRelatedChannels
Wszystkie usługi zostały usunięte z
channelreprezentacji zasobu, a ich definicje zostały usunięte z listy usług zasobu. Dodatkowo z dokumentacji dotyczącej poszczególnych metod usunęliśmy błędy związane z tymi właściwościami. -
Te właściwości zasobu
channelSectionzostały wycofane. Te właściwości nie są już obsługiwane w interfejsie YouTube Studio ani w YouTube. W związku z tym nie są one już obsługiwane przez interfejs API.snippet.stylesnippet.defaultLanguagesnippet.localized.titlelocalizationslocalizations.(key)localizations.(key).titletargetingtargeting.languages[]targeting.regions[]targeting.countries[]
W związku z tą zmianą wycofaliśmy też parametr
hlmetodychannelSection.list, ponieważ obsługiwane przez niego funkcje są nieobsługiwane.Wszystkie usługi zostały usunięte z
channelSectionreprezentacji zasobu, a ich definicje zostały usunięte z listy usług zasobu. Dodatkowo z dokumentacji dotyczącej poszczególnych metod usunęliśmy błędy związane z tymi właściwościami. -
W przypadku właściwości
snippet.typezasobuchannelSectionte wartości zostały wycofane: Te wartości nie są już obsługiwane na stronach kanałów w YouTube, a w związku z tym nie są też obsługiwane przez interfejs API.likedPlaylistslikespostedPlaylistspostedVideosrecentActivityrecentPosts
-
Właściwość
snippet.tags[]zasobuplaylistzostała wycofana. Ta usługa nie jest już obsługiwana w YouTube, dlatego nie jest już obsługiwana przez interfejs API.
9 lutego 2021 r.
Zasób playlistItem obsługuje 2 nowe właściwości:
- Właściwość
snippet.videoOwnerChannelIdokreśla identyfikator kanału, na który został przesłany film z playlisty. - Właściwość
snippet.videoOwnerChannelTitleokreśla nazwę kanału, na który został przesłany film z playlisty.
28 stycznia 2021 r.
Ta aktualizacja zawiera następujące zmiany:
-
Metody
playlistItems.delete,playlistItems.insert,playlistItems.list,playlistItems.update,playlists.delete,playlists.listiplaylists.updateobsługują nowy błądplaylistOperationUnsupported. Ten błąd występuje, gdy żądanie próbuje wykonać operację, która nie jest dozwolona w przypadku danej playlisty. Użytkownik nie może na przykład usunąć filmu z playlisty z przesłanymi filmami ani usunąć samej playlisty.W każdym przypadku ten błąd zwraca kod odpowiedzi HTTP
400(nieprawidłowe żądanie). -
Z dokumentacji usunęliśmy błędy
watchHistoryNotAccessibleiwatchLaterNotAccessiblemetodyplaylistItems.list. Chociaż historia oglądania i lista „Obejrzyj później” użytkowników nie są dostępne w interfejsie API, te konkretne błędy nie są przez niego zwracane.
15 października 2020 r.
Do zasad dla deweloperów dodaliśmy 2 nowe sekcje:
- Nowy punkt III.E.4.i zawiera dodatkowe informacje o danych zbieranych i wysyłanych za pomocą odtwarzacza YouTube. Odpowiadasz za wszelkie dane użytkowników, które przesyłasz do nas za pomocą dowolnego odtwarzacza osadzonego w YouTube, zanim użytkownik wejdzie w interakcję z odtwarzaczem, aby wskazać zamiar odtworzenia. Możesz ograniczyć udostępnianie danych YouTube, zanim użytkownik wejdzie w interakcję z odtwarzaczem, ustawiając autoodtwarzanie na „false”.
- Nowy punkt III.E.4.j dotyczy sprawdzania statusu treści przeznaczonych dla dzieci przed umieszczeniem ich w Twoich witrynach i aplikacjach. Odpowiadasz za wiedzę o tym, kiedy filmy, które umieszczasz w swoim kliencie interfejsu API, są przeznaczone dla dzieci, i za odpowiednie traktowanie danych zebranych z umieszczonego odtwarzacza. Dlatego przed umieszczeniem treści w kliencie interfejsu API za pomocą dowolnego umieszczonego odtwarzacza YouTube musisz sprawdzić jej stan za pomocą interfejsu YouTube Data API.
Nowy przewodnik Sprawdzanie statusu filmu jako przeznaczonego dla dzieci wyjaśnia, jak sprawdzić status MFK filmu za pomocą usługi YouTube Data API.
W związku z tymi zmianami do dokumentacji parametrów odtwarzacza osadzonego dodaliśmy przypomnienie, że jeśli włączysz autoodtwarzanie, odtwarzanie rozpocznie się bez interakcji użytkownika z odtwarzaczem. W związku z tym zbieranie danych i udostępnianie będzie następować po wczytaniu strony.
8 października 2020 r.
Ta aktualizacja obejmuje 3 drobne zmiany związane z zasobem channel:
- Obiekt
snippet.thumbnails, który identyfikuje miniatury kanału, może być pusty w przypadku nowo utworzonych kanałów. Jego wypełnienie może potrwać do 1 dnia. - Właściwość
statistics.videoCountodzwierciedla liczbę tylko publicznych filmów na kanale, nawet w przypadku właścicieli. To zachowanie jest zgodne z liczbami wyświetlanymi w witrynie YouTube. - Słowa kluczowe kanału, które są identyfikowane we właściwości
brandingSettings.channel.keywords, mogą zostać skrócone, jeśli przekroczą maksymalną dozwoloną długość 500 znaków lub jeśli zawierają nieprawidłowo użyte cudzysłowy ("). Pamiętaj, że limit 500 znaków nie dotyczy poszczególnych słów kluczowych, ale łącznej długości wszystkich słów kluczowych. Jest to zgodne z działaniem witryny YouTube.
9 września 2020 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Ta aktualizacja obejmuje te zmiany w interfejsie API. Wszystkie zmiany wejdą w życie 9 września 2020 r. lub później, czyli w dniu ogłoszenia tej informacji. W związku z tym deweloperzy nie powinni już korzystać z żadnych funkcji interfejsu API wymienionych poniżej.
-
Te zasoby, metody, parametry i właściwości zasobów interfejsu API zostały natychmiast wycofane i przestaną działać w dniu ogłoszenia lub po nim:
- Te właściwości zasobu
channel:- Usługa
statistics.commentCount - obiekt
brandingSettings.imagei wszystkie jego usługi podrzędne; brandingSettings.hintslista i wszystkie usługi podrzędne
- Usługa
- Parametr filtra
categoryIdmetodychannels.list - zasób
guideCategoriesi metodaguideCategories.list;
- Te właściwości zasobu
-
Odpowiedzi interfejsu API dla metody
channels.listnie zawierają już właściwościprevPageToken, jeśli żądanie do interfejsu API ustawia parametrmanagedByMenatrue. Ta zmiana nie ma wpływu na właściwośćprevPageTokenw przypadku innych żądańchannels.listani na właściwośćnextPageTokenw przypadku żadnych żądań. -
Właściwości
contentDetails.relatedPlaylists.watchLatericontentDetails.relatedPlaylists.watchHistoryzasobuchannelzostały ogłoszone jako wycofane 11 sierpnia 2016 r. Obsługa tych list odtwarzania w metodachplaylistItems.insertiplaylistItems.deletezostała w pełni wycofana, a te 2 właściwości zostały usunięte z dokumentacji. -
Parametr
mySubscribersmetodychannels.list, którego wycofanie ogłosiliśmy 30 lipca 2013 r., został usunięty z dokumentacji. Użyj metodysubscriptions.listi jej parametrumySubscribers, aby pobrać listę subskrybentów kanału uwierzytelnionego użytkownika. -
Z dokumentacji usunięto obiekt
invideoPromotionzasobuchanneli wszystkie jego właściwości podrzędne, które zostały ogłoszone jako wycofane 27 listopada 2017 r..
29 lipca 2020 r.
Uprościliśmy proces naliczania limitu żądań do interfejsu API, usuwając dodatkowy koszt związany z parametrem part. Od razu zaczniemy pobierać tylko koszt podstawowy wywoływanej metody. Więcej informacji o uproszczonym limicie znajdziesz tutaj.
W wyniku tej zmiany większość wywołań interfejsu API będzie miała nieco niższy koszt limitu, a niektóre wywołania interfejsu API nadal będą miały taki sam koszt. Ta zmiana nie zwiększa kosztu żadnych wywołań interfejsu API. Ogólnie rzecz biorąc, prawdopodobny efekt jest taki, że przydzielony limit, który można sprawdzić w konsoli Google Cloud, będzie wystarczał na dłużej.
Aby zapewnić sobie dalszy dostęp do usług interfejsu API YouTube, zalecamy wszystkim deweloperom przeprowadzenie audytu zgodności w przypadku swoich projektów.
Ta pozycja w historii zmian została pierwotnie opublikowana 20 lipca 2020 r.
28 lipca 2020 r.
Wszystkie filmy przesłane za pomocą punktu końcowego videos.insert
z niezweryfikowanych projektów API utworzonych po 28 lipca 2020 roku będą ograniczone do trybu wyświetlania prywatnego. Aby znieść to ograniczenie, każdy projekt musi przejść audyt w celu sprawdzenia zgodności z Warunkami korzystania z usługi.
Twórcy, którzy używają niezweryfikowanego klienta API do przesyłania filmów, otrzymają e-maila z wyjaśnieniem, że ich film jest zablokowany jako prywatny i że mogą uniknąć tego ograniczenia, korzystając z oficjalnego lub sprawdzonego klienta.
Ta zmiana nie ma obecnie wpływu na projekty interfejsu API utworzone przed 28 lipca 2020 r. Zdecydowanie zalecamy jednak wszystkim deweloperom przeprowadzenie audytu zgodności w przypadku swoich projektów, aby zapewnić sobie dalszy dostęp do usług interfejsu API YouTube.
21 lipca 2020 r.
[Zaktualizowano 28 lipca 2020 r.] Aktualizacja dokumentacji, o której mowa w tym wpisie w historii zmian, została ponownie opublikowana 28 lipca 2020 r.
Wczoraj opublikowaliśmy aktualizację dokumentacji dotyczącą procesu naliczania limitu. Ze względu na nieprzewidziane okoliczności zmiana limitu nie została jeszcze wprowadzona. W związku z tym w celu zachowania dokładności przywróciliśmy poprzednią wersję dokumentacji. Aby uniknąć nieporozumień, wpis w historii zmian wyjaśniający tę zmianę został usunięty i w najbliższej przyszłości zostanie opublikowany ponownie.
7 lipca 2020 r.
Uwaga: to jest ogłoszenie o wycofaniu.
Parametry autoLevels i stabilize metody videos.insert zostały wycofane i usunięte z dokumentacji. Ich wartości są ignorowane i nie mają wpływu na sposób przetwarzania nowo przesłanych filmów.
15 czerwca 2020 r.
Nowy przewodnik Zgodność z zasadami dla deweloperów YouTube zawiera wskazówki i przykłady, które pomogą Ci zadbać o to, aby Twoi klienci API przestrzegali określonych części Warunków i zasad (Warunków korzystania z interfejsów API) usług YouTube API.
Te wskazówki zawierają informacje o tym, jak YouTube egzekwuje przestrzeganie niektórych aspektów Warunków korzystania z interfejsu API, ale nie zastępują żadnych istniejących dokumentów. W tym przewodniku znajdziesz odpowiedzi na niektóre z najczęstszych pytań, które deweloperzy zadają podczas sprawdzania zgodności z API. Mamy nadzieję, że uprości to proces tworzenia funkcji, ponieważ pomoże Ci zrozumieć, jak interpretujemy i egzekwujemy nasze zasady.
4 czerwca 2020 r.
Uwaga: to jest aktualizacja wcześniejszego ogłoszenia o wycofaniu.
Funkcja biuletynu kanału została całkowicie wycofana. Ta zmiana została ogłoszona 17 kwietnia 2020 r. i weszła już w życie. W związku z tym metoda activities.insert nie jest już obsługiwana, a metoda activities.list nie zwraca już biuletynów kanału. Więcej informacji znajdziesz w Centrum pomocy YouTube.
17 kwietnia 2020 r.
Uwaga: to jest ogłoszenie o wycofaniu.
YouTube wycofuje funkcję biuletynu kanału. W związku z tym metoda activities.insert zostanie wycofana, a metoda activities.list przestanie zwracać biuletyny kanału. Zmiany te zaczną obowiązywać w interfejsie API 18 maja 2020 r. lub później. Więcej informacji znajdziesz w Centrum pomocy YouTube.
31 marca 2020 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowe zasoby i metody
-
Nowy zasób
memberreprezentuje wspierającego kanał w YouTube. Wspierający zapewnia twórcy cykliczne wsparcie finansowe i otrzymuje specjalne korzyści. Wspierający mogą na przykład czatować, gdy twórca włączy tryb czatu tylko dla wspierających.Ten zasób zastępuje zasób
sponsor, który jest opisany w interfejsie YouTube Live Streaming API. Zasóbsponsorjest teraz wycofany, więc klienci interfejsu API powinni zaktualizować wywołania metodysponsors.list, aby zamiast niej używać metodymembers.list. -
Nowy zasób
membershipsLevelokreśla poziom cen zarządzany przez twórcę, który autoryzował żądanie do interfejsu API. MetodamembershipsLevels.listpobiera listę wszystkich poziomów członkostwa twórcy.
-
10 stycznia 2020 r.
Interfejs API obsługuje teraz możliwość identyfikowania treści skierowanych do dzieci, które YouTube określa jako „przeznaczone dla dzieci”. Więcej informacji o treściach „przeznaczonych dla dzieci” znajdziesz w Centrum pomocy YouTube.
Zasoby channel i video obsługują 2 nowe właściwości, które umożliwiają twórcom i widzom identyfikowanie treści przeznaczonych dla dzieci:
-
Właściwość
selfDeclaredMadeForKidsumożliwia twórcom treści określenie, czy kanał lub film są przeznaczone dla dzieci.
W przypadku kanałów tę właściwość można ustawić podczas wywoływania metodychannels.update. W przypadku filmów tę właściwość można ustawić podczas wywoływania metodvideos.insertlubvideos.update.
Pamiętaj, że ta właściwość jest uwzględniana w odpowiedziach interfejsu API, które zawierają zasobychannellubvideo, tylko wtedy, gdy właściciel kanału autoryzował żądanie interfejsu API. -
Właściwość
madeForKidsumożliwia każdemu użytkownikowi pobranie stanu „przeznaczone dla dzieci” kanału lub filmu. Na przykład stan może być określany na podstawie wartości właściwościselfDeclaredMadeForKids. Więcej informacji o określaniu odbiorców kanału, filmów lub transmisji znajdziesz w Centrum pomocy YouTube.
Zaktualizowaliśmy też Warunki korzystania z usług YouTube API oraz zasady dla deweloperów. Więcej informacji znajdziesz w historii zmian Warunków korzystania z usług YouTube API. Zmiany w Warunkach korzystania z usług YouTube API i Zasadach dla deweloperów wejdą w życie 10 stycznia 2020 roku czasu pacyficznego.
10 września 2019 r.
Zaktualizowaliśmy dokumentację interfejsu API, aby odzwierciedlić zmianę sposobu raportowania liczby subskrybentów w YouTube, a co za tym idzie, w odpowiedziach interfejsu API. W wyniku tej zmiany liczba subskrybentów zwracana przez usługę YouTube Data API jest zaokrąglana w dół do 3 cyfr znaczących, jeśli liczba subskrybentów jest większa niż 1000. Ta zmiana wpływa na właściwość statistics.subscriberCount zasobu channel.
Uwaga: ta zmiana wpływa na wartość tej właściwości nawet w przypadkach, gdy użytkownik wysyła autoryzowane żądanie danych o własnym kanale. Właściciele kanałów nadal mogą sprawdzać dokładną liczbę subskrybentów w YouTube Studio.
Jeśli na przykład kanał ma 123 456 subskrybentów, właściwość statistics.subscriberCount będzie zawierać wartość 123000.
W tabeli poniżej znajdziesz przykłady zaokrąglania liczby subskrybentów w odpowiedziach API i skracania jej w innych interfejsach użytkownika YouTube widocznych publicznie:
| Przykładowa liczba subskrybentów | YouTube Data API | Publicznie widoczne interfejsy YouTube |
|---|---|---|
| 1234 | 1230 | 1,23 tys. |
| 12 345 | 12300 | 12,3 tys. |
| 123 456 | 123000 | 123 tys. |
| 1 234 567 | 1230000 | 1,23 mln |
| 12 345 678 | 12300000 | 12,3 mln |
| 123 456 789 | 123000000 | 123 mln |
4 kwietnia 2019 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zaktualizowaliśmy dokumentację API, aby lepiej wyjaśnić typowe przypadki użycia każdej metody i zapewnić dynamiczne, wysokiej jakości przykłady kodu za pomocą widżetu APIs Explorer. Przykład znajdziesz w dokumentacji metody
channels.list. Na stronach opisujących metody interfejsu API pojawiły się 2 nowe elementy:-
Widżet APIs Explorer umożliwia wybieranie zakresów autoryzacji, wpisywanie przykładowych wartości parametrów i właściwości, a następnie wysyłanie rzeczywistych żądań interfejsu API i wyświetlanie rzeczywistych odpowiedzi interfejsu API. Widżet oferuje też widok pełnoekranowy, który wyświetla kompletne przykłady kodu, które są dynamicznie aktualizowane, aby używać wpisanych przez Ciebie zakresów i wartości.
-
W sekcji Typowe przypadki użycia znajdziesz opis co najmniej jednego typowego przypadku użycia metody wyjaśnionej na stronie. Możesz na przykład wywołać metodę
channels.list, aby pobrać dane o konkretnym kanale lub o kanale bieżącego użytkownika.Możesz użyć linków w tej sekcji, aby wypełnić Eksplorator interfejsów API przykładowymi wartościami dla Twojego przypadku użycia lub otworzyć Eksplorator interfejsów API na pełnym ekranie z już wypełnionymi wartościami. Te zmiany mają ułatwić Ci znajdowanie przykładów kodu, które można bezpośrednio zastosować w przypadku użycia, który chcesz wdrożyć we własnej aplikacji.
Przykładowe fragmenty kodu są obecnie obsługiwane w przypadku języków Java, JavaScript, PHP, Python i curl.
-
-
Zaktualizowaliśmy też narzędzie przykłady kodu, które ma nowy interfejs użytkownika i oferuje wszystkie opisane powyżej funkcje. Za pomocą tego narzędzia możesz poznawać przypadki użycia różnych metod, wczytywać wartości do interfejsu APIs Explorer i otwierać go w trybie pełnoekranowym, aby uzyskać przykłady kodu w językach Java, JavaScript, PHP i Python.
W związku z tą zmianą usunęliśmy strony, na których wcześniej były dostępne przykłady kodu w językach Java, JavaScript, PHP i Python.
-
Zaktualizowaliśmy krótkie przewodniki po językach Java, JavaScript, PHP i Python. Zaktualizowane przewodniki wyjaśniają, jak uruchomić jeden przykład z kluczem interfejsu API, a drugi z identyfikatorem klienta OAuth 2.0 przy użyciu przykładowych kodów z narzędzia APIs Explorer.
Pamiętaj, że opisane powyżej zmiany zastępują interaktywne narzędzie, które zostało dodane do dokumentacji API w 2017 roku.
9 lipca 2018 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zaktualizowaliśmy definicję właściwości
snippet.thumbnailszasobuchannel, aby zaznaczyć, że podczas wyświetlania miniatur w aplikacji kod powinien używać adresów URL obrazów dokładnie w takiej postaci, w jakiej są one zwracane w odpowiedziach interfejsu API. Na przykład w adresie URL zwracanym w odpowiedzi interfejsu API aplikacja nie powinna używać domenyhttpzamiast domenyhttps.Od lipca 2018 r. adresy URL miniatur kanałów będą dostępne tylko w domenie
https, czyli tak, jak pojawiają się w odpowiedziach interfejsu API. Po tym czasie w aplikacji mogą pojawiać się uszkodzone obrazy, jeśli próbuje ona wczytać obrazy z YouTube z domenyhttp. -
Uwaga: to jest ogłoszenie o wycofaniu.
Właściwość
recordingDetails.location.altitudezasobuvideozostała wycofana. Nie gwarantujemy, że filmy będą zwracać wartości dla tej właściwości. Podobnie nawet jeśli żądania interfejsu API próbują ustawić wartość tej właściwości, przychodzące dane mogą nie zostać zapisane.
22 czerwca 2018 r.
Przewodnik po implementacji, wcześniej znany jako Przewodnik po implementacji i migracji, został zaktualizowany i nie zawiera już instrukcji migracji z interfejsu API w wersji 2 na interfejs API w wersji 3. Usunęliśmy też instrukcje dotyczące funkcji, które zostały wycofane w interfejsie API w wersji 3, np. ulubionych filmów.
27 listopada 2017 r.
Ta aktualizacja zawiera następujące zmiany:
-
Uwaga: to jest ogłoszenie o wycofaniu.
YouTube wycofuje obsługę funkcji Polecany film i Polecana witryna, które są obsługiwane w interfejsie API za pomocą obiektu
invideoPromotionzasobuchannel. W rezultacie ten obiekt, w tym wszystkie jego usługi podrzędne, zostaje wycofany.Dane
invideoPromotionmożesz pobierać i ustawiać do 14 grudnia 2017 r. Po tej dacie:- Próby pobrania części
invideoPromotionpodczas wywoływania funkcjichannels.listzwrócą pustą wartośćinvideoPromotionlub nie zwrócą żadnych danychinvideoPromotion. - Próby aktualizacji danych
invideoPromotionpodczas wywoływaniachannels.updatebędą zwracać odpowiedź o powodzeniu co najmniej do 27 maja 2018 r., ale będą traktowane jako operacje bez efektu, co oznacza, że nie będą faktycznie aktualizować danych.
Po 27 maja 2018 r. te żądania mogą zwracać komunikaty o błędach, np. informujące, że
invalidPromotionjest nieprawidłową częścią. - Próby pobrania części
16 listopada 2017 r.
Ta aktualizacja zawiera następujące zmiany:
-
Interaktywne narzędzie do fragmentów kodu obsługuje teraz przykładowe kody w Node.js. Przykłady są też widoczne w dokumentacji niemal wszystkich metod interfejsu API, np. metody
channels.list.Przykłady z możliwością dostosowania mają na celu zapewnienie punktu wyjścia dla aplikacji Node.js w konkretnych przypadkach użycia. Działanie tej funkcji jest podobne do kodu w przewodniku po Node.js. Przykłady zawierają jednak pewne funkcje narzędziowe, które nie występują w przewodniku Szybki start:
- Funkcja
removeEmptyParametersprzyjmuje listę par klucz-wartość odpowiadających parametrom żądania do interfejsu API i usuwa parametry, które nie mają wartości. - Funkcja
createResourceprzyjmuje listę par klucz-wartość odpowiadających właściwościom zasobu interfejsu API. Następnie przekształca właściwości w obiekt JSON, który można wykorzystać w operacjachinsertiupdate. Poniższy przykład przedstawia zestaw nazw i wartości właściwości oraz obiekt JSON, który zostałby utworzony przez kod:# 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' } }
Wszystkie te przykłady są przeznaczone do pobrania i uruchomienia lokalnie. Więcej informacji znajdziesz w instrukcjach narzędzia do fragmentów kodu w sekcji dotyczącej wymagań wstępnych uruchamiania pełnych przykładów kodu lokalnie.
- Funkcja
25 października 2017 r.
Ta aktualizacja zawiera następujące zmiany:
-
Przykłady kodu w Pythonie w interaktywnym narzędziu do tworzenia fragmentów kodu zostały zaktualizowane, aby korzystać z bibliotek
google-authigoogle-auth-oauthlibzamiast bibliotekioauth2client, która jest już przestarzała.Oprócz tej zmiany narzędzie udostępnia teraz pełne przykłady kodu dla zainstalowanych aplikacji w Pythonie i aplikacji serwera WWW w Pythonie, które korzystają z nieco innych procesów autoryzacji. Aby zobaczyć pełne przykłady (i tę zmianę):
- Otwórz interaktywne narzędzie do tworzenia fragmentów kodu lub dokumentację dowolnej metody interfejsu API, np. metody
channels.list. - Kliknij kartę
Pythonnad przykładowymi fragmentami kodu. - Kliknij przełącznik nad kartami, aby przełączyć się z wyświetlania fragmentu na pełną próbkę.
- Na karcie powinien teraz wyświetlać się kompletny przykładowy kod, który korzysta z procesu autoryzacji
InstalledAppFlow. Wyjaśnia to opis nad przykładem, który zawiera też link do przykładu aplikacji serwera WWW. - Kliknij link, aby przejść do przykładu serwera WWW. W tym przykładzie używana jest platforma do tworzenia aplikacji internetowych Flask i inny proces autoryzacji.
Wszystkie te przykłady są przeznaczone do pobrania i uruchomienia lokalnie. Jeśli chcesz uruchomić przykłady, zapoznaj się z instrukcjami uruchamiania pełnych przykładów kodu lokalnie w instrukcjach narzędzia do fragmentów kodu.
- Otwórz interaktywne narzędzie do tworzenia fragmentów kodu lub dokumentację dowolnej metody interfejsu API, np. metody
29 sierpnia 2017 r.
Ta aktualizacja zawiera następujące zmiany:
- Zaktualizowaliśmy definicję parametru
forContentOwnermetodysearch.list, aby zaznaczyć, że jeśli ten parametr ma wartośćtrue, parametrtypemusi mieć wartośćvideo. - Zaktualizowaliśmy definicję parametru
regionCodemetodysearch.list, aby wyjaśnić, że ogranicza on wyniki wyszukiwania do filmów, które można wyświetlać w określonym regionie. - YouTube zaktualizował logo i ikony marki. Nowe logo „developed with YouTube” można pobrać ze strony wskazówek dotyczących marki. Na tej stronie znajdziesz też inne nowe logo i ikony YouTube, które możesz pobrać ze strony marki YouTube.
24 lipca 2017 r.
Ta aktualizacja zawiera następujące zmiany:
- Dostępny jest nowy przewodnik po interfejsie YouTube Data API dla iOS. Z tego przewodnika dowiesz się, jak używać interfejsu YouTube Data API w prostej aplikacji na iOS napisanej w języku Objective-C lub Swift.
- Interaktywne narzędzie do tworzenia fragmentów kodu dla interfejsu YouTube Data API zawiera teraz dokumentację wyjaśniającą niektóre funkcje narzędzia:
- Wykonywanie żądań do interfejsu API
- Przełączanie między fragmentami kodu a pełnymi przykładami kodu
- Korzystanie z funkcji standardowych
- Wczytywanie istniejących zasobów (w przypadku metod aktualizacji)
Uwaga: narzędzie jest też osadzone w dokumentacji interfejsu API dotyczącej metod interfejsu API (przykład).
1 czerwca 2017 r.
Ta aktualizacja zawiera następujące zmiany:
-
Uwaga: to jest ogłoszenie o wycofaniu.
Wycofujemy te właściwości zasobu
video. Właściwości będą obsługiwane do 1 grudnia 2017 r., ale nie ma gwarancji, że do tego czasu filmy będą nadal zwracać wartości tych właściwości. Podobnie żądaniavideos.insertivideos.update, które ustawiają te wartości właściwości, nie będą generować błędów przed tą datą, ale możliwe, że przychodzące dane nie będą przechowywane.
17 maja 2017 roku
Ta aktualizacja zawiera następujące zmiany:
-
Zaktualizowaliśmy dokumentację interfejsu API, aby fragmenty kodu były bardziej wszechobecne i interaktywne. Strony z wyjaśnieniami metod API, takie jak
channels.listczyvideos.rate, zawierają teraz interaktywne narzędzie, które umożliwia wyświetlanie i dostosowywanie fragmentów kodu w językach Java, JavaScript, PHP, Python, Ruby, Apps Script i Go.W przypadku każdej metody narzędzie wyświetla fragmenty kodu dla co najmniej 1 przypadku użycia. Każdy z nich opisuje typowy sposób wywoływania danej metody. Możesz na przykład wywołać metodę
channels.list, aby pobrać dane o konkretnym kanale lub o kanale bieżącego użytkownika.Możesz też wchodzić w interakcje z przykładowymi kodami:
-
Zmieniaj wartości parametrów i właściwości, a fragmenty kodu będą się dynamicznie aktualizować, aby odzwierciedlać podane przez Ciebie wartości.
-
Przełączaj się między fragmentami kodu a pełnymi przykładami. Fragment kodu pokazuje część kodu, która wywołuje metodę interfejsu API. Pełny przykład zawiera ten fragment kodu, a także powtarzalny kod do autoryzowania i wysyłania żądań. Pełne przykłady można kopiować i uruchamiać z poziomu wiersza poleceń lub lokalnego serwera WWW.
-
wykonywać żądania przez kliknięcie przycisku; (Aby wykonywać żądania, musisz autoryzować narzędzie do wywoływania interfejsu API w Twoim imieniu).
Pamiętaj, że to narzędzie zastąpiło narzędzie APIs Explorer na stronach, na których jest dostępne. (Na każdej stronie znajduje się link, dzięki któremu możesz też wczytać w narzędziu APIs Explorer żądanie, nad którym pracujesz).
-
-
Narzędzie Fragmenty kodu interfejsu Data API zostało też zaktualizowane o nowy interfejs użytkownika, który oferuje wszystkie opisane powyżej funkcje. Główne nowe funkcje dostępne na tej stronie to:
- Obsługa żądań do interfejsu API, które zapisują dane.
- Obsługa przykładowych kodów w Javie.
- Bardziej elastyczny i kompleksowy powtarzalny kod do autoryzowania użytkowników i tworzenia żądań do interfejsu API.
27 kwietnia 2017 r.
Ta aktualizacja zawiera następujące zmiany:
- Nowe przewodniki wprowadzające wyjaśniają, jak skonfigurować prostą aplikację, która wysyła żądania do interfejsu YouTube Data API. Przewodniki są obecnie dostępne dla Android, Apps Script, Go, Javy, JavaScript, Node.js, PHP, Pythona i Ruby.
30 marca 2017 r.
Ta aktualizacja zawiera następujące zmiany:
- Nowa właściwość
topicDetails.topicCategories[]zasobuchannelzawiera listę adresów URL w Wikipedii, które opisują tematykę kanału. Adresy URL odpowiadają identyfikatorom tematów zwróconym we właściwościtopicDetails.topicIds[]zasobu. - Nowa właściwość
contentDetails.videoPublishedAtzasobuplaylistItemokreśla czas opublikowania filmu w YouTube. Zasób zawiera już właściwośćsnippet.publishedAt, która określa czas dodania elementu do playlisty. - Podobnie jak zasób
channel, zasóbvideozwraca teraz właściwośćtopicDetails.topicCategories[], która zawiera listę adresów URL Wikipedii opisujących treść filmu. W przypadku zasobówvideoadresy URL odpowiadają identyfikatorom tematów zwracanym we właściwościtopicDetails.relevantTopicIds[]zasobu. - Nowa właściwość
contentDetails.contentRating.mpaatRatingzasobuvideookreśla ocenę, jaką Motion Picture Association of America przyznała zwiastunowi lub zapowiedzi filmu.
27 lutego 2017 r.
Zgodnie z ogłoszeniem z 11 sierpnia 2016 r. YouTube zmienił listę obsługiwanych identyfikatorów tematów na listę wyselekcjonowaną. Pełna lista obsługiwanych identyfikatorów tematów znajduje się we właściwościach topicDetails zasobów channel i video oraz w parametrze topicId metody search.list.
Zwróć uwagę, że na liście wyselekcjonowanej wprowadzono kilka zmian:
- Te tematy zostały dodane jako podtematy tematu
Society:Nazwa identyfikator tematu, Firma /m/09s1fZdrowie /m/0kt51Wojsko /m/01h6rjPolityka /m/05qt0Religia /m/06bvp - Temat
Animated cartoon, który był wcześniej podrzędny w stosunku do tematuEntertainment, został usunięty. - Temat
Children's music, który był wcześniej podrzędny w stosunku do tematuMusic, został usunięty.
W wyniku tej zmiany tematy związane z filmem są teraz zawsze zwracane w wartości właściwości topicDetails.relevantTopicIds[] zasobu video.
29 listopada 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
10 lutego 2017 r. wprowadzimy 3 niewielkie zmiany na liście identyfikatorów tematów, które będą obsługiwane:
- Kategoria
Professional wrestling, która wcześniej była podrzędna w stosunku do kategoriiSports, jest teraz podrzędna w stosunku do kategoriiEntertainment. - Kategoria
TV shows, która jest elementem podrzędnym wEntertainment, jest nowa. - Kategoria
Health, która wcześniej była podrzędna względem kategoriiLifestyle, została usunięta.
Pamiętaj też, że istnieje kilka kategorii nadrzędnych (
Entertainment,Gaming,Lifestyle,MusiciSports). Każdy film powiązany z kategorią podrzędną, np.Tennis, będzie też powiązany z kategorią nadrzędną (Sports). - Kategoria
10 listopada 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Jak poinformowaliśmy po raz pierwszy 11 sierpnia 2016 r., wycofanie Freebase i interfejsu Freebase API wymaga wprowadzenia kilku zmian związanych z identyfikatorami tematów. Identyfikatory tematów określają tematy powiązane z zasobami
channelivideo. Możesz też użyć parametru wyszukiwaniatopicId, aby znaleźć kanały lub filmy związane z określonym tematem.10 lutego 2017 r. YouTube zacznie zwracać niewielki zestaw identyfikatorów tematów zamiast znacznie bardziej szczegółowego zestawu identyfikatorów zwracanego do tej pory. Pamiętaj też, że nie ma gwarancji, że kanały i filmy będą powiązane z jakimikolwiek tematami. Jest to zgodne z obecnym działaniem interfejsu API.
Aby umożliwić Ci przygotowanie klientów interfejsu API na te zmiany, zaktualizowaliśmy definicje tych parametrów i właściwości interfejsu API, aby zawierały identyfikatory tematów, które będą obsługiwane po tym czasie. Pamiętaj, że lista kategorii jest taka sama dla wszystkich usług.
- Właściwość
topicDetails.topicIds[]zasobuchannel. - Właściwość
topicDetails.relevantTopicIds[]zasobuvideo. - Parametr
topicIdmetodysearch.list.
- Właściwość
-
Uwaga: to jest ogłoszenie o wycofaniu.
Te właściwości są wycofywane:
- Właściwość
topicDetails.topicIds[]zasobuchannel. Ta usługa będzie obsługiwana do 10 listopada 2017 r. - Właściwość
topicDetails.relevantTopicIds[]zasobuvideo. Ta usługa będzie obsługiwana do 10 listopada 2017 r. - Właściwość
topicDetails.topicIds[]zasobuvideo. Po 10 lutego 2017 r. ta właściwość nie będzie zawierać wartości. (Po tej dacie wartość właściwościtopicDetails.relevantTopicIds[]będzie identyfikować wszystkie tematy powiązane z filmem).
- Właściwość
-
Usługa Freebase została już wycofana, więc przewodnik Wyszukiwanie za pomocą tematów Freebase został usunięty z dokumentacji. W tym przewodniku znajdowały się przykłady kodu pokazujące, jak aplikacja może współpracować z interfejsem Freebase API.
Dodatkowo z dokumentacji metody
search.listusunęliśmy kilka przykładowych kodów związanych z identyfikatorami tematów.
2 listopada 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowe właściwości i parametry
-
Zasób
videozawiera kilka nowych właściwości:-
Właściwość
player.embedHtmlzawiera tag<iframe>, za pomocą którego możesz umieścić odtwarzacz odtwarzający film. Nowe właściwościplayer.embedHeightiplayer.embedWidthokreślają wymiary odtwarzacza osadzonego. Te właściwości są zwracane tylko wtedy, gdy żądanie do interfejsu API zawiera wartość co najmniej jednego z parametrówmaxHeightlubmaxWidth. Te 2 nowe parametry zostały opisane w dalszej części tego wpisu w historii zmian. -
Nowa właściwość
hasCustomThumbnailwskazuje, czy osoba przesyłająca film udostępniła niestandardową miniaturę filmu. Pamiętaj, że ta właściwość jest widoczna tylko dla osoby, która przesłała film. -
Nowy element
fpbRatingReasons[]określa przyczyny, dla których film otrzymał ocenę FPB (RPA). -
Nowy symbol
mcstRatingokreśla ocenę, jaką otrzymał film w Wietnamie.
-
-
Metoda
videos.listobsługuje 2 nowe parametry:maxHeightimaxWidth. Podczas pobierania częściplayerw zasobachvideomożesz użyć jednego lub obu tych parametrów.Domyślnie wysokość
<iframe>zwracana we właściwościplayer.embedHtmlwynosi 360 pikseli. Szerokość dostosowuje się do proporcji filmu, dzięki czemu w odtwarzaczu nie pojawiają się czarne paski po bokach. Jeśli na przykład format obrazu filmu to 16:9, szerokość odtwarzacza wyniesie 640 pikseli.Dzięki nowym parametrom możesz określić, że zamiast domyślnych wymiarów kod do umieszczania ma używać wysokości lub szerokości odpowiedniej dla układu aplikacji. Serwer interfejsu API odpowiednio skaluje wymiary odtwarzacza, aby osadzony odtwarzacz nie miał czarnych pasów otaczających film. Pamiętaj, że oba parametry określają maksymalne wymiary odtwarzacza osadzonego. Jeśli więc oba parametry są określone, jeden z wymiarów może być mniejszy niż maksymalna dopuszczalna wartość.
Załóżmy na przykład, że film ma format 16:9. Dlatego tag
player.embedHtmlbędzie zawierać odtwarzacz o rozmiarze 640 x 360, jeśli parametrmaxHeightlubmaxWidthnie jest ustawiony.- Jeśli parametr
maxHeightma wartość720, a parametrmaxWidthnie jest ustawiony, interfejs API zwróci odtwarzacz o rozdzielczości 1280 x 720. - Jeśli parametr
maxWidthma wartość960, a parametrmaxHeightnie jest ustawiony, interfejs API zwróci odtwarzacz o wymiarach 960 x 540. - Jeśli parametr
maxWidthma wartość960, a parametrmaxHeightma wartość450, interfejs API zwróci odtwarzacz o wymiarach 800 x 450.
Nowe właściwości
player.embedHeightiplayer.embedWidth, które zostały opisane powyżej, określają wymiary odtwarzacza. - Jeśli parametr
-
-
Aktualizacje istniejących metod, właściwości i parametrów
-
W opisie zasobu
channelSectiondodaliśmy informację, że kanał może utworzyć maksymalnie 10 półek bez ustawiania danych o kierowaniu i maksymalnie 100 półek z danymi o kierowaniu.Dodatkowo właściwość
targetingzasobuchannelSectionzostała zaktualizowana, aby odzwierciedlać fakt, że opcje kierowania można ustawiać tylko za pomocą interfejsu API. Opcje kierowania są usuwane, jeśli sekcja kanału zostanie zmodyfikowana w interfejsie na stronie YouTube. -
Definicja właściwości
snippet.namezasobui18nLanguagezostała poprawiona, aby odzwierciedlała fakt, że wartość reprezentuje nazwę języka w języku określonym przez parametrhlmetodyi18nLanguage.list. -
Właściwość
contentDetails.notezasobuplaylistItemzostała zaktualizowana. Obecnie zawiera informację, że maksymalna długość wartości właściwości to 280 znaków. -
Właściwości
contentDetails.startAticontentDetails.endAtzasobuplaylistItemzostały wycofane. Te pola są ignorowane, jeśli są ustawione w żądaniachplaylistItems.insertlubplaylistItems.update. -
Metody
playlistItems.deleteiplaylistItems.updateobsługują teraz parametronBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. Żądania korzystające z tej metody muszą być też autoryzowane za pomocą tokena, który zapewnia dostęp do zakresuhttps://www.googleapis.com/auth/youtubepartner. -
Parametry
publishedBeforeipublishedAftermetodysearch.listzostały zaktualizowane, aby wskazywać, że wartości parametrów są włączone. Jeśli na przykład ustawisz parametrpublishedBefore, interfejs API zwróci zasoby utworzone przed podanym czasem lub w tym czasie. -
Właściwość
contentDetails.contentRating.grfilmRatingzasobuvideoobsługuje 3 dodatkowe wartości:grfilmK12,grfilmK15igrfilmK18. -
Opis metody
videos.insertzostał zaktualizowany. Zmiana polega na tym, że maksymalny rozmiar przesyłanych filmów został zwiększony z 64 GB do 128 GB.
-
-
Nowe i zaktualizowane błędy
-
Interfejs API obsługuje te nowe błędy:
Typ błędu Szczegóły błędu Opis forbidden (403)homeParameterDeprecatedMetoda activities.listzwraca ten błąd, aby wskazać, że dane o aktywności użytkownika na stronie głównej nie są dostępne w tym interfejsie API. Ten błąd może wystąpić, jeśli w nieautoryzowanym żądaniu ustawisz parametrhomenatrue.invalidValue (400)invalidContentDetailsMetoda playlistItems.insertzwraca ten błąd, aby wskazać, że obiektcontentDetailsw żądaniu jest nieprawidłowy. Jedną z przyczyn tego błędu jest to, że polecontentDetails.notema więcej niż 280 znaków.forbidden (403)watchHistoryNotAccessibleMetoda playlistItems.listzwraca ten błąd, aby wskazać, że żądanie próbowało pobrać elementy listy odtwarzania „Historia oglądania”, ale nie można ich pobrać za pomocą interfejsu API.forbidden (403)watchLaterNotAccessibleMetoda playlistItems.listzwraca ten błąd, aby wskazać, że żądanie próbowało pobrać elementy z listy odtwarzania „Obejrzyj później”, ale nie można ich pobrać za pomocą interfejsu API.badRequest (400)uploadLimitExceededMetoda videos.insertzwraca ten błąd, aby wskazać, że kanał przekroczył liczbę filmów, które może przesłać.forbidden (403)forbiddenEmbedSettingMetoda videos.updatezwraca ten błąd, aby wskazać, że żądanie do interfejsu API próbuje ustawić nieprawidłowe ustawienie osadzania filmu. Pamiętaj, że niektóre kanały mogą nie mieć uprawnień do oferowania odtwarzaczy umieszczonych na stronie w przypadku transmisji na żywo. Więcej informacji znajdziesz w Centrum pomocy YouTube. -
Metoda
playlistItems.insertnie zwraca już błędu, jeśli wstawisz zduplikowany film na playlistę. Ten błąd występował wcześniej w przypadku niektórych playlist, np. ulubionych filmów, które nie zezwalały na duplikaty, ale nie są już obsługiwane. Ogólnie rzecz biorąc, playlisty umożliwiają dodawanie duplikatów filmów.
-
-
Inne aktualizacje
-
Wpis w historii zmian z 15 września 2016 r. został zaktualizowany, aby wyjaśnić, że gdy w odpowiedzi znajdują się właściwości
channelzasobucontentDetails.relatedPlaylists.watchHistoryicontentDetails.relatedPlaylists.watchLater, zawsze zawierają one odpowiednio wartościHLiWL. Ponadto te usługi są uwzględniane tylko wtedy, gdy autoryzowany użytkownik pobiera dane o własnym kanale.
-
15 września 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
W aktualizacji historii zmian z 11 sierpnia 2016 r. omówiliśmy kilka zmian związanych z identyfikatorami tematów, w tym fakt, że zestaw obsługiwanych identyfikatorów tematów zmieni się 10 lutego 2017 r. Lista tematów, które będą obsługiwane, zostanie opublikowana do 10 listopada 2016 r.
-
Te zmiany weszły już w życie. Informacja o tych zmianach została podana w historii zmian z 11 sierpnia 2016 r.:
-
Jeśli metoda
activities.listzostanie wywołana z parametremhomeustawionym natrue, odpowiedź interfejsu API będzie teraz zawierać elementy podobne do tych, które niezalogowany użytkownik YouTube widzi na stronie głównej.Jest to niewielka zmiana, która ma na celu zapewnienie większej wygody niż w przypadku zachowania opisanego w aktualizacji historii zmian z 11 sierpnia 2016 r. W tym komunikacie informowaliśmy, że żądania używające parametru
homebędą zwracać pustą listę. -
Właściwości
contentDetails.relatedPlaylists.watchHistoryicontentDetails.relatedPlaylists.watchLaterzasobuchannelzawierają teraz wartościHLiWLodpowiednio dla wszystkich kanałów.Wyjaśniamy, że te właściwości są widoczne tylko dla autoryzowanego użytkownika, który pobiera dane o własnym kanale. Właściwości zawsze zawierają wartości
HLiWL, nawet w przypadku autoryzowanego użytkownika pobierającego dane o własnym kanale. Dlatego identyfikatorów historii oglądania i playlisty Do obejrzenia nie można pobrać za pomocą interfejsu API.Dodatkowo żądania pobrania szczegółów playlisty (
playlists.list) lub elementów playlisty (playlistItems.list) z historii oglądania lub playlisty „Do obejrzenia” kanału zwracają teraz puste listy. Dotyczy to nowych wartościHLiWL, a także wszystkich identyfikatorów historii oglądania lub playlisty „Obejrzyj później”, które Twój klient API mógł już zapisać.
-
-
Obiekt
fileDetails.recordingLocationzasobuvideoi jego usługi podrzędne nie są już zwracane. Wcześniej te dane (np. obiekt nadrzędnyfileDetails) mógł pobrać tylko właściciel filmu.
11 sierpnia 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowe Warunki korzystania z usług YouTube API („zaktualizowane warunki”), które zostały szczegółowo omówione na blogu YouTube Engineering and Developers, zawierają wiele aktualizacji obecnych Warunków korzystania z usługi. Oprócz zaktualizowanych warunków, które wejdą w życie 10 lutego 2017 r., ta aktualizacja obejmuje kilka dokumentów pomocniczych, które wyjaśniają zasady, których deweloperzy muszą przestrzegać.
Pełny zestaw nowych dokumentów opisano w historii zmian zaktualizowanych Warunków. Ponadto w historii zmian będą wyjaśniane przyszłe zmiany Zaktualizowanych warunków lub dokumentów pomocniczych. Możesz zasubskrybować kanał RSS z listą zmian w historii zmian, korzystając z linku w tym dokumencie.
-
Wycofanie Freebase i interfejsu Freebase API powoduje kilka zmian związanych z identyfikatorami tematów. Identyfikatory tematów są używane w tych zasobach i metodach interfejsu API:
- Część
topicDetailszasobuchannelokreśla tematy powiązane z kanałem. - Część
topicDetailszasobuvideookreśla tematy powiązane z filmem. - Parametr
topicIdmetodysearch.listumożliwia wyszukiwanie filmów lub kanałów związanych z określonym tematem.
Zmiany w tych funkcjach:
-
Od 10 lutego 2017 r. YouTube zacznie zwracać niewielki zestaw identyfikatorów tematów zamiast znacznie bardziej szczegółowego zestawu identyfikatorów zwracanego do tej pory. Ten zestaw obsługiwanych tematów będzie zawierać kategorie najwyższego poziomu, takie jak Sport czy Koszykówka, ale nie będzie zawierać np. konkretnych drużyn ani zawodników. Ogłosimy listę obsługiwanych tematów, aby dać Ci czas na przygotowanie aplikacji do tej zmiany.
-
Wszystkie pobrane wcześniej identyfikatory tematów Freebase można wykorzystywać do wyszukiwania treści do 10 lutego 2017 r. Po tym czasie do pobierania wyników wyszukiwania według tematu będzie można używać tylko mniejszego zestawu tematów określonego w poprzednim punkcie.
-
Po 10 lutego 2017 r., jeśli spróbujesz wyszukać wyniki za pomocą identyfikatora tematu, którego nie ma w mniejszym zbiorze obsługiwanych identyfikatorów, interfejs API zwróci pusty zbiór wyników.
- Część
-
12 września 2016 r. wycofujemy kilka pól i parametrów interfejsu API:
-
Parametr
homemetodyactivities.listumożliwiał autoryzowanemu użytkownikowi pobranie kanału aktywności, który wyświetlałby się na stronie głównej YouTube. Żądania, które po 12 września 2016 r. będą używać tego parametru, będą zwracać pustą listę. -
Właściwości
channelzasobucontentDetails.relatedPlaylists.watchHistoryicontentDetails.relatedPlaylists.watchLatersą widoczne tylko dla autoryzowanego użytkownika, który pobiera dane o własnym kanale. Po 12 września 2016 r. atrybutcontentDetails.relatedPlaylists.watchHistorybędzie zwracać wartośćHL, a atrybutcontentDetails.relatedPlaylists.watchLaterbędzie zwracać wartośćWLwe wszystkich kanałach.Żądania pobrania szczegółów playlisty (
playlists.list) z historii oglądania lub listy Do obejrzenia na kanale będą zwracać pustą listę po 12 września 2016 r. Żądania pobrania elementów playlisty (playlistItems.list) z jednej z tych playlist również będą po tym czasie zwracać pustą listę. Dotyczy to nowych wartościHLiWL, a także wszystkich identyfikatorów historii oglądania lub playlisty Do obejrzenia, które klient interfejsu API mógł już zapisać. -
Po 12 września 2016 r. obiekt
fileDetails.recordingLocationzasobuvideoani żadna z jego właściwości podrzędnych nie będą już zwracane. Te dane może pobrać tylko właściciel filmu, ponieważ obiekt nadrzędnyfileDetailsmoże być pobrany tylko przez właściciela filmu.
-
13 czerwca 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Właściwość
contentDetails.googlePlusUserIdzasobuchannelzostała wycofana. Wcześniej ta właściwość była dostępna tylko wtedy, gdy kanał był powiązany z profilem Google+. Po wycofaniu ta właściwość nie będzie już uwzględniana w żadnych zasobachchannel. -
Właściwość
snippet.authorGoogleplusProfileUrlzasobucommentzostała wycofana. Wcześniej ta właściwość była dostępna tylko wtedy, gdy kanał był powiązany z profilem Google+. Po wycofaniu ta właściwość nie będzie już uwzględniana w żadnych zasobachcomment.
Po wycofaniu tych właściwości nie będą one zwracane, dlatego zostały usunięte z dokumentacji odpowiednich zasobów.
31 maja 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy parametr
myRecentSubscribersmetodysubscriptions.listpobiera listę subskrybentów kanału uwierzytelnionego użytkownika w odwrotnej kolejności chronologicznej czasu, w którym zasubskrybowali oni kanał.Pamiętaj, że nowy parametr umożliwia pobranie tylko ostatnich 1000 subskrybentów kanału uwierzytelnionego użytkownika. Aby pobrać pełną listę subskrybentów, użyj parametru
mySubscribers. Ten parametr, który nie zwraca subskrybentów w określonej kolejności, nie ogranicza liczby subskrybentów, których można pobrać. -
Definicja właściwości
snippet.thumbnails.(key)została zaktualizowana w przypadku zasobów activity, playlistItem, playlist, search result, thumbnail i video, aby zaznaczyć, że w przypadku niektórych filmów dostępne są dodatkowe rozmiary miniatur.standardobraz ma szerokość 640 pikseli i wysokość 480 pikseli.- Obraz
maxresma szerokość 1280 pikseli i wysokość 720 pikseli.
-
Zaktualizowaliśmy definicję parametru
partmetodychannelSection.list, aby uwzględnić informację, że częśćtargetingmożna pobrać za cenę2jednostek limitu. -
Metoda
videos.listzwraca teraz błąd forbidden (403), gdy nieprawidłowo autoryzowane żądanie próbuje pobrać częścifileDetails,processingDetailslubsuggestionszasobuvideo. Te części są dostępne tylko dla właściciela filmu.
17 maja 2016 r.
Nowe narzędzie Data API Code Snippets zawiera krótkie fragmenty kodu do typowych zastosowań interfejsu YouTube Data API. Fragmenty kodu są obecnie dostępne w przypadku wszystkich metod interfejsu API tylko do odczytu w Apps Script, Go, JavaScript, PHP, Python i Ruby.
W przypadku każdej metody narzędzie wyświetla przykłady kodu dla co najmniej 1 przypadku użycia. Na przykład udostępnia 5 fragmentów kodu dla metody search.list:
- Wyświetlanie filmów według słowa kluczowego
- Wyświetlanie filmów według lokalizacji
- Wyświetlanie listy wydarzeń na żywo
- Wyszukiwanie filmów uwierzytelnionego użytkownika
- Wyświetlanie listy powiązanych filmów
W przypadku każdego zastosowania narzędzie wyświetla parametry użyte w żądaniu do interfejsu API. Możesz zmodyfikować wartości parametrów. W takim przypadku narzędzie zaktualizuje fragmenty kodu, aby odzwierciedlały podane przez Ciebie wartości parametrów.
Na koniec narzędzie wyświetla odpowiedź interfejsu API na każde żądanie. Jeśli zmodyfikujesz parametry żądania, odpowiedź interfejsu API będzie oparta na podanych przez Ciebie wartościach parametrów. Pamiętaj, że aby wyświetlać odpowiedzi interfejsu API, musisz autoryzować narzędzie do przesyłania żądań w Twoim imieniu.
28 kwietnia 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowa właściwość
contentDetails.projectionzasobuvideookreśla format projekcji filmu. Prawidłowe wartości właściwości to360irectangular. -
Właściwości
recordingDetails.locationifileDetails.recordingLocationzasobuvideozostały zaktualizowane, aby wyjaśnić różnicę między nimi:- Właściwość
recordingDetails.locationokreśla lokalizację, którą właściciel filmu chce powiązać z filmem. Tę lokalizację można edytować i wyszukiwać w publicznych filmach. Może ona być wyświetlana użytkownikom w przypadku publicznych filmów. - Wartość właściwości
fileDetails.recordingLocationjest niezmienna i reprezentuje lokalizację powiązaną z oryginalnym, przesłanym plikiem wideo. Wartość jest widoczna tylko dla właściciela filmu.
- Właściwość
-
Zaktualizowaliśmy definicję właściwości
contentDetails.relatedPlaylists.favoriteszasobuchannel, aby zaznaczyć, że wartość tej właściwości może zawierać identyfikator playlisty, która jest pusta i nie można jej pobrać. Wynika to z faktu, że funkcja ulubionych filmów została już wycofana. Pamiętaj, że ta właściwość nie podlega zasadom wycofywania interfejsu API. -
Zaktualizowano definicję błędu
ineligibleAccount, który może być zwracany przez metodycomments.insert,comments.update,commentThreads.insertlubcommentThreads.update. Błąd ten występuje, gdy konto YouTube użyte do autoryzacji żądania do interfejsu API nie zostało scalone z kontem Google użytkownika.
20 kwietnia 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zaktualizowaliśmy definicję parametru
partmetodychannels.update, aby dodać informację, żelocalizationsjest też prawidłową wartością tego parametru. -
Sekcja Wykorzystanie limitu w przewodniku dla początkujących została zaktualizowana i zawiera teraz link do Google Developers Console, w której możesz sprawdzić swój aktualny limit i jego wykorzystanie.
16 marca 2016 r.
Ta aktualizacja zawiera następujące zmiany:
-
Aktualizacje istniejących zasobów i metod
-
Zaktualizowaliśmy dokumentację zasobu
channelBanner, aby uwzględnić zalecany rozmiar przesyłanego obrazu na baner kanału, który wynosi 2560 x 1440 pikseli. Minimalny rozmiar (2048 x 1152 piksele) nie uległ zmianie. -
Nowa właściwość
snippet.customUrlzasobuchannelokreśla niestandardowy adres URL powiązany z kanałem. (Nie wszystkie kanały mają niestandardowe adresy URL). W Centrum pomocy YouTube znajdziesz informacje o wymaganiach, jakie musisz spełnić, aby uzyskać niestandardowy adres URL, oraz o tym, jak go skonfigurować. -
Obiekt
brandingSettings.watchzasobuchanneli wszystkie jego usługi podrzędne zostały wycofane. -
Odpowiedź interfejsu API na żądanie
search.listzawiera teraz właściwośćregionCode. Właściwość identyfikuje kod regionu, który został użyty w zapytaniu. Kod regionu informuje interfejs API, że ma zwracać wyniki wyszukiwania dla określonego kraju.Wartość właściwości to dwuliterowy kod kraju w standardzie ISO, który identyfikuje region. Metoda
i18nRegions.listzwraca listę obsługiwanych regionów. (wartością domyślną jestUS); Jeśli określono nieobsługiwany region, YouTube może wybrać inny region niż wartość domyślna, aby obsłużyć zapytanie. -
Zaktualizowaliśmy definicje właściwości
videoAbuseReportReasonzasobusnippet.labelisnippet.secondaryReasons[].label, aby uwzględnić informację, że zawierają one zlokalizowany tekst etykiety z przyczynami zgłoszenia nadużycia.Dodatkowo metoda
videoAbuseReportReasons.listobsługuje teraz parametrhl, który określa język, w jakim ma być wyświetlany tekst etykiety w odpowiedzi interfejsu API. Domyślna wartość parametru toen_US. -
Nowa właściwość
contentDetails.contentRating.ecbmctRatingzasobuvideookreśla ocenę filmu przyznaną przez turecką Radę ds. Oceny i Klasyfikacji przy Ministerstwie Kultury i Turystyki.Dodatkowo właściwości interfejsu API dla innych systemów oceniania obsługują te nowe wartości właściwości:
contentDetails.contentRating.fpbRating(Republika Południowej Afryki)
Ocena: 10; wartość właściwości:fpb10contentDetails.contentRating.moctwRating(Tajwan)
Ocena: R-12; wartość właściwości:moctwR12contentDetails.contentRating.moctwRating(Tajwan)
Ocena: R-15; wartość właściwości:moctwR15
-
Właściwość
videozasobuliveStreamingDetails.activeLiveChatIdzawiera identyfikator aktywnego czatu na żywo powiązanego z filmem. Wartość właściwości jest widoczna tylko wtedy, gdy film jest aktualną transmisją na żywo z włączonym czatem na żywo. Po zakończeniu transmisji i czatu na żywo właściwość nie jest już zwracana w przypadku filmu. -
Właściwość
status.rejectionReasonzasobuvideoobsługuje nową wartość właściwościlegal.
-
-
Interfejs API obsługuje te nowe błędy:
Typ błędu Szczegóły błędu Opis badRequest (400)notEditableMetody channelSections.insert,channelSections.updateichannelSections.deletezwracają ten błąd, aby wskazać, że nie można utworzyć, zaktualizować ani usunąć określonej sekcji kanału.badRequest (400)styleRequiredMetody channelSections.insertichannelSections.updatezwracają ten błąd, aby wskazać, że zasóbchannelSectionprzesłany w żądaniu do interfejsu API musi zawierać wartość właściwościsnippet.style.badRequest (400)typeRequiredMetody channelSections.insertichannelSections.updatezwracają ten błąd, aby wskazać, że zasóbchannelSectionprzesłany w żądaniu do interfejsu API musi zawierać wartość właściwościsnippet.type.badRequest (400)processingFailureMetoda commentThreads.listzwraca ten błąd, aby wskazać, że serwer interfejsu API nie zdołał przetworzyć żądania. Może to być błąd tymczasowy, ale zwykle oznacza, że dane wejściowe żądania są nieprawidłowe. Sprawdź strukturę zasobucommentThreadw treści żądania, aby upewnić się, że jest prawidłowa.forbidden (403)commentsDisabledMetoda commentThreads.listzwraca ten błąd, aby wskazać, że komentarze do filmu zidentyfikowanego przez parametrvideoIdsą wyłączone.badRequest (400)commentTextTooLongMetoda commentThreads.insertzwraca ten błąd, aby wskazać, że wstawiany zasóbcommentzawiera zbyt wiele znaków we właściwościsnippet.topLevelComment.snippet.textOriginal.invalidValue (400)videoAlreadyInAnotherSeriesPlaylistMetoda playlistItems.insertzwraca ten błąd, aby wskazać, że film, który próbujesz dodać do playlisty, jest już na innej playliście serialu. Więcej informacji o playlistach z serii znajdziesz w Centrum pomocy YouTube.badRequest (400)subscriptionForbiddenMetoda subscriptions.insertzwraca ten błąd, aby poinformować, że osiągnięto maksymalną liczbę subskrypcji lub utworzono zbyt wiele ostatnich subskrypcji. W tym drugim przypadku możesz ponowić prośbę po kilku godzinach.badRequest (400)invalidCategoryIdMetoda videos.updatezwraca ten błąd, aby wskazać, że właściwośćsnippet.categoryIdw przesłanym zasobievideookreśla nieprawidłowy identyfikator kategorii. Aby pobrać obsługiwane kategorie, użyj metodyvideoCategories.list.badRequest (400)invalidDescriptionMetoda videos.updatezwraca ten błąd, aby wskazać, że właściwośćsnippet.descriptionw przesłanym zasobievideozawiera nieprawidłową wartość.badRequest (400)invalidPublishAtMetoda videos.updatezwraca ten błąd, aby wskazać, że właściwośćstatus.publishAtw przesłanym zasobievideookreśla nieprawidłowy czas zaplanowanej publikacji.badRequest (400)invalidRecordingDetailsMetoda videos.updatezwraca ten błąd, aby wskazać, że obiektrecordingDetailsw przesłanym zasobievideozawiera nieprawidłowe szczegóły nagrania.badRequest (400)invalidTagsMetoda videos.updatezwraca ten błąd, aby wskazać, że właściwośćsnippet.tagsw przesłanym zasobievideozawiera nieprawidłową wartość.badRequest (400)invalidTitleMetoda videos.updatezwraca ten błąd, aby wskazać, że właściwośćsnippet.titlew przesłanym zasobievideozawiera nieprawidłowy lub pusty tytuł filmu.badRequest (400)invalidVideoMetadataMetoda videos.updatezwraca ten błąd, aby wskazać, że metadane żądania są nieprawidłowe. Ten błąd występuje, jeśli żądanie aktualizuje częśćsnippetzasobuvideo, ale nie ustawia wartości właściwościsnippet.titleisnippet.categoryId.
18 grudnia 2015 r.
Przepisy Unii Europejskiej (UE) wymagają, aby użytkownicy w UE otrzymywali określone informacje i wyrażali zgodę na wykorzystanie danych. Dlatego w przypadku użytkowników z Unii Europejskiej musisz przestrzegać polityki w zakresie zgody użytkownika z UE. Dodaliśmy informację o tym wymaganiu do Warunków korzystania z interfejsu API YouTube.
19 listopada 2015 r.
Interfejs API umożliwia teraz ustawianie i pobieranie zlokalizowanego tekstu dla właściwości snippet.title i snippet.description zasobów playlist i video, właściwości snippet.title zasobu channelSection oraz właściwości snippet.description zasobu channel.
-
Ustawianie zlokalizowanych tytułów i opisów
Podczas wywoływania metody
insertlubupdatedla zasobu możesz ustawić dla niego zlokalizowane wartości. Aby ustawić zlokalizowane wartości zasobu, wykonaj obie te czynności:-
Sprawdź, czy dla właściwości
snippet.defaultLanguagezasobu jest ustawiona wartość. Ta właściwość określa język właściwościsnippet.titleisnippet.descriptionzasobu. Jego wartość może być dowolnym obsługiwanym językiem aplikacji lub większością innych kodów języków w formacie ISO 639-1:2002. Jeśli na przykład przesyłasz film z tytułem i opisem w języku angielskim, ustawisz właściwośćsnippet.defaultLanguagenaen.Uwaga dotycząca aktualizowania zasobów
channel: aby ustawić właściwośćsnippet.defaultLanguagedla zasobuchannel, musisz zaktualizować właściwośćbrandingSettings.channel.defaultLanguage. -
Dodaj obiekt
localizationsdo aktualizowanego zasobu. Każdy klucz obiektu to ciąg znaków, który identyfikuje język aplikacji lub kod języka ISO 639-1:2002, a każdy klucz jest powiązany z obiektem zawierającym zlokalizowany tytuł (i opis) zasobu.Przykładowy fragment kodu poniżej ustawia domyślny język zasobu na angielski. Dodaje też zlokalizowane tytuły i opisy w języku niemieckim i hiszpańskim:
{ "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", } } }
Ważne: pamiętaj, że podczas aktualizowania zlokalizowanych danych zasobu żądanie do interfejsu API musi zawierać wszystkie istniejące zlokalizowane wersje danych. Jeśli na przykład wyślesz kolejną prośbę o dodanie danych w języku portugalskim do filmu z powyższego przykładu, prośba będzie musiała zawierać zlokalizowane dane w języku niemieckim, hiszpańskim i portugalskim.
-
-
Pobieranie zlokalizowanych wartości
Interfejs API obsługuje 2 sposoby pobierania zlokalizowanych wartości zasobu:
-
Dodaj parametr
hldo żądaniachannels.list,channelSections.list,playlists.listlubvideos.list, aby pobrać zlokalizowane dane dla określonego języka aplikacji obsługiwanego przez witrynę YouTube. Jeśli w danym języku dostępne są zlokalizowane szczegóły zasobu, obiektsnippet.localizedzasobu będzie zawierać zlokalizowane wartości. Jeśli jednak zlokalizowane szczegóły nie są dostępne, obiektsnippet.localizedbędzie zawierać szczegóły zasobu w domyślnym języku zasobu.Załóżmy na przykład, że żądanie
videos.listzwróciło dane dotyczące opisanego powyżej filmu ze zlokalizowanymi danymi w języku niemieckim i hiszpańskim. Jeśli parametrhlmiałby wartośćde, zasób zawierałby te dane:{ "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" } ... } }Jeśli jednak parametr
hlmiałby wartośćfr, obiektsnippet.localizedzawierałby tytuł i opis w języku angielskim, ponieważ angielski jest domyślnym językiem zasobu, a zlokalizowane szczegóły w języku francuskim nie są dostępne.Ważne: parametrhlobsługuje tylko wartości, które identyfikują języki aplikacji obsługiwane przez witrynę YouTube. Aby sprawdzić, czy zlokalizowany tekst jest dostępny w innych językach, musisz pobrać częśćlocalizationszasobu i odfiltrować wyniki, aby sprawdzić, czy zlokalizowany tekst istnieje.
Na przykład musisz pobrać pełną listę lokalizacji, aby sprawdzić, czy zlokalizowany tekst jest dostępny w języku angielskim w regionie Appalachów.
-
Podczas pobierania zasobu uwzględnij
localizationsw wartości parametrupart, aby pobrać wszystkie zlokalizowane szczegóły tego zasobu. Jeśli pobierasz zlokalizowane dane dla języka, który nie jest obecnym językiem aplikacji YouTube, musisz użyć tej metody, aby pobrać wszystkie lokalizacje, a następnie odfiltrować je, aby sprawdzić, czy istnieją żądane zlokalizowane dane.
-
-
Błędy związane z wartościami tekstu w języku lokalnym
Interfejs API obsługuje też te nowe błędy dotyczące wartości tekstu w różnych językach:
Typ błędu Szczegóły błędu Opis badRequest (400)defaultLanguageNotSetErrorTen błąd oznacza, że żądanie, które próbuje wstawić lub zaktualizować obiekt localizationsdla zasobu, nie powiodło się, ponieważ dla tego zasobu nie ustawiono właściwościsnippet.defaultLanguage. Ten błąd jest obsługiwany przez metodychannels.update,channelSections.insert,channelSections.update,playlists.insert,playlists.update,videos.insertivideos.update.badRequest (400)localizationValidationErrorTen błąd oznacza, że nie udało się zweryfikować jednej z wartości w obiekcie localizationszasobu. Ten błąd może wystąpić na przykład wtedy, gdy obiekt zawiera nieprawidłowy kod języka. Ten błąd jest obsługiwany przez metodychannels.update,channelSections.insert,channelSections.update,playlists.insertiplaylists.update.
4 listopada 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Aktualizacje istniejących zasobów i metod
-
Parametr
ordermetodysearch.listzostał zaktualizowany. Zawiera teraz informację, że jeśli posortujesz transmisje na żywo według parametruviewCount, wyniki interfejsu API będą posortowane według liczby widzów oglądających transmisje w tym samym czasie, gdy transmisje są jeszcze w toku. -
W parametrze
relatedToVideoIdmetodysearch.listdodaliśmy informację, że jeśli ten parametr jest ustawiony, jedynymi innymi obsługiwanymi parametrami sąpart,maxResults,pageToken,regionCode,relevanceLanguage,safeSearch,type(który musi mieć wartośćvideo) ifields. Ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API. -
Zaktualizowaliśmy definicję właściwości
videozasobusnippet.publishedAt, aby zaznaczyć, że wartość właściwości, która określa datę i godzinę opublikowania filmu, może być inna niż data i godzina przesłania filmu. Jeśli na przykład film zostanie przesłany jako film prywatny, a później udostępniony publicznie, wartość właściwości określa czas, w którym film został udostępniony publicznie. Zaktualizowana definicja wyjaśnia też, jak ta wartość jest wypełniana w przypadku filmów prywatnych i niepublicznych.Ta zmiana nie odzwierciedla zmiany w działaniu interfejsu API.
-
Definicja właściwości
status.publishAtzasobuvideozostała zaktualizowana i zawiera teraz następującą informację:- Jeśli ustawisz wartość tej właściwości podczas wywoływania metody
videos.update, musisz też ustawić wartość właściwościstatus.privacyStatusnaprivate, nawet jeśli film jest już prywatny. - Jeśli w żądaniu zaplanowano publikację filmu w przeszłości, zostanie on opublikowany od razu. Dlatego ustawienie właściwości
status.publishAtna datę i godzinę w przeszłości ma taki sam efekt jak zmianaprivacyStatusfilmu zprivatenapublic.
- Jeśli ustawisz wartość tej właściwości podczas wywoływania metody
-
Właściwość
contentDetails.contentRating.cncRatingzasobuvideookreśla ocenę filmu przyznaną przez francuską komisję ds. klasyfikacji filmów. Ta właściwość zastępuje właściwośćcontentDetails.contentRating.fmocRating, która została wycofana. -
Definicja zasobu
channelwbrandingSettings.channel.keywordszostała zaktualizowana, aby prawidłowo odzwierciedlać, że wartość właściwości zawiera listę ciągów znaków oddzielonych spacjami, a nie listę oddzieloną przecinkami, jak podano wcześniej. Ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API. -
Dokumentacja metody
thumbnails.setzostała zaktualizowana, aby dokładnie odzwierciedlała fakt, że treść żądania zawiera przesyłany obraz miniatury, który jest powiązany z filmem. Treść żądania nie zawiera zasobuthumbnail. Wcześniej w dokumentacji było napisane, że podczas wywoływania tej metody nie należy podawać treści żądania. Ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API. -
Opis zasobu
activityzostał zaktualizowany, aby odzwierciedlał fakt, że metodaactivities.listnie obejmuje obecnie zasobów związanych z nowymi komentarzami do filmów. Zaktualizowano też wartościsnippet.typeicontentDetails.commentzasobu.
-
-
Nowe i zaktualizowane błędy
-
Interfejs API obsługuje teraz te błędy:
Szczegóły błędu activities.insertKod odpowiedzi HTTP badRequest (400)Przyczyna invalidMetadataOpis Usługa kindnie pasuje do podanego typu identyfikatora.commentThreads.updatecomments.insertcomments.updateKod odpowiedzi HTTP badRequest (400)Przyczyna commentTextTooLongOpis Wstawiany lub aktualizowany zasób commentzawiera zbyt wiele znaków we właściwościsnippet.topLevelComment.snippet.textOriginal.playlistItems.insertplaylistItems.updateKod odpowiedzi HTTP forbidden (403)Przyczyna playlistItemsNotAccessibleOpis Żądanie nie ma odpowiednich uprawnień do wstawiania, aktualizowania ani usuwania określonego elementu listy odtwarzania. playlists.deleteplaylists.insertplaylists.updateKod odpowiedzi HTTP badRequest (400)Przyczyna playlistForbiddenOpis Ta operacja jest zabroniona lub żądanie nie jest odpowiednio autoryzowane. search.listKod odpowiedzi HTTP badRequest (400)Przyczyna invalidLocationOpis Wartość parametru locationlublocationRadiusma nieprawidłowy format.search.listKod odpowiedzi HTTP badRequest (400)Przyczyna invalidRelevanceLanguageOpis Wartość parametru relevanceLanguagema nieprawidłowy format.subscriptions.insertKod odpowiedzi HTTP badRequest (400)Przyczyna subscriptionForbiddenOpis Ten błąd występuje, gdy spełniony jest dowolny z tych warunków: - Subskrypcja, którą próbujesz utworzyć, już istnieje
- Masz już maksymalną liczbę subskrypcji
- Próbujesz zasubskrybować własny kanał, co nie jest obsługiwane.
- Ostatnio utworzono zbyt wiele subskrypcji. Zanim ponownie wyślesz prośbę, musisz odczekać kilka godzin.
videos.updateKod odpowiedzi HTTP badRequest (400)Przyczyna invalidDefaultBroadcastPrivacySettingOpis Żądanie próbuje ustawić nieprawidłowe ustawienie prywatności dla domyślnej transmisji.
-
28 sierpnia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Aktualizacje istniejących zasobów i metod
-
Właściwość
statistics.favoriteCountzasobuvideozostała wycofana.Zgodnie z naszymi zasadami wycofywania ta właściwość będzie nadal uwzględniana w zasobach
videoprzez co najmniej rok od daty tego ogłoszenia. Wartość właściwości jest jednak teraz zawsze ustawiona na0.
-
7 sierpnia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Aktualizacje istniejących zasobów i metod
-
Zaktualizowaliśmy definicję właściwości
snippet.tags[]zasobuvideo, aby podać więcej informacji o tym, jak serwer interfejsu API oblicza długość wartości właściwości. Pamiętaj, że ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API.W definicji wyjaśniono, że jeśli tag zawiera spację, serwer interfejsu API traktuje wartość tagu tak, jakby była ujęta w cudzysłów, a cudzysłów wlicza się do limitu znaków. Dlatego w przypadku limitów znaków tag Foo-Baz zawiera 7 znaków, a tag Foo Baz – 9 znaków.
-
Metoda
commentThreads.insertnie obsługuje już parametrushareOnGooglePlus, który wcześniej wskazywał, czy komentarz i odpowiedzi na niego mają być publikowane również w profilu autora w Google+. Jeśli żądanie zawiera ten parametr, serwer interfejsu API go ignoruje, ale w innych przypadkach obsługuje żądanie.
-
18 czerwca 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Aktualizacje istniejących zasobów i metod
-
Nowy parametr
ordermetodycommentThreads.listokreśla kolejność, w jakiej odpowiedź interfejsu API powinna zawierać wątki komentarzy. Wątki można sortować według czasu lub trafności. Domyślnie są one uporządkowane według czasu. -
Nowa właściwość
snippet.defaultAudioLanguagezasobuvideookreśla język używany na domyślnej ścieżce audio filmu. -
Definicja właściwości
videozasobucontentDetails.licensedContentzostała zaktualizowana, aby wyjaśnić, że treści muszą być pierwotnie przesłane na kanał powiązany z partnerem treści YouTube, a następnie objęte roszczeniem przez tego partnera. Nie odzwierciedla to zmiany w rzeczywistym działaniu interfejsu API. -
Metody
captions.delete,captions.download,captions.insert,captions.listicaptions.updateobsługują teraz parametronBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. Żądania korzystające z tej metody muszą być też autoryzowane za pomocą tokena, który zapewnia dostęp do zakresuhttps://www.googleapis.com/auth/youtubepartner.
-
-
Nowe i zaktualizowane błędy
-
Interfejs API obsługuje teraz te błędy:
Szczegóły błędu videos.rateKod odpowiedzi HTTP badRequest (400)Przyczyna emailNotVerifiedOpis Użytkownik musi potwierdzić swój adres e-mail, zanim będzie mógł ocenić film. videos.rateKod odpowiedzi HTTP badRequest (400)Przyczyna videoPurchaseRequiredOpis Filmy do wypożyczenia mogą oceniać tylko użytkownicy, którzy je wypożyczyli. -
Metody
subscriptions.deleteisubscriptions.insertnie obsługują już błędówaccountClosediaccountSuspended.
-
27 kwietnia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowe zasoby i metody
-
Nowy zasób
videoAbuseReportReasonzawiera informacje o przyczynie, dla której film może zostać oznaczony jako zawierający nieodpowiednie treści. MetodavideoAbuseReportReasons.listumożliwia pobranie listy wszystkich powodów, dla których filmy mogą zostać zgłoszone. -
Nowa metoda
videos.reportAbuseumożliwia zgłoszenie filmu, który zawiera nieodpowiednie treści. Treść żądania zawiera obiekt JSON, który określa film zgłaszany jako zawierający nieodpowiednie treści oraz powód, dla którego film jest uznawany za zawierający takie treści. Prawidłowe przyczyny można uzyskać za pomocąvideoAbuseReportReason.listopisanej powyżej metody.Zaktualizowaliśmy też przewodnik po migracji, dodając do niego przykład zgłaszania obraźliwego filmu. Dzięki tej zmianie interfejs API w wersji 3 obsługuje teraz wszystkie funkcje interfejsu API w wersji 2, które ma obsługiwać. Wszystkie te funkcje są też opisane w przewodniku po migracji.
-
-
Aktualizacje istniejących zasobów i metod
-
Nowy parametr filtra
forDevelopermetodysearch.listogranicza wyszukiwanie do filmów przesłanych za pomocą aplikacji lub witryny dewelopera. ParametrforDevelopermożna stosować w połączeniu z opcjonalnymi parametrami wyszukiwania, takimi jak parametrq.W przypadku tej funkcji każdy przesłany film jest automatycznie oznaczany numerem projektu powiązanym z aplikacją dewelopera w Google Developers Console.
Gdy w kolejnym żądaniu wyszukiwania parametr
forDeveloperzostanie ustawiony natrue, serwer interfejsu API użyje danych logowania autoryzacji żądania, aby zidentyfikować dewelopera. Dlatego deweloper może ograniczyć wyniki do filmów przesłanych za pomocą jego aplikacji lub witryny, ale nie do filmów przesłanych za pomocą innych aplikacji lub witryn.Nowa funkcja oferuje podobne, choć nie identyczne, działanie jak tagi deweloperskie obsługiwane przez interfejs API w wersji 2.
-
Nowa właściwość
snippet.countryzasobuchannelumożliwia właścicielom kanałów powiązanie ich z konkretnym krajem.Uwaga: aby ustawić właściwość
snippet.countrydla zasobuchannel, musisz zaktualizować właściwośćbrandingSettings.channel.country. -
Interfejs API obsługuje teraz kierowanie na zasoby
channelSection. Kierowanie na sekcję kanału umożliwia ograniczenie widoczności sekcji treści do użytkowników spełniających określone kryteria.Interfejs API udostępnia 3 opcje kierowania. Aby sekcja kanału była widoczna, użytkownik musi spełniać wszystkie ustawienia kierowania.
-
targeting.languages[]: lista języków aplikacji YouTube. Użytkownicy, którzy wybrali jeden z tych języków, mogą zobaczyć odpowiednią sekcję kanału. -
targeting.regions[]: lista preferowanych regionów treści w YouTube. Sekcja kanału jest widoczna dla użytkowników, którzy wybrali jeden z tych regionów, a także dla użytkowników, dla których jeden z tych regionów został wybrany automatycznie. -
targeting.countries[]: lista krajów, w których widoczna jest sekcja kanału. Każda wartość na liście to kod kraju w formacie ISO 3166-1 alpha-2.
-
-
Definicja właściwości
contentDetails.durationzasobuvideozostała poprawiona, aby odzwierciedlała fakt, że wartość może odnosić się do godzin, dni itp. -
W dokumentacji metod
channelSections.delete,playlistItems.delete,playlists.delete,subscriptions.deleteivideos.deletewprowadziliśmy poprawki, aby odzwierciedlały fakt, że w przypadku powodzenia wszystkie te metody zwracają kod odpowiedzi HTTP204(No Content).
-
-
Nowe i zaktualizowane błędy
-
Interfejs API obsługuje teraz te błędy:
Typ błędu Szczegóły błędu Opis badRequest (400)targetInvalidCountryMetody channelSections.insertichannelSections.updatezwracają ten błąd, jeśli wstawiony zasóbchannelSectionzawierał nieprawidłową wartość właściwościtargeting.countries[].badRequest (400)targetInvalidLanguageMetody channelSections.insertichannelSections.updatezwracają ten błąd, jeśli wstawiony zasóbchannelSectionzawierał nieprawidłową wartość właściwościtargeting.languages[].badRequest (400)targetInvalidRegionMetody channelSections.insertichannelSections.updatezwracają ten błąd, jeśli wstawiony zasóbchannelSectionzawierał nieprawidłową wartość właściwościtargeting.regions[].badRequest (400)operationNotSupportedMetoda comments.insertzwraca ten błąd, jeśli użytkownik interfejsu API nie może wstawić komentarza w odpowiedzi na komentarz najwyższego poziomu zidentyfikowany przez właściwośćsnippet.parentId. W zasobiecommentThreadwłaściwośćsnippet.canReplywskazuje, czy bieżący widz może odpowiedzieć w wątku.badRequest (400)invalidChannelIdMetoda search.listzwraca ten błąd, jeśli parametrchannelIdw żądaniu określa nieprawidłowy identyfikator kanału.badRequest (400)subscriptionForbiddenMetoda subscriptions.insertzwraca ten błąd, jeśli użytkownik interfejsu API próbuje zasubskrybować własny kanał. -
Metoda
captions.updatenie obsługuje już błędówinvalidMetadataivideoNotFound.
-
16 kwietnia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Przewodnik po migracji został zaktualizowany, aby wyjaśnić, jak przenieść aplikacje, które nadal korzystają z funkcji komentarzy z interfejsu API w wersji 2.
W przewodniku wymieniono też kilka funkcji komentowania, których interfejs API w wersji 2 nie obsługiwał, ale które są obsługiwane w interfejsie API w wersji 3. Obejmują one:
- Pobieranie komentarzy o kanale
- Pobieranie wszystkich wątków komentarzy związanych z kanałem, co oznacza, że odpowiedź interfejsu API może zawierać komentarze dotyczące kanału lub dowolnego z jego filmów.
- Aktualizowanie tekstu komentarza
- Oznaczanie komentarza jako spam
- Ustawianie stanu moderacji komentarza
-
Zaktualizowaliśmy przewodnik Subskrybowanie powiadomień push, aby odzwierciedlał fakt, że powiadomienia są wysyłane tylko do centrum Google PubSubHubBub, a nie również do centrum Superfeedr, jak wcześniej podano.
9 kwietnia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowe zasoby interfejsu API
commentThreadicommentumożliwiają pobieranie, wstawianie, aktualizowanie, usuwanie i moderowanie komentarzy.-
Zasób
commentThreadzawiera informacje o wątku komentarzy w YouTube, który obejmuje komentarz najwyższego poziomu i odpowiedzi na niego (jeśli takie istnieją). ZasóbcommentThreadmoże reprezentować komentarze dotyczące filmu lub kanału.Komentarz najwyższego poziomu i odpowiedzi to w rzeczywistości zasoby
commentzagnieżdżone w zasobiecommentThread. Pamiętaj, że zasóbcommentThreadnie musi zawierać wszystkich odpowiedzi na komentarz. Jeśli chcesz pobrać wszystkie odpowiedzi na konkretny komentarz, musisz użyć metodycomments.list. Niektóre komentarze nie mają też odpowiedzi.Interfejs API obsługuje te metody dla zasobów
commentThread:commentThreads.list– pobieranie listy wątków komentarzy. Użyj tej metody, aby pobrać komentarze powiązane z konkretnym filmem lub kanałem.commentThreads.insert– Utwórz nowy komentarz najwyższego poziomu. (Aby odpowiedzieć na istniejący komentarz, użyj metodycomments.insert).commentThreads.update– modyfikowanie komentarza najwyższego poziomu;
-
commentZasób zawiera informacje o pojedynczym komentarzu w YouTube. Zasóbcommentmoże reprezentować komentarz dotyczący filmu lub kanału. Komentarz może być też komentarzem najwyższego poziomu lub odpowiedzią na taki komentarz.Interfejs API obsługuje te metody dla zasobów
comment:comments.list– pobieranie listy komentarzy. Ta metoda umożliwia pobranie wszystkich odpowiedzi na konkretny komentarz.comments.insert– utwórz odpowiedź na istniejący komentarz.comments.update– zmodyfikować komentarz.comments.markAsSpam– oznaczanie co najmniej jednego komentarza jako spam.comments.setModerationStatus– ustaw stan moderowania co najmniej 1 komentarza. Możesz na przykład zatwierdzić komentarz do publicznego wyświetlania lub odrzucić go jako nieodpowiedni. Żądanie do interfejsu API musi być autoryzowane przez właściciela kanału lub filmu powiązanego z komentarzami.comments.delete– usuwanie komentarza.
Pamiętaj, że w przypadku wywołań metod
comments.insert,comments.update,comments.markAsSpam,comments.setModerationStatus,comments.delete,commentThreads.inserticommentThreads.updatewymagany jest nowy zakreshttps://www.googleapis.com/auth/youtube.force-sslinterfejsu API, który został opisany w historii zmian z 2 kwietnia 2015 r.. -
-
Nowy przewodnik Subscribing to push notifications (Subskrybowanie powiadomień push) wyjaśnia, jak interfejs API obsługuje powiadomienia push za pomocą PubSubHubBub, protokołu publikowania i subskrybowania typu serwer-serwer dla zasobów dostępnych w internecie. Serwer wywołania zwrotnego PubSubHubBub może otrzymywać powiadomienia o kanałach w formacie Atom, gdy kanał wykona jedną z tych czynności:
- przesyła film,
- aktualizuje tytuł filmu,
- aktualizuje opis filmu,
-
Zaktualizowaliśmy też przewodnik po migracji, aby uwzględnić w nim nowe powiadomienia push. Interfejs API w wersji 2 obsługiwał jednak wiele innych typów powiadomień push, które nie są obsługiwane w interfejsie API w wersji 3, więc wzmianka o obsłudze PubSubHubBub nadal znajduje się w sekcji Wycofane tego przewodnika.
-
Nowy zakres
https://www.googleapis.com/auth/youtube.force-sslinterfejsu API jest teraz prawidłowym zakresem dla każdej metody interfejsu API, która wcześniej obsługiwała zakreshttps://www.googleapis.com/auth/youtube. -
Interfejs API obsługuje teraz te błędy:
Typ błędu Szczegóły błędu Opis badRequest (400)invalidRatingMetoda videos.ratezwraca ten błąd, jeśli żądanie zawierało nieoczekiwaną wartość parametrurating. -
Metoda
subscriptions.insertnie obsługuje już błędusubscriptionLimitExceeded, który wcześniej wskazywał, że subskrybent zidentyfikowany w żądaniu przekroczył limit szybkości subskrypcji.
2 kwietnia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy zasób
captionsreprezentuje ścieżkę z napisami w YouTube. Ścieżka z napisami jest powiązana z dokładnie 1 filmem na YouTube.Interfejs API obsługuje metody list (wyświetlanie listy), insert (wstawianie), update (aktualizowanie), download (pobieranie) i delete (usuwanie) ścieżek z napisami.
-
Zaktualizowaliśmy też przewodnik po migracji, aby wyjaśnić, jak przenieść aplikacje, które nadal korzystają z funkcji napisów w interfejsie API w wersji 2.
-
Nowy zakres
https://www.googleapis.com/auth/youtube.force-sslinterfejsu API wymaga, aby komunikacja z serwerem API odbywała się przez połączenie SSL.Ten nowy zakres przyznaje taki sam dostęp jak zakres
https://www.googleapis.com/auth/youtube. W rzeczywistości te 2 zakresy są funkcjonalnie identyczne, ponieważ serwer interfejsu YouTube API jest dostępny tylko przez punkt końcowy HTTPS. W rezultacie, mimo że zakreshttps://www.googleapis.com/auth/youtubenie wymaga połączenia SSL, nie ma innego sposobu na wysłanie żądania do interfejsu API.Nowy zakres jest wymagany w przypadku wywoływania wszystkich metod zasobu
caption.
11 marca 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Przewodnik po migracji do interfejsu YouTube Data API (wersja 3) zawiera nową kartę o nazwie Nowości w interfejsie API w wersji 3, na której znajdziesz listę funkcji obsługiwanych przez interfejs API w wersji 3, a nieobsługiwanych przez interfejs API w wersji 2. Te same funkcje były i są nadal wymienione na innych kartach w przewodniku. Na przykład nowa funkcja wyjaśniająca, jak aktualizować dane kampanii promocyjnej In-Video na kanale, jest również wymieniona na karcie Kanały (profile).
-
Przewodnik po migracji do interfejsu YouTube Data API (wersja 3) został zaktualizowany. Zawiera informację, że interfejs API w wersji 3 będzie obsługiwać tę funkcję interfejsu API w wersji 2:
-
Przewodnik po migracji do interfejsu YouTube Data API (wersja 3) został zaktualizowany. Zawiera teraz informację, że te funkcje interfejsu API w wersji 2 nie będą obsługiwane w interfejsie API w wersji 3:
-
Pobieranie rekomendacji filmów – interfejs API w wersji 3 nie pobiera listy zawierającej tylko filmy rekomendowane dla bieżącego użytkownika interfejsu API. Możesz jednak użyć interfejsu API w wersji 3, aby znaleźć polecane filmy, wywołując metodę
activities.listi ustawiając wartość parametruhomenatrue.W odpowiedzi interfejsu API zasób odpowiada rekomendowanemu filmowi, jeśli wartość właściwości
snippet.typetorecommendation. W takim przypadku właściwościcontentDetails.recommendation.reasonicontentDetails.recommendation.seedResourceIdbędą zawierać informacje o tym, dlaczego film został zarekomendowany. Pamiętaj, że nie możemy zagwarantować, że odpowiedź będzie zawierać określoną liczbę polecanych filmów. -
Pobieranie nowych filmów z subskrypcji – interfejs API w wersji 3 nie pobiera listy, która zawiera tylko filmy niedawno przesłane na kanały, które subskrybuje użytkownik interfejsu API. Możesz jednak użyć interfejsu API w wersji 3, aby znaleźć nowe filmy z subskrypcji. W tym celu wywołaj metodę
activities.listi ustaw wartość parametruhomenatrue.W odpowiedzi interfejsu API zasób odpowiada nowemu filmowi w ramach subskrypcji, jeśli wartość właściwości
snippet.typetoupload. Pamiętaj, że nie możemy zagwarantować, że odpowiedź będzie zawierać określoną liczbę nowych filmów z subskrypcji. -
Powiadomienia push o aktualizacjach kanału – interfejs API w wersji 2 obsługiwał powiadomienia push za pomocą protokołu Simple Update Protocol (SUP) lub PubSubHubbub, aby monitorować kanały aktywności użytkowników YouTube. Powiadomienia były wysyłane w przypadku nowych subskrypcji kanałów oraz gdy filmy były oceniane, udostępniane, oznaczane jako ulubione, komentowane lub przesyłane.
Interfejs API w wersji 3 będzie obsługiwać powiadomienia push za pomocą protokołu PubSubHubbub, ale powiadomienia będą dotyczyć tylko przesyłania filmów oraz aktualizacji tytułów i opisów filmów.
-
Lokalizacja kanału – interfejs API w wersji 2 używał tagu
<yt:location>do identyfikowania lokalizacji użytkownika podanej w publicznym profilu kanału w YouTube. Niektórzy deweloperzy używali tego pola do powiązania kanału z określonym krajem, ale danych w tym polu nie można było konsekwentnie wykorzystywać w tym celu. -
Ustawianie i pobieranie tagów dewelopera – interfejs API w wersji 2 umożliwiał powiązanie słów kluczowych lub tagów dewelopera z filmem w momencie jego przesyłania. Tagi deweloperów nie byłyby wyświetlane użytkownikom YouTube, ale właściciele filmów mogliby wyszukiwać filmy pasujące do określonego tagu dewelopera.
Interfejs API w wersji 3 będzie udostępniać podobną, ale nie identyczną funkcję. Deweloper będzie mógł wyszukiwać filmy przesłane przez jego aplikację. W przypadku tej funkcji każdy przesłany film jest automatycznie oznaczany numerem projektu powiązanym z aplikacją dewelopera w Google Developers Console. Następnie deweloper używa tego samego numeru projektu do wyszukiwania filmów.
-
Wyświetlanie filmów według daty publikacji, liczby wyświetleń lub oceny – w interfejsie API w wersji 2 parametr
orderbyumożliwiał sortowanie filmów na playliście według pozycji, czasu trwania, daty publikacji, tytułu i kilku innych wartości. W interfejsie API w wersji 3 elementy playlisty są zwykle sortowane według pozycji w kolejności rosnącej, a inne opcje sortowania nie są dostępne.Istnieje kilka wyjątków. Nowy przesłany film, ulubiony film, polubiony film lub ostatnio oglądany film jest automatycznie dodawany jako pierwszy element (
snippet.position=0) w przypadku tych typów playlist: Każda z tych list jest więc posortowana od najnowszego do najstarszego elementu na podstawie czasu dodania elementów do listy.- treści przesłane przez użytkownika,
- ulubione filmy,
- polubione filmy
- historia oglądania
Pamiętaj jednak, że nowy element dodany do playlisty „Do obejrzenia” jest umieszczany na końcu listy, więc jest ona posortowana od najstarszego do najnowszego elementu.
-
Przetwarzanie wsadowe – interfejs API w wersji 3 obsługuje jeden z przypadków użycia przetwarzania wsadowego, który był obsługiwany przez interfejs API w wersji 2. Metody
channels.list,channelSections.list,guideCategories.list,playlistItems.list,playlists.list,subscriptions.list,videoCategories.listivideos.listinterfejsu API w wersji 3 obsługują parametrid, którego można użyć do określenia rozdzielonej przecinkami listy identyfikatorów (identyfikatorów filmów, kanałów itp.). Dzięki tym metodom możesz pobrać listę wielu zasobów za pomocą jednego żądania.
Dzięki tym zmianom przewodnik zawiera teraz wszystkie funkcje, które były obsługiwane w starym interfejsie API (w wersji 2), a które zostaną wycofane w bieżącej wersji interfejsu API (w wersji 3).
-
4 marca 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Metody
channelSections.deleteichannelSections.updateobsługują teraz parametronBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. -
Wycofaliśmy te usługi i ich usługi podrzędne:
brandingSettings.image.backgroundImageUrlbrandingSettings.image.largeBrandedBannerImageImapScriptbrandingSettings.image.largeBrandedBannerImageUrlbrandingSettings.image.smallBrandedBannerImageImapScriptbrandingSettings.image.smallBrandedBannerImageUrl
Uwaga: żadna z tych właściwości nie podlegała zasadom wycofywania interfejsu API.
-
Nowa właściwość
contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasonszasobuvideookreśla przyczyny, dla których film otrzymał ocenę DJCQT (Brazylia). -
Interfejs API obsługuje teraz te błędy:
Typ błędu Szczegóły błędu Opis notFound (404)channelNotFoundMetoda channels.updatezwraca ten błąd, jeśli parametridw żądaniu określa kanał, którego nie można znaleźć.badRequest (400)manualSortRequiredinvalidValueMetody playlistItems.insertiplaylistItems.updatezwracają ten błąd, jeśli żądanie próbuje ustawić pozycję elementu playlisty, ale playlista nie korzysta z ręcznego sortowania. Na przykład elementy playlisty mogą być posortowane według daty lub popularności. Aby rozwiązać ten problem, usuń elementsnippet.positionz zasobu wysłanego w treści żądania. Jeśli chcesz, aby element playlisty znajdował się na określonej pozycji na liście, musisz najpierw zmienić ustawienie kolejności playlisty na Ręczna. To ustawienie można zmienić w Menedżerze filmów w YouTube.forbidden (403)channelClosedMetoda playlists.listzwraca ten błąd, jeśli parametrchannelIdw żądaniu określa zamknięty kanał.forbidden (403)channelSuspendedMetoda playlists.listzwraca ten błąd, jeśli parametrchannelIdw żądaniu określa zawieszony kanał.forbidden (403)playlistForbiddenMetoda playlists.listzwraca ten błąd, jeśli parametridw żądaniu nie obsługuje żądania lub żądanie nie jest prawidłowo autoryzowane.notFound (404)channelNotFoundMetoda playlists.listzwraca ten błąd, jeśli parametrchannelIdw żądaniu określa kanał, którego nie można znaleźć.notFound (404)playlistNotFoundMetoda playlists.listzwraca ten błąd, jeśli parametridżądania określa playlistę, której nie można znaleźć.notFound (404)videoNotFoundMetoda videos.listzwraca ten błąd, jeśli parametridw żądaniu określa film, którego nie można znaleźć.badRequest (400)invalidRatingMetoda videos.ratezwraca ten błąd, jeśli żądanie zawiera nieoczekiwaną wartość parametrurating.
2 marca 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Metoda
search.listobsługuje teraz parametrrelevanceLanguage, który umożliwia żądanie wyników najbardziej odpowiednich dla danego języka.Zaktualizowaliśmy też przewodnik po migracji do interfejsu YouTube Data API (wersja 3), aby wyjaśnić, jak używać tego nowego parametru. Ten parametr uzupełnia lukę w funkcjach, która wcześniej występowała między bieżącą wersją interfejsu API (wersja 3) a poprzednią wersją (wersja 2), która została już wycofana.
-
Zaktualizowaliśmy też przewodnik po migracji do interfejsu YouTube Data API (wersja 3), aby poinformować o wycofaniu specjalnych plików danych i pól metadanych, które interfejs API w wersji 2 udostępniał do opisywania filmów, zwiastunów, programów telewizyjnych, sezonów i odcinków.
14 stycznia 2015 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zaktualizowaliśmy przewodnik po migracji do interfejsu YouTube Data API (wersja 3), aby wyjaśnić, jak używać interfejsu API w wersji 3 do przesyłania filmów za pomocą JavaScriptu. (Więcej informacji znajdziesz w sekcji Przesyłanie filmu). Ta funkcja jest porównywalna z funkcją przesyłania w przeglądarce, którą obsługuje interfejs API w wersji 2. Pamiętaj, że ta zmiana w przewodniku po migracji nie odzwierciedla rzeczywistej zmiany w interfejsie API, a jedynie udostępnienie nowego przykładowego kodu do przesyłania filmów za pomocą JavaScriptu po stronie klienta.
W związku z obsługą przesyłania filmów za pomocą biblioteki klienta JavaScript i CORS w przewodniku migracji nie ma już informacji o tym, że przesyłanie w przeglądarce może zostać wycofane w interfejsie API w wersji 3.
-
Dokumentacja metody
videos.insertzostała zaktualizowana i zawiera nowy przykładowy kod JavaScript opisany powyżej. Zaktualizowaliśmy też listę przykładowych kodów JavaScript dla interfejsu YouTube Data API (wersja 3).
11 listopada 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Koszt limitu wywołania metody
search.listzostał zmieniony na 100 jednostek.Ważne: w wielu przypadkach możesz użyć innych metod interfejsu API, aby pobrać informacje przy niższym koszcie limitu. Rozważmy na przykład 2 sposoby wyszukiwania filmów przesłanych na kanał GoogleDevelopers.
-
Koszt limitu: 100 jednostek
Wywołaj metodę
search.listi wyszukajGoogleDevelopers. -
Koszt limitu: 6 jednostek
Aby znaleźć odpowiedni identyfikator kanału, wywołaj metodę
channels.list. Ustaw parametrforUsernamenaGoogleDevelopers, a parametrpartnacontentDetails. W odpowiedzi API właściwośćcontentDetails.relatedPlaylists.uploadsokreśla identyfikator playlisty z przesłanymi filmami na kanale.Następnie wywołaj metodę
playlistItems.listi ustaw parametrplaylistIdna przechwycony identyfikator, a parametrpartnasnippet.
-
8 października 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zasób
channelzawiera 2 nowe właściwości:-
Właściwość
status.longUploadsStatuswskazuje, czy kanał może przesyłać filmy dłuższe niż 15 minut. Ta właściwość jest zwracana tylko wtedy, gdy właściciel kanału autoryzował żądanie do interfejsu API. Prawidłowe wartości właściwości to:allowed– kanał może przesyłać filmy dłuższe niż 15 minut;eligible– kanał może przesyłać filmy dłuższe niż 15 minut, ale najpierw musi włączyć tę funkcję.disallowed– kanał nie może przesyłać filmów dłuższych niż 15 minut lub nie kwalifikuje się do tej możliwości.
Więcej informacji o tych wartościach znajdziesz w definicji właściwości. Więcej informacji o tej funkcji znajdziesz w Centrum pomocy YouTube.
-
Właściwość
invideoPromotion.useSmartTimingwskazuje, czy kampania promocyjna kanału korzysta z „inteligentnego harmonogramu”. Ta funkcja próbuje wyświetlać promocje w momencie filmu, w którym jest większe prawdopodobieństwo, że zostaną kliknięte, a mniejsze, że zakłócą oglądanie. Ta funkcja wybiera też jedną promocję, która będzie wyświetlana w każdym filmie.
-
-
Definicje właściwości
snippet.titleisnippet.categoryIdzasobuvideozostały zaktualizowane, aby wyjaśnić sposób, w jaki interfejs API obsługuje wywołania metodyvideos.update. Jeśli wywołasz tę metodę, aby zaktualizować częśćsnippetzasobuvideo, musisz ustawić wartość obu tych właściwości.Jeśli spróbujesz zaktualizować część
snippetzasobuvideoi nie ustawisz wartości obu tych właściwości, interfejs API zwróci błądinvalidRequest. Zaktualizowaliśmy też opis tego błędu. -
Właściwość
contentDetails.contentRating.oflcRatingzasobuvideo, która określa ocenę filmu przyznaną przez nowozelandzki urząd ds. klasyfikacji filmów i literatury, obsługuje teraz 2 nowe oceny:oflcRp13ioflcRp16. Odpowiadają one odpowiednio ocenomRP13iRP16. -
Metoda
channelBanners.insertobsługuje teraz ten błąd:Typ błędu Szczegóły błędu Opis badRequestbannerAlbumFullAlbum Grafika kanału na YouTube właściciela kanału zawiera za dużo obrazów. Właściciel kanału powinien wejść na http://photos.google.com, otworzyć stronę albumów i usunąć z albumu niektóre obrazy.
12 września 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Koszt limitu na wywołanie metody
search.listzmienił się z 1 jednostki na 2 jednostki, oprócz kosztu określonych części zasobu.
13 sierpnia 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Metoda
subscriptions.insertobsługuje teraz ten błąd:Typ błędu Szczegóły błędu Opis badRequestsubscriptionLimitExceededSubskrybent zidentyfikowany w żądaniu przekroczył limit częstotliwości subskrypcji. Za kilka godzin możesz spróbować wykupić więcej subskrypcji.
12 sierpnia 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy przewodnik Migracja aplikacji do interfejsu YouTube Data API (wersja 3) wyjaśnia, jak używać interfejsu YouTube Data API (wersja 3) do wykonywania funkcji dostępnych w interfejsie YouTube Data API (wersja 2). Starszy interfejs API został oficjalnie wycofany 4 marca 2014 r. Ten przewodnik ma pomóc w migracji aplikacji, które nadal korzystają z interfejsu API w wersji 2, do najnowszej wersji interfejsu API.
8 lipca 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Metoda
playlists.insertobsługuje teraz ten błąd:Typ błędu Szczegóły błędu Opis badRequestmaxPlaylistExceededTen błąd występuje, gdy nie można utworzyć playlisty, ponieważ kanał ma już maksymalną dozwoloną liczbę playlist.
18 czerwca 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Opis każdej metody interfejsu API został zaktualizowany i zawiera teraz koszt limitu poniesiony w wyniku wywołania tej metody. Podobnie zaktualizowaliśmy definicje
partparametrów, aby określić koszt limitu każdego elementu, który można pobrać w wywołaniu interfejsu API. Na przykład wywołanie metodysubscriptions.insertma koszt limitu wynoszący około 50 jednostek. Zasóbsubscriptionrównież składa się z 3 części (snippet,contentDetailsisubscriberSnippet), a każda z nich kosztuje 2 jednostki.Pamiętaj, że koszty limitów mogą ulec zmianie bez ostrzeżenia.
-
Zasób
videoobsługuje teraz 43 nowe systemy oceniania treści, które określają oceny przyznane filmom przez różne krajowe agencje ratingowe. Nowe systemy oceniania pochodzą z Argentyny, Austrii, Belgii, Bułgarii, Chile (telewizja), Chile (film), Czech, Kolumbii, Danii, Egiptu, Estonii, Finlandii, Francji, Grecji, Hongkongu, Islandii, Indonezji, Irlandii, Izraela, Włoch, Kenii, Łotwy, Luksemburga, Malezji, Malediwów, Malty, Holandii, Nigerii, Norwegii, Peru, Filipin, Portugalii, Rumunii, Singapuru, Słowacji, RPA, Szwecji, Szwajcarii, Tajwanu, Tajlandii i Wenezueli.
28 maja 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Metoda
search.listobsługuje teraz parametrylocationilocationRadius, które umożliwiają wyszukiwanie filmów powiązanych z położeniem geograficznym. Aby pobrać wyniki na podstawie lokalizacji, żądanie musi zawierać wartości obu parametrów. Jeśli żądanie zawiera tylko jeden z nich, interfejs API zwróci błąd.-
Parametr
locationokreśla współrzędne geograficzne środka okrągłego obszaru geograficznego. -
Parametr
locationRadiusokreśla maksymalną odległość, w jakiej lokalizacja powiązana z filmem może znajdować się od środka obszaru, aby film nadal był uwzględniany w wynikach wyszukiwania.
-
13 maja 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
W zasobie
channelw sekcjiinvideoPromotion.items[]wprowadziliśmy zmianę, która informuje, że na kanale można zwykle ustawić tylko 1 promowany produkt. Jeśli spróbujesz wstawić zbyt wiele promowanych produktów, interfejs API zwróci błądtooManyPromotedItemsz kodem stanu HTTP400. -
channelSectionmoże teraz zawierać informacje o kilku nowych typach polecanych treści. Właściwośćsnippet.typezasobuchannelSectionobsługuje teraz te wartości:postedPlaylists– playlisty, które właściciel kanału opublikował w strumieniu aktywności kanału;postedVideos– filmy, które właściciel kanału opublikował w strumieniu aktywności kanału.subscriptions– kanały, które subskrybuje właściciel kanału;
-
Nowa właściwość
contentDetails.contentRating.ifcoRatingzasobuvideookreśla ocenę, jaką film otrzymał od irlandzkiego urzędu ds. klasyfikacji filmów. -
Definicja właściwości
watermarkzasobuposition.cornerPositionzostała zaktualizowana, aby uwzględnić informację, że znak wodny zawsze pojawia się w prawym górnym rogu odtwarzacza. -
Zaktualizowaliśmy definicję parametru
qdla metodysearch.list, aby uwzględnić informację, że w zapytaniu można użyć operatora logicznego NOT (-), aby wykluczyć filmy powiązane z określonym wyszukiwanym hasłem. Wartość może też używać operatora logicznego LUB (|), aby znaleźć filmy powiązane z jednym z kilku wyszukiwanych haseł. -
Zaktualizowaliśmy definicję właściwości
pageInfo.totalResults, która jest zwracana w odpowiedzi interfejsu API na wywołaniesearch.list. Dodaliśmy informację, że wartość jest przybliżona i może nie być dokładna. Maksymalna wartość to 1 000 000. Nie używaj tej wartości do tworzenia linków do podziału na strony. Zamiast tego użyj wartości właściwościnextPageTokeniprevPageToken, aby określić, czy wyświetlać linki do podziału na strony. -
Metody
watermarks.setiwatermarks.unsetzostały zaktualizowane, aby odzwierciedlały fakt, że w przypadku pomyślnych żądań do tych metod interfejs API zwraca kod odpowiedzi HTTP204.
2 maja 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy zasób
i18nLanguageokreśla język aplikacji obsługiwany przez witrynę YouTube. Język aplikacji jest też nazywany językiem interfejsu. W przypadku witryny YouTube język aplikacji może być wybierany automatycznie na podstawie ustawień konta Google, języka przeglądarki lub lokalizacji IP. Użytkownik może też ręcznie wybrać język interfejsu w stopce witryny YouTube.Interfejs API obsługuje metodę wyświetlania obsługiwanych języków aplikacji. Obsługiwane języki można stosować jako wartość parametru
hlpodczas wywoływania metod interfejsu API, takich jakvideoCategories.listiguideCategories.list. -
Nowy zasób
i18nRegionidentyfikuje obszar geograficzny, który użytkownik YouTube może wybrać jako preferowany region treści. Region treści może być też określany jako lokalizacja treści. W przypadku witryny YouTube region treści może być wybierany automatycznie na podstawie heurystyk, takich jak domena YouTube lub lokalizacja IP użytkownika. Użytkownik może też ręcznie wybrać żądany region treści w stopce witryny YouTube.API obsługuje metodę wyświetlania obsługiwanych regionów treści. Obsługiwane kody regionów można używać jako wartości parametru
regionCodepodczas wywoływania metod interfejsu API, takich jaksearch.list,videos.list,activities.listivideoCategories.list.
7 kwietnia 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy zasób
channelSectionzawiera informacje o zestawie filmów, które kanał wybrał do wyróżnienia. Na przykład sekcja może zawierać najnowsze filmy, najpopularniejsze filmy lub filmy z co najmniej 1 playlisty.Interfejs API obsługuje metody wyświetlania, wstawiania, aktualizowania i usuwania sekcji kanału. Listę sekcji kanału uwierzytelnionego użytkownika możesz pobrać, podając konkretny identyfikator kanału lub listę unikalnych identyfikatorów sekcji kanału.
Zaktualizowaliśmy też dokumentację błędów, aby opisać komunikaty o błędach, które interfejs API obsługuje w przypadku tych nowych metod.
-
Zaktualizowaliśmy definicję obiektu
fileDetailszasobuvideo, aby wyjaśnić, że ten obiekt będzie zwracany tylko wtedy, gdy właściwośćprocessingDetails.fileDetailsAvailabilityfilmu ma wartośćavailable.Podobnie zaktualizowaliśmy definicję obiektu
suggestionszasobuvideo, aby wyjaśnić, że ten obiekt będzie zwracany tylko wtedy, gdy właściwośćprocessingDetails.tagSuggestionsAvailabilitylubprocessingDetails.editorSuggestionsAvailabilityfilmu ma wartośćavailable. -
Zaktualizowaliśmy dokumentację metod
videos.insertivideos.update, aby uwzględnić informację, że podczas wywoływania tych metod można ustawić właściwośćstatus.publishAt. -
Zaktualizowaliśmy definicję obiektu
channelzasobuinvideoPromotion, aby wyjaśnić, że obiekt może pobrać tylko właściciel kanału. -
Lista parametrów metody
videos.ratezostała zaktualizowana, aby odzwierciedlać fakt, że ta metoda nie obsługuje parametruonBehalfOfContentOwner. Był to błąd w dokumentacji, ponieważ żądaniavideos.rate, w których ustawiono ten parametr, zwracają błąd500.
31 marca 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowa właściwość
status.publishAtzasobuvideoumożliwia określenie daty i godziny, o której film prywatny ma zostać opublikowany. Tę właściwość można ustawić tylko wtedy, gdy stan prywatności filmu toprivatei film nigdy nie został opublikowany. Ta nowa usługa nie podlega zasadom wycofywania.
13 marca 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Interfejs API obsługuje teraz parametr
contentOwnerDetailsw przypadku zasobówchannel. Nowa część zawiera dane kanału istotne dla partnerów YouTube powiązanych z kanałem, w tym identyfikator właściciela treści powiązanego z kanałem oraz datę i godzinę powiązania właściciela treści z kanałem. Pamiętaj, że ta nowa część nie podlega zasadom wycofywania. -
W dokumentacji podano teraz maksymalną obsługiwaną długość znaków w przypadku tych właściwości:
Zasób Właściwość Maksymalna długość channelinvideoPromotion.items[].customMessage40 znaków videosnippet.title100 znaków videosnippet.description5000 bajtów videosnippet.tags500 znaków. Pamiętaj, że wartość właściwości jest listą, a przecinki między elementami listy wliczają się do limitu. -
Właściwość
brandingSettings.watch.featuredPlaylistIdzasobuchannelzostała wycofana. Jeśli spróbujesz ustawić jego wartość, interfejs API zwróci błąd. -
Do listy wartości, które można ustawić podczas wstawiania lub aktualizowania filmu, dodaliśmy te właściwości zasobu
video: -
W dokumentacji błędów podajemy teraz kod odpowiedzi HTTP dla każdego typu błędu.
-
Interfejs API obsługuje teraz te błędy:
Typ błędu Szczegóły błędu Opis badRequest (400)invalidCriteriaMetoda channels.listzwraca ten błąd, jeśli żądanie określa parametry filtra, których nie można używać razem.badRequest (400)channelTitleUpdateForbiddenMetoda channels.updatezwraca ten błąd, jeśli spróbujesz zaktualizować częśćbrandingSettingskanału i zmienisz wartość właściwościbrandingSettings.channel.title. (Pamiętaj, że jeśli pominiesz tę właściwość, interfejs API nie zwróci błędu).badRequest (400)invalidRecentlyUploadedByMetoda channels.updatezwraca ten błąd, jeśli właściwośćinvideoPromotion.items[].id.recentlyUploadedByokreśla nieprawidłowy identyfikator kanału.badRequest (400)invalidTimingOffsetMetoda channels.updatezwraca ten błąd, jeśli częśćinvideoPromotionokreśla nieprawidłowe przesunięcie czasowe.badRequest (400)tooManyPromotedItemsMetoda channels.updatezwraca ten błąd, jeśli częśćinvideoPromotionokreśla więcej promowanych produktów niż jest dozwolone.forbidden (403)promotedVideoNotAllowedMetoda channels.updatezwraca ten błąd, jeśli właściwośćinvideoPromotion.items[].id.videoIdokreśla identyfikator filmu, którego nie można znaleźć lub którego nie można użyć jako promowanego produktu.forbidden (403)websiteLinkNotAllowedMetoda channels.updatezwraca ten błąd, jeśli właściwośćinvideoPromotion.items[].id.websiteUrlokreśla niedozwolony adres URL.required (400)requiredTimingTypeMetoda channels.updatezwraca ten błąd, jeśli żądanie nie określa domyślnych ustawień czasu, kiedy YouTube ma wyświetlać promowany produkt.required (400)requiredTimingMetoda channels.updatemusi określać obiektinvideoPromotion.items[].timingdla każdego promowanego produktu.required (400)requiredWebsiteUrlMetoda channels.updatemusi określać właściwośćinvideoPromotion.items[].id.websiteUrldla każdego promowanego produktu.badRequest (400)invalidPublishAtMetoda videos.insertzwraca ten błąd, jeśli metadane żądania określają nieprawidłowy czas publikacji zaplanowanej.
4 marca 2014 r.
Ta aktualizacja zawiera następujące zmiany:
-
Interfejs YouTube Data API w wersji 3 podlega teraz zasadom wycofania opisanym w Warunkach korzystania z interfejsów API YouTube. Pamiętaj, że na stronie z interfejsami API, które podlegają zasadom wycofywania, niektóre funkcje interfejsu API w wersji 3 są wyraźnie wyłączone z tych zasad.
5 grudnia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Dokumentacja metody
search.listzostała zaktualizowana, aby prawidłowo odzwierciedlać fakt, że podczas przesyłania żądania wyszukiwania nie musisz określać wartości dokładnie jednego parametru filtra. Możesz ustawić wartość dla 0 lub 1 parametru filtra. -
Definicje parametrów metody
search.listzostały zaktualizowane. Zawierają teraz informację, że jeśli określisz wartość dowolnego z tych parametrów:typevideoeventTypevideoCaptionvideoCategoryIdvideoDefinitionvideoDimensionvideoDurationvideoEmbeddablevideoLicensevideoSyndicatedvideoType
-
Minimalny rozmiar przesyłanych obrazów banera kanału został zmniejszony do 2048 x 1152 pikseli. (Wcześniej minimalny rozmiar wynosił 2120 x 1192 pikseli). Pamiętaj też, że
channeldokumentacja zasobów określa maksymalne rozmiary wszystkich obrazów banerów wyświetlanych z interfejsu API. Na przykład maksymalny rozmiarbrandingSettings.image.bannerTvImageUrlobrazu w przypadku aplikacji telewizyjnych to 2120 x 1192 piksele, ale rzeczywisty obraz może mieć rozmiar 2048 x 1152 piksele. Dodatkowe wskazówki dotyczące optymalizacji grafiki kanału pod kątem wyświetlania na różnych urządzeniach znajdziesz w Centrum pomocy YouTube. -
Zaktualizowaliśmy definicje kilku właściwości zasobów
channel, aby odzwierciedlały te informacje:- Wartość właściwości
brandingSettings.channel.descriptionmoże mieć maksymalnie 1000 znaków. - Właściwość
brandingSettings.channel.featuredChannelsTitlemoże mieć maksymalnie 30 znaków. - W usłudze
brandingSettings.channel.featuredChannelsUrls[]można teraz wyświetlać maksymalnie 100 kanałów. - Wartość właściwości
brandingSettings.channel.unsubscribedTrailer, jeśli jest ustawiona, musi określać identyfikator filmu na YouTube, który jest własnością właściciela kanału i ma status publiczny lub niepubliczny.
- Wartość właściwości
-
Metoda
channels.updateobsługuje teraz aktualizacje właściwościinvideoPromotion.items[].promotedByContentOwner. Ta właściwość określa, czy podczas wyświetlania promocji będzie widoczna nazwa właściciela treści. Można go ustawić tylko wtedy, gdy żądanie do interfejsu API, które ustawia wartość właściwości, jest wysyłane w imieniu właściciela treści za pomocą parametruonBehalfOfContentOwner. -
Metody
playlistItems.listiplaylistItems.insertobsługują teraz parametronBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. -
Właściwość
contentDetails.contentRating.acbRatingmoże teraz określać ocenę przyznaną przez Australian Classification Board (ACB) w przypadku filmów lub przez Australian Communications and Media Authority (ACMA) w przypadku programów telewizyjnych dla dzieci. -
Nowe właściwości
contentDetails.contentRating.catvRatingicontentDetails.contentRating.catvfrRatingokreślają oceny, które film otrzymał w ramach kanadyjskiego systemu klasyfikacji telewizyjnej i francuskojęzycznego systemu ocen Régie du cinéma, który jest używany w Quebecu. -
Nowa właściwość
snippet.assignablezasobuvideoCategorywskazuje, czy z daną kategorią filmów można powiązać zaktualizowane lub nowo przesłane filmy. -
Dodaliśmy przykłady kodu dla tych metod:
activities.insert(Go)channelBanners.insert(Python)channels.update(Python)playlistItems.list(Go)search.list(Go)thumbnails.set(Java)videos.insert(Go)
24 października 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Interfejs API obejmuje 2 dodatkowe funkcje, które pomagają znajdować i wyświetlać treści transmitowane na żywo:
Nowa właściwość
snippet.liveBroadcastContentw wynikach wyszukiwania wskazuje, czy w zasobie wideo lub na kanale znajdują się treści transmitowane na żywo. Prawidłowe wartości właściwości toupcoming,activeinone.-
Nowa właściwość
snippet.liveBroadcastContentzasobuvideowskazuje, czy film jest nadchodzącą czy aktywną transmisją na żywo. Poniżej znajdziesz możliwe wartości właściwości:upcoming– film jest transmisją na żywo, która jeszcze się nie rozpoczęła.active– film jest transmitowany na żywo.none– film nie jest nadchodzącą ani trwającą transmisją na żywo. Będzie to wartość właściwości dla zakończonych transmisji, które nadal można oglądać w YouTube.
-
Nowa właściwość
liveStreamingDetailszasobuvideoto obiekt zawierający metadane dotyczące transmisji na żywo. Aby pobrać te metadane, uwzględnijliveStreamingDetailsna liście części zasobu w wartości parametrupart. Metadane zawierają te nowe właściwości:liveStreamingDetails.actualStartTime– czas rozpoczęcia transmisji. (Ta wartość będzie widoczna, gdy stan transmisji będzieactive).liveStreamingDetails.actualEndTime– czas, w którym transmisja faktycznie się zakończyła. (Ta wartość będzie widoczna po zakończeniu transmisji).liveStreamingDetails.scheduledStartTime– czas, w którym ma się rozpocząć transmisja.liveStreamingDetails.scheduledEndTime– godzina, o której ma się zakończyć transmisja. Jeśli wartość właściwości jest pusta lub właściwość nie występuje, transmisja jest zaplanowana na czas nieokreślony.liveStreamingDetails.concurrentViewers– liczba osób oglądających transmisję na żywo.
Aby pobrać te metadane, podczas wywoływania metody
videos.list,videos.insertlubvideos.updateuwzględnijliveStreamingDetailsw wartości parametrupart.
Pamiętaj, że 1 października 2013 r. udostępniliśmy 2 inne funkcje do identyfikowania treści transmisji na żywo: parametr
eventTypemetodysearch.listi właściwośćsnippet.liveBroadcastContentwyniku wyszukiwania. -
-
Metoda
videos.insertobsługuje teraz parametrnotifySubscribers, który określa, czy YouTube ma wysyłać powiadomienia o nowym filmie do użytkowników, którzy subskrybują kanał, na którym został on opublikowany. Domyślna wartość parametru toTrue, co oznacza, że subskrybenci będą otrzymywać powiadomienia o nowo przesłanych filmach. Właściciel kanału, który przesyła wiele filmów, może jednak woleć ustawić wartośćFalse, aby uniknąć wysyłania powiadomień o każdym nowym filmie do subskrybentów kanału. -
Zaktualizowaliśmy listę właściwości, które można modyfikować podczas wywoływania metody
channels.update, aby uwzględnić właściwościinvideoPromotion.items[].customMessageiinvideoPromotion.items[].websiteUrl. Dodatkowo lista została zmodyfikowana, aby wskazywaćbrandingSettingswłaściwości, które można modyfikować. Te właściwościbrandingSettingsmożna było już modyfikować, więc zmiana w dokumentacji nie odzwierciedla zmiany w dotychczasowej funkcjonalności interfejsu API. -
Metody
playlists.insert,playlists.updateiplaylists.deleteobsługują teraz parametronBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. -
Metoda
playlists.insertobsługuje teraz parametronBehalfOfContentOwnerChannel, który jest już obsługiwany w przypadku kilku innych metod. -
Właściwość
contentDetails.contentRating.tvpgRatingzasobuvideoobsługuje teraz wartośćpg14, która odpowiada ocenieTV-14. -
Definicja właściwości
snippet.liveBroadcastContent, która jest częścią wyników wyszukiwania, została poprawiona, aby odzwierciedlać, żelivejest prawidłową wartością właściwości, aleactivenie jest prawidłową wartością właściwości. -
Zasób
videowe właściwościcontentDetails.contentRating.mibacRatingobsługuje teraz 2 dodatkowe oceny:mibacVap(VAP) – dzieci powinny być pod opieką osoby dorosłej.mibacVm6(V.M.6) – Tylko dla osób, które ukończyły 6 lat.mibacVm12(V.M.12) – Tylko dla osób, które ukończyły 12 lat.
-
Nowa właściwość
invideoPromotion.items[].promotedByContentOwnerzasobuchannelwskazuje, czy podczas wyświetlania promocji będzie widoczna nazwa właściciela treści. To pole można ustawić tylko wtedy, gdy żądanie do interfejsu API, które ustawia wartość, jest wysyłane w imieniu właściciela treści. Więcej informacji znajdziesz w sekcji dotyczącej parametruonBehalfOfContentOwner.
1 października 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy obiekt
auditDetailszasobuchannelzawiera dane kanału, które sieć wielokanałowa ocenia podczas podejmowania decyzji o przyjęciu lub odrzuceniu danego kanału. Pamiętaj, że każde żądanie interfejsu API, które pobiera tę część zasobu, musi zawierać token autoryzacji z zakresemhttps://www.googleapis.com/auth/youtubepartner-channel-audit. Ponadto każdy token, który używa tego zakresu, musi zostać unieważniony, gdy MCN zdecyduje się zaakceptować lub odrzucić kanał, lub w ciągu 2 tygodni od daty wydania tokena. -
Właściwość
invideoPromotion.items[].id.typezasobuchannelobsługuje teraz wartośćrecentUpload, która oznacza, że promowany element to najnowszy film przesłany z określonego kanału.Domyślnie kanał jest taki sam jak ten, dla którego ustawione są dane o promocji In-Video. Możesz jednak promować najnowszy film przesłany z innego kanału, ustawiając wartość nowej właściwości
invideoPromotion.items[].id.recentlyUploadedByna identyfikator kanału dla tego kanału. -
Zasób
channelzawiera 3 nowe właściwości –brandingSettings.image.bannerTvLowImageUrl,brandingSettings.image.bannerTvMediumImageUrlibrandingSettings.image.bannerTvHighImageUrl– które określają adresy URL obrazów banerów wyświetlanych na stronach kanałów w aplikacjach telewizyjnych. -
Nowa właściwość
snippet.liveBroadcastContentw wynikach wyszukiwania wskazuje, czy w zasobie wideo lub na kanale znajdują się treści transmitowane na żywo. Prawidłowe wartości właściwości toupcoming,activeinone.- W przypadku zasobu
videowartośćupcomingoznacza, że film jest transmisją na żywo, która jeszcze się nie rozpoczęła, a wartośćactiveoznacza, że film jest trwającą transmisją na żywo. - W przypadku zasobu
channelwartośćupcomingoznacza, że kanał ma zaplanowaną transmisję, która jeszcze się nie rozpoczęła, a wartośćaciveoznacza, że kanał ma trwającą transmisję na żywo.
- W przypadku zasobu
-
W zasobie
watermarkwłaściwośćtargetChannelIdzostała zmieniona z obiektu na ciąg znaków. Zamiast zawierać właściwość podrzędną, która określa identyfikator kanału YouTube, do którego prowadzi link z obrazu znaku wodnego, właściwośćtargetChannelIdokreśla teraz tę wartość samodzielnie. W związku z tym usunięto właściwośćtargetChannelId.valuezasobu. -
Metoda
thumbnails.setobsługuje teraz parametronBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. -
Metoda
search.listobsługuje teraz parametreventType, który ogranicza wyszukiwanie tylko do aktywnych, nadchodzących lub zakończonych wydarzeń transmitowanych. -
Nowa właściwość
contentDetails.contentRating.mibacRatingokreśla ocenę, jaką film otrzymał od włoskiego Ministerstwa Kultury i Turystyki. -
Interfejs API obsługuje teraz te błędy:
Typ błędu Szczegóły błędu Opis badRequestinvalidImageMetoda thumbnails.setzwraca ten błąd, jeśli podane treści obrazu są nieprawidłowe.forbiddenvideoRatingDisabledMetoda videos.ratezwraca ten błąd, jeśli właściciel ocenianego filmu wyłączył możliwość oceniania tego filmu.
27 sierpnia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy zasób
watermarkidentyfikuje obraz wyświetlany podczas odtwarzania filmów z określonego kanału. Możesz też określić kanał docelowy, do którego będzie prowadzić link z obrazu, oraz szczegóły dotyczące czasu, które określają, kiedy znak wodny ma się pojawiać podczas odtwarzania filmów i jak długo ma być widoczny.Metoda
watermarks.setprzesyła i ustawia obraz znaku wodnego kanału. Metodawatermarks.unsetusuwa obraz znaku wodnego kanału.Dokumentacja błędów zawiera opisy komunikatów o błędach, które interfejs API obsługuje w przypadku metod
watermarks.setiwatermarks.unset. -
Nowa właściwość
statistics.hiddenSubscriberCountzasobuchannelzawiera wartość logiczną wskazującą, czy liczba subskrybentów kanału jest ukryta. Wartość właściwości tofalse, jeśli liczba subskrybentów kanału jest widoczna publicznie. -
Metoda
playlists.listobsługuje teraz parametryonBehalfOfContentOwnerionBehalfOfContentOwnerChannel. Oba parametry są już obsługiwane w przypadku kilku innych metod. -
Metoda
videos.listobsługuje teraz parametrregionCode, który określa region treści, dla którego należy pobrać wykres. Tego parametru można używać tylko w połączeniu z parametremchart. Wartość parametru to kod kraju w formacie ISO 3166-1 alpha-2. -
W
error documentationopisano ten nowy typowy błąd żądania, który może wystąpić w przypadku wielu metod interfejsu API:Typ błędu Szczegóły błędu Opis forbiddeninsufficientPermissionsZakresy powiązane z tokenem OAuth 2.0 podanym w żądaniu są niewystarczające do uzyskania dostępu do żądanych danych.
15 sierpnia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Obiekt
invideoPromotionzasobuchannelma te nowe i zaktualizowane właściwości:-
Interfejs API umożliwia teraz określenie witryny jako promowanego produktu. Aby to zrobić, ustaw wartość właściwości
invideoPromotion.items[].id.typenawebsitei użyj nowej właściwościinvideoPromotion.items[].id.websiteUrl, aby określić adres URL. Użyj też nowej właściwościinvideoPromotion.items[].customMessage, aby zdefiniować niestandardowy komunikat, który będzie wyświetlany w przypadku promocji.Linki mogą prowadzić do powiązanych stron, witryn sprzedawców lub serwisów społecznościowych. Więcej informacji o włączaniu linków do treści znajdziesz w instrukcjach Centrum pomocy YouTube dotyczących powiązanych witryn i witryn sprzedawców.
Dodając linki promocyjne, zgadzasz się, że nie będą one używane do przekierowywania ruchu do nieautoryzowanych witryn i że będą zgodne z zasadami AdWords, zasadami dotyczącymi reklam w YouTube, wytycznymi dla społeczności YouTube i Warunkami korzystania z usługi YouTube.
-
Właściwości związane z ustawieniami czasu wyświetlania promowanych produktów podczas odtwarzania filmu zostały przekształcone:
-
Obiekt
invideoPromotion.timingzostał przeniesiony doinvideoPromotion.items[].timing. Ten obiekt umożliwia teraz dostosowywanie danych o czasie dla każdego promowanego produktu na liścieinvideoPromotion.items[]. -
Nowy obiekt
invideoPromotion.defaultTimingokreśla domyślne ustawienia czasu trwania promocji. Te ustawienia określają, kiedy promowany produkt będzie wyświetlany podczas odtwarzania jednego z filmów na Twoim kanale. Możesz zastąpić domyślny czas dla dowolnego promowanego produktu za pomocą obiektuinvideoPromotion.items[].timing. -
Nowa właściwość
invideoPromotion.items[].timing.durationMsokreśla czas wyświetlania promocji w milisekundach. ObiektinvideoPromotion.defaultTimingzawiera też poledurationMs, które określa domyślny czas wyświetlania promowanego produktu.
-
-
Właściwości
invideoPromotion.items[].typeiinvideoPromotion.items[].videoIdzostały przeniesione do obiektuinvideoPromotion.items[].id.
-
-
Metoda
subscriptions.listobsługuje teraz parametryonBehalfOfContentOwnerionBehalfOfContentOwnerChannel. Oba parametry są już obsługiwane w przypadku kilku innych metod. -
W odpowiedzi interfejsu API na żądanie
thumbnails.setwartość właściwościkindzmieniła się zyoutube#thumbnailListResponsenayoutube#thumbnailSetResponse. -
Dodaliśmy przykłady kodu dla tych metod:
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)
Zwróć uwagę, że usunęliśmy też przykład w języku Python dla metody
playlistItems.insert, ponieważ funkcja, którą demonstrował, jest teraz obsługiwana przez metodęvideos.rate. -
error documentationopisuje ten nowy błąd kontekstu żądania, który może wystąpić w przypadku dowolnej metody interfejsu API obsługującej parametr żądaniamine:Typ błędu Szczegóły błędu Opis badRequestinvalidMineParametru minenie można używać w przypadku żądań, w których uwierzytelniony użytkownik jest partnerem YouTube. Usuń parametrmine, uwierzytelnij się jako użytkownik YouTube, usuwając parametronBehalfOfContentOwner, lub działaj jako jeden z kanałów partnera, podając parametronBehalfOfContentOwnerChannel, jeśli jest dostępny dla wywoływanej metody.
8 sierpnia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
W sekcji Wykorzystanie limitu w przewodniku Wprowadzenie do YouTube Data API wprowadziliśmy zmianę dotyczącą kosztu limitu przesyłania filmu. Został on zmniejszony z około 16 000 jednostek do około 1600 jednostek.
30 lipca 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
W zasobie
channelBannerwartość właściwościkindzmieniła się zyoutube#channelBannerInsertResponsenayoutube#channelBannerResource. Ten zasób jest zwracany w odpowiedzi na żądaniechannelBanners.insert. -
Nowa właściwość
brandingSettings.channel.profileColorzasobuchannelokreśla dominujący kolor, który uzupełnia treści na kanale. Wartość właściwości to znak funta (#) i 6-znakowy ciąg szesnastkowy, np.#2793e6. -
Interfejs API obsługuje teraz możliwość określenia, czy subskrypcja dotyczy wszystkich aktywności na kanale, czy tylko nowych przesłanych filmów. Nowa właściwość
contentDetails.activityTypezasobusubscriptionokreśla typy działań, o których subskrybent będzie otrzymywać powiadomienia. Prawidłowe wartości właściwości toalliuploads. -
Metoda
videos.listobsługuje nowe parametry pobierania listy najpopularniejszych filmów w YouTube:- Parametr
chartokreśla wykres, który chcesz pobrać. Obecnie jedyną obsługiwaną wartością jestmostPopular. Pamiętaj, że parametrchartjest parametrem filtra, co oznacza, że nie można go używać w tym samym żądaniu co inne parametry filtra (idimyRating). - Parametr
videoCategoryIdokreśla kategorię filmu, dla której ma zostać pobrana lista. Tego parametru można używać tylko w połączeniu z parametremchart. Domyślnie wykresy nie są ograniczone do określonej kategorii.
- Parametr
-
Nowa właściwość
topicDetails.relevantTopicIds[]zasobuvideozawiera listę identyfikatorów tematów Freebase, które są powiązane z filmem lub jego treścią. Tematy mogą być wspomniane w filmie lub mogą się w nim pojawiać. -
Nazwa właściwości
recordingDetails.location.elevationzasobuvideozostała zmieniona narecordingDetails.location.altitude, a nazwa właściwościfileDetails.recordingLocation.location.elevationzostała zmieniona nafileDetails.recordingLocation.location.altitude. -
Obiekt
videozasobucontentDetails.contentRatingokreśla oceny, jakie otrzymał film w ramach różnych systemów oceniania, w tym ocen MPAA, TVPG itp. W przypadku każdego systemu oceniania interfejs API obsługuje teraz wartość oceny, która wskazuje, że film nie został oceniony. Pamiętaj, że w przypadku ocen MPAA ocena „bez oceny” jest często używana do identyfikowania nieocenzurowanych wersji filmów, których ocenzurowana wersja otrzymała oficjalną ocenę. -
Nowa właściwość
contentDetails.contentRating.ytRatingzasobuvideoidentyfikuje treści z ograniczeniem wiekowym. Wartość właściwości toytAgeRestricted, jeśli YouTube uznał, że film zawiera treści nieodpowiednie dla użytkowników poniżej 18 roku życia. Jeśli właściwość jest nieobecna lub jej wartość jest pusta, oznacza to, że treść nie została oznaczona jako objęta ograniczeniem wiekowym. -
Parametr
mySubscribersmetodychannels.listzostał wycofany. Użyj metodysubscriptions.listi jej parametrumySubscribers, aby pobrać listę subskrybentów kanału uwierzytelnionego użytkownika. -
Metody
channelBanners.insert,channels.update,videos.getRatingivideos.rateobsługują teraz parametronBehalfOfContentOwner. Ten parametr wskazuje, że uwierzytelniony użytkownik działa w imieniu właściciela treści określonego w wartości parametru. -
Zaktualizowaliśmy dokumentację metody
channels.update, aby odzwierciedlić fakt, że można jej używać do aktualizowania obiektubrandingSettingszasobuchanneli jego właściwości podrzędnych. Dokumentacja zawiera też zaktualizowaną listę właściwości, które możesz ustawić dla obiektuinvideoPromotionzasobuchannel. -
Formularz
error documentationzawiera następujące nowe błędy:Typ błędu Szczegóły błędu Opis forbiddenaccountDelegationForbiddenTen błąd nie jest związany z konkretną metodą API. Oznacza to, że uwierzytelniony użytkownik nie ma uprawnień do działania w imieniu określonego konta Google. forbiddenauthenticatedUserAccountClosedTen błąd nie jest związany z konkretną metodą API. Oznacza to, że konto YouTube uwierzytelnionego użytkownika jest zamknięte. Jeśli użytkownik działa w imieniu innego konta Google, ten błąd oznacza, że to inne konto jest zamknięte. forbiddenauthenticatedUserAccountSuspendedTen błąd nie jest związany z konkretną metodą API. Oznacza to, że konto YouTube uwierzytelnionego użytkownika jest zawieszone. Jeśli użytkownik działa w imieniu innego konta Google, ten błąd oznacza, że to konto jest zawieszone. forbiddenauthenticatedUserNotChannelTen błąd nie jest związany z konkretną metodą API. Oznacza to, że serwer interfejsu API nie może zidentyfikować kanału powiązanego z żądaniem do interfejsu API. Jeśli żądanie jest autoryzowane i używa parametru onBehalfOfContentOwner, należy też ustawić parametronBehalfOfContentOwnerChannel.forbiddencmsUserAccountNotFoundTen błąd nie jest związany z konkretną metodą API. Użytkownik CMS nie może działać w imieniu określonego właściciela treści. notFoundcontentOwnerAccountNotFoundTen błąd nie jest związany z konkretną metodą API. Nie znaleziono podanego konta właściciela treści. badRequestinvalidPartTen błąd nie jest związany z konkretną metodą API. Parametr partw żądaniu określa części, których nie można zapisywać w tym samym czasie.badRequestvideoChartNotFoundMetoda videos.listzwraca ten błąd, gdy żądanie określa nieobsługiwaną lub niedostępną listę przebojów wideo.notFoundvideoNotFoundMetoda videos.updatezwraca ten błąd, aby wskazać, że nie można znaleźć filmu, który próbujesz zaktualizować. Sprawdź, czy wartość właściwościidw treści żądania jest prawidłowa.
10 czerwca 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowy parametr
forUsernamemetodychannels.listumożliwia pobieranie informacji o kanale przez podanie jego nazwy użytkownika w YouTube. -
Metoda
activities.listobsługuje teraz parametrregionCode, który nakazuje interfejsowi API zwracanie wyników związanych z określonym krajem. YouTube używa tej wartości, gdy poprzednia aktywność autoryzowanego użytkownika w YouTube nie dostarcza wystarczających informacji do wygenerowania kanału aktywności. -
Zasoby playlisty zawierają teraz właściwość
snippet.tags. Właściwość będzie zwracana tylko upoważnionym użytkownikom, którzy pobierają dane o swoich playlistach. Autoryzowani użytkownicy mogą też ustawiać tagi playlisty podczas wywoływania metodplaylists.insertlubplaylists.update. -
Parametr
onBehalfOfContentOwner, który był wcześniej obsługiwany w przypadku metodchannels.listisearch.list, jest teraz obsługiwany także w przypadku metodvideos.insert,videos.updateivideos.delete. Pamiętaj, że gdy ten parametr jest używany w wywołaniu metodyvideos.insert, żądanie musi też zawierać wartość nowego parametruonBehalfOfContentOwnerChannel, który określa kanał, do którego zostanie dodany film. Kanał musi być połączony z właścicielem treści, którego określa parametronBehalfOfContentOwner.Ten parametr wskazuje, że dane logowania autoryzacji żądania identyfikują użytkownika systemu CMS YouTube, który działa w imieniu właściciela treści określonego w wartości parametru. Konto CMS, za pomocą którego użytkownik się uwierzytelnia, musi być połączone z określonym właścicielem treści w YouTube.
Ten parametr jest przeznaczony dla partnerów treści, którzy są właścicielami wielu różnych kanałów YouTube i nimi zarządzają. Ten parametr umożliwia partnerom jednokrotne uwierzytelnienie i uzyskanie dostępu do wszystkich danych dotyczących filmów i kanałów bez konieczności podawania danych uwierzytelniających dla każdego kanału z osobna.
W przypadku tej wersji parametr umożliwia partnerowi treści wstawianie, aktualizowanie i usuwanie filmów na dowolnym kanale YouTube, którego jest właścicielem.
-
Formularz
error documentationzawiera następujące nowe błędy:Typ błędu Szczegóły błędu Opis forbiddeninsufficientCapabilitiesTen błąd nie jest związany z konkretną metodą API. Oznacza to, że użytkownik systemu CMS wywołujący interfejs API nie ma wystarczających uprawnień do wykonania żądanej operacji. Ten błąd jest związany z użyciem parametru onBehalfOfContentOwner, który jest obsługiwany w przypadku kilku metod interfejsu API.unauthorizedauthorizationRequiredMetoda activities.listzwraca ten błąd, gdy żądanie używa parametruhome, ale nie jest prawidłowo autoryzowane. -
W zasobie
channelsusunięto właściwośćinvideoPromotion.channelId, ponieważ identyfikator kanału jest już określony za pomocą właściwościidzasobu. -
Nowy przewodnik Praca z identyfikatorami kanałów wyjaśnia, jak interfejs API używa identyfikatorów kanałów. Ten przewodnik może być szczególnie przydatny dla deweloperów, którzy przechodzą z poprzedniej wersji interfejsu API i mają aplikacje, które wysyłają prośby o treści dla
defaultużytkownika lub opierają się na założeniu, że każdy kanał w YouTube ma unikalną nazwę użytkownika, co nie jest już prawdą.
22 maja 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowa metoda
channelBanners.insertumożliwia przesłanie obrazu banera, który można następnie ustawić jako obraz banera kanału za pomocą nowej właściwościbrandingSettings.image.bannerExternalUrlzasobuchannel. -
Zaktualizowaliśmy dokumentację metody
channels.update, aby zawierała listę właściwości, które można modyfikować podczas wywoływania tej metody. -
W dokumentacji zasobu
videonie ma już wartościunspecifiedjako prawidłowej wartości właściwościsuggestions.processingErrors[],suggestions.processingHints[],suggestions.processingWarnings[]isuggestions.editorSuggestions[]. -
Parametr
maxResultsmetodyvideos.listma teraz wartość domyślną5. -
W sekcji
error documentationsą teraz wymienione błędy dotyczące metodchannelBanners.insertisubscriptions.list. Zawiera też kilka nowych błędów dotyczących metodychannels.update.
14 maja 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Na stronach samodzielnych znajdują się teraz przykłady kodu w językach Java, .NET, PHP i Ruby.
-
Strona z przykładami kodu w języku Python zawiera teraz przykłady dodawania subskrypcji, tworzenia playlisty i aktualizowania filmu.
10 maja 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
YouTube nie identyfikuje już eksperymentalnych funkcji i usług interfejsu API. Zamiast tego udostępniamy teraz listę interfejsów API YouTube, które podlegają zasadom wycofywania.
8 maja 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zasoby kanału obsługują teraz obiekt
inVideoPromotion, który zawiera informacje o kampanii promocyjnej powiązanej z kanałem. Kanał może używać kampanii promocyjnej In-Video, aby wyświetlać miniatury promowanego filmu w odtwarzaczu podczas odtwarzania filmów z kanału.Możesz pobrać te dane, uwzględniając
invideoPromotionw wartości parametrupartw żądaniuchannels.list. -
Nowa metoda
channels.updateumożliwia aktualizowanie danych kampanii promocyjnej In-Video na kanale. Pamiętaj, że ta metoda obsługuje tylko aktualizacje częściinvideoPromotionzasobuchanneli nie obsługuje jeszcze aktualizacji innych części tego zasobu.
2 maja 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Zasoby kanału obsługują teraz właściwość
status.isLinked, która wskazuje, czy dane kanału identyfikują użytkownika, który jest już połączony z nazwą użytkownika YouTube lub kontem Google+. Użytkownik, który ma jeden z tych linków, ma już publiczną tożsamość w YouTube, która jest wymagana w przypadku wielu działań, takich jak przesyłanie filmów. -
Zasoby subskrypcji obsługują teraz część
subscriberSnippet. Ten obiekt zawiera dane fragmentu dotyczące kanału subskrybenta. -
Interfejs API obsługuje teraz metodę
videos.getRating, która pobiera oceny przyznane przez uwierzytelnionego użytkownika liście co najmniej 1 filmu. -
Nowy parametr
myRatingmetodyvideos.listumożliwia pobranie listy filmów, które uwierzytelniony użytkownik ocenił jakolikelubdislike.Parametry
myRatingiidsą teraz uznawane za parametry filtra, co oznacza, że żądanie do interfejsu API musi zawierać dokładnie jeden z tych parametrów. (Wcześniej parametridbył wymagany w przypadku tej metody).Metoda zwraca błąd
forbiddenw przypadku żądań, które próbują pobrać informacje o ocenie filmu, ale nie mają do tego odpowiednich uprawnień. -
Wraz z wprowadzeniem parametru
myRatingzaktualizowaliśmy też metodęvideos.list, aby obsługiwała stronicowanie. Pamiętaj jednak, że parametry stronicowania są obsługiwane tylko w przypadku żądań korzystających z parametrumyRating. (Parametry i informacje dotyczące stronicowania nie są obsługiwane w przypadku żądań, które używają parametruid).-
Parametr
maxResultsokreśla maksymalną liczbę filmów, które interfejs API może zwrócić w zestawie wyników, a parametrpageTokenidentyfikuje konkretną stronę w zestawie wyników, którą chcesz pobrać. -
Zasób
youtube#videoListResponse, który jest zwracany w odpowiedzi na żądanievideos.list, zawiera teraz obiektpageInfo, który zawiera szczegóły takie jak łączna liczba wyników i liczba wyników uwzględnionych w bieżącym zestawie wyników. Zasóbyoutube#videoListResponsemoże też zawierać właściwościnextPageTokeniprevPageToken, z których każda zawiera token, który można wykorzystać do pobrania konkretnej strony w zbiorze wyników.
-
-
Metoda
videos.insertobsługuje te nowe parametry:autoLevels– ustaw wartość tego parametru natrue, aby poinstruować YouTube, że ma automatycznie poprawić oświetlenie i kolor filmu.stabilize– ustaw wartość tego parametru natrue, aby poinstruować YouTube, że ma dostosować film, usuwając drgania spowodowane ruchami kamery.
-
Właściwość
channelTitlezostała dodana dosnippetw przypadku tych zasobów:playlistItem– właściwość określa nazwę kanału, który dodał element do playlisty.playlist– właściwość określa nazwę kanału, który utworzył playlistę.subscription– właściwość określa nazwę subskrybowanego kanału.
-
Dodaliśmy przykłady kodu dla tych metod:
activities.insert(Ruby)playlistItems.list(.NET)search.list(.NET)subscriptions.insert(Java, Ruby)videos.insert(.NET, Ruby)
-
Nowy parametr
mySubscribersmetodysubscriptions.listumożliwia pobranie listy subskrybentów aktualnie uwierzytelnionego użytkownika. Tego parametru można używać tylko w odpowiednio autoryzowanym żądaniu.Uwaga: ta funkcja ma zastąpić parametr
mySubscribers, który jest obecnie obsługiwany w przypadku metodychannels.list. Ten parametr zostanie wycofany. -
W zasobie
videowartość właściwościunspecifiednie jest już możliwą wartością żadnej z tych właściwości: -
Żądania do interfejsu API, które zawierają nieoczekiwany parametr, zwracają teraz błąd
badRequest, a zgłoszona przyczyna błędu tounexpectedParameter. -
Zaktualizowaliśmy błąd, który metoda
playlistItems.insertzwraca, gdy playlista zawiera już maksymalną dozwoloną liczbę elementów. Błąd jest teraz zgłaszany jako błądforbidden, a jego przyczyna toplaylistContainsMaximumNumberOfVideos.
19 kwietnia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowa metoda
videos.rateumożliwia użytkownikowi ustawienie ocenylikelubdislikefilmu albo usunięcie oceny filmu.Zaktualizowaliśmy też dokumentację błędów, aby zawierała listę błędów, które interfejs API może zwracać w odpowiedzi na wywołanie metody
videos.rate. -
W dokumentacji interfejsu API miniatury są teraz identyfikowane jako osobny zasób, a nowa metoda
thumbnails.setumożliwia przesyłanie niestandardowej miniatury filmu do YouTube i ustawianie jej dla filmu.Zaktualizowaliśmy też dokumentację błędów, aby zawierała listę błędów, które interfejs API może zwracać w odpowiedzi na wywołanie metody
thumbnails.set.Pamiętaj, że ta zmiana nie ma wpływu na istniejące zasoby, które zwracają miniatury. Miniatury są zwracane w tych zasobach w taki sam sposób jak wcześniej, ale w dokumentacji podano teraz nazwy różnych rozmiarów miniatur, które mogą być zwracane przez interfejs API.
-
Nowa część zasobu
channelbrandingSettingsokreśla ustawienia, tekst i obrazy na stronie kanału i stronach odtwarzania filmów. -
Zasób
playlistItemzawiera te nowe właściwości:-
Nowy obiekt
statuszawiera informacje o stanie elementu playlisty, a właściwośćstatus.privacyStatusokreśla stan prywatności elementu playlisty.
-
-
Zasób
videozawiera te nowe właściwości:-
Właściwość
status.publicStatsViewableokreśla, czy rozszerzone statystyki filmu na stronie odtwarzania filmu są widoczne publicznie. Domyślnie te statystyki są widoczne, a statystyki takie jak liczba wyświetleń i oceny filmu nadal będą widoczne publicznie, nawet jeśli wartość tej właściwości jest ustawiona nafalse. Wartość tej właściwości możesz ustawić podczas wywoływania metodyvideos.insertlubvideos.update. -
Obiekt
contentDetails.contentRatingzawiera oceny, jakie otrzymał film w ramach różnych systemów ocen. Poniższa lista zawiera obsługiwane systemy ocen i linki do właściwości powiązanych z poszczególnymi systemami ocen. Definicje właściwości określają obsługiwane wartości oceny dla każdego systemu.Kraj System ocen Właściwość United StatesMotion Picture Association of America (MPAA) contentDetails.contentRating.mpaaRatingUnited StatesWytyczne dla rodziców dotyczące nadzorowanego oglądania telewizji contentDetails.contentRating.tvpgRatingAustraliaAustralian Classification Board (ACB) contentDetails.contentRating.acbRatingBrazilDepartamento de Justiça, Classificação, Qualificação e Títulos contentDetails.contentRating.djctqRatingCanadaCanadian Home Video Rating System (CHVRS) contentDetails.contentRating.chvrsRatingFranceCentre national du cinéma et de l'image animée (francuskie Ministerstwo Kultury) contentDetails.contentRating.fmocRatingGermanyFreiwillige Selbstkontrolle der Filmwirtschaft (FSK) contentDetails.contentRating.fskRatingGreat BritainBritish Board of Film Classification (BBFC) contentDetails.contentRating.bbfcRatingIndiaCentral Board of Film Certification (CBFC) contentDetails.contentRating.cbfcRatingJapan映倫管理委員会 (EIRIN) contentDetails.contentRating.eirinRatingKorea영상물등급위원회 (KMRB) contentDetails.contentRating.kmrbRatingMexicoGeneralna Dyrekcja ds. Radia, Telewizji i Kinematografii (RTC) contentDetails.contentRating.rtcRatingNew ZealandOffice of Film and Literature Classification contentDetails.contentRating.oflcRatingRussiaNational Film Registry of the Russian Federation contentDetails.contentRating.russiaRatingSpainInstituto de la Cinematografía y de las Artes Audiovisuales (ICAA)contentDetails.contentRating.icaaRating
-
-
Zaktualizowaliśmy dokumentację metody
playlistItems.update, aby odzwierciedlała fakt, że właściwośćsnippet.resourceIdmusi być określona w zasobie wysłanym jako treść żądania. -
Metoda
search.listobsługuje teraz te funkcje:-
Nowy parametr
forMineogranicza wyszukiwanie tylko do filmów uwierzytelnionego użytkownika. -
Parametr
orderobsługuje teraz możliwość sortowania wyników alfabetycznie według tytułu (order=title) lub według liczby filmów w kolejności malejącej (order=videoCount). -
Nowy parametr
safeSearchokreśla, czy wyniki wyszukiwania mają zawierać treści podlegające ograniczeniom.
-
-
Metoda
videos.insertobsługuje kilka nowych błędów, które są wymienione w tabeli poniżej:Typ błędu Szczegóły błędu Opis badRequestinvalidCategoryIdWłaściwość snippet.categoryIdokreśla nieprawidłowy identyfikator kategorii. Aby pobrać obsługiwane kategorie, użyj metodyvideoCategories.list.badRequestinvalidRecordingDetailsPole metadatazawiera nieprawidłowe szczegóły nagrania.badRequestinvalidVideoGameRatingMetadane żądania określają nieprawidłową ocenę gry wideo. badRequestinvalidVideoMetadataMetadane żądania są nieprawidłowe. -
Parametr
onBehalfOfContentOwnerzostał usunięty z listy obsługiwanych parametrów metodvideos.updateivideos.delete.
12 marca 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Właściwość
channelTitlezostała dodana dosnippetw przypadku tych zasobów: -
Metoda
search.listobsługuje te nowe parametry:-
Parametr
channelTypeumożliwia ograniczenie wyszukiwania kanałów do wszystkich kanałów lub tylko programów. -
Parametr
videoTypepozwala ograniczyć wyszukiwanie filmów, aby pobrać wszystkie filmy lub tylko filmy albo tylko odcinki seriali.
-
-
Definicja części
recordingDetailszasobuvideozostała zaktualizowana. Zawiera teraz informację, że obiekt będzie zwracany w przypadku filmu tylko wtedy, gdy ustawione są dane geolokalizacyjne filmu lub czas nagrania. -
Metoda
playlistItems.updatezwraca teraz błądinvalidSnippet, który jest zwracany, jeśli żądanie do interfejsu API nie określa prawidłowego fragmentu kodu. -
Kilka metod interfejsu API obsługuje nowe parametry przeznaczone wyłącznie dla partnerów YouTube. Partnerzy treści w YouTube to studia filmowe i telewizyjne, wytwórnie płytowe oraz inni twórcy, którzy udostępniają swoje treści w YouTube.
-
Parametr
onBehalfOfContentOwnerwskazuje, że dane logowania autoryzacji żądania identyfikują użytkownika systemu CMS YouTube, który działa w imieniu właściciela treści określonego w wartości parametru. Konto CMS, za pomocą którego użytkownik się uwierzytelnia, musi być połączone z określonym właścicielem treści w YouTube.Ten parametr jest przeznaczony dla partnerów treści, którzy są właścicielami wielu różnych kanałów YouTube i nimi zarządzają. Ten parametr umożliwia partnerom jednokrotne uwierzytelnienie i uzyskanie dostępu do wszystkich danych dotyczących filmów i kanałów bez konieczności podawania danych uwierzytelniających dla każdego kanału z osobna.
Ten parametr jest obsługiwany przez metody
channels.list,search.list,videos.delete,videos.listivideos.update. -
Parametr
managedByMe, który jest obsługiwany przez metodęchannels.list, nakazuje interfejsowi API zwrócenie wszystkich kanałów należących do właściciela treści określonego przez parametronBehalfOfContentOwner. -
Parametr
forContentOwner, który jest obsługiwany przez metodęsearch.list, nakazuje interfejsowi API ograniczenie wyników wyszukiwania do zasobów należących do właściciela treści określonego przez parametronBehalfOfContentOwner.
-
25 lutego 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Interfejs API obsługuje kilka nowych części i właściwości zasobów
video:-
Nowe sekcje
fileDetails,processingDetailsisuggestionszawierają informacje dla właścicieli filmów o przesłanych przez nich materiałach. Te dane są bardzo przydatne w aplikacjach, które umożliwiają przesyłanie filmów. Obejmują one:- stan i postęp przetwarzania,
- błędy lub inne problemy napotkane podczas przetwarzania filmu;
- dostępność miniatur,
- sugestie dotyczące poprawy jakości filmu lub metadanych;
- szczegóły oryginalnego pliku przesłanego do YouTube,
Wszystkie te części może pobrać tylko właściciel filmu. Lista poniżej zawiera krótki opis nowych części, a w
videodokumentacji zasobów znajdziesz definicje wszystkich właściwości, które zawiera każda z nich.-
Obiekt
fileDetailszawiera informacje o pliku wideo przesłanym do YouTube, w tym rozdzielczość pliku, czas trwania, kodeki audio i wideo, szybkość transmisji strumieniowej i inne dane. -
Obiekt
processingProgresszawiera informacje o postępach YouTube w przetwarzaniu przesłanego pliku wideo. Właściwości obiektu określają bieżący stan przetwarzania i szacują czas pozostały do zakończenia przetwarzania filmu przez YouTube. W tej części znajdziesz też informację, czy dla filmu są dostępne różne typy danych lub treści, takie jak szczegóły pliku lub miniatury.Ten obiekt jest przeznaczony do odpytywania, aby osoba przesyłająca film mogła śledzić postępy YouTube w przetwarzaniu przesłanego pliku wideo.
-
Obiekt
suggestionszawiera sugestie, które wskazują możliwości poprawy jakości filmu lub metadanych przesłanego filmu.
-
Część
contentDetailszawiera 4 nowe właściwości. Te usługi można pobierać za pomocą nieuwierzytelnionych żądań.dimension– wskazuje, czy film jest dostępny w 2D czy 3D.definition– określa, czy film jest dostępny w standardowej czy wysokiej rozdzielczości.caption– wskazuje, czy napisy są dostępne w filmie.licensedContent– informuje, czy film zawiera treści, do których prawa zgłosił partner treści YouTube.
-
Część
statuszawiera 2 nowe właściwości. Właściciele filmów mogą ustawiać wartości obu właściwości podczas wstawiania lub aktualizowania filmu. Te właściwości można też pobierać za pomocą nieuwierzytelnionych żądań.embeddable– określa, czy film może być umieszczany w innych witrynach.license– określa licencję filmu. Prawidłowe wartości tocreativeCommoniyoutube.
-
-
Definicja parametru
partzostała zaktualizowana w przypadku metodvideos.list,videos.insertivideos.update, aby uwzględniać nowo dodane części opisane powyżej, a także częśćrecordingDetails, która została przypadkowo pominięta. -
Nowa właściwość
contentDetails.googlePlusUserIdzasobuchannelokreśla identyfikator profilu Google+ powiązanego z kanałem. Tej wartości można użyć do wygenerowania linku do profilu Google+. -
Każdy obiekt miniatury zawiera teraz szerokość i wysokość obrazu. Obecnie miniatury są zwracane w zasobach
activity,channel,playlist,playlistItem,search result,subscriptionivideo. -
playlistItems.listobsługuje teraz parametrvideoId, którego można używać w połączeniu z parametremplaylistId, aby pobierać tylko element playlisty reprezentujący określony film.Jeśli film, który identyfikuje parametr, nie zostanie znaleziony na playliście, interfejs API zwróci
notFoundbłąd. -
W dokumentacji błędów opisano nowy błąd
forbidden, który oznacza, że żądanie nie jest odpowiednio autoryzowane do wykonania żądanego działania. -
Właściwość
snippet.channelIdzasobuchannelzostała usunięta. Właściwośćidzasobu ma tę samą wartość.
30 stycznia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Nowa strona błędów zawiera listę błędów, które może zwrócić interfejs API. Strona zawiera ogólne błędy, które mogą wystąpić w przypadku wielu różnych metod interfejsu API, a także błędy specyficzne dla poszczególnych metod.
16 stycznia 2013 r.
Ta aktualizacja zawiera następujące zmiany:
-
Przykłady kodu są teraz dostępne w przypadku metod i języków wymienionych na liście poniżej:
activities.insert– JavaplaylistItems.insert– PythonplaylistItems.list– Java, JavaScript, PHP, Python, Rubyplaylists.insert– Java, JavaScript, Pythonsearch.list– Java, JavaScript, Python, Rubyvideos.insert– Java
-
activityZasób może teraz zgłaszaćchannelItemdziałanie, które występuje, gdy YouTube dodaje film do automatycznie wygenerowanego kanału w YouTube. (Algorytm YouTube identyfikuje tematy, które cieszą się na naszej platformie dużą popularnością, i automatycznie tworzy dla nich kanały). -
Zaktualizowaliśmy te parametry
search.list:- Parametr
qnie jest już oznaczony jako filtr, co oznacza, że… - Parametr
relatedToVideonosi teraz nazwęrelatedToVideoId. - Parametr
publishedzostał zastąpiony 2 nowymi parametrami:publishedAfteripublishedBefore, które zostały opisane poniżej.
- Parametr
-
Metoda
search.listobsługuje te nowe parametry:Nazwa parametru Wartość Opis channelIdstringZwraca zasoby utworzone przez określony kanał. publishedAfterdatetimeZwraca zasoby utworzone po określonym czasie. publishedBeforedatetimeZwraca zasoby utworzone przed określonym czasem. regionCodestringZwraca zasoby dla określonego kraju. videoCategoryIdstringFiltruj wyniki wyszukiwania filmów, aby uwzględniać tylko filmy powiązane z określoną kategorią filmu. videoEmbeddablestringFiltruj wyniki wyszukiwania filmów, aby uwzględniać tylko te, które można odtworzyć w odtwarzaczu umieszczonym na stronie internetowej. Aby pobrać tylko filmy, które można umieścić na stronie, ustaw wartość parametru na true.videoSyndicatedstringFiltruj wyniki wyszukiwania filmów, aby uwzględniać tylko te, które można odtwarzać poza YouTube.com. Aby pobrać tylko filmy udostępniane na licencji, ustaw wartość parametru na true. -
Kilka zasobów interfejsu API obsługuje nowe właściwości. W tabeli poniżej znajdziesz zasoby i ich nowe właściwości:
Zasób Nazwa usługi Wartość Opis activitycontentDetails.playlistItem.playlistItemIdstringIdentyfikator elementu playlisty przypisany przez YouTube, który jednoznacznie identyfikuje element na playliście. activitycontentDetails.channelItemobjectObiekt zawierający informacje o zasobie dodanym do kanału. Ta właściwość jest obecna tylko wtedy, gdy element snippet.typema wartośćchannelItem.activitycontentDetails.channelItem.resourceIdobjectObiekt, który identyfikuje zasób dodany do kanału. Podobnie jak inne właściwości resourceIdzawiera ona właściwośćkind, która określa typ zasobu, np. film lub playlista. Zawiera też dokładnie jedną z kilku właściwości –videoId,playlistIditp. – która określa identyfikator jednoznacznie identyfikujący ten zasób.channelstatusobjectTen obiekt zawiera informacje o stanie prywatności kanału. channelstatus.privacyStatusstringStan prywatności kanału. Prawidłowe wartości to privateipublic.playlistcontentDetailsobjectTen obiekt zawiera metadane dotyczące treści playlisty. playlistcontentDetails.itemCountunsigned integerLiczba filmów na playliście. playlistplayerobjectTen obiekt zawiera informacje, które umożliwiają odtwarzanie playlisty w odtwarzaczu umieszczonym na stronie. playlistplayer.embedHtmlstringTag <iframe>, który umieszcza odtwarzacz wideo odtwarzający playlistę.videorecordingDetailsobjectTen obiekt zawiera informacje, które identyfikują lub opisują miejsce i czas nagrania filmu. videorecordingDetails.locationobjectTen obiekt zawiera informacje o geolokalizacji powiązane z filmem. videorecordingDetails.location.latitudedoubleSzerokość geograficzna w stopniach. videorecordingDetails.location.longitudedoubleDługość geograficzna w stopniach. videorecordingDetails.location.elevationdoubleWysokość nad Ziemią w metrach. videorecordingDetails.locationDescriptionstringTekstowy opis miejsca, w którym nagrano film. videorecordingDetails.recordingDatedatetimeData i godzina nagrania filmu. Wartość jest podana w formacie ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ). -
W dokumentacji kilku metod interfejsu API znajdują się teraz informacje o właściwościach, które muszą być określone w treści żądania lub które są aktualizowane na podstawie wartości w treści żądania. W tabeli poniżej znajdziesz listę tych metod oraz wymagane i modyfikowalne właściwości.
Uwaga: dokumentacja innych metod może już zawierać listę wymaganych i modyfikowalnych właściwości.
Metoda Właściwości activities.insertWłaściwości wymagane: snippet.description
snippet.descriptioncontentDetails.bulletin.resourceId
playlists.updateWłaściwości wymagane: id
playlistItems.updateWłaściwości wymagane: id
videos.updateWłaściwości wymagane: id
-
Interfejs API nie zgłasza już błędu
playlistAlreadyExists, jeśli spróbujesz utworzyć lub zaktualizować playlistę, która miałaby taki sam tytuł jak playlista, która już istnieje na tym samym kanale. -
Kilka metod interfejsu API obsługuje nowe typy błędów. W tabeli poniżej znajdziesz metodę i nowo obsługiwane błędy:
Metoda Typ błędu Szczegóły błędu Opis guideCategories.listnotFoundnotFoundNie można znaleźć kategorii przewodnika określonej przez parametr id. Aby pobrać listę prawidłowych wartości, użyj metody guideCategories.list.playlistItems.deleteforbiddenplaylistItemsNotAccessibleŻądanie nie jest odpowiednio autoryzowane do usunięcia określonego elementu playlisty. videoCategories.listnotFoundvideoCategoryNotFoundNie znaleziono kategorii filmu określonej przez parametr id. Aby pobrać listę prawidłowych wartości, użyj metody videoCategories.list.