लागू करने का तरीका: वीडियो

यहां दिए गए उदाहरणों से पता चलता है कि वीडियो से जुड़े फ़ंक्शन करने के लिए, YouTube Data API (v3) का इस्तेमाल कैसे किया जाता है.

किसी चैनल पर अपलोड किए गए वीडियो पाना

इस उदाहरण में, किसी खास चैनल पर अपलोड किए गए वीडियो पाने का तरीका बताया गया है. इस उदाहरण में दो चरण शामिल हैं:

  • पहला चरण: चैनल पर अपलोड किए गए वीडियो की प्लेलिस्ट आईडी पाना

    चैनल पर अपलोड किए गए वीडियो की प्लेलिस्ट का आईडी पाने के लिए, channels.list तरीके को कॉल करें. अनुरोध के part पैरामीटर वैल्यू में, channel रिसॉर्स के उन हिस्सों में से एक के तौर पर contentDetails शामिल होना चाहिए जिन्हें वापस पाया जा रहा है. एपीआई से मिली जानकारी में, contentDetails.relatedPlaylists.uploads प्रॉपर्टी में प्लेलिस्ट आईडी शामिल होता है.

    चैनल की पहचान करने के कई तरीके हैं:

    • फ़िलहाल, पुष्टि किए गए उपयोगकर्ता के YouTube चैनल की जानकारी पाने के लिए, mine पैरामीटर की वैल्यू को true पर सेट करें. आपके अनुरोध को OAuth 2.0 का इस्तेमाल करके अनुमति दी जानी चाहिए.

      https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list?
              part=contentDetails
              &mine=true
    • किसी YouTube उपयोगकर्ता नाम से जुड़े चैनल की जानकारी पाने के लिए, forUsername पैरामीटर को उस उपयोगकर्ता नाम पर सेट करें. इस उदाहरण में, Google के आधिकारिक YouTube चैनल की जानकारी पाने के लिए, forUsername पैरामीटर की वैल्यू को Google पर सेट किया गया है.

      https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list?
              part=contentDetails
              &forUsername=Google
    • उस YouTube चैनल के आईडी के लिए, id पैरामीटर सेट करें जिसकी जानकारी आपको चाहिए. यह आईडी, चैनल की यूनीक पहचान होती है. इस उदाहरण में, id पैरामीटर को UCK8sQmJBp8GCxrOtXWBpyEA पर सेट किया गया है. यह Google के आधिकारिक YouTube चैनल की पहचान भी करता है.

      https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list?
              part=contentDetails
              &id=UCK8sQmJBp8GCxrOtXWBpyEA
  • दूसरा चरण: अपलोड किए गए वीडियो की सूची पाना

    अपलोड किए गए वीडियो की सूची पाने के लिए, playlistItems.list तरीके को कॉल करें. playlistId पैरामीटर की वैल्यू को, पहले चरण में मिली वैल्यू पर सेट करें. इस उदाहरण में, पैरामीटर की वैल्यू को UUK8sQmJBp8GCxrOtXWBpyEA पर सेट किया गया है. यह Google के आधिकारिक YouTube चैनल पर अपलोड किए गए वीडियो की सूची है.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list?
            part=snippet,contentDetails,status
            &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA

इस उदाहरण में, YouTube के सबसे लोकप्रिय वीडियो की सूची पाने का तरीका बताया गया है. इन वीडियो को, एक ऐसे एल्गोरिदम का इस्तेमाल करके चुना जाता है जो लोकप्रियता का पता लगाने के लिए, कई अलग-अलग सिग्नल को जोड़ता है.

सबसे लोकप्रिय वीडियो की सूची पाने के लिए, videos.list तरीके को कॉल करें और chart पैरामीटर की वैल्यू को mostPopular पर सेट करें. mostPopular चार्ट में, ट्रेंडिंग संगीत, फ़िल्में, और गेमिंग वीडियो शामिल होते हैं.

इसके बाद, आपके पास इन पैरामीटर को सेट करने का विकल्प होता है:

  • regionCode: एपीआई को, तय किए गए इलाके के वीडियो की सूची दिखाने का निर्देश देता है. पैरामीटर वैल्यू, ISO 3166-1 alpha-2 देश का कोड होती है. YouTube पर उपलब्ध इलाकों के कोड की सूची पाने के लिए, i18nRegions.list तरीके का इस्तेमाल किया जा सकता है.
  • videoCategoryId: उस वीडियो कैटगरी की पहचान करता है जिसके सबसे लोकप्रिय वीडियो पाने हैं. YouTube पर उपलब्ध कैटगरी के आईडी की सूची पाने के लिए, videoCategories.list तरीके का इस्तेमाल किया जा सकता है.

उदाहरण के लिए, यहां दिए गए अनुरोध से स्पेन में सबसे लोकप्रिय खेल वीडियो की सूची मिलती है:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list?
        part=snippet
        &chart=mostPopular
        &regionCode=es
        &videoCategoryId=17
  

बैच में वीडियो के आंकड़े पाना

इस उदाहरण में, videos.batchGetStats तरीके का इस्तेमाल करके, वीडियो की सूची के आंकड़े पाने का तरीका बताया गया है.

इस तरीके का इस्तेमाल करने के लिए, अनुरोध के id पैरामीटर को उन YouTube वीडियो के आईडी की कॉमा से अलग की गई सूची पर सेट करें जिनके आंकड़े आपको चाहिए. part पैरामीटर की वैल्यू को, videoStat रिसॉर्स के उन हिस्सों की कॉमा लगाकर अलग की गई लिस्ट पर सेट करें जिन्हें आपको जवाब में शामिल करना है. snippet, statistics, contentDetails, और id के हिस्से इस्तेमाल किए जा सकते हैं.

गैर-सार्वजनिक वीडियो के लिए, इस तरीके का इस्तेमाल करने के लिए पुष्टि करना ज़रूरी है. हालांकि, सार्वजनिक वीडियो के लिए इसकी ज़रूरत नहीं है. अगर अनुरोध से, गैर-सार्वजनिक वीडियो का डेटा मिलता है, तो उसे सही तरीके से अनुमति दी जानी चाहिए.

यहां दिए गए अनुरोध से, वीडियो आईडी VIDEO_ID_1 और VIDEO_ID_2 के आंकड़े मिलते हैं:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.batchGetStats?
        part=snippet,statistics
        &id=VIDEO_ID_1,VIDEO_ID_2

वीडियो अपलोड करना

चूंकि APIs explorer फ़ाइलें अपलोड करने की सुविधा नहीं देता है, इसलिए इस जानकारी में, काम करने वाले उदाहरण का लिंक शामिल नहीं है. यहां दिए गए रिसॉर्स, आपके ऐप्लिकेशन में बदलाव करने में मदद करेंगे, ताकि वह v3 API का इस्तेमाल करके वीडियो अपलोड कर सके:

  • एपीआई के videos.insert तरीके के दस्तावेज़ में, कई कोड सैंपल शामिल हैं. इनमें अलग-अलग प्रोग्रामिंग भाषाओं का इस्तेमाल करके, वीडियो अपलोड करने का तरीका बताया गया है.

  • फिर से अपलोड करने की सुविधा वाली गाइड में, एचटीटीपी अनुरोधों के उस क्रम के बारे में बताया गया है जिसका इस्तेमाल कोई ऐप्लिकेशन, फिर से अपलोड करने की सुविधा का इस्तेमाल करके वीडियो अपलोड करने के लिए करता है. यह गाइड मुख्य रूप से उन डेवलपर के लिए है जो Google API की क्लाइंट लाइब्रेरी का इस्तेमाल नहीं कर सकते. इनमें से कुछ लाइब्रेरी, फिर से अपलोड करने की सुविधा के लिए नेटिव सपोर्ट देती हैं.

  • वीडियो अपलोड करने के लिए, JavaScript के उदाहरण में सीओआरएस (क्रॉस-ऑरिजिन रिसॉर्स शेयरिंग) का इस्तेमाल किया गया है. इससे यह दिखाया गया है कि वेब पेज के ज़रिए, वीडियो फ़ाइल को कैसे अपलोड किया जाता है. v3 API जिस सीओआरएस अपलोड लाइब्रेरी का इस्तेमाल करता है उसमें, फिर से अपलोड करने की सुविधा पहले से मौजूद होती है. इसके अलावा, उदाहरण में यह भी दिखाया गया है कि अपलोड किए गए वीडियो का स्टेटस कैसे देखा जाता है. इसके लिए, video रिसॉर्स का processingDetails हिस्सा वापस पाया जाता है. साथ ही, यह भी दिखाया गया है कि अपलोड किए गए वीडियो के स्टेटस में होने वाले बदलावों को कैसे मैनेज किया जाता है.

अपलोड किए गए वीडियो का स्टेटस देखना

