Aşağıdaki örneklerde, videolarla ilgili işlevleri gerçekleştirmek için YouTube Data API'nin (v3) nasıl kullanılacağı gösterilmektedir.
Bir kanalın yüklediği videoları alma
Bu örnekte, belirli bir kanala yüklenen videolar alınır. Örnekte iki adım vardır:
-
1. Adım: Kanalın yüklediği videoların oynatma listesi kimliğini alın
Kanalın yüklediği videoları içeren oynatma listesinin kimliğini almak için
channels.list
yöntemini çağırın. İsteğinpart
parametresi değeri, alınanchannel
kaynak bölümlerinden biri olarakcontentDetails
değerini içermelidir. API yanıtındacontentDetails.relatedPlaylists.uploads
mülkü, oynatma listesi kimliğini içerir.Kanalı tanımlamanın birkaç yolu vardır:
-
Şu anda kimliği doğrulanmış kullanıcının YouTube kanalı hakkında bilgi almak için
mine
parametre değerinitrue
olarak ayarlayın. İsteğiniz OAuth 2.0 kullanılarak yetkilendirilmelidir.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
forUsername
parametresini bir YouTube kullanıcı adına ayarlayarak bu kullanıcı adıyla ilişkili kanalın bilgilerini alın. Bu örnekte, Google'ın resmi YouTube kanalıyla ilgili bilgileri almak içinforUsername
parametresiGoogle
olarak ayarlanmıştır.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
id
parametresini, bilgi aldığınız kanalı benzersiz şekilde tanımlayan YouTube kanal kimliğine ayarlayın. Bu örnekte,id
parametresiUCK8sQmJBp8GCxrOtXWBpyEA
olarak ayarlanmıştır. Bu değer, Google'ın resmi YouTube kanalını da tanımlar.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
2. adım: Yüklenen videoların listesini alın
Yüklenen videoların listesini almak için
playlistItems.list
yöntemini çağırın.playlistId
parametresinin değerini 1. adımda elde edilen değere ayarlayın. Bu örnekte parametre değeriUUK8sQmJBp8GCxrOtXWBpyEA
olarak ayarlanmıştır. Bu değer, Google'ın resmi YouTube kanalına yüklenen videoların listesidir.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
En popüler videoları alma
Bu örnekte, genel popülerliği belirlemek için birçok farklı sinyali birleştiren bir algoritma kullanılarak seçilen YouTube'un en popüler videolarının listesinin nasıl alınacağı gösterilmektedir.
En popüler videolar listesini almak için videos.list
yöntemini çağırın ve chart
parametresinin değerini mostPopular
olarak ayarlayın. Bu listeyi alırken aşağıdaki parametrelerden birini veya ikisini birden de ayarlayabilirsiniz:
regionCode
: API'ye, belirtilen bölgenin video listesini döndürmesini söyler.videoCategoryId
: En popüler videoların hangi video kategorisinden alınacağını tanımlar.
Aşağıdaki istek, İspanya'da en popüler spor videolarını alır:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Video yükle
API Gezgini, dosya yükleme özelliğini desteklemediğinden bu açıklama, yürütülebilir bir örneğe bağlantı vermez. Aşağıdaki kaynaklar, uygulamanızı v3 API'yi kullanarak video yükleyebilecek şekilde değiştirmenize yardımcı olacaktır:
-
API'nin videos.insert yöntemine ait dokümanlar, farklı programlama dilleri kullanılarak video yüklemeyi açıklayan çeşitli kod örnekleri içerir.
-
Devam ettirilebilir yüklemeler kılavuzunda, bir uygulamanın devam ettirilebilir yükleme işlemini kullanarak video yüklemek için kullandığı HTTP isteklerinin sırası açıklanmaktadır. Bu kılavuz, bazılarında devam ettirilebilir yüklemeler için yerel destek sunan Google API istemci kitaplıklarını kullanamayan geliştiriciler için hazırlanmıştır.
-
Video yükleme konulu JavaScript örneğinde, bir web sayfası üzerinden video dosyasının nasıl yükleneceğini göstermek için CORS (merkezler arası kaynak paylaşımı) kullanılır. v3 API'nin kullandığı CORS yükleme kitaplığı, devam ettirilebilir yüklemeyi doğal olarak destekler. Ayrıca örnekte,
video
kaynağınınprocessingDetails
bölümünü alarak yüklenen bir videonun durumunun nasıl kontrol edileceği ve yüklenen videonun durum değişikliklerinin nasıl ele alınacağı gösterilmektedir.
Yüklenen bir videonun durumunu kontrol etme
Bu örnekte, yüklenen bir videonun durumunun nasıl kontrol edileceği gösterilmektedir. Yüklenen videolar, kimliği doğrulanmış kullanıcıların yüklenen videolar akışında hemen görünür. Ancak video, işlenene kadar YouTube'da görünmez.
-
1. adım: Videoyu yükleyin
Videoyu yüklemek için
videos.insert
yöntemini çağırın. İstek başarılı olursa API yanıtı, yüklenen videonun benzersiz video kimliğini tanımlayan birvideo
kaynağı içerir. -
2. adım: Videonun durumunu kontrol edin
Videonun durumunu kontrol etmek için
videos.list
yöntemini çağırın.id
parametresinin değerini 1. adımda elde edilen video kimliğine ayarlayın.part
parametresinin değeriniprocessingDetails
olarak ayarlayın.İstek başarıyla işlenirse API yanıtı bir
video
kaynağı içerir. YouTube'un videoyu hâlâ işleyip işlemediğini belirlemek içinprocessingDetails.processingStatus
mülkünün değerini kontrol edin. YouTube videoyu işlemeyi tamamladığında mülkün değeriprocessing
yerinesucceeded
veyafailed
gibi bir değerle değiştirilir.İstek gövdesi,
id
mülkünün sildiğiniz videonun video kimliğini belirttiği birvideo
kaynağıdır. Bu örnekte kaynak, birrecordingDetails
nesnesi de içerir.Aşağıdaki istek, bir videonun durumunu kontrol eder. İsteği APIs Explorer'da tamamlamak için
id
mülkünün değerini ayarlamanız gerekir.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Not: Uygulamanız, yeni yüklenen bir videonun durumunu düzenli olarak kontrol etmek için API'yi sorgulayabilir. Video işlendikten sonra uygulamanız, videonun durumuna bağlı olarak bir bülten oluşturabilir veya başka bir işlem gerçekleştirebilir.
Videoyu güncelleme
Bu örnekte, videonun çekildiği zaman ve yer hakkında bilgi eklemek için videonun nasıl güncelleneceği gösterilmektedir. Örnekte aşağıdaki adımlar yer alır:
-
1. adım: Video kimliğini alın
Kimlik doğrulaması yapılmış kullanıcının kanalındaki yüklenen videoları almak için yukarıdaki adımları uygulayın. Bu liste, her videonun kimliği anahtar olarak kullanılarak videoların listesini görüntülemek için kullanılabilir.
Not: Video kimliklerini elde etmenin arama sonuçlarını alma veya oynatma listesindeki öğeleri listeleme gibi başka birçok yolu vardır. Ancak bir video yalnızca sahibi tarafından güncellenebileceğinden, API isteğine yetki veren kullanıcıya ait videoların listesini almak bu sürecin ilk adımı olabilir.
-
2. adım: Videoyu güncelleyin
Belirli bir videoyu güncellemek için
videos.update
yöntemini çağırın.part
parametresinin değerinirecordingDetails
olarak ayarlayın. (Parametre değeri, hangi videonun meta veri alanlarının güncellendiğine bağlıdır.)İstek gövdesi,
id
mülkünün güncellediğiniz videonun video kimliğini belirttiği birvideo
kaynağıdır. Bu örnekte kaynak, birrecordingDetails
nesnesi de içerir.Aşağıdaki örnek kaynakta, videonun 30 Ekim 2013'te Boston'da çekildiği belirtilmektedir:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
İsteği APIs Explorer'da tamamlamak için
id
mülkünün değerini ayarlamanız gerekir.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Özel küçük resim yükleme ve videoya ayarlama
Özel küçük resim yüklemek ve video için ayarlamak üzere v3 API'nin thumbnails.set
yöntemini kullanabilirsiniz. İsteğinizde videoId
parametresinin değeri, küçük resmin kullanılacağı videoyu tanımlar.
API Gezgini, bu yöntem için gerekli olan medya dosyası yükleme özelliğini desteklemediğinden bu sorgu API Gezgini kullanılarak test edilemez.
Video silme
Bu örnekte bir videonun nasıl silineceği gösterilmektedir. Örnekte aşağıdaki adımlar yer alır:
-
1. adım: Video kimliğini alın
Kimlik doğrulaması yapılmış kullanıcının kanalındaki yüklenen videoları almak için yukarıdaki adımları uygulayın. Bu liste, her videonun kimliği anahtar olarak kullanılarak videoların listesini görüntülemek için kullanılabilir.
Not: Video kimliklerini elde etmenin arama sonuçlarını alma veya oynatma listesindeki öğeleri listeleme gibi başka birçok yolu vardır. Ancak bir video yalnızca sahibi tarafından silinebileceğinden, API isteğine yetki veren kullanıcıya ait videoların listesinin alınması bu sürecin ilk adımı olabilir.
-
2. Adım: Videoyu silin
Belirli bir videoyu silmek için
videos.delete
yöntemini çağırın. İstekteid
parametresi, sildiğiniz videonun kimliğini belirtir. İstek, OAuth 2.0 kullanılarak yetkilendirilmelidir. Bu sorguyu API Gezgini'nde test ediyorsanızid
parametre değeri için geçerli bir video kimliği kullanmanız gerekir.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Kötüye kullanım amaçlı videoları bildirme
Bu örnekte, kötüye kullanım amaçlı içerik barındıran bir videonun nasıl bildirileceği gösterilmektedir. Örnekte aşağıdaki adımlar yer alır:
-
1. adım: Videonun neden bildirildiğini açıklayan kimlikleri alın
Bir videoyu işaretlemeyle ilgili geçerli nedenlerin listesini almak için
videoAbuseReportReasons.list
yöntemine yetkili bir istek gönderin. Aşağıdaki örnekvideoAbuseReportReason
kaynağı, spam veya yanıltıcı içerik barındıran bir videoyu işaretlemeyle ilgili bilgileri içerir.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
Kaynakta gösterildiği gibi bu neden, ikincil nedenlerin listesiyle ilişkilidir. Bir videoyu spam içerdiği için işaretlerken nedenini belirtmeniz gerekir. İkincil bir neden belirtmeniz de önerilir.
-
2. adım: Videoyu kötüye kullanım amaçlı içerik olarak işaretleyin
Videoyu bildirmek için
JSON nesnesininvideos.reportAbuse
yöntemine yetkili bir istek gönderin. İstek gövdesi, hem işaretlenen videoyu hem de işaretlenme nedenini tanımlayan bir JSON nesnesidir. 1. adımda belirtildiği gibi, bazı neden türleri için ikincil bir neden desteklenir ve önemle tavsiye edilir.videoId
mülkü, işaretlenen videoyu tanımlar.Aşağıdaki örnek JSON nesnesi, bir videonun spam veya yanıltıcı içerik barındırdığını ve daha da ayrıntılı olarak, yanıltıcı bir küçük resim kullandığını işaretler. Yukarıdaki örnek JSON nesnesinde gösterildiği gibi, Spam veya yanıltıcı içeriğin kimliği S'dir. Yanıltıcı küçük resim kimliği 28'dir.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
videos.reportAbuse
isteği, OAuth 2.0 kullanılarak yetkilendirilmelidir. Aşağıdaki bağlantı, yukarıdaki JSON nesnesini API Gezgini'nde yükler. Sorguyu test etmek içinvideoId
mülk değeri yerine geçerli bir video kimliği girmeniz gerekir. Bu isteği gönderdiğinizde videonun işaretleneceğini lütfen unutmayın.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse