Historia zmian

Ta strona zawiera listę zmian w interfejsie YouTube Data API (w wersji 3) oraz aktualizacje dokumentacji. Zasubskrybuj ten dziennik zmian. Subskrybuj

30 października 2024 r.

Interfejs API umożliwia teraz rozpoznawanie filmów, które zawierają realistyczne treści zmodyfikowane lub syntetyczne (A/S). Dowiedz się więcej o zasadach YouTube dotyczących treści związanych z A/S.

Przykłady treści dotyczących A/S to filmy, które:

  • Treści przedstawiają prawdziwą osobę, która mówi lub robi coś, czego w rzeczywistości nie powiedziała ani nie zrobiła
  • zmodyfikować materiał przedstawiający prawdziwe wydarzenie lub miejsce;
  • tworzy realistycznie wyglądającą scenę, która faktycznie nie miała miejsca.

Aby wskazać, czy film zawiera treści A/S, ustaw właściwość status.containsSyntheticMedia. Tę właściwość można ustawić podczas wywoływania metod videos.insert lub videos.update. Jeśli jest ustawiona, właściwość ta jest zwracana w zasobie video.

30 kwietnia 2024 r.

Uwaga: to jest ogłoszenie o wycofaniu tej usługi.

Ta aktualizacja zawiera następujące zmiany:

Interfejs API nie obsługuje już możliwości wstawiania ani pobierania dyskusji na kanale. Ta zmiana jest zgodna z funkcjami obsługiwanymi na stronie 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 metod captions.insert i captions.update został wycofany. 12 kwietnia 2024 r. YouTube przestanie obsługiwać parametr

W związku z tą zmianą deweloperzy muszą uwzględniać informacje o czasie podczas wstawiania lub aktualizowania ścieżek z napisami, w przeciwnym razie przesyłanie nie powiedzie się.

12 marca 2024 r.

Ta aktualizacja zawiera następujące zmiany:

Dokumentacja zasobu captions została zaktualizowana, aby zaznaczyć, że maksymalna dozwolona długość pola snippet.name to 150 znaków. Jeśli nazwa utworu 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 channel brandingSettings.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 nicku w YouTube.

9 listopada 2023 r.

Wszystkie odwołania do zasobu videoId w dokumencie Comments zostały usunięte, ponieważ zasób videoId nie jest zwracany za pomocą wywołania interfejsu API.

12 września 2023 r.

Uwaga: to jest ogłoszenie o wycofaniu.

Metoda comments.markAsSpam jest wycofana od kilku lat. Ta metoda nie jest już obsługiwana w YouTube i nie jest już obsługiwana przez interfejs API.

Do wszystkich dokumentów zawierających odwołania do metody comments.markAsSpam dodano powiadomienie o wycofaniu.

22 sierpnia 2023 r.

Metoda search.list obsługuje teraz parametr videoPaidProductPlacement. Ten parametr umożliwia filtrowanie wyników wyszukiwania, aby obejmowały tylko filmy, które twórca oznaczył jako objęte płatną promocją.

18 sierpnia 2023 r.

Zaktualizowaliśmy definicję zasobu liveStreamingDetails.concurrentViewers zasobu video, aby zaznaczyć, że liczba równoczesnych widzów zwracanych przez interfejs YouTube Data API może się różnić od liczby przetworzonych i pozbawionych spamu równoczesnych widzów dostępnych w Statystykach YouTube. Więcej informacji o danych transmisji na żywo znajdziesz w Centrum pomocy YouTube.

7 sierpnia 2023 r.

Zgodnie z oświadczeniem z 12 czerwca 2023 r. parametr relatedToVideoId metody search.list został wycofany. Ten parametr nie jest już obsługiwany, a odniesienia do niego zostały usunięte z dokumentacji interfejsu API.

28 czerwca 2023 r.

Metoda thumbnails.set obsługuje teraz błąd uploadRateLimitExceeded, który oznacza, że w ciągu ostatnich 24 godzin na kanał przesłano zbyt wiele miniatur i należy 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. YouTube przestanie obsługiwać ten parametr.

W tym momencie do dokumentacji metody search.list dodano powiadomienie o wycofaniu. Ten parametr zostanie całkowicie usunięty z dokumentacji search.list 7 sierpnia 2023 r. lub później.

przewodnika po implementacji interfejsu API usunęliśmy też przykład pokazujący, jak pobierać podobne filmy.

22 sierpnia 2022 r.

Poprawiono adnotacje typu pól video.statistics na „string” zamiast „unsigned long”.

5 sierpnia 2022 r.

Zmieniliśmy sposób generowania identyfikatorów napisów. W ramach tej zmiany przypisujemy nowe identyfikatory napisów do wszystkich ścieżek napisów. Ta zmiana może być niekompatybilną wsteczną zmianą w przypadku aplikacji, które przechowują wartości caption_id, ale nie wpłynie 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żki napisów. Jednak 1 grudnia 2022 r. lub później YouTube przestanie obsługiwać stare identyfikatory ścieżek napisów. Wtedy wywołanie dowolnej z tych metod interfejsu API za pomocą starego identyfikatora ścieżki z napisami spowoduje błąd captionNotFound.

Aby przygotować się do tej zmiany, do 1 grudnia 2022 r. musisz całkowicie zastąpić wszystkie zapisane dane ścieżki z napisami. Oznacza to, że w przypadku każdego filmu, dla którego przechowujesz dane ścieżki z napisami, musisz usunąć obecnie zapisane dane, a następnie wywołać metodę captions.list, aby pobrać bieżący zestaw ścieżek napisów dla filmu i zapisać dane w odpowiedzi interfejsu API w zwykły sposób.

12 lipca 2022 r.

Warunki korzystania z usług interfejsu API YouTube zostały zaktualizowane. Więcej informacji znajdziesz w historii zmian Warunków korzystania z usług YouTube API.

27 kwietnia 2022 r.

Opis metody videos.insert został zaktualizowany, aby uwzględnić fakt, że maksymalny rozmiar przesyłanych filmów został zwiększony z 128 GB do 256 GB.

8 kwietnia 2022 r.

Zaktualizowaliśmy definicje parametrów myRecentSubscribers i mySubscribers metody subscriptions.list, aby zaznaczyć, że maksymalna liczba subskrybentów zwracana przez interfejs API może być ograniczona. Ta zmiana jest poprawką w dokumentacji, a nie zmianą w działaniu interfejsu API.

15 grudnia 2021 r.

Zgodnie z ogłoszeniem z 18 listopada 2021 r., w związku ze zmianami dotyczącymi ustawiania liczby negatywnych ocen 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 dotyczącymi liczby negatywnych ocen na całej platformie YouTube właściwość statistics.dislikeCount zasobu video stanie się prywatna 13 grudnia 2021 r. Oznacza to, że ta właściwość będzie uwzględniana w odpowiedzi interfejsu API z punktu końcowego videos.list tylko wtedy, gdy żądanie 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ą takiej liczby w kliencie API, mogą poprosić o dodanie do listy dozwolonych wyjątków. Aby ubiegać się o wyjątek, musisz wypełnić ten formularz zgłoszeniowy.

Więcej informacji na temat tej zmiany znajdziesz na oficjalnym blogu YouTube.

2 lipca 2021 r.

Uwaga: to jest ogłoszenie o wycofaniu tej funkcji.

Punkt końcowy commentThreads.update został wycofany i nie jest już obsługiwany. Ten punkt końcowy dubluje funkcje dostępne w ramach innych punktów końcowych API. Zamiast tego możesz wywołać comments.update

a jeśli Twój kod wymaga zasobu commentThreads, wykonaj dodatkowe wywołanie do metody commentThreads.list.

1 lipca 2021 r.

Wszyscy deweloperzy korzystający z usług interfejsu API YouTube muszą przejść kontrolę zgodności interfejsu API, aby uzyskać więcej niż domyślny limit 10 tys. jednostek. Do tej pory zarówno proces audytu zgodności, jak i wnioski o dodatkowe przydzielenia jednostek przydziału danych były przeprowadzane przez deweloperów, którzy wypełnili i przesłali formularz dotyczący usług interfejsu API YouTube – audytu i zwiększenia limitów.

Aby wyjaśnić te procesy i lepiej odpowiadać na potrzeby deweloperów korzystających z naszych usług interfejsu API, dodajemy 3 nowe formularze i przewodnik po ich wypełnianiu:

  • Formularz próśb deweloperów objętych kontrolą: deweloperzy, którzy przeszli już audyt zgodności interfejsu API, mogą wypełnić i przesłać ten krótszy formularz, aby poprosić o zwiększenie limitu.
  • Formularz odwołania: deweloperzy, których projekty interfejsu API nie przeszły kontroli zgodności (lub nie otrzymały prośby o zwiększenie liczby jednostek przydziału), mogą wypełnić i przesłać ten formularz.
  • Zmiana formularza kontrolnego: deweloperzy lub dowolny podmiot obsługujący klienta interfejsu API w imieniu dewelopera, w przypadku którego nastąpi zmiana kontroli (np. w wyniku zakupu lub sprzedaży akcji, fuzji przedsiębiorstw bądź innego rodzaju transakcji firmowej) związanych z projektem API, musi wypełnić i przesłać ten formularz. Umożliwia to zespołowi interfejsu API YouTube aktualizowanie naszych rekordów, sprawdzanie zgodności przypadku użycia nowego projektu interfejsu API i weryfikowanie bieżącego przydziału puli na potrzeby dewelopera.

Każdy nowy formularz pozwoli nam poznać Twoje oczekiwania dotyczące korzystania z interfejsu API YouTube i ułatwi nam udzielenie Ci pomocy.

Więcej informacji znajdziesz w naszym nowym przewodniku po audytach zgodności interfejsów API.

12 maja 2021 r.

Uwaga: to jest ogłoszenie o wycofaniu tej usługi.

Ta aktualizacja obejmuje te zmiany w interfejsie API:

  • Właściwość contentDetails.relatedPlaylists.favorites zasobu channel została wycofana. Funkcja ulubionych filmów została wycofana już kilka lat temu, co zostało odnotowane w historii zmian z 28 kwietnia 2016 roku.

    Przed tą aktualizacją interfejs API nadal tworzył nową playlistę, jeśli klient interfejsu API próbował dodać film do nieistniejącej playlisty ulubionych. W przyszłości w takim przypadku playlista nie będzie tworzona, a interfejs API zwróci błąd. Zgodnie z wcześniejszymi ogłoszeniami wycofujemy również próby modyfikowania ulubionych playlist poprzez dodawanie, modyfikowanie lub usuwanie elementów, ponieważ w każdej chwili mogą one zacząć zwracać błędy.

  • Te właściwości zasobów channel zostały wycofane: Te właściwości nie są już obsługiwane w interfejsie YouTube Studio ani w YouTube. W rezultacie nie są one już obsługiwane przez interfejs API.

    • brandingSettings.channel.defaultTab
    • brandingSettings.channel.featuredChannelsTitle
    • brandingSettings.channel.featuredChannelsUrls[]
    • brandingSettings.channel.profileColor
    • brandingSettings.channel.showBrowseView
    • brandingSettings.channel.showRelatedChannels

    Wszystkie właściwości zostały usunięte z reprezentacji zasobu channel, a ich definicje zostały usunięte z listy właściwości zasobu. Ponadto z dokumentacji dotyczącej poszczególnych metod usunięto błędy związane z tymi właściwościami.

  • Te właściwości zasobów channelSection zostały wycofane: Te właściwości nie są już obsługiwane w interfejsie YouTube Studio ani w YouTube. W rezultacie nie są one już obsługiwane przez interfejs API.

    • snippet.style
    • snippet.defaultLanguage
    • snippet.localized.title
    • localizations
    • localizations.(key)
    • localizations.(key).title
    • targeting
    • targeting.languages[]
    • targeting.regions[]
    • targeting.countries[]

    W związku z tą zmianą parametr hl metody channelSection.list został wycofany, ponieważ obsługiwane przez nią funkcje nie są obsługiwane.

    Wszystkie właściwości zostały usunięte z reprezentacji zasobu channelSection, a ich definicje – z listy właściwości zasobu. Ponadto z dokumentacji dotyczącej poszczególnych metod usunięto błędy związane z tymi właściwościami.

  • W przypadku właściwości snippet.type zasobu channelSection poniższe wartości zostały wycofane. Te wartości nie są już obsługiwane na stronach kanałów w YouTube, dlatego nie są też obsługiwane przez interfejs API.

    • likedPlaylists
    • likes
    • postedPlaylists
    • postedVideos
    • recentActivity
    • recentPosts
  • Właściwość snippet.tags[] zasobu playlist została wycofana. Ta usługa nie jest już obsługiwana w YouTube, dlatego nie można jej używać za pomocą interfejsu API.

9 lutego 2021 r.

Zasób playlistItem obsługuje 2 nowe właściwości:

28 stycznia 2021 r.

Ta aktualizacja zawiera następujące zmiany:

  • Metody playlistItems.delete, playlistItems.insert, playlistItems.list, playlistItems.update, playlists.delete, playlists.list i playlists.update obsługują nowy błąd playlistOperationUnsupported. Ten błąd występuje, gdy żądanie próbuje wykonać operację niedozwoloną w przypadku danej playlisty. Użytkownik nie może na przykład usunąć filmu z playlisty przesłanych filmów ani samej playlisty.

    W każdym przypadku ten błąd zwraca kod odpowiedzi HTTP 400 (nieprawidłowy żądanie).

  • Błędy watchHistoryNotAccessiblewatchLaterNotAccessible metody playlistItems.list zostały usunięte z dokumentacji. Chociaż historia oglądania użytkowników i listy Do obejrzenia nie są dostępne za pomocą interfejsu API, te błędy nie są przez niego zwracane.

15 października 2020 r.

Do zasad dla deweloperów dodaliśmy 2 nowe sekcje:

  • Nowa sekcja III.E.4.i zawiera dodatkowe informacje o danych zbieranych i przesyłanych przez wbudowany odtwarzacz YouTube. Użytkownik jest odpowiedzialny za wszelkie dane użytkownika, które są wysyłane do nas za pomocą osadzonego odtwarzacza YouTube, zanim użytkownik wejdzie w interakcję z odtwarzaczem, aby wyrazić zamiar odtworzenia treści. Możesz ograniczyć dane udostępniane YouTube, zanim użytkownik wejdzie w interakcję z odtwarzaczem. Aby to zrobić, wyłącz autoodtwarzanie.
  • Nowy rozdział III.E.4.j dotyczy sprawdzania, czy treści są przeznaczone dla dzieci (MFK), zanim zostaną umieszczone w witrynach i aplikacjach. Ponosisz odpowiedzialność za to, by wiedzieć, kiedy filmy umieszczane w Twoim kliencie API są przeznaczone dla dzieci, i jak odpowiednio traktować dane zbierane z odtwarzacza umieszczonego na stronie. Dlatego przed umieszczeniem treści w dowolnym umieszczonym odtwarzaczu YouTube za pomocą klienta API należy sprawdzić stan treści za pomocą usługi YouTube Data API.

Nowy przewodnik Znajdowanie stanu „przeznaczony dla dzieci” filmu wyjaśnia, jak sprawdzić stan „przeznaczony dla dzieci” filmu za pomocą usługi YouTube Data API.

W związku z tymi zmianami do dokumentacji dotyczącej parametrów osadzonego odtwarzacza dodaliśmy przypomnienie, że jeśli włączysz autoodtwarzanie, odtwarzanie będzie odbywać się bez interakcji użytkownika z odtwarzaczem. Dlatego zbieranie i udostępnianie danych o odtwarzaniu będzie odbywać się po wczytaniu strony.

8 października 2020 r.