इस उदाहरण में, अपलोड किए गए वीडियो का स्टेटस देखने का तरीका बताया गया है. अपलोड किया गया वीडियो, पुष्टि किए गए उपयोगकर्ता के अपलोड किए गए वीडियो के फ़ीड में तुरंत दिखने लगेगा. हालांकि, वीडियो प्रोसेस होने तक वह YouTube पर नहीं दिखेगा.

  • पहला चरण: वीडियो अपलोड करना

    वीडियो अपलोड करने के लिए, videos.insert तरीके को कॉल करें. अगर अनुरोध पूरा हो जाता है, तो एपीआई से मिली जानकारी में एक video रिसॉर्स शामिल होगा. इससे अपलोड किए गए वीडियो के वीडियो का आईडी की पहचान होती है.

  • दूसरा चरण: वीडियो का स्टेटस देखना

    वीडियो का स्टेटस देखने के लिए, videos.list तरीके को कॉल करें. id पैरामीटर की वैल्यू को, पहले चरण में मिले वीडियो आईडी पर सेट करें. part पैरामीटर की वैल्यू को processingDetails पर सेट करें.

    अगर अनुरोध पूरा हो जाता है, तो एपीआई से मिली जानकारी में एक video रिसॉर्स शामिल होगा. यह देखने के लिए कि YouTube अब भी वीडियो को प्रोसेस कर रहा है या नहीं, processingDetails.processingStatus प्रॉपर्टी की वैल्यू देखें. जब YouTube वीडियो को प्रोसेस कर लेगा, तब प्रॉपर्टी की वैल्यू processing के अलावा कुछ और हो जाएगी. जैसे, succeeded या failed.

    अनुरोध का मुख्य हिस्सा, एक video रिसॉर्स होता है. इसमें id प्रॉपर्टी, उस वीडियो का आईडी बताती है जिसे मिटाया जा रहा है. इस उदाहरण में, रिसॉर्स में recordingDetails ऑब्जेक्ट भी शामिल है.

    यहां दिए गए अनुरोध से, वीडियो का स्टेटस देखा जा सकता है. एपीआई एक्सप्लोरर में अनुरोध पूरा करने के लिए, आपको id प्रॉपर्टी की वैल्यू सेट करनी होगी.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list?
            part=snippet,processingDetails
            &id=VIDEO_ID

ध्यान दें: आपका ऐप्लिकेशन, हाल ही में अपलोड किए गए वीडियो का स्टेटस समय-समय पर देखने के लिए, एपीआई को पोल कर सकता है. वीडियो प्रोसेस होने के बाद, आपका ऐप्लिकेशन बुलेटिन बना सकता है या वीडियो के स्टेटस के हिसाब से कोई दूसरी कार्रवाई कर सकता है.

वीडियो अपडेट करना

इस उदाहरण में, वीडियो को अपडेट करके, उसे रिकॉर्ड करने के समय और जगह की जानकारी जोड़ने का तरीका बताया गया है. इस उदाहरण में ये चरण शामिल हैं:

  • पहला चरण: वीडियो का आईडी पाना

    फ़िलहाल, पुष्टि किए गए उपयोगकर्ता के चैनल पर अपलोड किए गए वीडियो पाने के लिए, ऊपर दिया गया तरीका अपनाएं. इस सूची का इस्तेमाल, वीडियो की सूची दिखाने के लिए किया जा सकता है. इसके लिए, हर वीडियो के आईडी को कुंजी के तौर पर इस्तेमाल किया जा सकता है.

    ध्यान दें: वीडियो का आईडी पाने के कई अन्य तरीके भी हैं. जैसे, खोज के नतीजे पाना या किसी प्लेलिस्ट में शामिल आइटम की सूची पाना. हालांकि, वीडियो को सिर्फ़ उसका मालिक अपडेट कर सकता है. इसलिए, एपीआई के अनुरोध को अनुमति देने वाले उपयोगकर्ता के वीडियो की सूची पाना, इस प्रोसेस का पहला चरण हो सकता है.

  • दूसरा चरण: वीडियो अपडेट करना

    किसी वीडियो को अपडेट करने के लिए, videos.update तरीके को कॉल करें. part पैरामीटर की वैल्यू को recordingDetails पर सेट करें. (पैरामीटर की वैल्यू इस पर निर्भर करती है कि वीडियो के किस मेटाडेटा फ़ील्ड को अपडेट किया जा रहा है.)

    अनुरोध का मुख्य हिस्सा, एक video रिसॉर्स होता है. इसमें id प्रॉपर्टी, उस वीडियो का आईडी बताती है जिसे अपडेट किया जा रहा है. इस उदाहरण में, रिसॉर्स में recordingDetails ऑब्जेक्ट भी शामिल है.

    यहां दिए गए सैंपल रिसॉर्स से पता चलता है कि वीडियो, 30 अक्टूबर, 2013 को बॉस्टन में रिकॉर्ड किया गया था:

    {
      "id": "VIDEO_ID",
      "recordingDetails": {
        "location": {
          "latitude": "42.3464",
          "longitude": "-71.0975"
        }
        "recordingDate": "2013-10-30T23:15:00.000Z"
      }
    }

    एपीआई एक्सप्लोरर में अनुरोध पूरा करने के लिए, आपको id प्रॉपर्टी की वैल्यू सेट करनी होगी.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update?
            part=snippet

क्रिएटर की ओर से ब्रैंड पार्टनर को ऐक्सेस देने की सुविधा (सीआई बीपीए) की मदद से, वीडियो का मालिक अपने वीडियो का ऐक्सेस, ब्रैंड पार्टनर के चैनल के साथ शेयर कर सकता है. इसके लिए, brandPartner हिस्सा ज़रूरी है.

ऐक्सेस देना (इंसर्ट)

वीडियो अपलोड करते समय ऐक्सेस देने के लिए, part पैरामीटर में brandPartner शामिल करें और अनुरोध के मुख्य हिस्से में brandPartner ऑब्जेक्ट दें. ब्रैंड चैनल की पहचान करने के लिए, आपको channelId (बाहरी चैनल आईडी, जो "UC" से शुरू होता है) या channelHandle (जो "@" से शुरू होता है) में से कोई एक जानकारी देनी होगी.

POST /youtube/v3/videos?part=snippet,status,brandPartner
{
  "snippet": {
    "title": "Video Title",
    "description": "Video Description",
    "categoryId": "22"
  },
  "status": {
    "privacyStatus": "private"
  },
  "brandPartner": {
    "channelHandle": "@brandchannel"
  }
}

जवाब में, सिर्फ़ हल किया गया channelId दिखेगा.

ऐक्सेस अपडेट करना या हटाना (अपडेट)

किसी दूसरे ब्रैंड चैनल को ऐक्सेस देने या ऐक्सेस हटाने के लिए, part पैरामीटर में brandPartner के साथ videos.update तरीके को कॉल करें.

ऐक्सेस बदलने के लिए, अनुरोध के मुख्य हिस्से में नया channelId या channelHandle दें:

PUT /youtube/v3/videos?part=brandPartner
{
  "id": "VIDEO_ID",
  "brandPartner": {
    "channelId": "UC_SOME_BRAND_CHANNEL_ID"
  }
}

ऐक्सेस हटाने के लिए, part पैरामीटर में brandPartner के साथ अनुरोध भेजें. हालांकि, अनुरोध के मुख्य हिस्से में खाली brandPartner ऑब्जेक्ट शामिल करें:

PUT /youtube/v3/videos?part=brandPartner
{
  "id": "VIDEO_ID",
  "brandPartner": {}
}

वीडियो के लिए कस्टम थंबनेल इमेज अपलोड करना और उसे सेट करना

v3 API के thumbnails.set तरीके का इस्तेमाल करके, वीडियो के लिए कस्टम थंबनेल इमेज अपलोड की जा सकती है और उसे सेट किया जा सकता है. आपके अनुरोध में, videoId पैरामीटर की वैल्यू से उस वीडियो की पहचान होती है जिसके लिए थंबनेल का इस्तेमाल किया जाएगा.

इस क्वेरी को APIs explorer का इस्तेमाल करके टेस्ट नहीं किया जा सकता, क्योंकि APIs explorer में मीडिया फ़ाइलें अपलोड करने की सुविधा नहीं है. इस तरीके के लिए, यह ज़रूरी है.

कोड के मिलते-जुलते सैंपल: PHP, Python

वीडियो मिटाना

