YouTube Content ID API – historia zmian

Uwaga: interfejs API YouTube Content ID jest przeznaczony dla partnerów treści YouTube i nie jest dostępny dla wszystkich deweloperów ani wszystkich użytkowników YouTube. Jeśli nie widzisz interfejsu API Content ID YouTube jako jednej z usług wymienionych w konsoli interfejsów API Google, zapoznaj się z Centrum pomocy YouTube, aby dowiedzieć się więcej o programie partnerskim YouTube.

Ta strona zawiera informacje o zmianach w interfejsie API YouTube Content ID i aktualizacjach dokumentacji.

26 marca 2025 r.

Od 31 marca 2025 r. YouTube będzie zliczać wyświetlenia filmów Short w inny sposób. Wcześniej w przypadku filmów Short wyświetlenie było liczone po odtworzeniu filmu przez odpowiednią liczbę sekund. Wyświetlenia będą odzwierciedlać, ile razy rozpoczęto lub ponowiono odtwarzanie filmu Short, bez minimalnego czasu oglądania. Więcej informacji

Do 30 czerwca 2025 r. interfejs Content ID API zostanie zaktualizowany w sposób opisany poniżej:

  • claimSearch.list.sort zostanie zaktualizowana kolejność sortowania:
    • DAILY_ENGAGED_VIEWS zostanie dodany do dziennej liczby wyświetleń na podstawie poprzedniej metody zliczania wyświetleń.
    • LIFETIME_ENGAGED_VIEWS zostaną dodane do liczby wyświetleń w całym okresie na podstawie poprzedniej metodologii zliczania wyświetleń.
  • assetSearch.list.sort zostanie zaktualizowana kolejność sortowania:
    • DAILY_ENGAGED_VIEWS zostanie dodany do dziennej liczby wyświetleń na podstawie poprzedniej metody zliczania wyświetleń.

Do 30 września 2025 r. Content ID API zostanie zaktualizowany w następujący sposób:

  • assetSearch.list.sort kolejność sortowania VIEWS zostanie wycofana.
  • claimSearch.list.sort kolejność sortowania VIEW_COUNT zostanie wycofana.
  • claimSearch.claimSnippet.videoViews zostanie zaktualizowana, aby odzwierciedlać zaktualizowaną metodologię zliczania wyświetleń filmów Short.
  • claimSearch.claimSnippet.engagedViews zostanie dodany do liczby wyświetleń na podstawie poprzedniej metody zliczania wyświetleń

14 stycznia 2025 r.

Pole autoGeneratedBreaks[] zasobu videoAdvertisingOption zostało zaktualizowane, ponieważ teraz zezwalamy na jednoczesne podawanie wartości ad_breaks i autoGeneratedBreaks. Jeśli w filmie z zdefiniowanym parametrem adBreaks parametr autoGeneratedBreaks ma wartość true, nasze systemy będą rozpoznawać miejsca do wyświetlania reklam oprócz tych ręcznie wybranych przez Ciebie. Więcej informacji znajdziesz w tym artykule pomocy.

10 listopada 2023 r.

Pole adFormats[] zasobu videoAdvertisingOption zostało zaktualizowane, tak aby third_party była jedyną prawidłową wartością w tym polu. Te formaty reklam nie są już obsługiwane: instream_trueview, instream_standard, display, preroll, postroll. Więcej informacji znajdziesz w tym artykule pomocy.

1 czerwca 2023 r.

Uwaga: to jest ogłoszenie o wycofaniu.

Ta aktualizacja zawiera następujące zmiany:

20 grudnia 2022 r.

Definicja parametru zapytania ownershipRestriction metody assetSearch.list została zaktualizowana, aby wyjaśnić, że jeśli wartość tego parametru to none, wartość parametru metadataSearchFields musi również zawierać co najmniej 1 filtr identyfikatora. Ta zmiana w dokumentacji nie ma wpływu na działanie interfejsu API.

9 listopada 2022 r.

Dokumentacja metod asset.get i asset.list została zaktualizowana, aby wyjaśnić, jak obsługiwane są wartości wielokrotne w przypadku:

28 września 2022 r.

Do asset resource dodano informacje o możliwości uzyskania licencji.

18 lipca 2022 r.

Dokumentacja metody claimSearch.listinactiveReasons została zaktualizowana, aby odzwierciedlić ulepszenia w zakresie spójności z YouTube Studio:

  • Studio wcześniej usunęło obsługę Audio Swap i Song Erase. Odpowiadające im wartości interfejsu API, audio_removedsong_erased, były ignorowane i nie były udokumentowane.
  • channel_whitelisted zostało zastąpione przez channel_allowlisted. Poprzednia wartość nie jest już dokumentowana, ale nadal jest obsługiwana.
  • Obsługiwane są teraz wartości closed_disabled_monetization, closed_manually, closed_no_adsense, closed_own_video_match, reference_removed, replaced i video_modified.

14 czerwca 2022 r.

Dokumentacja zasobu assetSearch została zaktualizowana, aby uwzględnić 2 nowe właściwości: isrcs[] i iswcs[]. Nowe wartości właściwości isrcs[] i iswcs[] zawierają tablicę wartości ciągu znaków, z których każda zawiera odpowiedni identyfikator ISRC lub ISWC, który jest mapowany na zasób zidentyfikowany przez wynik wyszukiwania.

Zalecamy korzystanie z nowych usług zamiast usług isrciswc, które są już uwzględnione w zasobach assetSearch, ponieważ nowe usługi zapewniają dokładniejsze dane. Nowe właściwości mogą zawierać tablicę wartości ciągu znaków, natomiast właściwości isrc i iswc identyfikują tylko 1 kod ISRC lub ISWC powiązany z wynikiem wyszukiwania.

12 maja 2022 r.

Linki do bibliotek klienta zostały zaktualizowane, aby wskazywały na standardowe biblioteki klienta interfejsów API Google. Zaktualizowano wstępnie wygenerowane powiązania dla PHP.

3 maja 2022 r.

Parametr status metody claimSearch.list obsługuje teraz więcej filtrów na podstawie potencjalnych szczegółów roszczenia.

2 maja 2022 r.

Dokumentacja metody assetSearch.list Response została zaktualizowana, aby odzwierciedlić ulepszenia w celu zapewnienia spójności z problemami AIP-158:

  • W opisie pageInfo.totalResults wyraźnie zaznaczono, że wartość jest szacunkowa, a nie rzeczywista.
  • Pola pageInfo.resultsPerPagepageInfo.startIndex zostały usunięte

25 kwietnia 2022 r.

Dokumentacja zasobu assetLabels.list została zaktualizowana, aby wyjaśnić znaczenie parametrów żądania labelPrefixq oraz opisać, że żądanie / odpowiedź obsługuje podział na strony.

8 grudnia 2021 r.

Dokumentacja zasobu claimSearch.list została zaktualizowana, aby odzwierciedlała 2 przypadki użycia, które obejmuje ta metoda:

  • Wyszukaj według identyfikatora (zasobu, odniesienia lub filmu) lub ciągu zapytania.
  • wyszukiwanie według daty utworzenia roszczenia, daty modyfikacji lub stanu;

Każdy przypadek użycia obsługuje inny zestaw parametrów zapytania. Dokumentacja metody claimSearch.list została zaktualizowana, aby wyjaśnić, które parametry są obsługiwane w przypadku poszczególnych zastosowań.

17 listopada 2021 r.

Ta aktualizacja zawiera następujące zmiany:

  • Metoda claims.update umożliwia teraz zaktualizowanie stanu roszczenia nieaktywnego lub potencjalnego na active. Więcej informacji znajdziesz w definicji właściwości status zasobu claim.
  • Dokumentacja zasobów claim i claimSearch została zaktualizowana, aby uwzględnić nowy obiekt studioInfo, który zawiera linki do stron YouTube Studio związanych z roszczeniem.
  • Zmieniła się lista wartości obsługiwanych przez parametr origin metody claimSearch.list. Parametr obsługuje teraz 4 dodatkowe wartości: batchTool, inProductShorts, melodyMatch i youTubeAdmin. Ponadto wartości dropboxUploadwebUpload nie są już obsługiwane.

26 lutego 2021 r.

Dokumentacja parametru videoId metody claimSearch.list została zaktualizowana, aby wskazać, że wartość parametru może teraz zawierać maksymalnie 10 identyfikatorów filmów rozdzielonych przecinkami. Jeśli wartość zawiera więcej niż 10 identyfikatorów filmów, interfejs API zwróci błąd badRequest (kod odpowiedzi HTTP 400).

6 grudnia 2018 r.

Uwaga: to jest ogłoszenie o wycofaniu.

Dokumentacja interfejsu API została zaktualizowana w celu usunięcia odwołań do zasobu contentOwnerAdvertisingOptions i jego metod. Te metody były używane bardzo rzadko, a użytkownicy interfejsu API, którzy z nich korzystali, zostali powiadomieni o tym osobno przed opublikowaniem tego komunikatu.

21 marca 2018 r.

Ta aktualizacja zawiera następujące zmiany:

  • Właściwość metadataMine.artist musi być teraz ustawiona za każdym razem, gdy wstawiasz, aktualizujesz lub łatujesz teledysk lub zasób nagrania dźwiękowego. Interfejs API zwraca teraz błąd, jeśli ta właściwość nie jest ustawiona w przypadku tych typów zasobów. Dodatkowo pamiętaj, że właściwość metadataMine.artist jest obsługiwana tylko w przypadku wykonawców teledysków i nagrań dźwiękowych.

24 lipca 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy zasób package reprezentuje grupę plików dostarczanych przez sieć, SFTP lub inny mechanizm dostarczania. Interfejs API obsługuje 2 metody dotyczące tego zasobu:

    • Metoda package.insert sprawdza i przesyła pakiet zawierający tylko metadane, w którym znajduje się dokładnie 1 plik metadanych.
    • Metoda package.get pobiera informacje o wcześniej przesłanym pakiecie.

  • W przypadku metody validator.validate zaktualizowaliśmy definicję właściwości uploaderName, aby wskazać, że jej wartość nie identyfikuje partnera przesyłającego dane, ale raczej wartość, np. web-google lub yt-google, która identyfikuje konkretne konto przesyłającego, którego używa właściciel treści.

  • Właściwość status zasobu reference nie używa już wartości duplicate_on_hold, aby wskazać, że odwołanie jest duplikatem innego odwołania. Jeśli odwołanie jest duplikatem, wartość właściwości status jest teraz ustawiana na inactive, a wartość właściwości statusReason na REASON_DUPLICATE_FOR_OWNERS.

    Jednak tak jak wcześniej atrybut duplicateLeader zasobu jest wypełniany tylko wtedy, gdy odwołanie jest zduplikowane. Jeśli jest ustawiona, wartość tej właściwości identyfikuje powieloną referencję.

17 kwietnia 2017 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy zasób assetShare, który ma zastosowanie tylko do komponentów kompozycji, określa relację między 2 reprezentacjami zasobu zasobu. Te reprezentacje odzwierciedlają nowy model publikowania danych, który ma zapewnić większą przejrzystość i kontrolę nad tym, w jaki sposób Twoje prawa są powiązane z zasobami nagrań dźwiękowych.

    W nowym modelu każde nagranie dźwiękowe jest mapowane na dokładnie jeden unikalny zasób, który nazywamy widokiem kompozycji. Metadane tego zasobu stanowią kanoniczny zestaw informacji, które YouTube wyświetla na temat praw do kompozycji powiązanych z danym nagraniem. Mogą one zawierać informacje pochodzące od wielu dostawców danych.

    Dodatkowo każdy właściciel kompozycji ma własne zasoby współdzielonej kompozycji. Udział w kompozycji reprezentuje informacje, które wydawca podał w przypadku zasobu kompozycji. Udostępniona kompozycja może być powiązana z wieloma nagraniami dźwiękowymi.

    Zasób assetShare określa związek między wyświetleniem kompozycji a udostępnieniem kompozycji. Nowa metoda assetShares.list umożliwia wykonanie jednej z tych czynności:

    • Podaj identyfikator widoku kompozycji i pobierz odpowiedni udział w kompozycji należący do partnera, który autoryzuje prośbę, jeśli taki udział istnieje.
    • Podaj identyfikator kompozycji udostępnionej przez partnera treści i pobierz listę wszystkich wyświetleń kompozycji, do których jest ona powiązana.

  • Nowy przewodnik Zarządzanie zasobami kompozycji wyjaśnia, jak różne metody interfejsu API obsługują żądania w zależności od tego, czy identyfikatory zasobów przesłane do tych metod wskazują na wyświetlenia kompozycji czy współdzielone kompozycje.

  • Nowa właściwość claimedVideoOptions.autoGeneratedBreaks zasobu contentOwnerAdvertisingOptions wskazuje, czy YouTube ma automatycznie generować przerwy na reklamę w filmach objętych roszczeniem, które trwają dłużej niż 10 minut. Właściwość ta wpływa na wszystkie filmy właściciela treści trwające ponad 10 minut, ale jeśli film jest objęty kilkoma roszczeniami, pierwszy partner, który zgłosił roszczenie do filmu, określa domyślne zachowanie tej właściwości w odniesieniu do tego 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 w blogu zespołu inżynierów i deweloperów YouTube zawierają wiele zmian w stosunku do obecnych 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 jest opisany 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.

31 maja 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowe materiały i metody

    • Nowa metoda validator.validate pozwala określić, czy plik metadanych zawiera błędy weryfikacji, które uniemożliwiają YouTube przetworzenie pliku. Jeśli plik zawiera błędy, właściwość errors odpowiedzi interfejsu API zawiera listę błędów weryfikacji, w tym ich powagę, przyczynę i lokalizację.

  • Nowe i zaktualizowane błędy

    • Metody assets.patchassets.update obsługują teraz ten błąd. Przypominamy, że metoda może obsługiwać wiele błędów tego samego typu. Pełną listę możliwych błędów znajdziesz w dokumentacji dotyczącej poszczególnych metod lub na stronie błędów.

      Błędy
      invalidValue (400) parameters.assetId
      Żądanie nie zostało zrealizowane, ponieważ aktualizowany zasób został scalony z innym zasobem. Ponownie prześlij żądanie, podając jako wartość parametru assetId identyfikator zasobu zwrócony w komunikatach o błędach.

28 marca 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Nowa właściwość matchInfo.matchSegments[] zasobu claim zawiera listę, w której każdy element opisuje segment filmu objętego roszczeniem, który pasuje do części filmu referencyjnego. Twierdzenie może zawierać wiele segmentów dopasowania. Jeśli na przykład dźwięk i obraz w przesłanym filmie pasują do tych w filmie referencyjnym, będą 2 pasujące segmenty. Jeden segment opisywałby dopasowanie dźwięku, a drugi – dopasowanie obrazu.

      W przypadku każdego segmentu dopasowania interfejs API zwraca czas trwania i typ (dźwięk lub wideo) dopasowanych treści. Interfejs API określa też przesunięcia czasowe, w których zaczyna się i kończy każdy segment dopasowania zarówno w filmie objętym roszczeniem, jak i w filmie referencyjnym.

    • Wartość właściwości claimedVideoOptions.newVideoDefaults[] zasobu contentOwnerAdvertisingOptions można teraz zaktualizować, wywołując metody contentOwnerAdvertisingOptions.patch lub contentOwnerAdvertisingOptions.update.

    • Właściwość allowedOptions.autoGeneratedBreaks zasobu contentOwnerAdvertisingOptions przeznaczona tylko do odczytu została wycofana.

  • Nowe i zaktualizowane błędy

    • Metoda claims.update interfejsu API obsługuje teraz ten błąd. Przypominamy, że metoda może obsługiwać wiele błędów tego samego typu. Pełną listę możliwych błędów znajdziesz w dokumentacji dotyczącej poszczególnych metod lub na stronie błędów.

      Błędy
      badRequest (400) alreadyClaimed
      Roszczenie jest duplikatem innego istniejącego roszczenia i nie można go zaktualizować.
    • Metoda assets.list czasami się wygasza i zwraca kod odpowiedzi HTTP 500 (Internal Server Error), zwłaszcza gdy żądanie pobiera dane wielu zasobów, a wartość parametru fetchMatchPolicy to effective. Jeśli żądanie assets.list zawiera wiele identyfikatorów zasobów i zwraca błąd 500, prześlij żądanie dotyczące pojedynczego zasobu lub mniejszej liczby zasobów.

    • Dokumentacja dotycząca błędów references.insert została zaktualizowana, aby wskazać, że jeśli żądanie przesyła uszkodzony plik referencyjny, problem nie zostanie zidentyfikowany, dopóki nie przetworzy się sam plik referencyjny. Dlatego nawet jeśli references.insert zwróci odpowiedź z pozytywnym wynikiem, odwołanie może nie zostać przetworzone. Po wstawieniu odwołania zalecamy przeprowadzenie ankiety za pomocą metody references.list, aby potwierdzić, że odwołanie zostało aktywowane zgodnie z oczekiwaniami.

3 lutego 2016 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Interfejs API obsługuje teraz reklamy z listą produktów. Reklamy z informacjami o produkcie wyróżniają produkty, które są powiązane z treścią filmu lub w nim występują. Te reklamy to karty sponsorowane wyświetlane w trakcie filmu. Takie karty dodawane są automatycznie przez system reklam. Widzowie zobaczą zajawkę karty przez kilka sekund. Mogą również kliknąć ikonę w prawym górnym rogu filmu, aby przejrzeć karty.

      W wyniku tej zmiany product_listing może teraz występować w wartościach tych właściwości:

      Zasób lub metoda interfejsu API Właściwość
      contentOwnerAdvertisingOptions allowedOptions.licAdFormats[]
      contentOwnerAdvertisingOptions allowedOptions.ugcAdFormats[]
      contentOwnerAdvertisingOptions claimedVideoOptions.newVideoDefaults[]
      videoAdvertisingOptions adFormats[]
      videoAdvertisingOptions.getEnabledAds countriesRestriction[].adFormats[]
    • Nowe parametry assetSearch.list createdBefore i createdAfter podają interfejsowi API instrukcje, aby zwracał tylko zasoby utworzone przed określoną datą lub po niej.

    • W odpowiedzi interfejsu API na żądanie assetSearch.list właściwości type obsługuje teraz wartość art_track_video. Więcej informacji o filmach z utworami audio znajdziesz w Centrum pomocy YouTube.

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

      Parametry
      referenceId Ten parametr filtra określa identyfikator pliku referencyjnego w YouTube, którego dotyczy pobieranie roszczeń.
      inactiveReasons Ten opcjonalny parametr pozwala ograniczyć odpowiedź interfejsu API tak, aby zawierała tylko nieaktywne roszczenia na podstawie określonych powodów, dla których stały się one nieaktywne. Definicja parametru zawiera listę typów nieaktywnych roszczeń, których możesz szukać.
      partnerUploaded Ten opcjonalny parametr logiczny umożliwia określenie, że odpowiedź interfejsu API powinna zawierać tylko roszczenia przesłane przez partnera lub nieprzesłane przez partnera.
    • Nowy obiekt references#origination zasobu reference zawiera informacje opisujące źródło odwołania.

    • Metoda references.insert obsługuje teraz możliwość przesyłania odwołań wygenerowanych za pomocą oprogramowania gfp_gen w YouTube. Jeśli podasz wygenerowany wcześniej odcisk palca, w przesłanym zasobem reference ustaw wartość właściwości fpDirect na true.

      Pamiętaj, że po tej zmianie interfejs API nie zwraca już błędu, jeśli podczas przesyłania odwołania spróbujesz ustawić właściwość fpDirect.

  • Nowe i zaktualizowane błędy

    Dokumentacja zawiera teraz listę błędów zwracanych przez metody zasobu whitelist.

    W tabeli poniżej znajdziesz nowe błędy obsługiwane przez interfejs API oraz metody, które mogą zwrócić dany błąd. Pamiętaj, że metoda może zwracać wiele błędów tego samego typu. Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

    Błędy
    badRequest (400) inappropriateCampaignTarget
    Metody campaigns.insertcampaigns.update zwracają ten błąd, jeśli kampania próbuje wyświetlić film, który może być nieodpowiedni dla niektórych użytkowników. Aby naprawić błąd, wybierz inne treści.
    badRequest (400) canNotCreatePartnerUploadedClaimOnCompositionOrSoundRecordingAssets
    Metoda claims.insert zwraca ten błąd, jeśli próbujesz utworzyć roszczenie przesłane przez partnera za pomocą zasobu kompozycji lub nagrania dźwiękowego.
    badRequest (400) existingSoundRecordingOrMusicVideoClaim
    Metoda claims.insert zwraca ten błąd, jeśli w wybranym filmie istnieje już roszczenie dotyczące nagranej muzyki. Tytuły bezpośrednich kompozycji nie mogą być dodawane za pomocą interfejsu API.
    badRequest (400) asset_id
    Metoda references.insert zwraca ten błąd, jeśli żądanie próbuje utworzyć odwołanie do pliku, ale nie zawiera ono identyfikatora zasobu.
    badRequest (400) canNotBeActivated
    Metoda references.update zwraca ten błąd, jeśli nie można aktywować odwołania, prawdopodobnie z powodu jego stanu lub warunków własności.
    badRequest (400) videoNotClaimed
    Metoda videoAdvertisingOptions.get zwraca ten błąd, jeśli nie obejmujesz roszczeniem filmu, którego dotyczy żądanie pobrania opcji reklamowych, co powoduje, że żądane informacje są dla Ciebie niedostępne.

18 grudnia 2015 r.

Przepisy Unii Europejskiej (UE) wymagają, aby użytkownicy w UE byli informowani o określonych kwestiach i aby uzyskać od nich zgodę. 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 API YouTube.

21 kwietnia 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowy zasób campaign reprezentuje konkretną kampanię właściciela treści, która pozwala właścicielowi treści promować treści za pomocą adnotacji w filmach przesłanych przez użytkowników, w których zgłoszono roszczenie. Właściciel treści może na przykład utworzyć kampanię, która dodaje linki do strony odtwarzania filmu w przypadku przesłanych przez użytkowników filmów objętych roszczeniem, które zawierają sceny z tego filmu.

    Interfejs API obsługuje metody dotyczące zasobów get, list, insert, update, patch i delete campaign.

  • Interfejs API obsługuje kilka nowych błędów w przypadku nowych metod campaigns.get, campaigns.insert, campaigns.updatecampaigns.delete.

30 marca 2015 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Nowy parametr isrcs metody assetSearch.list umożliwia określenie listy maksymalnie 50 kodów ISRC. Odpowiedź interfejsu API będzie zawierać zasoby powiązane z tymi kodami ISRC.

    • Właściwość event[].reason zasobu claimHistory obsługuje te nowe wartości. Każda z nich wyjaśnia, dlaczego wystąpiło konkretne zdarzenie związane ze zgłoszeniem:

      • closed_audio_claim_on_visual_reference
      • closed_partner_exclusion
      • closed_reference_conflict

    • Nowy parametr sort metody claimSearch.list określa metodę, która będzie używana do zamawiania zasobów w odpowiedzi interfejsu API. Domyślnie zasoby są sortowane w odwrotnej kolejności chronologicznej (od najnowszych do najstarszych) według daty utworzenia. Możesz też sortować zasoby według liczby wyświetleń treści objętych roszczeniem, od najwyższej do najniższej.

      Pamiętaj, że jeśli żądanie claimSearch.list spowoduje też ustawienie wartości parametru status na appealed, disputed, pending, potential lub routedForReview, wyniki zostaną posortowane według czasu, w którym wygasa okres rozpatrywania roszczenia.

    • Metody ownership.updateownership.patch zawierają teraz poprawną listę wszystkich właściwości, które można zaktualizować podczas ich wywoływania. Ta zmiana stanowi poprawkę do dokumentacji interfejsu API i nie oznacza zmiany jego funkcji.

    • Parametry fetchMatchPolicy metod assets.getassets.list obsługują teraz wartość effective. Ta wartość instruuje serwer interfejsu API, aby pobrać zasadę dopasowania stosowaną przez YouTube w przypadku danego zasobu.

    • Parametry id metod assets.list, claims.list, contentOwners.list, policies.list, publishers.listreferences.list mogą teraz zawierać maksymalnie 50 wartości ID rozdzielonych przecinkami.

  • Nowe i zaktualizowane błędy

    Tabela poniżej zawiera nowe błędy obsługiwane przez interfejs API oraz metody, które mogą zwracać te błędy. Pamiętaj, że metoda może zwracać wiele błędów tego samego typu.

    Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

    Typ błędu Szczegóły błędu Opis
    badRequest (400) tooManyIsrcs Metoda assetSearch.list zwraca ten błąd, jeśli parametr isrcs określa więcej niż 50 kodów ISRC.
    badRequest (400) videoIsPrivate Jeśli próbujesz zgłosić roszczenie do filmu prywatnego, metoda claims.insert zwraca ten błąd. Możesz zgłosić roszczenie do filmu tylko wtedy, gdy jego stan prywatności to public lub unlisted.
    notModified (304) blockOutsideOwnershipUnchanged Metoda claims.update zwraca ten błąd, jeśli nie udało się zmodyfikować flagi blockOutsideOwnership w rośnieniu. Ten błąd może wystąpić z kilku powodów. Typowym przykładem jest sytuacja, w której wskazana modyfikacja nie ma wpływu na film objęty roszczeniem.

7 listopada 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Parametr status metody claimSearch.list obsługuje teraz wartość routedForReview. Ta wartość ogranicza wyniki do roszczeń, które wymagają ręcznego sprawdzenia zgodnie z regułą w zasadach dopasowania zasobu.

    • Właściwość event[].reason zasobu claimHistory obsługuje te nowe wartości. Każda z nich wyjaśnia, dlaczego wystąpiło konkretne zdarzenie związane ze zgłoszeniem:

      • closed_invalid_reference_segment
      • closed_noadsense
      • suspended_monetization_on_channel
      • video_content_modified

    • Właściwość origin.source zasobu claim, która identyfikuje źródło roszczenia, obsługuje teraz wartość melodyMatch. Roszczenie dotyczące dopasowania melodii wskazuje, że film objęty roszczeniem zawiera kompozycję muzyczną podobną do pliku referencyjnego.

    • Dokumentacja metody references.insert została zaktualizowana, aby odzwierciedlała fakt, że interfejs API używa 2 różnych punktów końcowych. Nie jest to zmiana funkcji interfejsu API, a tylko poprawka w dotychczasowej dokumentacji.

      • Jeśli żądanie dotyczy przesłania nowego pliku referencyjnego, prawidłowy punkt końcowy to:

        POST https://www.googleapis.com/upload/youtube/partner/v1/references
      • Jeśli żądanie dotyczy utworzenia pliku referencyjnego na podstawie filmu objętego roszczeniem, prawidłowym punktem końcowym jest:

        POST https://www.googleapis.com/youtube/partner/v1/references
  • Nowe i zaktualizowane błędy

    Tabela poniżej zawiera nowe błędy obsługiwane przez interfejs API oraz metody, które mogą zwracać te błędy. Pamiętaj, że metoda może zwracać wiele błędów tego samego typu.

    Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

    Typ błędu Szczegóły błędu Opis
    badRequest (400) invalidLabelName Metody assets.insert, assets.updateassetLabels.insert zwracają ten błąd, jeśli nazwa etykiety zasobu jest nieprawidłowa. Nazwa etykiety musi mieć od 2 do 30 znaków. Nie mogą zawierać nawiasów trójkątnych, przecinków, dwukropków, ampersandów ani znaków pionowej kreski (|).
    badRequest (400) ownerHaveMaximumNumberOfLabels Metody assets.insert, assets.update i assetLabels.insert zwracają ten błąd, jeśli właściciel treści zdefiniował już 2500 unikalnych etykiet zasobów, czyli maksymalną obecnie dozwoloną liczbę.
    badRequest (400) tooManyLabelsOnOneAsset Metody assets.insert i assets.update zwracają ten błąd, jeśli dany zasób jest już powiązany z 30 etykietami zasobów, czyli z maksymalną obecnie dozwoloną liczbą.
    badRequest (400) channelMonetizationSuspended Metody claims.insert i claims.update zwracają ten błąd, jeśli kanał filmu został zawieszony z powodu roszczeń partnera.
    badRequest (400) channelNotActive Metoda claims.update zwraca ten błąd, jeśli kanał filmu nie jest aktywny.
  • Metody assets.insert i assets.update nie zwracają już błędu badRequest w przypadku niektórych zasobów, jeśli zasób w treści żądania nie zawiera właściwości metadataMine.contentType.

23 września 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Zmiany identyfikatora właściciela treści

    Zmiany w identyfikatorze właściciela treści ogłoszone w historii zmian 9 lipca 2014 r. weszły w życie. W rezultacie tej zmiany interfejs API zwraca wygenerowany, unikalny identyfikator, który służy do identyfikowania właściciela treści powiązanego z uwierzytelnionym użytkownikiem lub zasobem zarządzanym za pomocą interfejsu API. Wcześniej interfejs API zwracał jako identyfikator czytelną dla człowieka nazwę, np. „qrs_network”.

    Ta zmiana dotyczy tych funkcji interfejsu API i prawdopodobnie wpłynie na partnerów, którzy w swoich aplikacjach mają zakodowane na stałe kody partnera.

    • Interfejs API zwraca teraz nowy identyfikator jako wartość właściwości zasobów, które wcześniej zwracały kod partnera, np. jako właściwość id zasobu contentOwner.
    • Wszystkie metody interfejsu API obsługują parametr onBehalfOfContentOwner, który identyfikuje właściciela treści, w którego imieniu wysyłane jest żądanie interfejsu API. Po wprowadzeniu tej zmiany parametr powinien być ustawiony na nowy identyfikator zamiast kodu partnera. Aby uniknąć problemów z kodem, w okresie przejściowym parametr będzie akceptować dowolną wartość.
    • Po wprowadzeniu tej zmiany parametr contentOwnerId metody contentOwners.list powinien zawierać nowy identyfikator zamiast kodu partnera.

  • Aktualizacje dotychczasowych zasobów i metod

    • Nowy parametr metadataSearchFields metody assetSearch.list umożliwia określenie pól metadanych zasobów, w których chcesz przeprowadzić wyszukiwanie, oraz wartości, których chcesz używać w tych polach. Wartość parametru to lista par pól i wartości oddzielonych przecinkami. W pojedynczej parze pole i wartość są rozdzielane dwukropkiem.

    • Nowy obiekt appliedPolicy zasobu claim określa zasady, które YouTube stosuje do roszczenia. Wartość obiektu to zasób policy. Zawiera on informacje o zasadach obowiązujących w krajach, w których właściciel treści, który przesłał prośbę, jest właścicielem zasobu objętego roszczeniem.

      Zasady zastosowane przez właściciela treści mogą się różnić od jego zasad w 2 sposoby:

      1. Uwzględnia ona zasady określone przez innych właścicieli, którzy mają częściowe prawa do zasobu objętego roszczeniem w niektórych tych samych regionach co właściciel treści, który przesłał żądanie interfejsu API.

      2. uwzględnia zasady administracyjne YouTube obowiązujące w regionach, w których właściciel treści jest właścicielem zasobu objętego roszczeniem;

    • Nowa właściwość uploaderChannelId zasobu claimHistory identyfikuje identyfikator kanału, na którym został opublikowany film objęty roszczeniem.

8 września 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowe materiały i metody

    • Nowy zasób assetLabel identyfikuje etykietę tekstową, którą można przypisać do zasobu. Etykiety zasobów umożliwiają umieszczanie zasobów w niestandardowych kategoriach, co ułatwia organizowanie biblioteki zasobów. Możesz wyszukiwać zasoby na podstawie ich etykiet, co może także ułatwić zbiorcze aktualizowanie określonych grup zasobów.

      • Metoda assetLabels.list umożliwia pobranie listy etykiet właściciela treści.
      • Metoda assetLabels.insert umożliwia utworzenie nowej etykiety zasobu. Możesz też tworzyć nowe etykiety, wywołując metodę assets.update i aktualizując etykiety zasobu. Serwer interfejsu API automatycznie utworzy nowy zasób assetLabel dla każdej nieokreślonej wcześniej etykiety.

  • Aktualizacje dotychczasowych zasobów i metod

    • Właściwość label[] zasobu asset została zaktualizowana, aby wskazać, że możesz wywołać metodę assets.update, aby zaktualizować etykiety zasobu. Nie możesz jednak ustawiać etykiet zasobu podczas wywoływania metody assets.insert.

      Nowy przewodnik Korzystanie z etykiet zasobów zawiera informacje o tworzeniu i pobieraniu etykiet zasobów, a także o aktualizowaniu etykiet zasobów i wyszukiwaniu zasobów powiązanych z określonymi etykietami.

  • Nowe i zaktualizowane błędy

    Interfejs API obsługuje kilka nowych błędów w przypadku nowych metod assetLabels.listassetLabels.insert.

9 lipca 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Zmiany identyfikatora właściciela treści

    Wcześniej interfejs API używał czytelnego dla człowieka kodu partnera, np. „qrs_network”, do jednoznacznej identyfikacji właściciela treści powiązanego z uwierzytelnionym użytkownikiem lub zasobem zarządzanym przez interfejs API. W III kwartale 2014 r. interfejs API zacznie używać unikalnego identyfikatora liczącego 22 znaki do identyfikowania właścicieli treści. Zmiana dotyczy tych funkcji interfejsu API i prawdopodobnie wpłynie na partnerów, którzy w swoich aplikacjach mają zakodowane na stałe kody partnera.

    • Interfejs API zwróci 22-znakowy identyfikator jako wartość właściwości zasobów, które wcześniej zwracały kod partnera, np. jako właściwość id zasobu contentOwner.
    • Wszystkie metody interfejsu API obsługują parametr onBehalfOfContentOwner, który identyfikuje właściciela treści, w którego imieniu wysyłane jest żądanie interfejsu API. Po tej zmianie parametr powinien zawierać 22-znakowy identyfikator zamiast kodu partnera. Aby uniknąć problemów z kodem, w okresie przejściowym parametr będzie akceptować dowolną wartość.
    • Po wprowadzeniu tej zmiany parametr contentOwnerId metody contentOwners.list powinien zawierać 22-znakowy identyfikator zamiast kodu partnera.

  • Aktualizacje dotychczasowych zasobów i metod

    • Zasób asset obsługuje teraz właściwość label, która określa listę etykiet zasobów powiązanych z tym zasobem. Tę samą etykietę można dodać do wielu zasobów w celu ich połączenia w grupę. Etykiety mogą służyć jako filtry wyszukiwania do przeprowadzania zbiorczych przesyłań, pobierania raportów lub filtrowania danych w Statystykach YouTube.

    • Metoda assetSearch.list obsługuje teraz te parametry opcjonalne:

      • labels: ogranicza wyniki do uwzględnienia tylko zasobów powiązanych z określonymi etykietami. Domyślnie interfejs API zwraca zasoby pasujące do wszystkich podanych etykiet. Możesz jednak użyć parametru includeAnyProvidedLabel, aby zlecić interfejsowi API zwrócenie zasobów pasujących do dowolnej z wybranych etykiet.
      • includeAnyProvidedLabel: używany w połączeniu z parametrem labels. Ten parametr instruuje interfejs API, aby zwrócił zasoby powiązane z dowolną etykietą określoną w wartości parametru labels.

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

    • Metoda claimSearch.list obsługuje teraz te parametry opcjonalne:

      • createdAfter: ogranicza wyniki, aby obejmowały tylko roszczenia utworzone po określonej dacie.
      • createdBefore: ogranicza wyniki do roszczeń utworzonych przed określoną datą.
      • includeThirdPartyClaims: używany w połączeniu z parametrem videoId, wskazuje, czy w wynikach interfejsu API mają być uwzględniane roszczenia osób trzecich.

  • Więcej informacji o błędach

    Dokumentacja błędów zawiera teraz kod odpowiedzi HTTP dla każdego typu błędu.

  • Nowe i zaktualizowane błędy

    Tabela poniżej zawiera nowe błędy obsługiwane przez interfejs API oraz metody, które mogą zwracać te błędy. Pamiętaj, że metoda może zwracać wiele błędów tego samego typu. Jeśli na przykład spróbujesz wstawić zasób asset, w którym brakuje wymaganego pola metadanych, zwrócony zostanie błąd required. W rzeczywistości może być więcej niż jedno wymagane pole metadanych, z których każde zwróci błąd z nieco innym komunikatem.

    Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

    Metoda Błędy
    assetSearch.list
    • invalidValue – interfejs API nie obsługuje możliwości wyszukiwania zasobów programu lub sezonu. Zmień wartość parametru type na obsługiwaną.
    assets.insert
    • conflict – istnieje już zbyt wiele komponentów z tym samym identyfikatorem (np. identyfikator niestandardowy, ISRC itp.).
    • conflict – istnieje już zbyt wiele kopii określonego zasobu.
    • invalidValue – użytkownik wywołujący interfejs API nie ma uprawnień do tworzenia komponentów określonego typu.
    assets.patch
    assets.update
    • badRequest – interfejs API nie obsługuje konwersji typu zasobu, którego próbujesz użyć.
    claimSearch.list
    ownership.patch
    ownership.update
    • badRequest – nie możesz zaktualizować prawa własności do zasobu utworu audio.
    references.patch
    references.update
    • badRequest – odwołanie jest w nieprawidłowym stanie do wykonywanej operacji.

3 lutego 2014 r.

Ta aktualizacja zawiera następujące zmiany:

  • Aktualizacje dotychczasowych zasobów i metod

    • Zasób asset może teraz mieć wartość type art_track_video.

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

      • Obiekt origin zawiera informacje opisujące sposób utworzenia roszczenia.
      • Właściwość thirdPartyClaim zawiera wartość logiczną, która wskazuje, czy roszczenie zostało zgłoszone przez właściciela treści innego niż ten powiązany z użytkownikiem wykonującym wyszukiwanie.

    • Metoda claimSearch.list obsługuje teraz te parametry opcjonalne:

      • contentType: ogranicza wyniki do roszczeń dotyczących tylko dźwięku, tylko wideo lub audiowizualnych.
      • origin: określa co najmniej jedno źródło roszczeń, np. descriptiveSearch lub videoMatch, dla którego chcesz znaleźć roszczenia.
      • status: ogranicza wyniki tylko do roszczeń o określonym stanie.

    • Właściwość status zasobu claim obsługuje teraz te dodatkowe wartości: appealed, disputed, potential, takedown i unknown.

    • Nowa właściwość claim zasobu blockOutsideOwnership wskazuje, czy zgłoszony film powinien być zablokowany na obszarach, na których nie jest on własnością konkretnej osoby. Domyślnie film objęty roszczeniem będzie nadal dostępny w krajach, w których nie zdefiniowano danych własności zasobu powiązanego z roszczeniem.

    • Nowa właściwość allowedOptions.autoGeneratedBreaks zasobu contentOwnerAdvertisingOption wskazuje, czy partner może wyświetlać reklamy w trakcie filmu w momencie przerwy określonej automatycznie przez YouTube.

    • Metodę contentOwners.list można teraz wywołać za pomocą tokena autoryzacji, który określa zakres https://www.googleapis.com/auth/youtubepartner-content-owner-readonly.

    • Nowa właściwość timeUpdated zasobu policy określa czas ostatniej aktualizacji zasad.

    • Metoda policies.list obsługuje teraz opcjonalny parametr sort, który umożliwia określenie, czy wyniki mają być sortowane w kolejności rosnącej czy malejącej według czasu ostatniej aktualizacji.

    • Nowa właściwość expiryTime zasobu referenceConflict określa czas, w którym zakończy się okres sprawdzania konfliktu odwołań, co spowoduje wygaśnięcie konfliktu.

    • Nowa właściwość autoGeneratedBreaks zasobu videoAdvertisingOption wskazuje, czy w filmie mają się wyświetlać reklamy w trakcie filmu w przerwach wyznaczanych automatycznie przez YouTube.

  • Nowe i zaktualizowane błędy

    Tabela poniżej zawiera nowe błędy obsługiwane przez interfejs API oraz metody, które mogą zwracać te błędy. Pamiętaj, że metoda może zwracać wiele błędów tego samego typu. Jeśli na przykład spróbujesz wstawić zasób asset, w którym brakuje wymaganego pola metadanych, zwrócony zostanie błąd required. W rzeczywistości może być więcej niż jedno wymagane pole metadanych, z których każde zwróci błąd z nieco innym komunikatem.

    Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

    Metoda Błędy
    assets.insert
    assets.update
    • badRequest – interfejs API nie obsługuje operacji zapisu dotyczących zasobów utworu audio.
    claimSearch.list
    • invalidValue – parametr pageToken w żądaniu określa nieprawidłowy token strony.
    claims.insert
    • badRequest – roszczenie, które próbujesz zgłosić, jest nieprawidłowe, ponieważ kanał filmu jest nieaktywny.
    • badRequest – film, do którego próbujesz zgłosić roszczenie, jest zwolniony z zasady usuwania treści. W razie pytań prosimy o kontakt na adres copyright@youtube.com
    • badRequest – nie możemy rozpatrzyć Twojej prośby, ponieważ nie możesz zgłosić roszczenia osoby trzeciej wobec wskazanego filmu.
    • conflict – YouTube nie może utworzyć roszczenia, ponieważ film został objęty żądaniem usunięcia.
    • conflict – YouTube nie może utworzyć żądanego roszczenia, ponieważ film ma aktywne żądanie usunięcia treści.
    references.insert
    • badRequest – film objęty roszczeniem, którego próbujesz użyć, został usunięty lub odrzucony albo nie udało się go przetworzyć.
  • Błędy contentOwnerNotProvidedinternalError, które nie są specyficzne dla konkretnej metody interfejsu API, nie są już wymienione na każdej stronie metody. Ich opisy można znaleźć w sekcji Ogólne błędy w dokumentacji błędów interfejsu API.

12 września 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowe materiały i metody

    • Nowy zasób referenceConflict wskazuje konflikt między dwoma plikami referencyjnymi i wypisuje dopasowania między tymi plikami, które istniały w momencie wykrycia konfliktu. Metoda referenceConflicts.list umożliwia pobranie listy nierozwiązanych konfliktów plików referencyjnych powiązanych z autoryzowanym właścicielem treści. Metoda referenceConflicts.get umożliwia pobieranie konfliktu odwołania przez podanie jego unikalnego identyfikatora konfliktu odwołania.

    Aktualizacje dotychczasowych zasobów i metod

    • Interfejs API obsługuje teraz możliwość pobrania obowiązującej zasady dopasowania zasobu. Ta zmiana jest analogiczna do zmian wprowadzonych 16 lipca 2013 r., które obejmowały obsługę pobierania kanonicznego zestawu metadanych i danych własnościowych zasobu.

      Aby pobrać skuteczną zasadę dopasowania zasobu, ustaw wartość parametru fetchMatchPolicy na effective podczas wywoływania metod assets.get lub assets.list. W odpowiedzi interfejsu API obiekt matchPolicyEffective w każdym zwróconym zasobie asset zawiera obowiązującą zasadę dopasowania do danego zasobu.

    • Nowy obiekt ownershipConflicts zasobu asset zawiera informacje o konflikcie własności zasobu. Struktura obiektu jest podobna do struktury zasobu ownership, który identyfikuje różne typy praw, które może posiadać właściciel zasobu. (W przypadku większości typów zasobów właściciele mogą mieć ogólne prawo własności do zasobu, ale w przypadku zasobów kompozycji mogą wyszczególnić swoje prawa własności do praw do wykonania, praw do synchronizacji lub praw mechanicznych).

      Podobnie obiekt ownershipConflicts zawiera osobne listy, które wskazują konflikty dotyczące ogólnych praw własności, praw do wykonawstwa, praw do synchronizacji i prawa do odtwarzania. W przypadku każdego konfliktu dane wskazują regiony, w których występuje konflikt, właścicieli, którzy podali sprzeczne dane dotyczące własności, oraz procent zasobu, do którego każdy z właścicieli zgłasza prawa własności.

    • Metody assets.getassets.get obsługują teraz nowy parametr fetchOwnershipConflicts. Parametr ma wartość logiczną, która wskazuje, czy żądanie interfejsu API powinno pobierać konflikty własności zasobów w odpowiedzi interfejsu API. Wartość domyślna to false, co oznacza, że konflikty własności nie są zwracane.

    • Definicja parametru q metody assetSearch.list została zaktualizowana, aby wskazywać pola metadanych, które YouTube przeszukuje.

    • Dokumentacja treści żądania dla metody references.insert wskazuje teraz, że musisz ustawić wartość właściwości contentType. Ta zmiana aktualizuje dokumentację, aby odzwierciedlała rzeczywistą funkcjonalność interfejsu API, ale nie oznacza zmiany w jego funkcjonalności.

  • Nowe i zaktualizowane błędy

    • Interfejs API obsługuje nowy błąd forbidden, który nie jest związany z konkretną metodą i wskazuje, że żądana operacja nie może zostać autoryzowana przez konto usługi.

    • Metoda assets.insert identyfikuje teraz błędy metadanych występujące w właściwościach obiektu metadataMine, a nie w obiekcie metadata, który został wycofany w ramach aktualizacji interfejsu API 16 lipca 2013 r.

    • Strona błędy została zaktualizowana, aby w przypadku każdego zasobu obsługującego metody updatepatch zawierać jedną tabelę z błędami zwracanymi przez te dwie metody. Wcześniej na stronie były podawane błędy dla każdej metody osobno, ale listy były zawsze takie same.

16 lipca 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowe materiały i metody

    • Nowa metoda claimHistory.get umożliwia identyfikowanie i pobieranie informacji o konkretnym roszczeniu. Zwrócony zasób claimHistory zawiera listę zdarzeń związanych z roszczeniem, takich jak utworzenie, zaktualizowanie, zakwestionowanie lub zamknięcie roszczenia.

    • Nowa metoda claimSearch.list umożliwia wyszukiwanie roszczeń, które spełniają dowolne z tych kryteriów:

      • Roszczenia są powiązane z konkretnym zasobem.
      • Roszczenia są powiązane z konkretnym filmem.
      • roszczenia pasują do ciągu zapytania podanego w żądaniu;

      Każdy zasób claimSnippet w odpowiedzi interfejsu API zawiera szczegóły roszczenia, w tym unikalny identyfikator roszczenia, jego stan, typ (audio, video lub audiovisual) oraz zasób i film powiązane z roszczeniem. Zawiera on też liczbę wyświetleń filmu objętego roszczeniem oraz jego tytuł.

  • Aktualizacje dotychczasowych zasobów i metod

    • Dokumentacja zawiera teraz listę obsługiwanych wartości właściwości, które mają zestaw wartości wyliczonych. Takie właściwości to np. właściwość type zasobu asset i właściwość status zasobu claim.

    • W przypadku metod assets.getassets.list interfejs API obsługuje teraz wartości rozdzielone przecinkami w parametrach żądania fetchMetadatafetchOwnership, co umożliwia pobieranie wielu zestawów metadanych lub danych własności.

      Poniżej znajdziesz listę zmian w strukturze zasobu asset oraz informacje o tym, jak te zmiany wpływają na metody interfejsu API, które wykorzystują zasoby get, list, insert, update lub patch asset.

      • Obiekt metadata został wycofany i zastąpiony obiektami metadataMinemetadataEffective. Nowe obiekty umożliwiają zasobowi asset uwzględnienie zarówno zestawu metadanych dostarczonych przez właściciela treści, który wysłał żądanie do interfejsu API, jak i kanonicznego zestawu metadanych, który według YouTube jest najbardziej dokładnym i kompletnym zestawem metadanych danego zasobu.

      • Podobnie obiekt ownership został zastąpiony obiektami ownershipMine i ownershipEffective.

      • Obiekt matchPolicy został zastąpiony obiektem matchPolicyMine. (interfejs API nie obsługuje obecnie możliwości pobrania skutecznej zasady dopasowania zasobu).

      Uwaga: aby zapewnić zgodność wsteczną, jeśli dla zasobu przesłane zostaną tylko 1 wersja metadanych, 1 zbiór danych o własności lub 1 zasada dopasowania, odpowiedź interfejsu API będzie zawierać obiekt wycofany oraz nowy obiekt obsługiwany. Jeśli na przykład żądanie ustawia parametr fetchMetadata na wartość mine, odpowiedź interfejsu API będzie zawierać obiekt metadata i obiekt metadataMine, z których oba będą zawierać te same dane. (możliwość ustawienia parametru fetchMetadata=mine była obsługiwana przed aktualizacją funkcji umożliwiającą pobieranie wielu wersji metadanych).

      Jeśli parametr fetchMetadata ma wartość mine,effective, odpowiedź interfejsu API będzie zawierać obiekty metadataMine i metadataEffective, ale nie obiekt metadata. (przed tą aktualizacją funkcji nie można było ustawić wartości fetchMetadata=mine,effective, więc nie trzeba zwracać obiektu metadata ze względu na zgodność wsteczną). Ta sama zasada dotyczy też parametrów fetchOwnershipfetchMatchPolicy.

      Podobnie ze względu na zgodność wsteczną żądanie dotyczące zasobu insert, update lub patch zasobu asset może zawierać obiekt metadataMine lub metadata. Ta sama zasada dotyczy ustawiania danych własności zasobu asset lub zasad dopasowania.

    • Parametry assetId, qvideoId metody claims.list zostały wycofane. Aby wyszukać roszczenia za pomocą dowolnego z tych kryteriów, użyj metody claimSearch.list, która obsługuje wszystkie te parametry.

    • W zasobie ownership wartości właściwości general[].ratio, performance[].ratio, synchronization[].ratiomechanical[].ratio mają teraz format treści double zamiast integer.

    • Definicja właściwości rules[].action zasobu policy zawiera teraz listę prawidłowych wartości tej właściwości: block, monetize, takedown i track. Pamiętaj jednak, że nie możesz użyć interfejsu API do zastosowania zasady usuwania treści do roszczenia.

    • Nowa właściwość claimId zasobu reference jest obecna, jeśli odniesienie zostało utworzone przez powiązanie zasobu z istniejącym filmem w YouTube przesłanym na kanał YouTube połączony z Twoim kontem CMS. W takim przypadku to pole zawiera identyfikator roszczenia, który reprezentuje powiązanie między zasobem a filmem.

    • Nowa właściwość excludedIntervals[] zasobu reference określa listę przedziałów czasowych w pliku referencyjnym, które YouTube powinien zignorować podczas dopasowywania. Każdy przedział określa czas rozpoczęcia i zakończenia mierzony w sekundach od początku filmu.

    • Interfejs API nie wymaga już ustawiania właściwości status w zasobie reference, który jest wysyłany w treści żądania references.update lub references.patch.

    • Poprawiono dokumentację, aby prawidłowo opisać format odpowiedzi interfejsu API w przypadku metody videoAdvertisingOptions.getEnabledAds. Odpowiedź, która jest zasobem youtubePartner#videoAdvertisingOptionGetEnabledAds, zawiera te informacje:

      • id – identyfikator, którego YouTube używa do jednoznacznego zidentyfikowania filmu objętego roszczeniem powiązanego z tymi ustawieniami.

      • adBreaks – lista obiektów, z których każdy zawiera informacje o miejscu przed odtworzeniem filmu, w jego trakcie lub po nim, w którym mogą się wyświetlać reklamy. Każdy obiekt może też określać inne atrybuty przerwy na reklamę, takie jak boksy reklamowe, które pojawiają się podczas przerwy, oraz typy reklam, które mogą być wyświetlane w każdym boksie.

      • adsOnEmbeds – pole logiczne, które wskazuje, czy YouTube może wyświetlać reklamy podczas odtwarzania filmu w osadzonym odtwarzaczu.

      • countriesRestriction – lista obiektów, w których każdy obiekt identyfikuje listę terytoriów i formaty reklam używane podczas odtwarzania filmu na tych terytoriach.

  • Nowe i zaktualizowane błędy

    • Tabela poniżej zawiera nowe błędy obsługiwane przez interfejs API oraz metody, które mogą zwracać te błędy. Wykrywa też błędy, które uległy zmianie. Pamiętaj, że metoda może zwracać wiele błędów tego samego typu. Jeśli na przykład spróbujesz wstawić zasób asset, w którym brakuje wymaganego pola metadanych, zwrócony zostanie błąd required. W rzeczywistości może być więcej niż jedno wymagane pole metadanych, z których każde zwróci błąd z nieco innym komunikatem.

      Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

      Metoda Błędy
      assets.insert
      assets.update
      assets.patch
      • Błędy invalidValuerequired, które były wcześniej powiązane z elementami podrzędnymi obiektu metadata, są teraz powiązane z tymi samymi elementami podrzędnymi w obiekcie metadataMine.
      claimHistory.get
      • notFound – nie można znaleźć roszczenia, którego dotyczy żądana historia.
      • required – żądanie nie określa wartości parametru claimId.
      claimSearch.list
      claims.list
      • badRequest – żądanie zawiera nieprawidłowe kryteria. Możesz podać co najwyżej jeden z tych parametrów filtra: q, assetId, videoId.
      claims.insert
      • badRequest – roszczenie, które próbujesz utworzyć, jest nieprawidłowe, ponieważ właściciel treści, którego dotyczy żądanie, nie jest właścicielem zasobu powiązanego z roszczeniem.
      • badRequest – właściciel treści, w którego imieniu działasz, nie ma uprawnień do tworzenia zasad z wybranym działaniem.
      • invalidValue – właściciel treści, w którego imieniu działasz, nie ma uprawnień do zgłaszania roszczeń do filmów przesłanych przez użytkowników za pomocą interfejsu API.
      contentOwners.list
      • badRequest – żądanie zawiera nieprawidłowe kryteria. Musisz podać dokładnie 1 z tych parametrów filtra: fetchMine lub id. (wcześniej błąd zawierał inny zestaw parametrów filtra: has_conflicts_with, restrict_to_user, name_prefixid).
      ownership.update
      ownership.patch
      • badRequest – żądanie aktualizujące dane własności komponentu musi zawierać szczegółowe dane własności, takie jak prawa mechanical, performance, synchronization lub lyric, a nie prawa własności general. Dodano obsługę typu praw lyric.
      policies.insert
      policies.update
      policies.patch
      • invalidValue – żądanie zawiera nieprawidłową regułę, ponieważ interfejs API nie obsługuje tworzenia ani modyfikowania zasad, które określają działanie takedown. Ten błąd, który podaje przyczynę invalidPolicyTakedownAction, zastępuje wycofany błąd invalidPolicyConditionalTakedown.
      references.insert
      • badRequest – żądanie musi przesłać plik multimedialny lub podać wartość parametru claimId. Żądanie nie może jednak wysyłać pliku multimedialnego ani określać wartości parametru claimId.
      • badRequest – plik referencyjny dla tych samych treści został już utworzony na podstawie innego roszczenia dotyczącego tego samego filmu w YouTube.
      • badRequest – interfejs API nie obsługuje możliwości ustawienia wartości właściwości fpDirect podczas tworzenia odwołania.
      • internalError – wystąpił problem z przesłanym plikiem multimedialnym.
      • invalidValue – wartość parametru żądania contentType, assetId lub claimId jest nieprawidłowa. Błąd identyfikuje nieprawidłową wartość.
      • notFound – nie można znaleźć określonego zasobu lub roszczenia. Sprawdź wartości parametrów assetIdclaimId w żądaniu.
      • required – żądanie musi zawierać wartość parametru contentType.
      references.insert
      references.update
      references.patch
      • invalidValue – excludedIntervals określone w odwołaniu są nieprawidłowe. Pamiętaj, że podczas dezaktywacji odwołania nie możesz określić przedziałów wykluczenia.

10 maja 2013 r.

Ta aktualizacja zawiera następujące zmiany:

8 kwietnia 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nazwa interfejsu API została zmieniona na YouTube Content ID API.

  • W zasobach assetMatchPolicy zmieniło się kilka właściwości:

    • Wartość właściwości kind zmieniła się z youtubePartner#policy na youtubePartner#assetMatchPolicy.
    • Nowa właściwość policyId zawiera wartość, która jednoznacznie identyfikuje zapisane źródło zasad.
    • Wartość właściwości rules[].subaction jest teraz listą ciągów znaków, a nie ciągiem znaków.
    • Wartość właściwości rules[].conditions.contentMatchType jest teraz listą ciągów znaków, a nie ciągiem znaków.
    • Usługi id, namedescription zostały usunięte.

  • Dokumentacja metody assetMatchPolicy.update została zaktualizowana, aby odzwierciedlić fakt, że podczas wywoływania metody możesz ustawić wartości właściwości policyId lub obiektu rules[].

  • Zasób claims obsługuje teraz kilka nowych właściwości:

    Nazwa usługi Wartość Opis
    timeCreated datetime Data i godzina utworzenia roszczenia.
    matchInfo object Obiekt matchInfo zawiera informacje o dopasowanych treściach, które spowodowały zgłoszenie roszczenia. Te informacje są uwzględniane w zasobach claim tylko wtedy, gdy roszczenie zostało wygenerowane automatycznie, ponieważ przesłany film pasował do istniejącego pliku referencyjnego.
    matchInfo.referenceId string Unikalny identyfikator, którego YouTube używa do identyfikowania odwołania reference, które spowodowało dopasowanie.
    matchInfo.longestMatch object Obiekt longestMatch zawiera informacje o najdłuższym dopasowaniu między plikiem referencyjnym a przesłanym filmem.
    matchInfo.longestMatch.durationSecs unsigned long Czas dopasowania w sekundach.
    matchInfo.longestMatch.userVideoOffset unsigned long Odchylenie czasowe rozpoczęcia meczu, mierzone w sekundach od początku przesłanego filmu.
    matchInfo.longestMatch.referenceOffset unsigned long Przesunięcie czasowe początku dopasowania mierzone w sekundach od początku odniesienia.
    matchInfo.totalMatch object Obiekt totalMatch zawiera informacje o łącznej długości przesłanego filmu, który pasuje do pliku referencyjnego, oraz łącznej długości pliku referencyjnego, który pasuje do przesłanego filmu. Te wartości mogą się różnić, jeśli dopasowane treści są odtwarzane w pętli w przesłanym filmie lub pliku referencyjnym. Jeśli na przykład przesłany film zawiera 10-sekundowy klip z pliku referencyjnego, ale klip jest powtórzony 6 razy, łączna długość treści pasujących do przesłanego filmu wynosi 60 sekund, a łączna długość treści pasujących do pliku referencyjnego to tylko 10 sekund.
    matchInfo.totalMatch.userVideoDurationSecs unsigned long Łączny czas trwania (w sekundach) przesłanego filmu, który pasuje do pliku referencyjnego.
    matchInfo.totalMatch.referenceDurationSecs unsigned long Łączny czas trwania (w sekundach) treści referencyjnych, które pasują do przesłanego filmu.
    origin object Obiekt origin zawiera informacje opisujące źródło twierdzenia.
    origin.source string Źródło roszczenia.
  • Właściwość policy w zasobie claims została zaktualizowana, aby wskazać, że w przypadku roszczenia dotyczącego programu AudioSwap nie można zaktualizować tej wartości.

  • Nazwa właściwości timeProvidedMs zasobu metadataHistory została zmieniona na timeProvided.

  • Nazwa właściwości timeProvidedMs zasobu ownershipHistory została zmieniona na timeProvided.

  • Definicja metody ownershipHistory.list została zaktualizowana, aby wskazać, że metoda pobiera tylko najnowsze dane dotyczące własności dla każdego właściciela treści. Jeśli jednak właściciel treści przesłał dane własności za pomocą wielu źródeł danych (API, plików danych o treściach itp.), lista będzie zawierać najnowsze dane dla każdego właściciela treści i źródła danych.

  • W zasobach policy zmieniło się kilka właściwości:

    • Nazwa rule została zmieniona na reguły.
    • Wartość właściwości rules[].subaction jest teraz listą ciągów znaków, a nie ciągiem znaków.
    • Wartość właściwości rules[].conditions.contentMatchType jest teraz listą ciągów znaków, a nie ciągiem znaków.

  • Dokumentacja metod policies.insertpolicies.update została zaktualizowana, aby odzwierciedlić fakt, że podczas wywoływania tych metod możesz ustawiać wartości obiektu rules[].

  • Kilka metod interfejsu API obsługuje nowe typy błędów. Tabela poniżej zawiera metodę i krótki opis typów nowo obsługiwanych błędów. W wielu przypadkach dany typ może zawierać wiele błędów. Jeśli na przykład spróbujesz wstawić zasób asset, w którym brakuje wymaganego pola metadanych, zwrócony zostanie błąd required. W rzeczywistości może być więcej niż jedno wymagane pole metadanych, z których każde zwróci błąd z nieco innym komunikatem.

    Więcej informacji znajdziesz w dokumentacji dotyczącej błędów poszczególnych metod lub na stronie Błędy.

    Metoda Błędy
    assets.insert
    • invalidValue – pole metadanych zasobu zawiera nieprawidłową wartość.
    • required – brakuje wymaganego pola metadanych zasobu.
    assets.update
    assets.patch
    • forbidden – zasób, który ma zostać zaktualizowany, nie należy do partnera, który próbuje przeprowadzić aktualizację.
    • invalidValue – pole metadanych zasobu zawiera nieprawidłową wartość.
    • notFound – komponent jest powiązany z komponentem sezonu lub programu, którego nie można znaleźć.
    • required – brakuje wymaganego pola metadanych zasobu.
    claims.insert
    • badRequest – żądanie zgłoszenia roszczenia do filmu, ale roszczenie nie jest dozwolone.
    ownership.update
    ownership.patch
    • badRequest – żądanie definiuje łączne prawa własności przekraczające 100% na danym obszarze.
    policies.insert
    policies.patch
    policies.update
    • conflictingPolicyRules – zasady zawierają sprzeczne reguły.
  • Na nowej stronie błędów znajdziesz listę błędów, które może zwrócić interfejs API. Strona zawiera błędy ogólne, które mogą wystąpić w przypadku wielu różnych metod interfejsu API, a także błędy związane z poszczególnymi metodami.

18 stycznia 2013 r.

Ta aktualizacja zawiera następujące zmiany:

  • Nowo udokumentowana metoda videoAdvertisingOptions.getEnabledAds pozwala pobierać szczegółowe informacje o typach reklam dozwolonych w przypadku określonego filmu przesłanego przez partnera lub użytkownika.

  • Definicja parametru assetSearch.list metody ownershipRestriction została zaktualizowana, aby wskazać, że domyślna wartość parametru to mine, co oznacza, że interfejs API powinien pobierać tylko zasoby należące do bieżącego użytkownika.

  • Dokumentacja metody assets.list uwzględnia te zmiany:

    • Parametr id jest teraz wymagany.

    • Nowy obsługiwany parametr fetchMatchPolicy pozwala określić, czy żądanie interfejsu API ma też pobierać zasady dopasowania ustawione dla komponentu.

    • Nowy obsługiwany parametr fetchOwnership pozwala określić, czy żądanie interfejsu API ma też pobierać dane własności zasobu.

    • Lista zasobów zwracanych przez interfejs API nie zawiera już danych dotyczących podziału na strony. W związku z tym z odpowiedzi interfejsu API usunięto zarówno właściwość nextPageToken, jak i obiekt pageInfo. Obiekt pageInfo zawierał właściwości totalResults, resultsPerPagestartIndex.

  • Dokumentacja zasobu claims została zaktualizowana, aby wskazać, że podczas tworzenia roszczenia należy określić zasady. (YouTube nie stosuje obecnie domyślnych zasad użytkowania, jeśli dodane roszczenie nie określa zasad, choć dokumentacja wcześniej wskazywała, że tak się dzieje).

  • Właściwość hasUnpublishedDraft zasobu policy została wycofana.

  • Nowy obsługiwany parametr id metody policies.list umożliwia identyfikację zapisanych zasad, które żądanie interfejsu API ma pobrać. Można pobrać tylko zasady należące do aktualnie uwierzytelnionego właściciela treści.

  • Definicja parametru releaseClaims w przypadku metody references.patchreferences.update została zaktualizowana, aby uwzględnić informację, że parametr działa tylko wtedy, gdy stan roszczenia jest aktualizowany na inactive. W takim przypadku możesz też ustawić wartość parametru releaseClaims na true, aby uwolnić wszystkie oświadczenia o zgodności wygenerowane przez odwołanie.

  • Metody references.patchreferences.update zostały zaktualizowane, aby wskazać, że podczas wykonywania którejkolwiek z tych operacji musisz określić stan odwołania.

  • Kilka metod interfejsu API obsługuje nowe typy błędów. W tabeli poniżej znajdziesz metodę i nowo obsługiwane błędy:

    Metoda Typ błędu Szczegóły błędu Opis
    guideCategories.list notFound Unavailable Nie można znaleźć zasobu, dla którego próbujesz pobrać zasadę dopasowania.
    claims.get notFound Unavailable Nie można znaleźć roszczenia, które próbujesz pobrać.
    ownership.patch invalidValue Unavailable Podane dane własności zawierają nieprawidłową wartość.
    ownership.update invalidValue Unavailable Podane dane własności zawierają nieprawidłową wartość.