Ta aktualizacja obejmuje 3 drobne zmiany dotyczące zasobu channel:

  • Obiekt snippet.thumbnails, który identyfikuje miniatury kanału, może być pusty w przypadku nowo utworzonych kanałów i może zająć do 1 dnia.
  • Właściwość statistics.videoCount odzwierciedla liczbę tylko publicznych filmów na kanale, nawet dla właścicieli. Takie działanie jest zgodne z liczbami wyświetleń widocznymi na stronie YouTube.
  • Słowa kluczowe kanału rozpoznawane we właściwości brandingSettings.channel.keywords mogą zostać obcięte, jeśli przekraczają maksymalną dozwoloną długość 500 znaków lub zawierają cudzysłowy bez zmiany znaczenia ("). Pamiętaj, że limit 500 znaków nie stanowi limitu pojedynczych słów kluczowych, tylko ograniczenia łącznej długości wszystkich słów kluczowych. Takie zachowanie jest zgodne z zasadami w YouTube.

9 września 2020 r.

Uwaga: to jest ogłoszenie o wycofaniu tej usługi.

Ta aktualizacja obejmuje poniższe zmiany w interfejsie API. Wszystkie zmiany wejdą w życie 9 września 2020 r. lub później, w dniu tego ogłoszenia. Z tego względu 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 zostaną natychmiast wycofane i przestaną działać w dniu opublikowania tego ogłoszenia lub po tej dacie:
    • Właściwości zasobu channel:
      • Właściwość statistics.commentCount
      • Obiekt brandingSettings.image i wszystkie jego właściwości podrzędne
      • Lista brandingSettings.hints i wszystkie jej usługi podrzędne
    • Parametr filtra categoryId metody channels.list
    • Zasób guideCategories i metoda guideCategories.list
  • Odpowiedzi interfejsu API dla metody channels.list nie zawierają już właściwości prevPageToken, jeśli żądanie interfejsu API ustawia parametr managedByMe na true. Ta zmiana nie ma wpływu na właściwość prevPageToken w przypadku innych żądań channels.list ani na właściwość nextPageToken w przypadku żadnych żądań.
  • W 11 sierpnia 2016 r. ogłoszono, że właściwości contentDetails.relatedPlaylists.watchLater i contentDetails.relatedPlaylists.watchHistory zasobu channel zostaną wycofane. Obsługa tych playlist przez metodę playlistItems.insert i playlistItems.delete została również całkowicie wycofana, a te dwie właściwości zostały usunięte z dokumentacji.
  • Parametr mySubscribers metody channels.list, który został uznany za wycofany 30 lipca 2013 r., został usunięty z dokumentacji. Aby pobrać listę subskrybentów kanału uwierzytelnionego użytkownika, użyj metody subscriptions.list i jej parametru mySubscribers.
  • Obiekt invideoPromotion zasobu channel i wszystkie jego usługi podrzędne, które zostały wycofane 27 listopada 2017 r., zostały usunięte z dokumentacji.

29 lipca 2020 r.

Uprościliśmy proces naliczania limitu żądań do interfejsu API, usuwając dodatkowy koszt związany z parametrem part. Zaczynamy od razu obciążać tylko koszt podstawowy za wywoływaną metodę. Więcej informacji o uproszczonej kwocie docelowej znajdziesz tutaj.

W efekcie większość wywołań interfejsu API będzie mieć nieco niższy limit, natomiast niektóre wywołania interfejsu API nadal będą miały ten sam koszt. Ta zmiana nie zwiększy kosztów żadnych wywołań interfejsu API. Ogólnie rzecz biorąc, przydzielone limity, które możesz sprawdzić w konsoli Google Cloud, będą nieco większe.

Zdecydowanie zalecamy wszystkim deweloperom przeprowadzenie audytu zgodności projektów, aby zapewnić nieprzerwany dostęp do usług interfejsu YouTube API.

Ten wpis historii zmian został pierwotnie opublikowany 20 lipca 2020 roku.

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ą dostępne tylko w trybie prywatnym. Aby to ograniczenie zostało zniesione, każdy projekt musi przejść kontrolę w celu zweryfikowania zgodności z Warunkami korzystania z usługi.

Twórcy, którzy do przesyłania filmów używają niezweryfikowanego klienta API, otrzymają e-maila z informacją, że ich film został zablokowany jako prywatny i że mogą uniknąć tego ograniczenia, korzystając z oficjalnego lub zweryfikowanego klienta.

Ta zmiana nie ma obecnie wpływu na projekty interfejsu API utworzone przed 28 lipca 2020 r. Zdecydowanie zalecamy jednak, aby wszyscy deweloperzy przeprowadzili audyt zgodności swoich projektów, aby zapewnić sobie nieprzerwany dostęp do usług interfejsu YouTube API.

21 lipca 2020 r.

[Zaktualizowano 28 lipca 2020 r.] Aktualizacja dokumentacji, do której odwołuje się ten wpis historii zmian, została ponownie opublikowana 28 lipca 2020 r.

Wczoraj opublikowaliśmy zaktualizowaną dokumentację dotyczącą procesu naliczania limitu. Ze względu na nieprzewidziane okoliczności zmiana limitu nie weszła jeszcze w życie. W związku z tym cofnęliśmy dokumentację, aby zapewnić jej dokładność. Aby uniknąć nieporozumień, wpis w historii zmian wyjaśniający tę zmianę został usunięty i wkrótce zostanie ponownie opublikowany.

7 lipca 2020 r.

Uwaga: to jest ogłoszenie o wycofaniu tej usługi.

Parametry autoLevels i stabilize metody videos.insert zostały wycofane. Oba zostały usunięte z dokumentacji. Ich wartości są ignorowane i nie wpływają 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 klienci interfejsu API przestrzegali określonych części Warunków i zasad (Warunków korzystania z interfejsu API).

Te wskazówki zawierają informacje o tym, jak YouTube egzekwuje określone aspekty Warunków korzystania z usługi interfejsu API, ale nie zastępują żadnych istniejących dokumentów. Ten przewodnik zawiera odpowiedzi na niektóre z najczęstszych pytań, które deweloperzy zadają podczas kontroli zgodności interfejsów 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: ta aktualizacja dotyczy poprzedniego ogłoszenia o wycofaniu.

Funkcja wiadomości o kanale została całkowicie wycofana. Ta zmiana została ogłoszona 17 kwietnia 2020 r. i w tej chwili weszła w życie. W związku z tym metoda activities.insert nie jest już obsługiwana i metoda activities.list nie zwraca już biuletynów kanałów. 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. Z tego powodu metoda activities.insert zostanie wycofana, a metoda activities.list przestanie zwracać biuletyny kanałów. Zmiany te zaczną obowiązywać w interfejsie API 18 maja 2020 roku 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 member reprezentuje osobę wspierającą kanał w YouTube. Wspierający regularnie finansowo wspierają twórcę i otrzymują specjalne korzyści. Na przykład wspierający mogą korzystać z czatu, gdy twórca włączy tryb tylko dla wspierających.

      Ten zasób zastępuje zasób sponsor, który jest opisany w ramach interfejsu YouTube Live Streaming API. Zasób sponsor został wycofany, a klienty interfejsu API powinny zaktualizować wywołania metody sponsors.list, aby korzystały z metody members.list.

    • Nowy zasób membershipsLevel określa poziom cen zarządzany przez twórcę, który autoryzował żądanie do interfejsu API. Metoda membershipsLevels.list pobiera listę wszystkich poziomów wspierania twórcy.

Styczeń 10, 2020

Interfejs API obsługuje teraz możliwość identyfikacji treści skierowanych do dzieci, które YouTube nazywa „przeznaczonymi dla dzieci”. Więcej informacji o treściach przeznaczonych dla dzieci znajdziesz w Centrum pomocy YouTube.

Zasoby channel i video dotyczą 2 nowych usług, które umożliwiają twórcom treści i widzom rozpoznawanie treści przeznaczonych dla dzieci:

  • Właściwość selfDeclaredMadeForKids umożliwia twórcom treści określenie, czy kanał lub film jest przeznaczony dla dzieci.

    W przypadku kanałów tę właściwość można ustawić podczas wywołania metody channels.update. W przypadku filmów tę właściwość można ustawić przy wywoływaniu metod videos.insert lub videos.update.

    Pamiętaj, że ta właściwość jest uwzględniana tylko w odpowiedziach interfejsu API, które zawierają zasoby channel lub video, jeśli właściciel kanału autoryzował żądanie interfejsu API.
  • Właściwość madeForKids umożliwia każdemu użytkownikowi sprawdzenie, czy kanał lub film jest oznaczony jako „przeznaczony dla dzieci”. Stan może być na przykład określony na podstawie wartości właściwości selfDeclaredMadeForKids. 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 interfejsu API YouTube oraz zasady dla deweloperów. Więcej informacji znajdziesz w Warunkach korzystania z usług YouTube API – historia zmian. Zmiany w Warunkach korzystania z usługi YouTube API i Zasadach dla deweloperów wejdą w życie 10 stycznia 2020 r. czasu pacyficznego.

10 września 2019 r.

Zaktualizowaliśmy dokumentację referencyjną interfejsów API, aby odzwierciedlała zmianę sposobu raportowania liczby subskrybentów w YouTube i, co za tym idzie, w odpowiedziach API. W efekcie tej zmiany liczba subskrybentów zwracana przez interfejs YouTube Data API jest zaokrąglana w dół do 3 cyfr znaczących, jeśli liczba subskrybentów przekracza 1000. Ta zmiana dotyczy właściwości statistics.subscriberCount zasobu channel.

Uwaga: ta zmiana ma wpływ na wartość tej właściwości nawet wtedy, gdy użytkownik wysyła autoryzowane żądanie dotyczące danych o swoim kanale. Właściciele kanałów mogą nadal zobaczyć 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. Tabela poniżej zawiera przykłady zaokrąglenia liczby subskrybentów w odpowiedziach interfejsu API oraz skrócone w innych publicznie widocznych interfejsach użytkownika YouTube:

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ę interfejsu API, aby lepiej objaśnić typowe przypadki użycia poszczególnych metod i zapewnić dynamiczne, wysokiej jakości przykłady kodu za pomocą widżetu Eksploratora interfejsów API. Przykład znajdziesz w dokumentacji metody channels.list. Na stronach, które opisują metody interfejsu API, pojawiły się teraz 2 nowe elementy:

    • Widżet Eksplorator interfejsów API pozwala wybrać zakresy autoryzacji, wpisać przykładowe parametry i wartości właściwości, a następnie wysyłać rzeczywiste żądania do interfejsu API i wyświetlać rzeczywiste odpowiedzi interfejsu API. Widget umożliwia też wyświetlanie pełnego ekranu, na którym znajdziesz kompletne przykłady kodu, które dynamicznie aktualizują się, aby uwzględniać wprowadzone przez Ciebie zakresy i wartości.

    • W sekcji Typowe przypadki użycia opisano jeden lub więcej typowych przypadków użycia metody opisanej 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.

      Za pomocą linków w tej sekcji możesz wypełnić Eksplorator interfejsów API przykładowymi wartościami odpowiadającymi Twojemu przypadkowi użycia lub otworzyć Eksplorator interfejsów API na pełnym ekranie z już wypełnionymi wartościami. Te zmiany mają na celu ułatwienie Ci wyświetlania przykładów kodu, które można bezpośrednio zastosować w przypadku użycia, który chcesz wdrożyć w swojej 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 teraz ma nowy interfejs z tymi samymi funkcjami, co opisano powyżej. Za pomocą tego narzędzia możesz zapoznać się z przypadkami użycia różnych metod, załadować wartości do Eksploratora interfejsów API i otworzyć Eksplorator interfejsów API na pełnym ekranie, aby uzyskać przykłady kodu w językach Java, JavaScript, PHP i Python.

    W związku z tą zmianą strony, które wcześniej zawierały dostępne przykłady kodu dla Javy, JavaScriptu, PHP i Pythona, zostały usunięte.

  • Zaktualizowaliśmy przewodniki wprowadzające po językach Java, JavaScript, PHP i Python. Zaktualizowane przewodniki wyjaśniają, jak uruchomić jedną przykładową z kluczem interfejsu API i drugą z identyfikatorem klienta OAuth 2.0 przy użyciu przykładowego kodu z narzędzia APIs Explorer.

Opisane powyżej zmiany zastępują interaktywne narzędzie dodane do dokumentacji interfejsu API w 2017 roku.

9 lipca 2018 r.

Ta aktualizacja zawiera następujące zmiany:

  • Definicja właściwości snippet.thumbnails zasobu channel została zaktualizowana, aby wskazać, że podczas wyświetlania miniatur w aplikacji kod powinien używać adresów URL obrazów dokładnie tak, jak są one zwracane w odpowiedziach interfejsu API. Na przykład aplikacja nie powinna używać domeny http zamiast domeny https w adresie URL zwróconym w odpowiedzi interfejsu API.

    Od lipca 2018 r. adresy URL miniatur kanałów będą dostępne tylko w domenie https, w której występują w odpowiedziach interfejsu API. Po tym czasie, jeśli aplikacja będzie próbować wczytać obrazy YouTube z domeny http, możesz zobaczyć w niej uszkodzone obrazy.

  • Uwaga: to jest ogłoszenie o wycofaniu.

    Właściwość recordingDetails.location.altitude zasobu video została wycofana. Nie ma gwarancji, że filmy zwrócą wartości dla tej właściwości. Podobnie, nawet jeśli żądania interfejsu API spróbują ustawić wartość tej właściwości, może się zdarzyć, że dane przychodzące nie zostaną zapisane.

22 czerwca 2018 r.

Przewodnik po implementacji, wcześniej znany jako Przewodnik po implementacji i migracji, został zaktualizowany, aby usunąć instrukcje migracji z interfejsu API w wersji 2 do wersji 3. Usunęliśmy też instrukcje dotyczące funkcji, które zostały już wycofane z interfejsu API w wersji 3, takich jak ulubione filmy.

27 listopada 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Uwaga: to jest ogłoszenie o wycofaniu.

    YouTube usuwa obsługę funkcji Polecany film i Polecana witryna, które są obsługiwane w interfejsie API za pomocą obiektu invideoPromotion zasobu channel. W związku z tym ten obiekt wraz ze wszystkimi usługami podrzędnymi zostaje wycofany.

    Dane invideoPromotion możesz pobierać i ustawiać do 14 grudnia 2017 r. Po tej dacie:

    • Próby pobrania części invideoPromotion podczas wywołania funkcji channels.list zwrócą pustą wartość invideoPromotion lub w ogóle nie zwrócą żadnych danych invideoPromotion.
    • Próby zaktualizowania danych invideoPromotion podczas wywoływania funkcji channels.update będą zwracać pomyślną odpowiedź co najmniej do 27 maja 2018 r., ale zostaną potraktowane jako próby zaktualizowania danych, co oznacza, że nie przeprowadzą aktualizacji.

    Po 27 maja 2018 r. te żądania mogą zwracać komunikaty o błędach, które wskazują na przykład, że invalidPromotion to nieprawidłowa część.

16 listopada 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Interaktywne narzędzie do tworzenia fragmentów kodu obsługuje teraz przykłady kodu Node.js. Przykłady są też widoczne w dokumentacji niemal wszystkich metod interfejsu API, np. channels.list.

    Przykłady z możliwością dostosowania zostały zaprojektowane w taki sposób, aby stanowiły punkt wyjścia dla aplikacji Node.js specyficzne dla danego przypadku. Funkcja jest podobna do kodu w krótkim przewodniku dotyczącym Node.js. Jednak przykłady zawierają kilka funkcji pomocniczych, które nie pojawiają się w przewodniku:

    • Funkcja removeEmptyParameters pobiera listę par klucz-wartość odpowiadających parametrom żądania do interfejsu API i usuwa parametry, które nie mają wartości.
    • Funkcja createResource pobiera listę par klucz-wartość odpowiadających właściwościom w zasobie interfejsu API. Następnie konwertuje właściwości na obiekt JSON, którego można użyć w operacjach insert i update. W poniższym przykładzie pokazano zbiór nazw i wartości właściwości oraz obiekt JSON, który zostałby dla nich 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 zostały zaprojektowane tak, aby można je było pobrać i uruchamiać lokalnie. Więcej informacji o wstępnych wymaganiach dotyczących uruchamiania pełnych przykładów kodu lokalnie znajdziesz w instrukcjach narzędzia do tworzenia fragmentów kodu.

25 października 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Przykłady kodu Pythona w interaktywnym narzędziu do fragmentów kodu zostały zaktualizowane tak, aby korzystały z bibliotek google-auth i google-auth-oauthlib zamiast biblioteki oauth2client, która została wycofana.

    Oprócz tej zmiany narzędzie udostępnia teraz pełne przykłady kodu dla zainstalowanych aplikacji Python i aplikacji serwera WWW Python, które korzystają z nieco innych przepływów autoryzacji. Aby zobaczyć pełne przykłady (i tą zmianę):

    1. Otwórz interaktywne narzędzie do tworzenia fragmentów kodu lub dokumentację dowolnej metody interfejsu API, np. metody channels.list.
    2. Nad przykładami kodu kliknij kartę Python.
    3. Kliknij przełącznik nad kartami, aby przełączyć się z wyświetlania fragmentu na pełną próbkę.
    4. Na karcie powinien teraz wyświetlić się kompletny przykład kodu, który korzysta z procesu autoryzacji InstalledAppFlow. Opis nad przykładem wyjaśnia to i zawiera link do przykładu aplikacji serwera WWW.
    5. Kliknij link, aby przejść do przykładu serwera WWW. Przykładowa aplikacja korzysta z platformy aplikacji internetowej Flask i z innego procesu autoryzacji.

    Wszystkie te przykłady zostały zaprojektowane tak, aby można je było pobrać i uruchamiać lokalnie. Jeśli chcesz uruchomić fragmenty kodu, zapoznaj się z instrukcjami uruchamiania całego przykładowego kodu lokalnie w instrukcjach narzędzia fragmentu kodu.

29 sierpnia 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Zaktualizowaliśmy definicję parametru forContentOwner metody search.list, aby zaznaczyć, że jeśli ten parametr ma wartość true, parametr type musi mieć wartość video.
  • Definicja parametru regionCode metody search.list została zaktualizowana, aby wyjaśnić, że parametr ten ogranicza wyniki wyszukiwania do filmów, które można wyświetlić w określonym regionie.
  • YouTube zaktualizował logo i ikony swojej marki. Nowe logo „opracowane we współpracy z YouTube” możesz pobrać ze strony wytycznych dotyczących promowania marki. Na tej stronie znajdziesz też inne nowe logo i ikony YouTube, które możesz pobrać z strony marki YouTube.

24 lipca 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Udostępniliśmy nowy krótki przewodnik po interfejsie YouTube Data API dla systemu iOS. Przewodnik wyjaśnia, jak korzystać z 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ę, która wyjaśnia niektóre z jego funkcji:
    • Wykonywanie żądań do interfejsu API
    • Przełączanie się między fragmentami kodu a pełnymi przykładami kodu
    • Korzystanie z funkcji szablonowych
    • wczytywanie istniejących zasobów (w przypadku metod aktualizacji);

    Uwaga: narzędzie jest też umieszczone w dokumentacji API dotyczącej metod API (przykład).

1 czerwca 2017 r.

Ta aktualizacja zawiera następujące zmiany:

17 maja 2017 roku

Ta aktualizacja zawiera następujące zmiany:

  • Dokumentacja referencyjna interfejsu API została zaktualizowana, aby fragmenty kodu były bardziej dostępne i interaktywne. Strony, na których znajdziesz opisy metod interfejsu API, takie jak channels.list czy videos.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 pokazuje fragmenty kodu dla co najmniej jednego przypadku użycia, a każdy przypadek użycia opisuje typowy sposób jej wywoływania. Możesz na przykład wywołać metodę channels.list, aby pobrać dane o wybranym kanale lub o kanale bieżącego użytkownika.

    Możesz też korzystać z przykładowego kodu:

    • Zmień wartości parametrów i właściwości, a fragmenty kodu zostaną zaktualizowane dynamicznie, 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 oraz kod szablonowy do autoryzacji i wysyłania żądań. Pełne sample można kopiować i uruchamiać z poziomu wiersza poleceń lub lokalnego serwera internetowego.

    • Wykonuj żądania, klikając przycisk. (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. (Każda strona zawiera link umożliwiający załadowanie żądania, nad którym pracujesz, w narzędziu Google APIs Explorer).

  • Ulepszyliśmy też narzędzie Fragmenty kodu interfejsu Data API o nowy interfejs, który ma wszystkie opisane powyżej funkcje. Najważniejsze nowe funkcje dostępne na tej stronie to:

    • Obsługa żądań do interfejsu API, które zapisują dane.
    • Obsługa przykładów w Javie.
    • bardziej elastyczny i wszechstronny kod szablonowy do autoryzacji użytkowników i tworzenia żądań interfejsu API;

27 kwietnia 2017 r.

Ta aktualizacja zawiera następujące zmiany:

30 marca 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowa właściwość topicDetails.topicCategories[] zasobu channel zawiera listę adresów URL Wikipedii, które opisują treści kanału. Adresy URL odpowiadają identyfikatorom tematów zwróconym w usłudze topicDetails.topicIds[] zasobu.
  • Nowa właściwość contentDetails.videoPublishedAt zasobu playlistItem określa czas opublikowania filmu w YouTube. Zasób zawiera już właściwość snippet.publishedAt, która wskazuje czas dodania elementu do playlisty.
  • Podobnie jak zasób channel zasób video zwraca teraz właściwość topicDetails.topicCategories[], która zawiera listę adresów URL Wikipedii opisujących treść filmu. W przypadku zasobów video adresy URL odpowiadają identyfikatorom tematów zwracanym w przypadku właściwości topicDetails.relevantTopicIds[] zasobu.
  • Nowa właściwość contentDetails.contentRating.mpaatRating zasobu video określa ocenę, jaką otrzymało zwiastun lub podgląd filmu od organizacji Motion Picture Association of America.

27 lutego 2017 r.

Zgodnie z pierwotnym ogłoszeniem z 11 sierpnia 2016 roku 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.

Pamiętaj, że na liście wybranych elementów wprowadzono kilka zmian:

  • Te tematy zostały dodane jako podtemat Society:
    Nazwaidentyfikator tematu,
    Firma/m/09s1f
    Zdrowie/m/0kt51
    Wojsko/m/01h6rj
    Polityka/m/05qt0
    Religia/m/06bvp
  • Temat Animated cartoon, który był wcześniej podrzędnym tematem Entertainment, został usunięty.
  • Temat Children's music, który był wcześniej podrzędnym tematem Music, został usunięty.

W rezultacie 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:

  • Od 10 lutego 2017 r. lista obsługiwanych identyfikatorów tematów ulegnie 3 małym zmianom:

    • Kategoria Professional wrestling, która wcześniej była elementem podrzędnym kategorii Sports, jest teraz elementem podrzędnym kategorii Entertainment.
    • Kategoria TV shows, która jest podrzędna względem Entertainment, jest nowa.
    • Kategoria Health, która wcześniej była podrzędna dla kategorii Lifestyle, została usunięta.

    Pamiętaj też, że istnieje kilka kategorii nadrzędnych (Entertainment, Gaming, Lifestyle, Music i Sports). Każdy film powiązany z kategorią podrzędną, np. Tennis, będzie też powiązany z kategorią nadrzędną (Sports).

10 listopada 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Jak informowaliśmy 11 sierpnia 2016 r., wycofanie Freebase i interfejsu Freebase API wymaga kilku zmian związanych z identyfikatorami tematów. Identyfikatory tematów identyfikują tematy powiązane z zasobami channel i video. Możesz też używać parametru wyszukiwania topicId, aby znaleźć kanały lub filmy związane z konkretnym tematem.

    10 lutego 2017 r. YouTube zacznie zwracać mały zestaw identyfikatorów tematów zamiast znacznie bardziej szczegółowego zestawu identyfikatorów zwracanych do tej pory. Pamiętaj też, że nie możemy zagwarantować, że kanały i filmy będą powiązane z żadnym tematem, ponieważ jest to zgodne z aktualnym działaniem interfejsu API.

    Aby można było przygotować klienty API na te zmiany, zaktualizowaliśmy definicje poniższych parametrów i właściwości API, tak 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.

  • Uwaga: to jest ogłoszenie o wycofaniu.

    Wycofujemy te usługi:

    • Właściwość topicDetails.topicIds[] zasobu channel. Ta usługa będzie obsługiwana do 10 listopada 2017 r.
    • Właściwość topicDetails.relevantTopicIds[] zasobu video. Ta usługa będzie obsługiwana do 10 listopada 2017 r.
    • Właściwość topicDetails.topicIds[] zasobu video. Po 10 lutego 2017 r. ta usługa nie będzie zawierać wartości. (po tym terminie wartość właściwości topicDetails.relevantTopicIds[] będzie wskazywać wszystkie tematy powiązane z filmem).

  • Ponieważ usługa Freebase została wycofana, z dokumentacji usunięto przewodnik Wyszukiwanie za pomocą tematów Freebase. W tym przewodniku znajdziesz przykłady kodu, które pokazują, jak aplikacja będzie działać z Freebase API.

    Oprócz tego z dokumentacji metody search.list usunęliśmy kilka przykładów kodu 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 video zawiera kilka nowych właściwości:

      • Właściwość player.embedHtml zawiera tag <iframe>, który pozwala umieścić odtwarzacz wyświetlający film. Nowe właściwości player.embedHeight i player.embedWidth określają wymiary umieszczonego odtwarzacza. Te właściwości są zwracane tylko wtedy, gdy żądanie interfejsu API określa wartość co najmniej jednego z parametrów maxHeight lub maxWidth. Te 2 nowe parametry są opisane dalej w tym wpisie historii zmian.

      • Nowa właściwość hasCustomThumbnail informuje, czy osoba, która przesłała 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 dokument fpbRatingReasons[] określa powody, dla których film otrzymał ocenę FPB (Republika Południowej Afryki).

      • Nowy tag mcstRating wskazuje ocenę, jaką otrzymał film w Wietnamie.

    • Metoda videos.list obsługuje 2 nowe parametry: maxHeightmaxWidth. Podczas pobierania części player zasobów video możesz użyć jednego lub obu parametrów.

      Domyślna wysokość <iframe> zwracana w usłudze player.embedHtml to 360 pikseli. Szerokość jest dostosowywana do współczynnika proporcji filmu, dzięki czemu w odtwarzaczu umieszczonym na stronie nie ma czarnych pasów otaczających obraz. Jeśli więc na przykład film ma proporcje 16:9, szerokość odtwarzacza będzie wynosić 640 pikseli.

      Dzięki nowym parametrom możesz określić, że zamiast domyślnych wymiarów kod do wklejania powinien używać wysokości lub szerokości odpowiedniej dla układu aplikacji. Serwer interfejsu API odpowiednio dostosowuje wymiary odtwarzacza, aby upewnić się, że nie ma czarnych pasów wokół filmu. Pamiętaj, że oba parametry określają maksymalne wymiary wbudowanego odtwarzacza. Jeśli więc określisz oba parametry, jeden z wymiarów może być nadal mniejszy od maksymalnej dozwolonej wartości dla tego wymiaru.

      Załóżmy na przykład, że film ma proporcje 16:9. Jeśli parametr maxHeight lub maxWidth nie jest ustawiony, tag player.embedHtml będzie zawierać odtwarzacz 640 x 360.

      • Jeśli parametr maxHeight ma wartość 720, a parametr maxWidth nie jest skonfigurowany, interfejs API zwróci odtwarzacz o rozdzielczości 1280 x 720.
      • Jeśli parametr maxWidth ma wartość 960, a parametr maxHeight nie jest ustawiony, interfejs API zwróci odtwarzacz o wymiarach 960 x 540.
      • Jeśli parametr maxWidth ma wartość 960, a parametr maxHeight ma wartość 450, interfejs API zwróci odtwarzacz 800 x 450.

      Nowe właściwości player.embedHeightplayer.embedWidth, które zostały opisane powyżej, określają wymiary odtwarzacza.

  • Aktualizacje dotychczasowych metod, właściwości i parametrów

    • Opis zasobu channelSection został zaktualizowany, aby wskazać, że kanał może utworzyć maksymalnie 10 półek bez ustawiania danych kierowania i maksymalnie 100 półek z danymi kierowania.

      Oprócz tego zaktualizowaliśmy właściwość targeting zasobu channelSection, aby odzwierciedlić fakt, że opcje kierowania można ustawiać tylko za pomocą interfejsu API. Opcje kierowania są usuwane po zmodyfikowaniu sekcji kanału za pomocą interfejsu w witrynie YouTube.

    • Definicja właściwości snippet.name zasobu i18nLanguage została poprawiona, aby odzwierciedlała fakt, że wartość reprezentuje nazwę języka zapisaną w języku określonym przez parametr hl metody i18nLanguage.list.

    • Właściwość contentDetails.note zasobu playlistItem została zaktualizowana, aby wskazać, że jej maksymalna długość to 280 znaków.

    • Właściwości contentDetails.startAt i contentDetails.endAt zasobu playlistItem zostały wycofane. Te pola są ignorowane, jeśli są ustawione w żądaniach playlistItems.insert lub playlistItems.update.

    • Metody playlistItems.deleteplaylistItems.update obsługują teraz parametr onBehalfOfContentOwner, który jest już obsługiwany w kilku innych metodach. Żądania korzystające z tej metody muszą też być autoryzowane za pomocą tokena, który zapewnia dostęp do zakresu https://www.googleapis.com/auth/youtubepartner.

    • Parametry publishedBeforepublishedAfter metody search.list zostały zaktualizowane, aby wskazywać, że wartości parametrów są ujęte w szerzszym zakresie. Jeśli na przykład parametr publishedBefore jest ustawiony, interfejs API zwraca zasoby utworzone przed lub w określonym czasie.

    • Właściwość contentDetails.contentRating.grfilmRating zasobu video obsługuje 3 dodatkowe wartości: grfilmK12, grfilmK15 i grfilmK18.

    • W opisie metody videos.insert dodano informację, że maksymalny rozmiar przesyłanych filmów został zwiększony z 64 GB do 128 GB.

  • Nowe i zmienione błędy

    • Interfejs API obsługuje nowe błędy:

      Typ błędu Szczegóły błędu Opis
      forbidden (403) homeParameterDeprecated Metoda activities.list zwraca ten błąd, aby wskazać, że dane o aktywności na stronie głównej użytkownika nie są dostępne za pomocą tego interfejsu API. Ten błąd może wystąpić, jeśli w nieautoryzowanym żądaniu ustawisz wartość parametru home na true.
      invalidValue (400) invalidContentDetails Metoda playlistItems.insert zwraca ten błąd, aby wskazać, że obiekt contentDetails w żądaniu jest nieprawidłowy. Jedną z przyczyn tego błędu jest to, że pole contentDetails.note ma więcej niż 280 znaków.
      forbidden (403) watchHistoryNotAccessible Metoda playlistItems.list zwraca ten błąd, aby wskazać, że żądanie próbowało pobrać elementy playlisty „historia oglądania”, których nie można pobrać za pomocą interfejsu API.
      forbidden (403) watchLaterNotAccessible Metoda playlistItems.list zwraca ten błąd, aby wskazać, że żądanie próbowało pobrać elementy listy odtwarzania „oglądaj później”, ale nie można ich pobrać za pomocą interfejsu API.
      badRequest (400) uploadLimitExceeded Metoda videos.insert zwraca ten błąd, wskazując, że na kanał został przekroczony limit filmów, które można przesłać.
      forbidden (403) forbiddenEmbedSetting Metoda videos.update zwraca ten błąd, aby wskazać, że żądanie interfejsu API próbuje ustawić nieprawidłowy parametr umieszczania filmu. Pamiętaj, że niektóre kanały mogą nie mieć uprawnień do oferowania osadzonych odtwarzaczy dla transmisji na żywo. Więcej informacji znajdziesz w Centrum pomocy YouTube.
    • Metoda playlistItems.insert nie zwraca już błędu, jeśli wstawisz zduplikowany film do playlisty. Ten błąd występował wcześniej w przypadku niektórych playlist, takich jak ulubione filmy, które nie zezwalały na duplikaty, ale nie są już obsługiwane. Ogólnie rzecz biorąc, na playlistach można umieszczać duplikaty filmów.

  • Inne informacje

    • Pozycja historii zmian z 15 września 2016 roku została zaktualizowana, aby doprecyzować, że gdy w odpowiedzi znajdują się właściwości contentDetails.relatedPlaylists.watchHistory i contentDetails.relatedPlaylists.watchLater zasobu channel, zawsze zawierają one odpowiednio wartości HL i WL. Co więcej, te właściwości 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 historii zmian z 11 sierpnia 2016 r. opisaliśmy kilka zmian związanych z identyfikatorami tematów, m.in. fakt, że od 10 lutego 2017 r. zestaw obsługiwanych identyfikatorów tematów ulegnie zmianie. Lista tematów, które będą obsługiwane, zostanie opublikowana do 10 listopada 2016 roku.

  • Poniższe zmiany zostały wprowadzone. Powiadomienie o tych zmianach zostało podane w aktualizacji historii zmian 11 sierpnia 2016 roku:

    • Jeśli metoda activities.list jest wywoływana z parametrem home ustawionym na true, odpowiedź interfejsu API zawiera elementy podobne do tych, które niezalogowany użytkownik YouTube widzi na stronie głównej.

      Wprowadzamy tę drobną zmianę, która ma zwiększyć komfort użytkowników niż w przypadku działania opisanego w aktualizacji historii zmian 11 sierpnia 2016 roku. W tej aktualizacji stwierdziliśmy, że żądania z parametrem home zwracają pustą listę.

    • Właściwość contentDetails.relatedPlaylists.watchHistory i contentDetails.relatedPlaylists.watchLater zasobu channel zawiera teraz wartości odpowiednio HL i WL dla wszystkich kanałów.

      Dla jasności – te właściwości są widoczne tylko dla autoryzowanego użytkownika, który pobiera dane o swoim kanale. Właściwości zawsze zawierają wartości HL i WL, nawet w przypadku autoryzowanego użytkownika pobierającego dane o swoim kanale. Dlatego identyfikatorów historii oglądania i playlisty Do obejrzenia nie można pobrać za pomocą interfejsu API.

      Ponadto żądania dotyczące pobierania szczegółów playlisty (playlists.list) lub elementów playlisty (playlistItems.list) z historii oglądania lub listy Do obejrzenia na kanale zwracają teraz puste listy. Dotyczy to nowych wartości HL i WL, a także wszystkich identyfikatorów historii oglądania i playlist do obejrzenia później, które Twój klient API może już mieć zapisane.

  • Obiekt fileDetails.recordingLocation zasobu video i jego właściwości podrzędne nie są już zwracane. Wcześniej te dane (np. nadrzędny obiekt fileDetails) mógł pobrać tylko właściciel filmu.

11 sierpnia 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowo opublikowane Warunki korzystania z usług interfejsu API YouTube („Zaktualizowane warunki”) omówione szczegółowo na blogu zespołu inżynierów i programistów YouTube zawierają wiele zmian w stosunku do dotychczasowych Warunków korzystania z usługi. Oprócz zaktualizowanych Warunków, które wejdą w życie 10 lutego 2017 r., aktualizacja zawiera kilka dokumentów pomocniczych wyjaśniających zasady, których muszą przestrzegać deweloperzy.

    Pełny zestaw nowych dokumentów znajdziesz w historii zmian zaktualizowanych Warunków. Ponadto w tej historii zmian będą też opisane przyszłe zmiany Zaktualizowanych Warunków lub dokumentów pomocniczych. Możesz zasubskrybować kanał RSS, który zawiera listę zmian w tej historii zmian, z poziomu linku w tym dokumencie.

  • Wycofanie narzędzi Freebase i 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ęść topicDetails zasobu channel określa tematy powiązane z kanałem.
    • Część topicDetails zasobu video określa tematy powiązane z filmem.
    • Parametr topicId metody search.list umożliwia wyszukiwanie filmów lub kanałów związanych z określonym tematem.

    Zmiany tych funkcji są następujące:

    • Od 10 lutego 2017 r. YouTube będzie zwracać mały zestaw identyfikatorów tematów zamiast znacznie bardziej szczegółowego zestawu identyfikatorów zwracanych do tej pory. Ten zestaw obsługiwanych tematów będzie wskazywał ogólne kategorie, takie jak Sport czy Koszykówka, ale nie będzie identyfikować konkretnych drużyn ani zawodników. Aby dać Ci czas na przygotowanie się do tej zmiany, poinformujemy o obsługiwanych tematach.

    • Wszystkie pobrane już identyfikatory tematów Freebase możesz używać 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 zidentyfikowanego w poprzedniej pozycji.

    • Po 10 lutego 2017 r., jeśli spróbujesz wyszukać wyniki za pomocą identyfikatora tematu, który nie znajduje się w mniejszym zbiorze obsługiwanych identyfikatorów tematów, interfejs API zwróci pusty zbiór wyników.

  • 12 września 2016 r. wycofamy kilka pól i parametrów interfejsu API:

    • Parametr home metody activities.list umożliwia upoważnionemu użytkownikowi pobranie kanału aktywności, który wyświetla się na stronie głównej YouTube. Żądania, które używają tego parametru po 12 września 2016 r., będą zwracać pustą listę.

    • Właściwości contentDetails.relatedPlaylists.watchHistory i contentDetails.relatedPlaylists.watchLater zasobu channel są widoczne tylko dla autoryzowanego użytkownika pobierającego dane o swoim kanale. Po 12 września 2016 roku contentDetails.relatedPlaylists.watchHistory będzie zwracać wartość HL, a właściwości contentDetails.relatedPlaylists.watchLaterWL dla wszystkich kanałów.

      Po 12 września 2016 r. żądania dotyczące pobrania szczegółów playlisty (playlists.list) z historii oglądania lub z listy Do obejrzenia na kanale zwrócą pustą listę. Po tym czasie żądania dotyczące pobrania elementów playlisty (playlistItems.list) z tych playlist również zwrócą pustą listę. Dotyczy to nowych wartości HL i WL, a także wszystkich identyfikatorów historii oglądania lub playlisty Do obejrzenia, które klient interfejsu API może już przechowywać.

    • Po 12 września 2016 r. obiekt fileDetails.recordingLocation zasobu video ani żadne z jego usług podrzędnych nie będą już zwracane. Te dane może pobrać tylko właściciel filmu, ponieważ obiekt nadrzędny fileDetails może pobrać tylko właściciel filmu.

13 czerwca 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Właściwość contentDetails.googlePlusUserId zasobu channel została wycofana. Wcześniej usługa była obecna tylko wtedy, gdy kanał był powiązany z profilem Google+. Po wycofaniu usługa nie będzie już uwzględniana w żadnych zasobach channel.

  • Właściwość snippet.authorGoogleplusProfileUrl zasobu comment została wycofana. Wcześniej ta właściwość była dostępna tylko wtedy, gdy kanał był powiązany z profilem Google+. Po wycofaniu usługi nie będzie ona już uwzględniana w żadnych zasobach comment.

Po wycofaniu żadne z tych właściwości nie będzie zwracane, dlatego zostały usunięte z odpowiedniej dokumentacji zasobu.

31 maja 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy parametr subscriptions.list metody subscriptions.list pobiera listę subskrybentów kanału uwierzytelnionego użytkownika w odwrotnej kolejności chronologicznej, w jakiej subskrybowali kanał.

    Pamiętaj, że nowy parametr umożliwia pobieranie do kanału uwierzytelnionego użytkownika tylko ostatnich 1000 subskrybentów. Aby uzyskać 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, thumbnailvideo, aby wskazać, że w przypadku niektórych filmów dostępne są dodatkowe rozmiary miniatur.

    • Obraz standard ma 640 pikseli szerokości i 480 pikseli wysokości.
    • Obraz maxres ma 1280 pikseli szerokości i 720 pikseli wysokości.
  • Definicja parametru part metody channelSection.list została zaktualizowana, aby uwzględnić fakt, że część targeting może być pobierana za koszt 2 jednostek limitu.

  • Metoda videos.list zwraca teraz błąd forbidden (403), gdy źle autoryzowany request próbuje pobrać części fileDetails, processingDetails lub suggestions zasobu video. Te elementy są dostępne tylko dla właściciela filmu.

17 maja 2016 r.

Nowe narzędzie Fragmenty kodu interfejsu Data API udostępnia krótkie fragmenty kodu na potrzeby typowych zastosowań interfejsu YouTube Data API. Fragmenty kodu są obecnie dostępne dla 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. Zawiera np. 5 fragmentów kodu dla metody search.list:

  • Wymień filmy według słów kluczowych
  • Wymień filmy według lokalizacji
  • Lista wydarzeń na żywo
  • Wyszukiwanie filmów uwierzytelnionego użytkownika
  • Lista podobnych filmów

W przypadku każdego zastosowania narzędzie wyświetla parametry użyte w żądaniu interfejsu API. Wartości parametrów możesz zmieniać. 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 parametry żądania zostały zmodyfikowane, odpowiedź interfejsu API jest oparta na podanych wartościach parametrów. Pamiętaj, że aby wyświetlać odpowiedzi interfejsu API, musisz upoważnić narzędzie do przesyłania w Twoim imieniu żądań.

28 kwietnia 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowa właściwość contentDetails.projection zasobu video określa format wyświetlania filmu. Prawidłowe wartości właściwości to 360 i rectangular.

  • Właściwości recordingDetails.locationfileDetails.recordingLocation zasobu video zostały zaktualizowane, aby wyjaśnić różnicę między tymi dwoma właściwościami:

    • Właściciel filmu może wskazać lokalizację, którą chce powiązać z filmem. Ta lokalizacja może być edytowana, można ją wyszukać w publicznych filmach, a także może być wyświetlana użytkownikom publicznych filmów.
    • Wartość właściwości fileDetails.recordingLocation jest niezmienna i reprezentuje lokalizację powiązaną z pierwotnym przesłanym plikiem wideo. Wartość jest widoczna tylko dla właściciela filmu.

  • Definicja właściwości contentDetails.relatedPlaylists.favorites zasobu channel została zaktualizowana, aby wskazać, że jej wartość może zawierać identyfikator playlisty, który odnosi się do pustej playlisty i nie może zostać pobrany. Wynika to z faktu, że funkcja ulubionych filmów została już wycofana. Pamiętaj, że ta usługa nie podlega zasadom wycofywania interfejsu API.

  • Definicja błędu ineligibleAccount, który może być zwracany przez metody comments.insert, comments.update, commentThreads.insert lub commentThreads.update, została zaktualizowana, aby odzwierciedlać fakt, że błąd ten występuje, gdy konto YouTube użyte do autoryzacji żądania interfejsu API nie zostało scalone z kontem Google użytkownika.

20 kwietnia 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Definicja parametru part metody channels.update została zaktualizowana, aby uwzględnić, że localizations jest również prawidłową wartością tego parametru.

  • Sekcja Wykorzystanie limitu w przewodniku dla początkujących zawiera teraz link do Google Developers Console, gdzie znajdziesz informacje o rzeczywistym i wykorzystaniu limitu.

16 marca 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Dokumentacja zasobu channelBanner została zaktualizowana, aby zaznaczyć, że zalecany rozmiar przesłanego obrazu banera kanału to 2560 x 1440 pikseli. Minimalny rozmiar (2048 × 1152 piksele) nie uległ zmianie.

    • Nowa właściwość snippet.customUrl zasobu channel określa niestandardowy adres URL powiązany z kanałem. (Nie wszystkie kanały mają niestandardowe URL-e). W Centrum pomocy YouTube znajdziesz informacje o wymaganiach dotyczących uzyskania niestandardowego adresu URL oraz o tym, jak go skonfigurować.

    • Obiekt brandingSettings.watch zasobu channel i wszystkie jego właściwości podrzędne zostały wycofane.

    • Odpowiedź interfejsu API na żądanie search.list zawiera teraz właściwość regionCode. Właściwość określa kod regionu, który został użyty w zapytaniu. Kod regionu instruuje interfejs API tak, aby zwracał wyniki wyszukiwania dla określonego kraju.

      Wartością właściwości jest dwuliterowy kod kraju zgodny ze standardem ISO określający region. Metoda i18nRegions.list zwraca listę obsługiwanych regionów. (wartością domyślną jest US); Nawet jeśli określisz nieobsługiwany region, YouTube do obsługi zapytania może wybrać inny region zamiast wartości domyślnej.

    • Zaktualizowaliśmy definicje właściwości snippet.label i snippet.secondaryReasons[].label zasobu videoAbuseReportReason, by poinformować, że zawierają one zlokalizowany tekst etykiet do celów zgłaszania nadużyć.

      Dodatkowo metoda videoAbuseReportReasons.list obsługuje teraz parametr hl, który określa język, którego należy używać do tekstu etykiety w odpowiedzi interfejsu API. Wartość domyślna to en_US.

    • Nowa właściwość contentDetails.contentRating.ecbmctRating zasobu video wskazuje ocenę filmu wydaną przez turecki Urząd ds. Oceny i Klasyfikacji przy Ministerstwie Kultury i Turystyki.

      Ponadto właściwości interfejsu API dotyczące 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: fpb10
      • contentDetails.contentRating.moctwRating (Tajwan)
        Ocena: R-12; wartość właściwości: moctwR12
      • contentDetails.contentRating.moctwRating (Tajwan)
        Ocena: R-15; wartość właściwości: moctwR15
    • Właściwość liveStreamingDetails.activeLiveChatId zasobu video zawiera identyfikator aktywnego czatu na żywo powiązanego z filmem. Wartość tej właściwości jest obecna tylko wtedy, gdy film jest aktualną transmisją na żywo z włączonym czatem na żywo. Po zakończeniu transmisji i czatu na żywo ta właściwość nie jest już zwracana w przypadku filmu.

    • Właściwość status.rejectionReason zasobu video obsługuje nową wartość właściwości legal.

  • Interfejs API obsługuje nowe błędy:

    Typ błędu Szczegóły błędu Opis
    badRequest (400) notEditable Metody channelSections.insert, channelSections.update i channelSections.delete zwracają ten błąd, aby wskazać, że nie można utworzyć, zaktualizować ani usunąć określonej sekcji kanału.
    badRequest (400) styleRequired Metody channelSections.insert i channelSections.update zwracają ten błąd, aby wskazać, że zasób channelSection przesłany w żądaniu do interfejsu API musi określać wartość właściwości snippet.style.
    badRequest (400) typeRequired Metody channelSections.insert i channelSections.update zwracają ten błąd, aby wskazać, że zasób channelSection przesłany w żądaniu do interfejsu API musi określać wartość właściwości snippet.type.
    badRequest (400) processingFailure Metoda commentThreads.list zwraca ten błąd, aby wskazać, że serwer interfejsu API nie mógł przetworzyć żądania. Może to być błąd tymczasowy, ale zwykle oznacza, że dane wejściowe żądania są nieprawidłowe. Sprawdź strukturę zasobu commentThread w treści żądania, aby upewnić się, że jest on prawidłowy.
    forbidden (403) commentsDisabled Metoda commentThreads.list zwraca ten błąd, aby wskazać, że film zidentyfikowany przez parametr videoId ma wyłączone komentarze.
    badRequest (400) commentTextTooLong Metoda commentThreads.insert zwraca ten błąd, aby wskazać, że w właściwości snippet.topLevelComment.snippet.textOriginal zamieszczanego zasobu comment znajduje się za dużo znaków.
    invalidValue (400) videoAlreadyInAnotherSeriesPlaylist Metoda playlistItems.insert zwraca ten błąd, aby wskazać, że film, który próbujesz dodać do playlisty, znajduje się już na innej playliście serialu. Więcej informacji na temat playlist seriali znajdziesz w Centrum pomocy YouTube.
    badRequest (400) subscriptionForbidden Metoda subscriptions.insert zwraca ten błąd, aby wskazać, że osiągnięto maksymalną liczbę subskrypcji lub że utworzono zbyt wiele ostatnich subskrypcji. W drugim przypadku możesz spróbować przesłać żądanie po kilku godzinach.
    badRequest (400) invalidCategoryId Metoda videos.update zwraca ten błąd, aby wskazać, że usługa snippet.categoryId w przesłanym zasobie video zawiera nieprawidłowy identyfikator kategorii. Aby pobrać obsługiwane kategorie, użyj metody videoCategories.list.
    badRequest (400) invalidDescription Metoda videos.update zwraca ten błąd, aby wskazać, że właściwość snippet.description w przesłanym zasobie video ma nieprawidłową wartość.
    badRequest (400) invalidPublishAt Metoda videos.update zwraca ten błąd, aby wskazać, że właściwość status.publishAt w przesłanym video zasobem określa nieprawidłowy zaplanowany czas publikacji.
    badRequest (400) invalidRecordingDetails Metoda videos.update zwraca ten błąd, aby wskazać, że obiekt recordingDetails w przesłanym zasobie video zawiera nieprawidłowe szczegóły nagrania.
    badRequest (400) invalidTags Metoda videos.update zwraca ten błąd, aby wskazać, że właściwość snippet.tags w przesłanym zasobie video ma nieprawidłową wartość.
    badRequest (400) invalidTitle Metoda videos.update zwraca ten błąd, aby wskazać, że właściwość snippet.title w przesłanym zasobie video określa nieprawidłowy lub pusty tytuł filmu.
    badRequest (400) invalidVideoMetadata Metoda videos.update zwraca ten błąd, aby wskazać, że metadane żądania są nieprawidłowe. Ten błąd występuje, jeśli żądanie aktualizuje część snippet zasobu video, ale nie ustawia wartości właściwości snippet.title ani snippet.categoryId.

18 grudnia 2015 r.

Przepisy Unii Europejskiej (UE) wymagają udostępnienia określonych informacji użytkownikom z Unii Europejskiej i uzyskania ich zgody. W przypadku użytkowników z Unii Europejskiej musisz przestrzegać polityki w zakresie zgody użytkownika z UE. Dodaliśmy powiadomienie o tym wymaganiu w Warunkach korzystania z interfejsu YouTube API.

19 listopada 2015 r.

Interfejs API umożliwia teraz ustawianie i pobieranie zlokalizowanego tekstu we właściwościach 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

    Wartości zlokalizowane możesz ustawić, wywołując metodę insert lub update zasobu. Aby ustawić zlokalizowane wartości dla zasobu, wykonaj obie te czynności:

    • Sprawdź, czy właściwość snippet.defaultLanguage zasobu ma ustawioną wartość. Ta właściwość określa język właściwości snippet.title i snippet.description zasobu. Jego wartość może być dowolnym obsługiwanym językiem aplikacji lub większością innych kodów języków ISO 639-1:2002. Jeśli na przykład prześlesz film, który ma angielski tytuł i opis, ustaw we właściwości snippet.defaultLanguage wartość en.

      Uwaga dotycząca aktualizowania zasobów channel: aby ustawić właściwość snippet.defaultLanguage dla zasobu channel, musisz zaktualizować właściwość brandingSettings.channel.defaultLanguage.

    • Dodaj obiekt localizations do zasobu, który aktualizujesz. Każdy klucz obiektu jest ciągiem znaków identyfikującym język aplikacji lub kod języka w standardzie ISO 639-1:2002, a każdy klucz jest mapowany na obiekt ze zlokalizowanym tytułem (i opisem) zasobu.

      Poniżej znajduje się przykładowy fragment kodu, który ustawia domyślny język zasobu na angielski. Dodaje też do filmu 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 gdy aktualizujesz zlokalizowane dane zasobu, żądanie interfejsu API musi zawierać wszystkie istniejące zlokalizowane wersje tych danych. Jeśli na przykład wyślesz kolejną prośbę o dodanie danych w języku portugalskim (z przykładu powyżej), prośba musi zawierać zlokalizowane dane dotyczące języka niemieckiego, hiszpańskiego i portugalskiego.

  • Pobieranie zlokalizowanych wartości

    Interfejs API obsługuje 2 sposoby pobierania zlokalizowanych wartości dla zasobu:

    • Dodaj parametr hl do żądania channels.list, channelSections.list, playlists.list lub videos.list, aby pobrać zlokalizowane dane dla określonego języka aplikacji obsługiwanego przez stronę YouTube. Jeśli zlokalizowane szczegóły zasobu są dostępne w danym języku, obiekt snippet.localized zasobu będzie zawierać zlokalizowane wartości. Jeśli jednak szczegółowe informacje w danym języku są niedostępne, obiekt snippet.localized będzie zawierać szczegóły zasobu w języku domyślnym.

      Załóżmy na przykład, że żądanie videos.list zwróciło dane dotyczące opisanego powyżej filmu z przetłumaczonymi na niemiecki i hiszpański dane. Jeśli parametr hl ma wartość de, zasób zawiera 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 hl miałby wartość fr, obiekt snippet.localized zawierałby angielski tytuł i opis, ponieważ domyślny język zasobu to angielski, a zlokalizowane szczegóły w języku francuskim nie są dostępne.

      Ważne: parametr hl obsługuje tylko wartości, które identyfikują języki aplikacji obsługiwane przez stronę YouTube. Aby sprawdzić, czy zlokalizowany tekst jest dostępny dla innych języków, musisz pobrać część localizations dla zasobu i filtr, aby sprawdzić, czy zlokalizowany tekst istnieje.

      Musisz na przykład pobrać pełną listę lokalizacji, aby sprawdzić, czy zlokalizowany tekst jest dostępny w języku angielskim Appalachów.

    • Podczas pobierania zasobu uwzględnij localizations w wartości parametru part, aby pobrać wszystkie zlokalizowane szczegóły tego zasobu. Jeśli pobierasz zlokalizowane dane dla języka, który nie jest aktualnym językiem aplikacji YouTube, użyj tej metody, aby pobrać wszystkie lokalizacje, a następnie zastosować filtr, aby sprawdzić, czy są potrzebne zlokalizowane dane.

  • Błędy związane z lokalizowanymi wartościami tekstowymi

    Interfejs API obsługuje też te nowe błędy w przypadku wartości zlokalizowanych tekstów:

    Typ błędu Szczegóły błędu Opis
    badRequest (400) defaultLanguageNotSetError Ten błąd oznacza, że żądanie, które próbuje wstawić lub zaktualizować obiekt localizations dla zasobu, kończy się niepowodzeniem, ponieważ dla tego zasobu nie ustawiono właściwości snippet.defaultLanguage. Metody channels.update, channelSections.insert, channelSections.update, playlists.insert, playlists.update, videos.insertvideos.update obsługują ten błąd.
    badRequest (400) localizationValidationError Ten błąd oznacza, że nie udało się zweryfikować jednej z wartości w obiekcie localizations zasobu. Ten błąd może wystąpić na przykład wtedy, gdy obiekt zawiera nieprawidłowy kod języka. Metody channels.update, channelSections.insert, channelSections.update, playlists.insertplaylists.update obsługują ten błąd.

4 listopada 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Parametr order metody search.list został zaktualizowany, by poinformować, że jeśli sortujesz transmisje na żywo według parametru viewCount, wyniki w interfejsie API zostaną posortowane według liczby jednoczesnych widzów transmisji w czasie, gdy transmisje jeszcze się trwają.

    • Parametr relatedToVideoId metody search.list został zaktualizowany, aby wskazać, że jeśli parametr jest ustawiony, jedynymi obsługiwanymi parametrami są part, maxResults, pageToken, regionCode, relevanceLanguage, safeSearch, type (który musi być ustawiony na video) i fields. Ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API.

    • Zaktualizowaliśmy definicję właściwości snippet.publishedAt zasobu video, aby zaznaczyć, że wartość właściwości, która określa datę i godzinę opublikowania filmu, może się różnić od czasu przesłania filmu. Jeśli na przykład film został przesłany jako prywatny, a później zmieniono jego ustawienie prywatności na publiczny, wartość właściwości określa czas, w którym film został udostępniony publicznie. Zaktualizowana definicja wyjaśnia też sposób wypełniania tej wartości w przypadku filmów prywatnych i niepublicznych.

      Ta zmiana nie odzwierciedla zmiany w działaniu interfejsu API.

    • Definicja właściwości status.publishAt zasobu video została zaktualizowana, aby uwzględnić następujące informacje:

      • Jeśli ustawisz wartość tej właściwości podczas wywoływania metody videos.update, musisz też ustawić wartość właściwości status.privacyStatus na private, nawet jeśli film jest już prywatny.
      • Jeśli żądanie zaplanuje publikację filmu w przeszłości, zostanie on opublikowany natychmiast. W związku z tym ustawienie właściwości status.publishAt na datę i godzinę w przeszłości ma taki sam efekt jak zmiana wartości atrybutu privacyStatusprivate na public.
    • Właściwość contentDetails.contentRating.cncRating zasobu video określa ocenę filmu wydaną przez francuską Commission de classification cinematographique. Ta usługa zastępuje właściwość contentDetails.contentRating.fmocRating, która została wycofana.

    • Definicja atrybutu channel brandingSettings.channel.keywords została zaktualizowana, aby odzwierciedlała fakt, że wartość właściwości zawiera listę ciągów znaków rozdzielonych spacjami, a nie przecinkami, jak to było opisane wcześniej. Ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API.

    • Dokumentacja metody thumbnails.set została zaktualizowana tak, aby trafnie odzwierciedlić, że treść żądania zawiera obraz miniatury, który przesyłasz i powiązujesz z filmem. Treść żądania nie zawiera zasobu thumbnail. 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 activity został zaktualizowany, aby odzwierciedlał fakt, że metoda activities.list nie obejmuje obecnie zasobów związanych z nowymi komentarzami do filmów. Ustawienia snippet.type i contentDetails.comment zasobu zostały również zaktualizowane.

  • Nowe i zaktualizowane błędy

    • Interfejs API obsługuje teraz następujące błędy:

      Szczegóły błędu
      activities.insert
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynainvalidMetadata
      OpisUsługa kind nie pasuje do podanego typu dokumentu tożsamości.
      commentThreads.update
      comments.insert
      comments.update
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynacommentTextTooLong
      OpisZasób comment, który jest wstawiany lub aktualizowany, zawiera zbyt wiele znaków w właściwości snippet.topLevelComment.snippet.textOriginal.
      playlistItems.insert
      playlistItems.update
      Kod odpowiedzi HTTPforbidden (403)
      PrzyczynaplaylistItemsNotAccessible
      OpisŻądanie nie ma odpowiednich uprawnień do wstawienia, aktualizowania lub usuwania określonego elementu playlisty.
      playlists.delete
      playlists.insert
      playlists.update
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynaplaylistForbidden
      OpisTa operacja jest zabroniona lub żądanie nie jest poprawnie autoryzowane.
      search.list
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynainvalidLocation
      OpisWartość parametru location lub locationRadius jest nieprawidłowo sformatowana.
      search.list
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynainvalidRelevanceLanguage
      OpisWartość parametru relevanceLanguage ma nieprawidłowy format.
      subscriptions.insert
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynasubscriptionForbidden
      OpisTen błąd występuje, gdy jest spełniony dowolny z tych warunków:
      • Subskrypcja, którą próbujesz utworzyć, już istnieje
      • Osiągnięto już maksymalną liczbę subskrypcji
      • Próbujesz zasubskrybować własny kanał, co nie jest obsługiwane.
      • Ostatnio utworzono zbyt wiele subskrypcji, dlatego musisz odczekać kilka godzin, zanim spróbujesz ponownie wysłać prośbę.
      videos.update
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynainvalidDefaultBroadcastPrivacySetting
      OpisŻądanie próbuje ustawić nieprawidłowe ustawienie prywatności dla domyślnego kanału.

28 sierpnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Właściwość statistics.favoriteCount zasobu video została wycofana.

      Zgodnie z naszymi zasadami wycofywania ta usługa będzie uwzględniana w zasobach video przez co najmniej rok od momentu opublikowania tego ogłoszenia. Wartość tej właściwości jest jednak zawsze ustawiona na 0.

7 sierpnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Definicja właściwości snippet.tags[] zasobu video została zaktualizowana, aby zawierała więcej informacji o tym, jak serwer interfejsu API oblicza długość wartości tej właściwości. Pamiętaj, że ta aktualizacja nie odzwierciedla zmiany w działaniu interfejsu API.

      Definicja wyjaśnia, że jeśli tag zawiera spację, serwer interfejsu API obsługuje wartość tagu tak, jakby była ona ujęta w cudzysłów, a cudzysłowy są wliczane do limitu znaków. W przypadku limitów znaków tag Foo-Baz zawiera 7 znaków, a tag Foo Baz – 9 znaków.

    • Metoda commentThreads.insert nie obsługuje już parametru shareOnGooglePlus, który wcześniej wskazywał, czy komentarz i odpowiedzi na niego powinny być również opublikowane na profilu Google+ autora. Jeśli żądanie zawiera parametr, serwer interfejsu API zignoruje go, ale w inny sposób obsłuży żądanie.

18 czerwca 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Nowy parametr order metody commentThreads.list określa kolejność, w jakiej odpowiedź interfejsu API powinna wyświetlać wątki komentarzy. Wątki można porządkować według czasu lub trafności. Domyślnie są one sortowane według czasu.

    • Nowa właściwość snippet.defaultAudioLanguage zasobu video określa język używany na domyślnej ścieżce dźwiękowej filmu.

    • Zaktualizowaliśmy definicję właściwości contentDetails.licensedContent zasobu video, aby doprecyzować, że treści muszą zostać wcześniej przesłane na kanał połączony z partnerem treści YouTube, a następnie zgłosić roszczenie przez partnera. Nie odzwierciedla to zmiany w rzeczywistym działaniu interfejsu API.

    • Metody captions.delete, captions.download, captions.insert, captions.list i captions.update obsługują teraz parametr onBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod. Żądania korzystające z tej metody muszą też być autoryzowane za pomocą tokena, który zapewnia dostęp do zakresu https://www.googleapis.com/auth/youtubepartner.

  • Nowe i zaktualizowane błędy

    • Interfejs API obsługuje teraz następujące błędy:

      Szczegóły błędu
      videos.rate
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynaemailNotVerified
      OpisPrzed ocenieniem filmu użytkownik musi potwierdzić swój adres e-mail.
      videos.rate
      Kod odpowiedzi HTTPbadRequest (400)
      PrzyczynavideoPurchaseRequired
      OpisFilmy do wypożyczenia mogą oceniać tylko użytkownicy, którzy je wypożyczyli.
    • Metody subscriptions.deletesubscriptions.insert nie obsługują już błędów accountClosedaccountSuspended.

27 kwietnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowe materiały i metody

    • Nowy zasób videoAbuseReportReason zawiera informacje o przyczynie oznaczenia filmu jako zawierającego treści obraźliwe. Metoda videoAbuseReportReasons.list umożliwia pobranie listy wszystkich powodów, dla których filmy mogą zostać oznaczone.

    • Nowa metoda videos.reportAbuse umożliwia zgłoszenie filmu, który zawiera nieodpowiednie treści. Treść żądania zawiera obiekt JSON, który określa film oznaczony flagą, a także powód, dla którego film został uznany za zawierający treści obraźliwe. Prawidłowe przyczyny można uzyskać za pomocą opisanej powyżej metody videoAbuseReportReason.list.

      Zaktualizowaliśmy też przewodnik po migracji, dodając do niego przykład zgłaszania filmu z zawartością naruszającą zasady. Dzięki tej zmianie interfejs API w wersji 3 obsługuje teraz wszystkie funkcje interfejsu API w wersji 2, które mają być obsługiwane. Te funkcje są też opisane w przewodniku po migracji.

  • Aktualizacje dotychczasowych zasobów i metod

    • Nowy parametr filtra forDeveloper w metodzie search.list ogranicza wyszukiwanie tak, aby pobierać tylko filmy przesłane za pomocą aplikacji lub strony dewelopera. Parametru forDeveloper można używać w połączeniu z opcjonalnymi parametrami wyszukiwania, takimi jak parametr q.

      Dzięki tej funkcji każdy przesłany film jest automatycznie oznaczany numerem projektu powiązanym z aplikacją dewelopera w Google Developers Console.

      Gdy w żądaniu wyszukiwania parametr forDeveloper ma wartość true, serwer interfejsu API identyfikuje dewelopera na podstawie danych uwierzytelniających żądania. Dlatego deweloper może ograniczyć wyniki do filmów przesłanych za pomocą jego własnej aplikacji lub witryny, ale nie do filmów przesłanych za pomocą innych aplikacji lub witryn.

      Nowa funkcja oferuje funkcje podobne, choć nie identyczne, do tych, które były dostępne w tagach dewelopera obsługiwanych przez interfejs API w wersji 2.

    • Nowa właściwość snippet.country zasobu channel umożliwia właścicielom kanałów łączenie ich z określonym krajem.

      Uwaga: aby ustawić właściwość snippet.country dla zasobu channel, musisz zaktualizować właściwość brandingSettings.channel.country.

    • Interfejs API obsługuje teraz kierowanie na zasoby channelSection. Kierowanie na sekcje 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łnić wszystkie ustawienia kierowania.

    • Definicja właściwości contentDetails.duration zasobu video została poprawiona, aby odzwierciedlała fakt, że wartość może być wyrażona w godzinach, dniach itp.

    • Dokumentacja metod channelSections.delete, playlistItems.delete, playlists.delete, subscriptions.delete i videos.delete została poprawiona, dzięki czemu wszystkie metody, które się udają, zwracają kod odpowiedzi HTTP 204 (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) targetInvalidCountry Metody channelSections.insert i channelSections.update zwracają ten błąd, jeśli wstawiony zasób channelSection zawierał nieprawidłową wartość właściwości targeting.countries[].
      badRequest (400) targetInvalidLanguage Metody channelSections.insert i channelSections.update zwracają ten błąd, jeśli wstawiony zasób channelSection zawierał nieprawidłową wartość właściwości targeting.languages[].
      badRequest (400) targetInvalidRegion Metody channelSections.insertchannelSections.update zwracają ten błąd, jeśli wstawiony zasób channelSection zawiera nieprawidłową wartość właściwości targeting.regions[].
      badRequest (400) operationNotSupported Metoda comments.insert zwraca 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 zasobie commentThread właściwość snippet.canReply wskazuje, czy bieżący użytkownik może odpowiedzieć na wątek.
      badRequest (400) invalidChannelId Metoda search.list zwraca ten błąd, jeśli parametr channelId w żądaniu zawiera nieprawidłowy identyfikator kanału.
      badRequest (400) subscriptionForbidden Metoda subscriptions.insert zwraca ten błąd, jeśli użytkownik interfejsu API próbuje zasubskrybować własny kanał użytkownika.
    • Metoda captions.update nie obsługuje już błędów invalidMetadatavideoNotFound.

16 kwietnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Zaktualizowaliśmy przewodnik po migracji, aby wyjaśnić, jak przenieść aplikacje, które nadal korzystają z funkcji komentarzy za pomocą interfejsu API w wersji 2.

    Przewodnik zawiera też informacje o kilku funkcjach komentowania, których nie obsługiwał interfejs API w wersji 2, ale które obsługuje interfejs API w wersji 3. Obejmują one:

    • Pobieranie komentarzy dotyczących kanału
    • Pobieranie wszystkich wątków komentarzy związanych z kanałem, co oznacza, że odpowiedź interfejsu API może zawierać komentarze na temat kanału lub dowolnego z jego filmów.
    • Aktualizowanie tekstu komentarza
    • Oznaczanie komentarza jako spamu
    • Ustawianie stanu moderowania komentarza

  • Przewodnik Subskrybowanie powiadomień push został zaktualizowany, aby uwzględnić informacje o tym, że powiadomienia są przekazywane tylko do centrum Google PubSubHubBub, a nie do centrum Superfeedr, jak wspomniano wcześniej.

9 kwietnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowe zasoby commentThread i comment interfejsu API umożliwiają pobieranie, wstawianie, aktualizowanie, usuwanie i moderowanie komentarzy.

    • Zasób commentThread zawiera informacje o wątku komentarza w YouTube, który obejmuje komentarz najwyższego poziomu i odpowiedzi na ten komentarz (jeśli istnieją) Zasób commentThread może reprezentować komentarze do filmu lub kanału.

      Komentarz najwyższego poziomu i odpowiedzi to w rzeczywistości zasoby comment zagnieżdżone w zasobie commentThread. Pamiętaj, że zasób commentThread nie musi zawierać wszystkich odpowiedzi na komentarz. Jeśli chcesz pobrać wszystkie odpowiedzi na konkretny komentarz, musisz użyć metody comments.list. Oprócz tego niektóre komentarze nie mają odpowiedzi.

      Interfejs API obsługuje następujące metody w przypadku zasobów commentThread:

      • commentThreads.list – pobiera listę wątków komentarzy. Ta metoda służy do pobierania komentarzy powiązanych z konkretnym filmem lub kanałem.
      • commentThreads.insert – utwórz nowy komentarz najwyższego poziomu. Aby odpowiedzieć na istniejący komentarz, użyj metody comments.insert.
      • commentThreads.update – zmodyfikuj komentarz na najwyższym poziomie.

    • Zasób comment zawiera informacje na temat pojedynczego komentarza w YouTube. Zasób comment może reprezentować komentarz do filmu lub kanału. Dodatkowo może to być komentarz najwyższego poziomu lub odpowiedź na komentarz najwyższego poziomu.

      Interfejs API obsługuje te metody dotyczące zasobów comment:

      • comments.list – pobiera listę komentarzy. Za pomocą tej metody możesz pobrać wszystkie odpowiedzi na konkretny komentarz.
      • comments.insert – pozwala utworzyć odpowiedź na istniejący komentarz.
      • comments.update – zmodyfikuj komentarz.
      • comments.markAsSpam – oznaczenie jednego lub więcej komentarzy jako spamu.
      • comments.setModerationStatus – ustaw stan moderacji co najmniej 1 komentarza. Możesz na przykład zatwierdzić komentarz do wyświetlenia publicznego lub odrzucić komentarz jako nieodpowiedni do wyświetlenia. Żądanie do interfejsu API musi zostać autoryzowane przez właściciela kanału lub filmu powiązanego z komentarzami.
      • comments.delete – usuwanie komentarza.

    Pamiętaj, że nowy zakres https://www.googleapis.com/auth/youtube.force-ssl interfejsu API, opisany w historii zmian z 2 kwietnia 2015 r., jest wymagany w przypadku wywołań metod comments.insert, comments.update, comments.markAsSpam, comments.setModerationStatus, comments.delete, commentThreads.insertcommentThreads.update.

  • W nowym przewodniku Subskrybowanie powiadomień push opisujemy nową obsługę powiadomień push interfejsu API w ramach PubSubHubBub, czyli protokołu między serwerami do publikowania i subskrypcji zasobów dostępnych w internecie. Twój serwer wywołania zwrotnego PubSubHubBub może otrzymywać powiadomienia o plikach danych 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ć nową obsługę powiadomień push. Ponieważ interfejs API w wersji 2 obsługiwał wiele innych typów powiadomień push, które nie są obsługiwane w tym interfejsie, wzmianka o obsłudze PubSubHubBub nadal znajduje się w sekcji Wycofane w tym przewodniku.

  • Nowy zakres https://www.googleapis.com/auth/youtube.force-ssl interfejsu API jest teraz prawidłowym zakresem dla każdej metody interfejsu API, która wcześniej obsługiwała zakres https://www.googleapis.com/auth/youtube.

  • Interfejs API obsługuje teraz te błędy:

    Typ błędu Szczegóły błędu Opis
    badRequest (400) invalidRating Metoda videos.rate zwraca ten błąd, jeśli żądanie zawiera nieoczekiwaną wartość parametru rating.
  • Metoda subscriptions.insert nie obsługuje już błędu subscriptionLimitExceeded, który wcześniej wskazywał, że subskrybent określony w żądaniu przekroczył limit liczby subskrypcji.

2 kwietnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy zasób captions reprezentuje ścieżkę z napisami w YouTube. Ścieżka z napisami jest powiązana tylko z jednym filmem w YouTube.

    Interfejs API obsługuje metody listowania, wklejania, aktualizowania, pobierania i usuwania ścieżek napisów.

  • 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-ssl interfejsu API wymaga komunikacji z serwerem interfejsu API przez połączenie SSL.

    Ten nowy zakres zapewnia taki sam dostęp jak zakres https://www.googleapis.com/auth/youtube. W istocie te 2 zakresy są funkcjonalnie identyczne, ponieważ serwer interfejsu API YouTube jest dostępny tylko przez punkt końcowy HTTPS. W rezultacie, mimo że zakres https://www.googleapis.com/auth/youtube nie wymaga połączenia SSL, nie ma innego sposobu na wysłanie żądania do interfejsu API.

    Nowy zakres jest wymagany w przypadku wywołań wszystkich metod zasobu caption.

11 marca 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Przewodnik po migracji interfejsu YouTube Data API (w wersji 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, ale nie przez interfejs API w wersji 2. Wcześniej te same funkcje były dostępne na innych kartach przewodnika. Na przykład nowa funkcja wyjaśniająca, jak aktualizować dane na temat kampanii promocyjnej In-Video na kanale jest dostępna również na karcie Kanały (profile).

  • Zaktualizowaliśmy przewodnik po migracji interfejsu YouTube Data API (v3), aby poinformować, że interfejs API w wersji 3 będzie obsługiwać tę funkcję interfejsu API w wersji 2:

  • Zaktualizowaliśmy przewodnik po migracji interfejsu YouTube Data API (v3), aby poinformować, że te funkcje interfejsu API w wersji 2 nie będą obsługiwane:

    • Pobieranie rekomendacji dotyczących 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żywać interfejsu API w wersji 3, aby znajdować polecane filmy. W tym celu wywołaj metodę activities.list i ustaw wartość parametru home na true.

      W odpowiedzi interfejsu API zasób odpowiada rekomendowanemu filmowi, jeśli wartość właściwości snippet.type to recommendation. W takim przypadku właściwości contentDetails.recommendation.reason i contentDetails.recommendation.seedResourceId będą zawierać informacje o tym, dlaczego film został polecony. Pamiętaj, że nie możemy zagwarantować, że odpowiedź będzie zawierać określoną liczbę polecanych filmów.

    • Pobieranie sugestii kanałów

    • Pobieranie filmów z nowych subskrypcji – interfejs API w wersji 3 nie pobiera listy zawierającej tylko filmy, które zostały ostatnio przesłane na kanały, na które subskrybuje użytkownik interfejsu API. Możesz jednak znajdować nowe filmy w subskrypcji za pomocą interfejsu API w wersji 3. W tym celu wywołaj metodę activities.list i ustaw wartość parametru home na true.

      W odpowiedzi interfejsu API zasób odpowiada nowemu filmowi o subskrypcji, jeśli wartość właściwości snippet.type to upload. Pamiętaj, że nie możemy zagwarantować, że odpowiedź będzie zawierać określoną liczbę nowych filmów w ramach subskrypcji.

    • Obsługa kanałów RSS

    • Powiadomienia push dotyczące aktualizacji kanałów – interfejs API w wersji 2 obsługiwał powiadomienia push za pomocą protokołu Simple Update Protocol (SUP) lub PubSubHubbub w celu monitorowania kanałów aktywności użytkowników w YouTube. Otrzymujemy powiadomienia o nowych subskrypcjach kanałów oraz powiadomieniach o filmach, które zostały ocenione, udostępnione, oznaczone jako ulubione, skomentowane lub przesłane.

      Interfejs API w wersji 3 będzie obsługiwać powiadomienia push przy użyciu protokołu PubSubHubbub, ale powiadomienia będą dotyczyć tylko przesłanych filmów oraz aktualizacji tytułów i opisów filmów.

    • Lokalizacja kanału – interfejs API w wersji 2 użył tagu <yt:location> do identyfikacji lokalizacji użytkownika podanej w publicznym profilu YouTube kanału. Chociaż niektórzy deweloperzy używali tego pola do kojarzenia kanału z określonym krajem, dane z tego pola nie były używane konsekwentnie do tego celu.

    • Ustawianie i pobieranie tagów programisty – interfejs API w wersji 2 umożliwiał powiązanie słów kluczowych lub tagów programisty z filmem w momencie jego przesyłania. Tagi dewelopera nie byłyby wyświetlane użytkownikom YouTube, ale właściciele filmów mogli pobierać filmy, które pasowały do określonego tagu programisty.

      Interfejs API w wersji 3 będzie zawierać funkcję podobną, ale nie identyczną. Deweloper będzie mógł wyszukiwać filmy przesłane przez jego aplikację. W przypadku tej funkcji każde przesłane wideo jest automatycznie otagowane 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 orderby umoż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 są niedostępne.

      Jest kilka wyjątków. Nowo przesłany film, ulubiony film, film, który Ci się podoba, 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 sortowana od najnowszego do najstarszego elementu na podstawie czasu dodania elementów do listy.

      • przesłane przez użytkowników
      • ulubione filmy
      • polubione filmy
      • historia oglądania

      Pamiętaj jednak, że nowy element dodany do playlisty „Obejrzyj później” jest dodawany jako ostatni element na tej liście, więc jest ona sortowana od najstarszego do najnowszego elementu.

    • Przetwarzanie wsadowe – interfejs API w wersji 3 obsługuje jedno z zastosować przetwarzania wsadowego, które było obsługiwane przez interfejs API w wersji 2. Metody channels.list, channelSections.list, guideCategories.list, playlistItems.list, playlists.list, subscriptions.list, videoCategories.list i videos.list interfejsu API w wersji 3 obsługują parametr id, który można wykorzystać do określenia listy identyfikatorów (identyfikatorów filmów, kanałów itp.) rozdzielonych przecinkami. Korzystając z tych metod, możesz pobrać listę wielu zasobów w ramach jednego żądania.

    Dzięki tym zmianom przewodnik zawiera teraz wszystkie funkcje obsługiwane przez starą wersję interfejsu API (w wersji 2), które zostaną wycofane w obecnej wersji interfejsu API (w wersji 3).

4 marca 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Metody channelSections.delete i channelSections.update obsługują teraz parametr onBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod.

  • Wycofane zostały te właściwości i ich właściwości podrzędne:

    • brandingSettings.image.backgroundImageUrl
    • brandingSettings.image.largeBrandedBannerImageImapScript
    • brandingSettings.image.largeBrandedBannerImageUrl
    • brandingSettings.image.smallBrandedBannerImageImapScript
    • brandingSettings.image.smallBrandedBannerImageUrl

    Uwaga: żadna z tych właściwości nie była objęta zasadami wycofywania interfejsu API.

  • Nowa właściwość contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasons zasobu video zawiera 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) channelNotFound Metoda channels.update zwraca ten błąd, jeśli parametr id żądania określa kanał, którego nie można znaleźć.
    badRequest (400) manualSortRequiredinvalidValue Metody playlistItems.insert i playlistItems.update zwracają ten błąd, jeśli w żądaniu zostanie podjęta próba ustawienia pozycji elementu playlisty, ale playlista nie korzysta z ręcznego sortowania. Na przykład elementy playlisty mogą być sortowane według daty lub popularności. Możesz rozwiązać ten problem, usuwając element snippet.position z zasobu wysłanego w treści żądania. Jeśli chcesz, by element playlisty miał określoną pozycję na liście, musisz najpierw zmienić ustawienie kolejności playlisty na Ręcznie. To ustawienie można zmienić w Menedżerze filmów w YouTube.
    forbidden (403) channelClosed Metoda playlists.list zwraca ten błąd, jeśli parametr channelId zawiera zamknięty kanał.
    forbidden (403) channelSuspended Metoda playlists.list zwraca ten błąd, jeśli parametr channelId żądania określa kanał, który został zawieszony.
    forbidden (403) playlistForbidden Metoda playlists.list zwraca ten błąd, jeśli parametr id żądania nie obsługuje żądania lub żądanie nie jest prawidłowo autoryzowane.
    notFound (404) channelNotFound Metoda playlists.list zwraca ten błąd, jeśli parametr channelId żądania określa kanał, którego nie można znaleźć.
    notFound (404) playlistNotFound Metoda playlists.list zwraca ten błąd, jeśli parametr id żądania określa playlistę, której nie można znaleźć.
    notFound (404) videoNotFound Metoda videos.list zwraca ten błąd, jeśli parametr id żądania określa film, którego nie można znaleźć.
    badRequest (400) invalidRating Metoda videos.rate zwraca ten błąd, jeśli żądanie zawiera nieoczekiwaną wartość parametru rating.

2 marca 2015 r.

Ta aktualizacja zawiera następujące zmiany:

14 stycznia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Zaktualizowaliśmy przewodnik po migracji interfejsu YouTube Data API (v3), aby wyjaśnić, jak przesyłać filmy za pomocą JavaScriptu za pomocą interfejsu API w wersji 3. (szczegóły 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 dotyczy rzeczywistej zmiany interfejsu API, a dostępności nowego przykładowego kodu do przesyłania filmów za pomocą kodu JavaScript po stronie klienta.

    Ze względu na obsługę przesyłania filmów za pomocą biblioteki klienta JavaScript i CORS w przewodniku po migracji nie jest już wymienione przesyłanie z poziomu przeglądarki jako funkcję, która może zostać wycofana w interfejsie API w wersji 3.

  • Dokumentacja metody videos.insert została zaktualizowana, aby zawierać nowy przykład kodu JavaScript opisanego powyżej. Zaktualizowaliśmy też listę przykładowych kodów JavaScript dla interfejsu YouTube Data API (v3).

11 listopada 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Koszt limitu dla metody search.list został zmieniony na 100 jednostek.

    Ważne: w wielu przypadkach możesz użyć innych metod API, aby pobierać informacje niższym kosztem. Oto 2 sposoby znajdowania filmów przesłanych na kanał GoogleDevelopers.

    • Koszt przydziału: 100 jednostek

      Wywołaj metodę search.list i wyszukaj GoogleDevelopers.

    • Koszt przydziału: 6 jednostek

      Aby znaleźć prawidłowy identyfikator kanału, wywołaj metodę channels.list. Ustaw parametr forUsername na GoogleDevelopers, a parametr part na contentDetails. W odpowiedzi interfejsu API właściwość contentDetails.relatedPlaylists.uploads określa identyfikator playlisty dla filmów przesłanych na kanał.

      Następnie wywołaj metodę playlistItems.list i ustaw parametr playlistId na przechwycony identyfikator, a parametr part na snippet.

8 października 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Zasób channel zawiera 2 nowe właściwości:

    • Właściwość status.longUploadsStatus wskazuje, czy na kanał mogą być przesyłane filmy dłuższe niż 15 minut. Ta właściwość jest zwracana tylko wtedy, gdy właściciel kanału autoryzował żądanie interfejsu API. Prawidłowe wartości właściwości to:

      • allowed – na kanał mogą być przesyłane filmy dłuższe niż 15 minut.
      • eligible – kanał może przesyłać filmy dłuższe niż 15 minut, ale musi najpierw włączyć tę funkcję.
      • disallowed – kanał nie może lub nie może przesyłać filmów dłuższych niż 15 minut.

      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.useSmartTiming wskazuje, czy kampania promocyjna na kanale korzysta z funkcji inteligentnego czasu. Ta funkcja służy do wyświetlania promocji w tych momentach filmu, w których jest większa szansa na to, że będą klikane, a nie zakłócają oglądania. Ta funkcja wybiera też jedną promocję do wyświetlania w każdym filmie.

  • Definicje właściwości zasobu video snippet.title i snippet.categoryId zostały zaktualizowane, aby wyjaśnić sposób obsługi interfejsu API wywołań metody videos.update. Jeśli wywołujesz tę metodę, aby zaktualizować część snippet zasobu video, musisz ustawić wartość dla obu tych właściwości.

    Jeśli spróbujesz zaktualizować część snippet zasobu video i nie ustawisz wartości dla obu tych właściwości, interfejs API zwróci błąd invalidRequest. Zaktualizowano również opis tego błędu.

  • Właściwość contentDetails.contentRating.oflcRating zasobu video, która identyfikuje ocenę filmu wydaną przez nowozelandzki urząd ds. klasyfikacji filmów i literatury, obsługuje teraz 2 nowe oceny: oflcRp13 i oflcRp16. Odpowiednio odpowiadają one klasyfikacji RP13 i RP16.

  • Metoda channelBanners.insert obsługuje teraz ten błąd:

    Typ błędu Szczegóły błędu Opis
    badRequest bannerAlbumFull Album z grafiką kanału w YouTube właściciela kanału zawiera zbyt wiele obrazów. Właściciel kanału powinien wejść na stronę http://photos.google.com, przejść na stronę albumów i usunąć niektóre zdjęcia z tego albumu.

12 września 2014 r.

Ta aktualizacja zawiera następujące zmiany:

13 sierpnia 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Metoda subscriptions.insert obsługuje teraz ten błąd:

    Typ błędu Szczegóły błędu Opis
    badRequest subscriptionLimitExceeded Subskrybent określony w żądaniu przekroczył limit liczby subskrypcji. W ciągu kilku godzin możesz spróbować dodać więcej subskrypcji.

12 sierpnia 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy przewodnik Przenoszenie aplikacji na interfejs YouTube Data API (w wersji 3) wyjaśnia, jak korzystać z interfejsu YouTube Data API (w wersji 3), aby wykonywać funkcje dostępne w interfejsie YouTube Data API (w wersji 2). Starszy interfejs API został oficjalnie wycofany 4 marca 2014 r. Ten przewodnik ma pomóc Ci w przeniesieniu aplikacji, które nadal używają interfejsu API w wersji 2, na najnowszą wersję interfejsu API.

8 lipca 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Metoda playlists.insert obsługuje teraz ten błąd:

    Typ błędu Szczegóły błędu Opis
    badRequest maxPlaylistExceeded Ten błąd występuje, gdy nie można utworzyć playlisty, ponieważ na kanale jest już maksymalna liczba playlist.

18 czerwca 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Opis każdej metody interfejsu API został zaktualizowany, aby uwzględniał koszt limitu wywołania tej metody. Podobnie definicje parametrów part zostały zaktualizowane, aby określić limit kosztów każdej części, którą można pobrać za pomocą wywołania interfejsu API. Na przykład wywołanie metody subscriptions.insert ma koszt przydziału wynoszący około 50 jednostek. Zasób subscription składa się z 3 części (snippet, contentDetailssubscriberSnippet), a każda z nich ma koszt 2 jednostek.

    Pamiętaj, że limity mogą ulec zmianie bez ostrzeżenia.

  • W źródle video są teraz dostępne 43 nowe systemy oceny treści, które określają oceny, które filmy otrzymały od różnych krajowych agencji ocenionych.

28 maja 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Metoda search.list obsługuje teraz parametry location i locationRadius, które umożliwiają wyszukiwanie filmów powiązanych z lokalizacją geograficzną. Aby można było pobrać wyniki na podstawie lokalizacji, żądanie musi określać wartość obu parametrów. Interfejs API zwróci błąd, jeśli żądanie zawiera tylko jeden z tych 2 parametrów.

    • Parametr location określa współrzędne geograficzne w środku koła.

    • Parametr locationRadius określa maksymalną odległość, na jaką od centrum obszaru może znajdować się lokalizacja powiązana z filmem, aby film był nadal uwzględniany w wynikach wyszukiwania.

13 maja 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Właściwość invideoPromotion.items[] zasobu channel została zaktualizowana, aby wskazać, że na kanale można zwykle ustawić tylko jeden promowany element. Jeśli spróbujesz wstawić zbyt wiele promowanych produktów, interfejs API zwróci błąd tooManyPromotedItems z kodem stanu HTTP 400.

  • Zasób channelSection może teraz zawierać informacje o kilku nowych typach polecanych treści. Właściwość snippet.type zasobu channelSection obsługuje teraz te wartości:

    • postedPlaylists – playlisty opublikowane przez właściciela kanału w obszarze aktywności na kanale.
    • postedVideos – filmy, które właściciel kanału opublikował w strumieniu aktywności kanału;
    • subscriptions – kanały, które zasubskrybował właściciel kanału.

  • Nowa właściwość contentDetails.contentRating.ifcoRating zasobu video określa ocenę, jaką film otrzymał od irlandzkiego biura klasyfikacji filmów.

  • Zaktualizowaliśmy definicję właściwości position.cornerPosition zasobu watermark, aby zaznaczyć, że znak wodny jest zawsze widoczny w prawym górnym rogu odtwarzacza.

  • Zaktualizowano definicję parametru q w metodzie search.list, aby wskazać, że w wyszukiwanym haśle można użyć operatora logicznego NOT (-), aby wykluczyć filmy powiązane z określonym hasłem wyszukiwania. Wartość może też zawierać operator logiczny LUB (|), aby znaleźć filmy powiązane z jednym z kilku wyszukiwanych haseł.

  • Zaktualizowaliśmy definicję właściwości pageInfo.totalResults zwracaną w odpowiedzi interfejsu API na wywołanie search.list, aby zaznaczyć, że wartość jest przybliżona i może nie przedstawiać dokładnej wartości. Poza tym maksymalna wartość to 1 000 000. Nie należy używać tej wartości do tworzenia linków podziału na strony. Zamiast tego użyj wartości właściwości nextPageToken i prevPageToken, aby określić, czy chcesz wyświetlać linki podziału na strony.

  • Metody watermarks.set i watermarks.unset zostały zaktualizowane, aby odzwierciedlić fakt, że interfejs API zwraca kod odpowiedzi HTTP 204 w przypadku udanych żądań kierowanych do tych metod.

2 maja 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy zasób i18nLanguage określa język aplikacji obsługiwany przez stronę YouTube. Język aplikacji może być też nazywany językiem interfejsu. W przypadku witryny YouTube język aplikacji mógł być wybierany automatycznie na podstawie ustawień konta Google, języka przeglądarki lub lokalizacji adresu IP. Użytkownik mógł też ręcznie wybrać odpowiedni język interfejsu w stopce witryny YouTube.

    Interfejs API obsługuje metodę wyświetlania listy obsługiwanych języków aplikacji. Obsługiwanych języków można używać jako wartości parametru hl przy wywoływaniu metod interfejsu API, takich jak videoCategories.list i guideCategories.list.

  • Nowy zasób i18nRegion identyfikuje 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 danych heurystycznych, takich jak domena YouTube lub lokalizacja adresu IP użytkownika. Użytkownik mógł też ręcznie wybrać odpowiedni region treści w stopce witryny YouTube.

    Interfejs API obsługuje metodę listowania obsługiwanych regionów treści. Obsługiwane kody regionów mogą być używane jako wartość parametru regionCode podczas wywoływania metod interfejsu API, takich jak search.list, videos.list, activities.listvideoCategories.list.

7 kwietnia 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy zasób channelSection zawiera informacje o zestawie filmów, które kanał wybrał do wyróżnienia. Może to być na przykład sekcja z najnowszymi lub najpopularniejszymi filmami z kanału albo z playlist.

    Interfejs API obsługuje metody list, insert, update i delete dotyczące listy sekcji kanału. Możesz pobrać listę sekcji kanału uwierzytelnionego użytkownika, podając konkretny identyfikator kanału lub listę unikalnych identyfikatorów sekcji kanału.

    Zaktualizowaliśmy też dokumentację błędów, aby zawierała opisy komunikatów o błędach obsługiwanych przez interfejs API w przypadku tych nowych metod.

  • Definicja obiektu fileDetails zasobu video została zaktualizowana, aby wyjaśnić, że obiekt ten zostanie zwrócony tylko wtedy, gdy wartość właściwości processingDetails.fileDetailsAvailability filmu wynosi available.

    Zmieniliśmy też definicję obiektu suggestions zasobu video, aby wyjaśnić, że obiekt ten zostanie zwrócony tylko wtedy, gdy właściwość processingDetails.tagSuggestionsAvailability lub processingDetails.editorSuggestionsAvailability filmu ma wartość available.

  • Zaktualizowaliśmy dokumentację metod videos.insert i videos.update, by odzwierciedlić możliwość ustawienia właściwości status.publishAt podczas ich wywoływania.

  • Zaktualizowaliśmy definicję obiektu invideoPromotion zasobu channel, aby wyjaśnić, że obiekt może pobrać tylko właściciel kanału.

  • Lista parametrów metody videos.rate została zaktualizowana, aby odzwierciedlić fakt, że ta metoda nie obsługuje parametru onBehalfOfContentOwner. To był błąd w dokumentacji, ponieważ videos.rate z ustawionym tym parametrem zwraca błąd 500.

31 marca 2014 r.

Ta aktualizacja zawiera następujące zmiany:

13 marca 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Interfejs API obsługuje teraz część contentOwnerDetails w przypadku zasobów channel. Nowa część zawiera dane kanału, które są istotne w przypadku partnerów YouTube połączonych z kanałem, w tym identyfikator właściciela treści połączonego z kanałem oraz datę i godzinę połączenia właściciela treści z kanałem. Pamiętaj, że ta nowa część nie podlega zasadom wycofywania.

  • Dokumentacja zawiera teraz informacje o maksymalnej obsługiwanej długości znaków w przypadku tych właściwości:

    Zasób Właściwość Maksymalna długość
    channel invideoPromotion.items[].customMessage 40 znaków
    video snippet.title 100 znaków
    video snippet.description 5000 bajtów
    video snippet.tags 500 znaków. Pamiętaj, że wartością właściwości jest lista, a przecinki między elementami listy wliczają się do limitu.
  • Właściwość brandingSettings.watch.featuredPlaylistId zasobu channel został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:

  • Dokumentacja błędów zawiera 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) invalidCriteria Metoda channels.list zwraca ten błąd, jeśli żądanie określa parametry filtra, których nie można używać razem.
    badRequest (400) channelTitleUpdateForbidden Metoda channels.update zwraca ten błąd, jeśli spróbujesz zaktualizować część brandingSettings kanału i zmienić wartość właściwości brandingSettings.channel.title. (Pamiętaj, że interfejs API nie zwróci błędu, jeśli pominiesz tę właściwość).
    badRequest (400) invalidRecentlyUploadedBy Metoda channels.update zwraca ten błąd, jeśli właściwość invideoPromotion.items[].id.recentlyUploadedBy określa nieprawidłowy identyfikator kanału.
    badRequest (400) invalidTimingOffset Metoda channels.update zwraca ten błąd, jeśli część invideoPromotion określa nieprawidłowy przesunięcie czasu.
    badRequest (400) tooManyPromotedItems Metoda channels.update zwraca ten błąd, jeśli część invideoPromotion określa więcej niż dozwoloną liczbę promowanych elementów.
    forbidden (403) promotedVideoNotAllowed Metoda channels.update zwraca ten błąd, jeśli właściwość invideoPromotion.items[].id.videoId określa identyfikator filmu, który nie może zostać znaleziony lub użyty jako promowany element.
    forbidden (403) websiteLinkNotAllowed Metoda channels.update zwraca ten błąd, jeśli właściwość invideoPromotion.items[].id.websiteUrl określa adres URL, który jest niedozwolony.
    required (400) requiredTimingType Metoda channels.update zwraca ten błąd, jeśli żądanie nie określa domyślnych ustawień czasu, w którym YouTube ma wyświetlać promowany element.
    required (400) requiredTiming Metoda channels.update musi określać obiekt invideoPromotion.items[].timing dla każdego promowanego produktu.
    required (400) requiredWebsiteUrl Metoda channels.update musi określać właściwość invideoPromotion.items[].id.websiteUrl dla każdego promowanego produktu.
    badRequest (400) invalidPublishAt Metoda videos.insert zwraca ten błąd, jeśli metadane żądania określają nieprawidłowy zaplanowany czas publikacji.

4 marca 2014 r.

Ta aktualizacja zawiera następujące zmiany:

5 grudnia 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Dokumentacja metody search.list została zaktualizowana, aby odzwierciedlić, że podczas przesyłania żądania wyszukiwania nie musisz określać wartości dla dokładnie jednego parametru filtra. Możesz jednak ustawić wartość dla 0 parametrów filtra lub dla 1 parametru filtra.

  • Zaktualizowaliśmy definicje parametrów metody search.list, aby zaznaczyć, że musisz ustawić wartość parametru type na video, jeśli określasz też wartość dowolnego z tych parametrów:

    • eventType
    • videoCaption
    • videoCategoryId
    • videoDefinition
    • videoDimension
    • videoDuration
    • videoEmbeddable
    • videoLicense
    • videoSyndicated
    • videoType

  • Minimalny rozmiar przesyłanych obrazów banera kanału został zmniejszony do 2048 x 1152 pikseli. (wcześniej minimalny rozmiar wynosił 2120 x 1192 piksele). Pamiętaj też, że w dokumentacji zasobu channel podano maksymalne rozmiary wszystkich obrazów banera obsługiwanych przez interfejs API. Na przykład maksymalny rozmiar obrazu brandingSettings.image.bannerTvImageUrl w przypadku aplikacji na telewizory to 2120 x 1192 piksele, ale rzeczywisty obraz może mieć 2048 x 1152 piksele. W Centrum pomocy YouTube znajdziesz dodatkowe wskazówki dotyczące optymalizacji grafiki kanału pod kątem wyświetlania na różnych urządzeniach.

  • Zaktualizowaliśmy definicje kilku właściwości zasobów channel, aby odzwierciedlały te informacje:

    • Wartość właściwości brandingSettings.channel.description może mieć maksymalnie 1000 znaków.
    • Właściwość brandingSettings.channel.featuredChannelsTitle może mieć maksymalnie 30 znaków.
    • W usłudze brandingSettings.channel.featuredChannelsUrls[] można teraz wyświetlać listę maksymalnie 100 kanałów.
    • Jeśli jest ustawiona, wartość właściwości brandingSettings.channel.unsubscribedTrailer musi określać identyfikator filmu publicznego lub niepublicznego należącego do właściciela kanału.

  • Metoda channels.update obsługuje teraz aktualizacje właściwości invideoPromotion.items[].promotedByContentOwner. Ta właściwość wskazuje, czy nazwa właściciela treści będzie widoczna podczas wyświetlania promocji. Można go ustawić tylko wtedy, gdy żądanie interfejsu API, które ustawia wartość właściwości, jest wysyłane w imieniu właściciela treści za pomocą parametru onBehalfOfContentOwner.

  • Metody playlistItems.list i playlistItems.insert obsługują teraz parametr onBehalfOfContentOwner, który jest już obsługiwany w przypadku kilku innych metod.

  • Właściwość contentDetails.contentRating.acbRating może teraz określać ocenę wydaną 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.catvRating i contentDetails.contentRating.catvfrRating wskazują oceny otrzymane przez film w kanadyjskim systemie klasyfikacji telewizyjnej i francuskojęzycznym systemie oceny Régie du cinéma, który jest używany w Quebecu.

  • Nowa właściwość snippet.assignable zasobu videoCategory wskazuje, czy z daną kategorią filmów można powiązać zaktualizowane lub nowo przesłane filmy.

  • Dodaliśmy przykłady kodu dla tych metod:

24 października 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Interfejs API zawiera 2 dodatkowe funkcje ułatwiające znajdowanie i prezentowanie treści z transmisji na żywo:

    Nowa właściwość snippet.liveBroadcastContent w wynikach wyszukiwania wskazuje, czy film lub zasób kanału zawiera treści z transmisji na żywo. Prawidłowe wartości właściwości to upcoming, active i none.

    • Nowa właściwość snippet.liveBroadcastContent zasobu video wskazuje, czy film jest nadchodzącą czy aktywną transmisją na żywo. Poniżej znajdziesz listę możliwych wartości tej właściwości:

      • upcoming – film jest transmisją na żywo, która jeszcze się nie rozpoczęła.
      • active – film jest transmitowaną 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ść liveStreamingDetails zasobu video to obiekt zawierający metadane transmisji wideo na żywo. Aby pobrać te metadane, dodaj liveStreamingDetails do listy części zasobu w wartości parametru part. Metadane zawierają te nowe właściwości:

      Aby pobrać te metadane, dodaj liveStreamingDetails do wartości parametru part podczas wywoływania metody videos.list, videos.insert lub videos.update.

    1 października 2013 r. udostępniliśmy dwie inne funkcje służące do identyfikowania transmisji na żywo – parametr eventType metody search.list i właściwość snippet.liveBroadcastContent wyniku wyszukiwania.

  • Metoda videos.insert obsługuje teraz parametr notifySubscribers, który określa, czy YouTube ma wysłać powiadomienie o nowym filmie do użytkowników, którzy subskrybują kanał tego filmu. Wartość domyślna tego parametru to True, 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 ustawić wartość False, aby uniknąć wysyłania powiadomień o każdym nowym filmie do subskrybentów kanału.

  • Lista właściwości, które można modyfikować podczas wywoływania metody channels.update, została zaktualizowana, tak aby zawierała właściwości invideoPromotion.items[].customMessage i invideoPromotion.items[].websiteUrl. Dodatkowo lista została zmodyfikowana, aby zidentyfikować właściwości brandingSettings, które można modyfikować. Te właściwości brandingSettings można było już modyfikować, więc zmiana w dokumentacji nie odzwierciedla zmian w istniejących funkcjach interfejsu API.

  • Metody playlists.insert, playlists.updateplaylists.delete obsługują teraz parametr onBehalfOfContentOwner, który jest już obsługiwany przez kilka innych metod.

  • Metoda playlists.insert obsługuje teraz parametr onBehalfOfContentOwnerChannel, który jest już obsługiwany w kilku innych metodach.

  • Właściwość contentDetails.contentRating.tvpgRating zasobu video obsługuje teraz wartość pg14, która odpowiada ocenie TV-14.

  • Definicja właściwości snippet.liveBroadcastContent, która jest częścią wyników wyszukiwania, została poprawiona, aby odzwierciedlała fakt, że live jest prawidłową wartością właściwości, ale active nie jest prawidłową wartością właściwości.

  • Właściwość contentDetails.contentRating.mibacRating zasobu video obsługuje teraz 2 dodatkowe oceny:

    • mibacVap (VAP) – dzieciom powinno towarzyszyć osoba dorosła.
    • 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[].promotedByContentOwner zasobu channel wskazuje, czy nazwa właściciela treści będzie wyświetlana podczas wyświetlania promocji. To pole można ustawić tylko wtedy, gdy żądanie do interfejsu API ustawiające wartość jest wysyłane w imieniu właściciela treści. Więcej informacji znajdziesz w przypadku parametru onBehalfOfContentOwner.

1 października 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy obiekt auditDetails zasobu channel zawiera dane o kanale, które sieć wielokanałowa oceni podczas podejmowania decyzji o zaakceptowaniu lub odrzuceniu danego kanału. Pamiętaj, że każde żądanie interfejsu API, które pobiera tę część zasobu, musi zawierać token autoryzacji z zakresem https://www.googleapis.com/auth/youtubepartner-channel-audit. Poza tym każdy token korzystający z tego zakresu musi zostać unieważniony, gdy sieć wielokanałowa zdecyduje się zaakceptować lub odrzucić kanał lub w ciągu 2 tygodni od daty jego wydania.

  • Właściwość invideoPromotion.items[].id.type zasobu channel obsługuje teraz wartość recentUpload, która wskazuje, że promowany element to ostatnio przesłany film z określonego kanału.

    Domyślnie jest to kanał, dla którego skonfigurowano dane dotyczące promocji In-Video. Możesz jednak promować ostatnio przesłany film z innego kanału, ustawiając wartość nowej właściwości invideoPromotion.items[].id.recentlyUploadedBy na identyfikator tego kanału.

  • Zasób channel zawiera 3 nowe właściwości – brandingSettings.image.bannerTvLowImageUrl, brandingSettings.image.bannerTvMediumImageUrl, brandingSettings.image.bannerTvHighImageUrl – określające adresy URL obrazów banerów wyświetlanych na stronach kanałów w aplikacjach telewizyjnych.

  • Nowa właściwość snippet.liveBroadcastContent w wynikach wyszukiwania wskazuje, czy zasób filmu lub kanału zawiera treści na żywo. Prawidłowe wartości właściwości to upcoming, active i none.

    • W przypadku zasobu video wartość upcoming wskazuje, że film jest transmisją na żywo, która jeszcze się nie rozpoczęła, a wartość active wskazuje, że film jest trwającą transmisją na żywo.
    • W przypadku zasobu channel wartość upcoming oznacza, że na kanale jest zaplanowana transmisja, która jeszcze się nie rozpoczęła, a wartość acive oznacza, że na kanale trwa transmisja na żywo.

  • W zasobie watermark właściwość targetChannelId zmieniła się z obiektu w ciąg znaków. Zamiast zawierać usługę podrzędną, która określa identyfikator kanału YouTube, do którego odwołuje się obraz znaku wodnego, usługa targetChannelId określa teraz tę wartość samodzielnie. W związku z tym właściwość targetChannelId.value zasobu została usunięta.

  • Metoda thumbnails.set obsługuje teraz parametr onBehalfOfContentOwner, który jest już obsługiwany w kilku innych metodach.

  • Metoda search.list obsługuje teraz parametr eventType, który ogranicza wyszukiwanie do zwracania tylko aktywnych, nadchodzących lub zakończonych zdarzeń.

  • Nowa właściwość contentDetails.contentRating.mibacRating określa ocenę, jaką film otrzymał od włoskiego Ministerstwa Beni e delle Attivita i del Turismo.

  • Interfejs API obsługuje teraz te błędy:

    Typ błędu Szczegóły błędu Opis
    badRequest invalidImage Metoda thumbnails.set zwraca ten błąd, jeśli przesłana zawartość obrazu jest nieprawidłowa.
    forbidden videoRatingDisabled Metoda videos.rate zwraca 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 watermark identyfikuje obraz wyświetlany podczas odtwarzania filmów na określonym kanale. Możesz też określić kanał docelowy, do którego będzie prowadzić link z obrazem, a także szczegóły dotyczące czasu, który określa, kiedy znak wodny ma się wyświetlać podczas odtwarzania filmu, oraz jak długo ma być widoczny.

    Metoda watermarks.set przesyła i ustawia obraz znaku wodnego kanału. Metoda watermarks.unset usuwa obraz znaku wodnego kanału.

    Dokumentacja błędów zawiera opisy komunikatów o błędach obsługiwanych przez interfejs API w przypadku metod watermarks.setwatermarks.unset.

  • Nowa właściwość statistics.hiddenSubscriberCount zasobu channel zawiera wartość logiczną, która wskazuje, czy liczba subskrybentów kanału jest ukryta. Jeśli liczba subskrybentów kanału jest widoczna publicznie, wartość właściwości wynosi false.

  • Metoda playlists.list obsługuje teraz parametry onBehalfOfContentOwneronBehalfOfContentOwnerChannel. Oba parametry są już obsługiwane w przypadku kilku innych metod.

  • Metoda videos.list obsługuje teraz parametr regionCode identyfikujący region treści, dla którego należy pobrać wykres. Tego parametru można używać tylko w połączeniu z parametrem chart. Wartością tego parametru jest kod kraju zgodny ze standardem ISO 3166-1 alfa-2.

  • Dokument error documentation opisuje 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
    forbidden insufficientPermissions Zakresy 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 invideoPromotion zasobu channel ma te nowe i zaktualizowane właściwości:

    • Interfejs API obsługuje teraz możliwość określenia witryny jako promowanego produktu. Aby to zrobić, ustaw wartość właściwości invideoPromotion.items[].id.type na website i użyj nowej właściwości invideoPromotion.items[].id.websiteUrl, aby określić adres URL. Użyj też nowej właściwości invideoPromotion.items[].customMessage, aby zdefiniować komunikat niestandardowy, który będzie wyświetlany w ramach promocji.

      Linki mogą prowadzić do powiązanych witryn, witryn sprzedawców lub serwisów społecznościowych. Zapoznaj się z instrukcjami w Centrum pomocy YouTube dotyczącymi powiązanych witryn i witryn sprzedawców, aby dowiedzieć się więcej o włączaniu linków do swoich treści.

      Dodając linki promocyjne, zgadzasz się, aby nie były one używane do przekierowywania ruchu do nieautoryzowanych witryn oraz że będą one zgodne z zasadami AdWords i zasadami dotyczącymi reklam w YouTube, wytycznymi dla społeczności YouTube oraz Warunkami korzystania z usługi YouTube.

    • Właściwości związane z ustawieniami czasu wyświetlania promowanych elementów podczas odtwarzania filmu zostały przebudowane:

      • Obiekt invideoPromotion.timing został przeniesiony do folderu invideoPromotion.items[].timing. Ten obiekt umożliwia teraz dostosowywanie danych dotyczących czasu dla każdego promowanego elementu na liście invideoPromotion.items[].

      • Nowy obiekt invideoPromotion.defaultTiming określa domyślne ustawienia czasu trwania promocji. Te ustawienia określają, kiedy wyświetlany jest promowany produkt podczas odtwarzania jednego z filmów z Twojego kanału. Możesz zastąpić domyślne ustawienie czasu dla dowolnego promowanego produktu za pomocą obiektu invideoPromotion.items[].timing.

      • Nowa właściwość invideoPromotion.items[].timing.durationMs określa czas (w milisekundach), przez jaki ma się wyświetlać promocja. Obiekt invideoPromotion.defaultTiming zawiera też pole durationMs, które określa domyślny czas wyświetlania promowanego produktu.

    • Właściwości invideoPromotion.items[].type i invideoPromotion.items[].videoId zostały przeniesione do obiektu invideoPromotion.items[].id.

  • Metoda subscriptions.list obsługuje teraz parametry onBehalfOfContentOwneronBehalfOfContentOwnerChannel. Oba parametry są już obsługiwane w przypadku kilku innych metod.

  • W odpowiedzi interfejsu API na żądanie thumbnails.set wartość właściwości kind zmieniła się z youtube#thumbnailListResponse na youtube#thumbnailSetResponse.

  • Dodano przykłady kodu dla tych metod:

    Zwróć uwagę, że przykład w Pythonie dla metody playlistItems.insert również został usunięty, ponieważ zademonstrowana przez niego funkcja jest teraz obsługiwana przez metodę videos.rate.

  • error documentation opisuje następujący nowy błąd kontekstu żądania, który może wystąpić w przypadku każdej metody interfejsu API, która obsługuje parametr żądania mine:

    Typ błędu Szczegóły błędu Opis
    badRequest invalidMine Parametru mine nie można używać w żądaniach, w których uwierzytelniony użytkownik jest partnerem YouTube. Musisz usunąć parametr mine, uwierzytelnić się jako użytkownik YouTube, usuwając parametr onBehalfOfContentOwner, lub działać jako jeden z kanałów partnera, podając parametr onBehalfOfContentOwnerChannel, jeśli jest on dostępny w przypadku wywoływanej metody.

8 sierpnia 2013 r.

Ta aktualizacja zawiera następujące zmiany:

30 lipca 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • W zasobie channelBanner wartość właściwości kind zmieniła się z youtube#channelBannerInsertResponse na youtube#channelBannerResource. Ten zasób jest zwracany w odpowiedzi na żądanie channelBanners.insert.

  • Nowa właściwość brandingSettings.channel.profileColor zasobu channel określa wyróżniający kolor, który uzupełnia treść kanału. Wartość właściwości to znak funta (#), po którym następuje 6-znakowy ciąg szesnastkowy, np. #2793e6.

  • Umożliwia on teraz określenie, czy subskrypcja dotyczy wszystkich działań na kanale czy tylko nowo przesłanych filmów. Nowa właściwość subscription zasobu subscription określa typy działań, o których subskrybent otrzyma powiadomienie. Prawidłowe wartości właściwości to all i uploads.

  • Metoda videos.list obsługuje nowe parametry służące do pobierania listy najpopularniejszych filmów w YouTube:

    • Parametr chart identyfikuje wykres, który chcesz pobrać. Obecnie obsługiwana jest tylko wartość mostPopular. Pamiętaj, że parametru chart jest parametrem filtra, co oznacza, że nie można go używać w tym samym żądaniu co inne parametry filtra (id i myRating).
    • Parametr videoCategoryId określa kategorię wideo, dla której należy pobrać wykres. Tego parametru można używać tylko w połączeniu z parametrem chart. Domyślnie wykresy nie są ograniczone do konkretnej kategorii.

  • Nowa właściwość topicDetails.relevantTopicIds[] zasobu video zawiera listę identyfikatorów tematów Freebase, które są powiązane z filmem lub jego treścią. Tematy te mogą pojawiać się w filmie lub pojawiać się w nim.

  • Nazwa właściwości recordingDetails.location.elevation zasobu video została zmieniona na recordingDetails.location.altitude, a nazwa jej usługi fileDetails.recordingLocation.location.elevation na fileDetails.recordingLocation.location.altitude.

  • Obiekt contentDetails.contentRating zasobu video określa oceny, które film otrzymał w ramach różnych systemów oceny, w tym 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 często używana jest ocena „bez oceny”, aby wskazać nieocenione wersje filmów, których ocena została przyznana w przypadku wersji ocenzurowanej.

  • Nowa właściwość contentDetails.contentRating.ytRating zasobu video identyfikuje treści z ograniczeniami wiekowymi. Wartość właściwości to ytAgeRestricted, jeśli YouTube rozpozna film jako zawierający treści nieodpowiednie dla użytkowników poniżej 18 roku życia. Jeśli brakuje właściwości lub wartość właściwości jest pusta, oznacza to, że treści nie zostały zidentyfikowane jako objęte ograniczeniem wiekowym.

  • Parametr mySubscribers metody channels.list został wycofany. Użyj metody subscriptions.list z parametrem mySubscribers, aby pobrać listę subskrybentów kanału uwierzytelnionego użytkownika.

  • Metody channelBanners.insert, channels.update, videos.getRatingvideos.rate obsługują teraz parametr onBehalfOfContentOwner. 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, by uwzględnić fakt, że tej metody można używać do aktualizowania obiektu brandingSettings zasobu channel i jego właściwości podrzędnych. Dokumentacja zawiera też zaktualizowaną listę właściwości, które możesz ustawić dla obiektu invideoPromotion zasobu channel.

  • Plik error documentation zawiera opis tych nowych błędów:

    Typ błędu Szczegóły błędu Opis
    forbidden accountDelegationForbidden Ten błąd nie dotyczy konkretnej metody interfejsu API. Wskazuje on, że uwierzytelniony użytkownik nie jest upoważniony do działania w imieniu określonego konta Google.
    forbidden authenticatedUserAccountClosed Ten błąd nie dotyczy konkretnej metody interfejsu API. Wskazuje, że konto YouTube uwierzytelnionego użytkownika zostało zamknięte. Jeśli użytkownik działa w imieniu innego konta Google, ten błąd oznacza, że to drugie konto zostało zamknięte.
    forbidden authenticatedUserAccountSuspended Ten błąd nie dotyczy konkretnej metody interfejsu API. Wskazuje na to, że konto YouTube uwierzytelnionego użytkownika zostało zawieszone. Jeśli użytkownik działa w imieniu innego konta Google, ten błąd oznacza, że to drugie konto zostało zawieszone.
    forbidden authenticatedUserNotChannel Ten błąd nie dotyczy konkretnej metody interfejsu API. Wskazuje on, że serwer interfejsu API nie może zidentyfikować kanału powiązanego z żądaniem do interfejsu API. Jeśli żądanie jest autoryzowane i korzysta z parametru onBehalfOfContentOwner, ustaw też parametr onBehalfOfContentOwnerChannel.
    forbidden cmsUserAccountNotFound Ten błąd nie dotyczy konkretnej metody interfejsu API. Użytkownik CMS nie może działać w imieniu określonego właściciela treści.
    notFound contentOwnerAccountNotFound Ten błąd nie dotyczy konkretnej metody interfejsu API. Nie znaleziono podanego konta właściciela treści.
    badRequest invalidPart Ten błąd nie dotyczy konkretnej metody interfejsu API. Parametr part w żądaniu określa części, których nie można zapisać w tym samym czasie.
    badRequest videoChartNotFound Metoda videos.list zwraca ten błąd, gdy żądanie wskazuje nieobsługiwany lub niedostępny wykres wideo.
    notFound videoNotFound Metoda videos.update zwraca ten błąd, wskazując, że nie można znaleźć filmu, który próbujesz zaktualizować. Sprawdź wartość właściwości id w treści żądania, aby mieć pewność, że jest prawidłowa.

10 czerwca 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy parametr forUsername metody channels.list umożliwia pobieranie informacji o kanale przez podanie jego nazwy użytkownika w YouTube.

  • Metoda activities.list obsługuje teraz parametr regionCode, który instruuje interfejs API, aby zwracał wyniki odpowiednie dla określonego kraju. YouTube używa tej wartości, gdy poprzednia aktywność autoryzowanego użytkownika w YouTube nie zawiera wystarczającej ilości informacji do wygenerowania kanału aktywności.

  • Zasoby playlist zawierają teraz właściwość snippet.tags. Usługa będzie zwracana tylko autoryzowanym użytkownikom, którzy pobierają dane o swoich playlistach. Autoryzowani użytkownicy mogą też ustawiać tagi playlisty przy wywoływaniu metod playlists.insert lub playlists.update.

  • Parametr onBehalfOfContentOwner, który wcześniej był obsługiwany w przypadku metod channels.list i search.list, jest teraz obsługiwany w metodach videos.insert, videos.update i videos.delete. Pamiętaj, że gdy ten parametr jest używany w wywołaniu metody videos.insert, w żądaniu musi być też określona wartość nowego parametru onBehalfOfContentOwnerChannel identyfikującego kanał, do którego film zostanie dodany. Kanał musi być połączony z właścicielem treści, którego określa parametr onBehalfOfContentOwner.

    Parametr wskazuje, że dane logowania autoryzujące żądanie 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 YouTube.

    Ten parametr jest przeznaczony dla dostawców treści, którzy mają wiele różnych kanałów YouTube i nimi zarządzają. Parametr umożliwia im jednorazowe uwierzytelnienie i uzyskanie dostępu do wszystkich danych o filmach i kanałach bez konieczności podawania danych uwierzytelniających dla każdego kanału.

    W kontekście tej wersji parametr umożliwia teraz partnerowi w zakresie treści wstawianie, aktualizowanie i usuwanie filmów na dowolnym z należących do niego kanałów w YouTube.

  • Plik error documentation zawiera opis tych nowych błędów:

    Typ błędu Szczegóły błędu Opis
    forbidden insufficientCapabilities Ten błąd nie dotyczy konkretnej metody interfejsu 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.
    unauthorized authorizationRequired Metoda activities.list zwraca ten błąd, gdy żądanie używa parametru home, ale nie jest prawidłowo autoryzowane.
  • W zasobie channels usunięto właściwość invideoPromotion.channelId, ponieważ identyfikator kanału jest już podany za pomocą właściwości id tego zasobu.

  • Nowy przewodnik Praca z identyfikatorami kanałów wyjaśnia, jak interfejs API używa identyfikatorów kanałów. Przewodnik może być szczególnie przydatny dla deweloperów, którzy przechodzą z poprzedniej wersji interfejsu API i mają aplikacje, które żądają treści dla użytkownika default lub opierają się na założeniu, że każdy kanał w YouTube ma unikalny identyfikator użytkownika, co nie jest już prawdą.

22 maja 2013 r.

Ta aktualizacja zawiera następujące zmiany:

14 maja 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Na stronach samodzielnych znajdziesz teraz przykłady kodu w językach Java, .NET, PHPRuby.

  • Strona z przykładami kodu Python zawiera teraz przykłady dodawania subskrypcji, tworzenia playlist i aktualizowania filmów.

10 maja 2013 r.

Ta aktualizacja zawiera następujące zmiany:

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 wyświetlać kampanię promocyjną w filmie, aby wyświetlać miniatury promowanych filmów w odtwarzaczu podczas odtwarzania filmów na kanale.

    Aby pobrać te dane, w wartości parametru part w żądaniu channels.list podaj wartość invideoPromotion.

  • Za pomocą nowej metody channels.update można aktualizować dane dotyczące kampanii promocyjnych In-Video na kanale. Pamiętaj, że ta metoda obsługuje tylko aktualizacje części invideoPromotion zasobu channel i 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 powiązanego już 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, co jest wymagane do wykonania kilku czynności, takich jak przesyłanie filmów.

  • Zasoby subskrypcji obsługują teraz część subscriberSnippet. Ten obiekt zawiera fragment danych kanału subskrybenta.

  • Interfejs API obsługuje teraz metodę videos.getRating, która pobiera oceny przyznane przez uwierzytelnionego użytkownika dla co najmniej jednego filmu.

  • Nowy parametr myRating metody videos.list umożliwia pobranie listy filmów, które uwierzytelnił użytkownik z oceną like lub dislike.

    Parametry myRatingid są teraz uważane za parametry filtra, co oznacza, że żądanie interfejsu API musi określać dokładnie jeden z tych parametrów. Wcześniej w przypadku tej metody wymagany był parametr id.

    Metoda zwraca błąd forbidden w przypadku żądań, które próbują pobrać informacje o ocenie filmu, ale nie mają do tego odpowiednich uprawnień.

  • Wraz z wprowadzeniem parametru myRating zaktualizowaliśmy też metodę videos.list, aby obsługiwała podział na strony. Pamiętaj jednak, że parametry stronicowania są obsługiwane tylko w przypadku żądań korzystających z parametru myRating. (parametry i informacje dotyczące przewijania nie są obsługiwane w przypadku zapytań, które używają parametru id).

    • Parametr maxResults określa maksymalną liczbę filmów, które interfejs API może zwrócić w zbiorze wyników, a parametr pageToken wskazuje konkretną stronę w zbiorze wyników, którą chcesz pobrać.

    • Zasób youtube#videoListResponse, który jest zwracany w odpowiedzi na żądanie videos.list, zawiera teraz obiekt pageInfo, który zawiera takie informacje jak łączna liczba wyników czy liczba wyników w bieżącym zbiorze wyników. Zasób youtube#videoListResponse może też zawierać właściwości nextPageToken i prevPageToken, z których każda zawiera token, który można wykorzystać do pobrania konkretnej strony z zestawu wyników.

  • Metoda videos.insert obsługuje te nowe parametry:

    • autoLevels – ustaw tę wartość parametru na true, aby zlecić YouTube automatyczne polepszanie oświetlenia i kolorów filmu.
    • stabilize – ustaw tę wartość na true, aby YouTube korygował obraz przez usunięcie drżenia kamery spowodowanej ruchem kamery.

  • Właściwość channelTitle została dodana do pliku snippet w przypadku tych zasobów:

    • playlistItem – właściwość określa nazwę kanału, na który został dodany element playlisty.
    • playlist – ta właściwość określa nazwę kanału, na którym została utworzona playlista.
    • subscription – właściwość określa nazwę kanału, który subskrybujesz.

  • Dodano przykłady kodu dla tych metod:

  • Nowy parametr mySubscribers metody subscriptions.list umożliwia pobranie listy subskrybentów aktualnie uwierzytelnionego użytkownika. Tego parametru można używać tylko w prawidłowo autoryzowanym żądaniu.

    Uwaga: ta funkcja ma zastąpić parametr mySubscribers, który jest obecnie obsługiwany w przypadku metody channels.list. Ten parametr zostanie wycofany.

  • W zasobie video wartość właściwości unspecified nie jest już możliwa w przypadku żadnej z tych właściwości:

  • Żądania do interfejsu API, które zawierają nieoczekiwany parametr, zwracają teraz błąd badRequest, a jego raportowana przyczyna to unexpectedParameter.

  • Zwracany jest błąd metody playlistItems.insert, gdy playlista zawiera już maksymalną dozwoloną liczbę elementów, a została zaktualizowana. Błąd jest teraz zgłaszany jako błąd forbidden, a jego przyczyną jest playlistContainsMaximumNumberOfVideos.

19 kwietnia 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowa metoda videos.rate pozwala użytkownikowi ustawić ocenę like lub dislike dla filmu lub usunąć ocenę z niego.

    Zaktualizowaliśmy też dokumentację błędów, by wymienić błędy, które interfejs API może zwrócić w odpowiedzi na wywołanie metody videos.rate.

  • Miniatury są teraz oznaczone w dokumentacji interfejsu API jako oddzielne zasoby, a nowa metoda thumbnails.set umożliwia przesłanie do YouTube niestandardowej miniatury filmu i ustawienie jej dla filmu.

    Zaktualizowaliśmy też dokumentację błędów, by wymienić błędy, które interfejs API może zwrócić w odpowiedzi na wywołanie metody thumbnails.set.

    Ta zmiana nie ma tak naprawdę 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 dokumentacja zawiera teraz nazwy różnych rozmiarów miniatur, które może zwrócić interfejs API.

  • Nowa część brandingSettings zasobu channel zawiera opis ustawień, tekstu oraz obrazów, które będą wyświetlane na stronie kanału i stronach odtwarzania filmów.

  • Zasób playlistItem zawiera te nowe właściwości:

    • Nowy obiekt status zawiera informacje o stanie elementu playlisty, a właściwość status.privacyStatus określa jego stan prywatności.

  • Zasób video zawiera te nowe właściwości:

  • Dokumentacja metody playlistItems.update została zaktualizowana, aby odzwierciedlić fakt, że właściwość snippet.resourceId musi być określona w zasobie wysyłanym jako treść żądania.

  • Metoda search.list obsługuje teraz te funkcje:

    • Nowy parametr forMine umożliwia wyszukiwanie tylko w przypadku filmów uwierzytelnionego użytkownika.

    • Parametr order umożliwia teraz sortowanie wyników alfabetycznie według tytułu (order=title) lub liczby filmów w kolejności malejącej (order=videoCount).

    • Nowy parametr safeSearch wskazuje, czy wyniki wyszukiwania powinny zawierać treści podlegające ograniczeniom.

  • Metoda videos.insert obsługuje kilka nowych błędów wymienionych w tabeli poniżej:

    Typ błędu Szczegóły błędu Opis
    badRequest invalidCategoryId Właściwość snippet.categoryId określa nieprawidłowy identyfikator kategorii. Aby pobrać obsługiwane kategorie, użyj metody videoCategories.list.
    badRequest invalidRecordingDetails metadata specifies invalid recording details.
    badRequest invalidVideoGameRating Metadane żądania podają nieprawidłową ocenę gry wideo.
    badRequest invalidVideoMetadata Metadane żądania są nieprawidłowe.
  • Parametr onBehalfOfContentOwner został usunięty z listy obsługiwanych parametrów w metodach videos.updatevideos.delete.

12 marca 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Właściwość channelTitle została dodana do pliku snippet w przypadku tych zasobów:

    • activity – właściwość ta określa nazwę kanału odpowiedzialnego za działanie.
    • search – właściwość określa nazwę kanału powiązanego z zasobem wskazanym w wyniku wyszukiwania.
    • video – właściwość określa nazwę kanału, na który przesłano film.

  • Metoda search.list obsługuje te nowe parametry:

    • Parametr channelType pozwala ograniczyć wyszukiwanie kanałów, aby pobrać wszystkie kanały lub tylko programy.

    • Parametr videoType pozwala ograniczyć wyszukiwanie filmów tak, aby zwracać wszystkie filmy lub tylko filmy lub tylko odcinki seriali.

  • Definicja części video zasobu recordingDetails została zaktualizowana, aby wskazać, że obiekt zostanie zwrócony tylko w przypadku filmu, jeśli ustawiono dane geolokalizacji lub czas nagrywania.

  • Metoda playlistItems.update zwraca teraz błąd invalidSnippet, który jest zwracany, jeśli żądanie interfejsu API nie określa prawidłowego fragmentu kodu.

  • Kilka metod interfejsu API obsługuje nowe parametry przeznaczone wyłącznie dla partnerów dostarczających treści YouTube. Partnerzy udostępniający 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 onBehalfOfContentOwner wskazuje, że dane logowania autoryzujące żądanie identyfikują użytkownika YouTube CMS, 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ć powiązane z określonym właścicielem treści w YouTube.

      Ten parametr jest przeznaczony dla dostawców treści, którzy są właścicielami wielu różnych kanałów YouTube i nimi zarządzają. Parametr umożliwia im jednorazowe uwierzytelnienie i uzyskanie dostępu do wszystkich danych o filmach i kanałach bez konieczności podawania danych uwierzytelniających dla każdego kanału.

      Parametr ten jest obsługiwany przez metody channels.list, search.list, videos.delete, videos.listvideos.update.

    • Parametr managedByMe, który jest obsługiwany przez metodę channels.list, instruuje interfejs API, aby zwrócił wszystkie kanały należące do właściciela treści, które są określone przez parametr onBehalfOfContentOwner.

    • Parametr forContentOwner, który jest obsługiwany przez metodę search.list, informuje interfejs API, aby ograniczyć wyniki wyszukiwania tak, aby zawierały tylko zasoby należące do właściciela treści określonego w parametrze onBehalfOfContentOwner.

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, processingDetails i suggestions zawierają informacje dla właścicieli filmów dotyczące przesłanych filmów. Dane te 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 występujące podczas przetwarzania filmu;
      • dostępność miniatur
      • sugestie dotyczące poprawy jakości filmu lub metadanych.
      • szczegółowe informacje o oryginalnym pliku przesłanym do YouTube

      Wszystkie te elementy może pobrać tylko właściciel filmu. Na liście poniżej znajdziesz krótki opis nowych części, a dokumentacja zasobów video zawiera definicje wszystkich właściwości zawartych w poszczególnych częściach.

      • Obiekt fileDetails zawiera informacje o pliku wideo przesłanym do YouTube, w tym rozdzielczość pliku, czas trwania, kodeki audio i wideo, szybkość transmisji bitów i inne informacje.

      • Obiekt processingProgress zawiera informacje o postępach przetwarzania przesłanego pliku wideo przez YouTube. Właściwości obiektu wskazują bieżący stan przetwarzania i oszacowany czas pozostały do zakończenia przetwarzania filmu przez YouTube. Ta część informuje też, czy dla filmu są dostępne różne typy danych lub treści, takie jak szczegóły pliku czy miniatury.

        Ten obiekt jest przeznaczony do ankietowania, dzięki czemu użytkownik, który przesłał film, może śledzić postęp przetwarzania przesłanego pliku wideo przez YouTube.

      • Obiekt suggestions zawiera sugestie, które wskazują możliwości poprawy jakości filmu lub metadanych przesłanego filmu.

    • Część contentDetails zawiera 4 nowe właściwości. Te właściwości można pobrać za pomocą żądań niezaufanego.

      • dimension – wskazuje, czy film jest dostępny w 2D czy 3D.
      • definition – wskazuje, czy film jest dostępny w rozdzielczości standardowej czy wysokiej.
      • caption – wskazuje, czy napisy są dostępne w przypadku filmu.
      • licensedContent – wskazuje, czy film zawiera treści, do których zgłosił roszczenie partner treści YouTube.

    • Część status zawiera 2 nowe właściwości. Właściciele filmów mogą ustawiać wartości dla obu właściwości podczas wstawiania lub aktualizowania filmu. Właściwości te można też pobierać przy użyciu nieuwierzytelnionych żądań.

      • embeddable – wskazuje, czy film można umieścić w innej witrynie.
      • license – określa licencję filmu. Prawidłowe wartości to creativeCommonyoutube.

  • Definicja parametru part została zaktualizowana w metodach videos.list, videos.insertvideos.update, aby uwzględnić nowo dodane elementy opisane powyżej oraz element recordingDetails, który został przez pomyłkę pominięty.

  • Nowa właściwość contentDetails.googlePlusUserId zasobu channel określa identyfikator profilu Google+ powiązany z kanałem. Ta wartość może służyć do generowania linku do profilu Google+.

  • Każdy obiekt obrazu miniatury określa teraz szerokość i wysokość obrazu. Obecnie miniatury są zwracane w zasobach activity, channel, playlist, playlistItem, search result, subscription i video.

  • playlistItems.list obsługuje teraz parametr videoId, którego można używać w połączeniu z parametrem playlistId, by pobierać tylko ten element playlisty, który reprezentuje określony film.

    Interfejs API zwraca błąd notFound, jeśli filmu wskazanego przez parametr nie można znaleźć na playliście.

  • Dokumentacja błędów opisuje nowy błąd forbidden, który wskazuje, że żądanie nie jest prawidłowo autoryzowane dla żądanego działania.

  • Usunięto właściwość snippet.channelId zasobu channel. Właściwość id zasobu 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 metod.

16 stycznia 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Przykładowe fragmenty kodu są teraz dostępne dla metod i języków wymienionych na liście poniżej:

  • Zasoby activity mogą teraz zgłaszać działanie channelItem, które występuje, gdy YouTube dodaje film do automatycznie wygenerowanego kanału w YouTube. (YouTube algorytmicznie identyfikuje tematy, które są najpopularniejsze w YouTube, i automatycznie generuje kanały dla tych tematów).

  • Zaktualizowano te parametry (search.list):

    • Parametr q nie jest już wyznaczany jako filtr, co oznacza, że
    • Parametr relatedToVideo został przemianowany na relatedToVideoId.
    • Parametr published został zastąpiony 2 nowymi parametrami: publishedAfterpublishedBefore, które zostały opisane poniżej.

  • Metoda search.list obsługuje te nowe parametry:

    Nazwa parametru Wartość Opis
    channelId string Zwraca zasoby utworzone przez określony kanał.
    publishedAfter datetime Zwróć zasoby utworzone po określonym czasie.
    publishedBefore datetime Zwraca zasoby utworzone przed określonym czasem.
    regionCode string Zwraca zasoby dla określonego kraju.
    videoCategoryId string Filtrowanie wyników wyszukiwania filmów tak, aby obejmowały tylko filmy powiązane z określoną kategorią filmów.
    videoEmbeddable string Filtrowanie wyników wyszukiwania filmów tak, aby obejmowały tylko te, które można odtwarzać w umieszczonym na stronie internetowej odtwarzaczu. Aby pobrać tylko filmy, które można osadzić, ustaw wartość parametru na true.
    videoSyndicated string Filtruj wyniki wyszukiwania filmów, aby uwzględniały tylko filmy, które można odtwarzać poza YouTube.com. Aby pobierać tylko filmy redystrybuowane, ustaw wartość true.
  • Niektóre zasoby interfejsu API obsługują nowe właściwości. W tabeli poniżej przedstawiono zasoby i ich nowe właściwości:

    Zasób Nazwa usługi Wartość Opis
    activity contentDetails.playlistItem.playlistItemId string Identyfikator elementu na playliście przypisany przez YouTube do jednoznacznego zidentyfikowania tego elementu na playliście.
    activity contentDetails.channelItem object Obiekt zawierający informacje o zasobie dodanym do kanału. Ta właściwość występuje tylko wtedy, gdy snippet.type ma wartość channelItem.
    activity contentDetails.channelItem.resourceId object Obiekt identyfikujący zasób dodany do kanału. Podobnie jak inne właściwości resourceId, zawiera właściwość kind, która określa typ zasobu, np. film lub playlistę. Zawiera też dokładnie jedną z kilku właściwości – videoId, playlistId itd. – która określa identyfikator jednoznacznie identyfikujący zasób.
    channel status object Ten obiekt zawiera informacje o stanie prywatności kanału.
    channel status.privacyStatus string stan prywatności kanału. Prawidłowe wartości to privatepublic.
    playlist contentDetails object Ten obiekt zawiera metadane dotyczące treści playlisty.
    playlist contentDetails.itemCount unsigned integer Liczba filmów na playliście.
    playlist player object Ten obiekt zawiera informacje potrzebne do odtworzenia playlisty w odtwarzaczu umieszczonym na stronie internetowej.
    playlist player.embedHtml string Tag <iframe>, który umieszcza odtwarzacz wideo odtwarzający playlistę.
    video recordingDetails object Ten obiekt zawiera informacje, które identyfikują lub opisują miejsce i czas nagrania filmu.
    video recordingDetails.location object Ten obiekt zawiera informacje geolokalizacyjne powiązane z filmem.
    video recordingDetails.location.latitude double Szerokość geograficzna w stopniach.
    video recordingDetails.location.longitude double Długość geograficzna w stopniach.
    video recordingDetails.location.elevation double Wysokość nad Ziemią w metrach.
    video recordingDetails.locationDescription string Opis tekstowy miejsca, w którym film został nagrany.
    video recordingDetails.recordingDate datetime Data i godzina nagrania filmu. Wartość jest podawana w formacie ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ).
  • Dokumentacja kilku metod interfejsu API identyfikuje teraz właściwości, które muszą być określone w treści żądania lub aktualizowane na podstawie wartości zawartych w treści żądania. Tabela poniżej zawiera te metody oraz właściwości wymagane lub modyfikowalne.

    Uwaga: dokumentacja innych metod może już zawierać listę wymaganych i modyfikowalnych właściwości.

    Metoda Właściwości
    activities.insert Właściwości wymagane:
    • snippet.description
    Właściwości zmieniające się:
    • snippet.description
    • contentDetails.bulletin.resourceId
    playlists.update Wymagane właściwości:
    • id
    playlistItems.update Właściwości wymagane:
    • id
    videos.update Właściwości wymagane:
    • id
  • Interfejs API nie zwraca już błędu playlistAlreadyExists, jeśli spróbujesz utworzyć lub zaktualizować playlistę, która ma mieć ten sam tytuł co playlista już istniejąca na tym samym kanale.

  • Niektóre metody interfejsu API obsługują 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.list notFound notFound Nie udało się znaleźć kategorii przewodnika określonej przez parametr id. Użyj metody guideCategories.list, aby pobrać listę prawidłowych wartości.
    playlistItems.delete forbidden playlistItemsNotAccessible Żądanie nie ma odpowiednich uprawnień do usunięcia określonego elementu playlisty.
    videoCategories.list notFound videoCategoryNotFound Nie można znaleźć kategorii filmu określonej przez parametr id. Użyj metody videoCategories.list, aby pobrać listę prawidłowych wartości.