इस उदाहरण में, वीडियो मिटाने का तरीका बताया गया है. इस उदाहरण में ये चरण शामिल हैं:

  • पहला चरण: वीडियो का आईडी पाना

    फ़िलहाल, पुष्टि किए गए उपयोगकर्ता के चैनल पर अपलोड किए गए वीडियो पाने के लिए, ऊपर दिया गया तरीका अपनाएं. इस सूची का इस्तेमाल, वीडियो की सूची दिखाने के लिए किया जा सकता है. इसके लिए, हर वीडियो के आईडी को कुंजी के तौर पर इस्तेमाल किया जा सकता है.

    ध्यान दें: वीडियो का आईडी पाने के कई अन्य तरीके भी हैं. जैसे, खोज के नतीजे पाना या किसी प्लेलिस्ट में शामिल आइटम की सूची पाना. हालांकि, वीडियो को सिर्फ़ उसका मालिक मिटा सकता है. इसलिए, एपीआई अनुरोध को अनुमति देने वाले उपयोगकर्ता के वीडियो की सूची पाना, इस प्रोसेस का पहला चरण हो सकता है.

  • दूसरा चरण: वीडियो मिटाना

    किसी वीडियो को मिटाने के लिए, videos.delete तरीके को कॉल करें. अनुरोध में, id पैरामीटर उस वीडियो का आईडी बताता है जिसे मिटाया जा रहा है. अनुरोध को OAuth 2.0 का इस्तेमाल करके अनुमति दी जानी चाहिए. अगर APIs explorer में इस क्वेरी को टेस्ट किया जा रहा है, तो आपको id पैरामीटर वैल्यू के लिए, मान्य वीडियो का आईडी डालना होगा.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete?
            id=VIDEO_ID
    

अपमानजनक वीडियो की शिकायत करना

इस उदाहरण में, अपमानजनक कॉन्टेंट वाले वीडियो की शिकायत करने का तरीका बताया गया है. इस उदाहरण में ये चरण शामिल हैं:

  • पहला चरण: उन आईडी को पाना जिनसे पता चलता है कि वीडियो की शिकायत क्यों की जा रही है

    वीडियो को फ़्लैग करने की मान्य वजहों की सूची पाने के लिए, videoAbuseReportReasons.list तरीके को अनुमति वाला अनुरोध भेजें. यहां दिए गए videoAbuseReportReason रिसॉर्स के सैंपल में, स्पैम या गुमराह करने वाला कॉन्टेंट वाले वीडियो को फ़्लैग करने की जानकारी शामिल है.

    {
      "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"
          }
        ]
      }
    }

    जैसा कि रिसॉर्स में दिखाया गया है, यह वजह, दूसरी वजहों की सूची से जुड़ी है. स्पैम वाले वीडियो को फ़्लैग करते समय, आपको वजह का आईडी देना होगा. साथ ही, दूसरी वजह देने का भी सुझाव दिया जाता है.

  • दूसरा चरण: अपमानजनक कॉन्टेंट के लिए वीडियो को फ़्लैग करना

    वीडियो की शिकायत करने के लिए, videos.reportAbuse तरीके को अनुमति वाला अनुरोध भेजें. अनुरोध का मुख्य हिस्सा, एक JSON ऑब्जेक्ट होता है. इससे, फ़्लैग किए जा रहे वीडियो और उसे फ़्लैग करने की वजह, दोनों की पहचान होती है. जैसा कि पहले चरण में बताया गया है, कुछ तरह की वजहों के लिए, दूसरी वजह भी दी जा सकती है. ऐसा करने का सुझाव दिया जाता है.

    JSON ऑब्जेक्ट की videoId प्रॉपर्टी, उस वीडियो की पहचान करती है जिसे फ़्लैग किया जा रहा है.

    यहां दिए गए JSON ऑब्जेक्ट के सैंपल में, स्पैम या गुमराह करने वाला कॉन्टेंट वाले वीडियो को फ़्लैग किया गया है. खास तौर पर, इसमें गुमराह करने वाली थंबनेल इमेज का इस्तेमाल किया गया है. जैसा कि ऊपर दिए गए JSON ऑब्जेक्ट के सैंपल में दिखाया गया है, स्पैम या गुमराह करने वाला कॉन्टेंट के लिए आईडी S है. गुमराह करने वाले थंबनेल के लिए आईडी 28 है.

    {
      "videoId": "VIDEO_ID",
      "reasonId": "S",
      "secondaryReasonId": "28",
      "comments": "Testing the video flagging feature.",
      "language": "en"
    }

    videos.reportAbuse अनुरोध को OAuth 2.0 का इस्तेमाल करके अनुमति दी जानी चाहिए. यहां दिए गए लिंक से, एपीआई एक्सप्लोरर में ऊपर दिया गया JSON ऑब्जेक्ट लोड होता है. क्वेरी को टेस्ट करने के लिए, आपको videoId प्रॉपर्टी की वैल्यू के लिए, मान्य वीडियो का आईडी डालना होगा. कृपया ध्यान रखें कि इस अनुरोध को सबमिट करने पर, वीडियो को फ़्लैग कर दिया जाएगा.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse