নমুনা API অনুরোধ

এই পৃষ্ঠাটি YouTube ডেটা API-তে নমুনা অনুরোধগুলি দেখায়৷ আপনি ভিডিও, চ্যানেল এবং প্লেলিস্টের মতো YouTube সংস্থানগুলি পুনরুদ্ধার এবং ম্যানিপুলেট করতে YouTube ডেটা API ব্যবহার করেন৷ প্রতিটি নমুনা Google APIs এক্সপ্লোরারের সাথে লিঙ্ক করে এবং পপুলেট করে যাতে আপনি নমুনাটি কার্যকর করতে এবং প্রতিক্রিয়া দেখতে পারেন।

YouTube ডেটা API ব্যবহার করে সামগ্রী আপলোড করার বিষয়ে তথ্যের জন্য, পুনঃসূচনাযোগ্য আপলোডগুলি দেখুন।

ওভারভিউ

উপস্থাপনার স্বচ্ছতার জন্য, এই পৃষ্ঠার নমুনাগুলি প্রতিটি অনুরোধের স্বতন্ত্র উপাদানগুলি দেখায় এবং হোস্টের জন্য বেস URL সংক্ষিপ্ত করে যা ডেটা API অনুরোধগুলি প্রক্রিয়া করে ( https://www.googleapis.com/youtube/v3 )৷ নমুনার প্রসঙ্গের বাইরে অনুরোধ করতে, আপনাকে সম্পূর্ণ URL অন্তর্ভুক্ত করতে হবে।

উদাহরণস্বরূপ, এখানে একটি নমুনা অনুরোধ এই পৃষ্ঠায় প্রদর্শিত হবে:

GET {base-URL}/channels?part=contentDetails
                       &mine=true

এই অনুরোধের সম্পূর্ণ URL হল:

GET https://www.googleapis.com/youtube/v3/channels?part=contentDetails
                                                  &mine=true

বেশ কয়েকটি অনুরোধ ডেটা পুনরুদ্ধার করে যা শুধুমাত্র YouTube চ্যানেলের মালিকের কাছে অ্যাক্সেসযোগ্য, যেমন গ্রাহকদের তালিকা। এই অনুরোধগুলির জন্য চ্যানেলের মালিককে Google APIs এক্সপ্লোরারকে তাদের পক্ষে YouTube ডেটা API অনুরোধগুলি সম্পাদন করার অধিকার দিতে হবে৷ (ব্যক্তিগত চ্যানেল ডেটাতে অ্যাক্সেস অনুমোদন করার বিষয়ে বিস্তারিত জানার জন্য OAuth 2.0 প্রমাণীকরণ বাস্তবায়ন দেখুন।) APIs এক্সপ্লোরারের সাথে লিঙ্ক করার পরে, OAuth 2.0 বোতাম ব্যবহার করে অনুমোদনের অনুরোধে ক্লিক করুন। এই পদক্ষেপটি APIs এক্সপ্লোরারকে মালিকের পক্ষ থেকে অনুরোধ করার অনুমতি দেয়৷ আপনি অনুমোদনের সুযোগও নির্বাচন করুন, যা APIs এক্সপ্লোরার যে ধরনের অনুরোধ করতে পারে তা নির্দিষ্ট করে।

প্রতিটি অনুরোধের প্রতিক্রিয়া হল একটি YouTube সম্পদের JSON প্রতিনিধিত্ব। অনুরোধের part প্যারামিটারটি নির্দিষ্ট করে যে সংস্থানের কোন অংশগুলি প্রতিক্রিয়াতে অন্তর্ভুক্ত করা হয়েছে। প্যারামিটারটি এক বা একাধিক শীর্ষ-স্তরের (নন-নেস্টেড) সম্পদ বৈশিষ্ট্য সনাক্ত করে যা প্রতিক্রিয়াতে অন্তর্ভুক্ত করা উচিত। উদাহরণস্বরূপ, একটি ভিডিও সংস্থানের কিছু অংশ হল:

  • স্নিপেট
  • বিষয়বস্তুর বিবরণ
  • খেলোয়াড়
  • পরিসংখ্যান
  • অবস্থা

এই সমস্ত অংশগুলি এমন বস্তু যেগুলিতে নেস্টেড বৈশিষ্ট্য রয়েছে এবং আপনি এই বস্তুগুলিকে মেটাডেটা ক্ষেত্রগুলির গ্রুপ হিসাবে ভাবতে পারেন যা API সার্ভার পুনরুদ্ধার করতে পারে (বা নাও করতে পারে)৷ যেমন, part প্যারামিটারের জন্য আপনাকে আপনার অ্যাপ্লিকেশন আসলে যে রিসোর্স উপাদানগুলি ব্যবহার করে তা নির্বাচন করতে হবে। আরও তথ্যের জন্য YouTube ডেটা API দিয়ে শুরু করা দেখুন।

চ্যানেল তথ্য পুনরুদ্ধার করুন

এই অনুরোধটি প্রমাণীকৃত ব্যবহারকারীর অন্তর্গত চ্যানেলগুলির বিবরণ পুনরুদ্ধার করতে channels.list পদ্ধতি ব্যবহার করে৷

GET {base_URL}/channels?part=contentDetails
                       &mine=true

এই অনুরোধের প্রতিক্রিয়াতে চ্যানেল আইডি এবং প্রমাণীকৃত ব্যবহারকারীর চ্যানেলের contentDetails অন্তর্ভুক্ত রয়েছে। contentDetails চ্যানেলের সাথে যুক্ত বেশ কয়েকটি সিস্টেম-উত্পন্ন প্লেলিস্ট অন্তর্ভুক্ত করে। পরবর্তী অনেক অনুরোধের জন্য চ্যানেল আইডি বা প্লেলিস্ট আইডিগুলির একটি প্রয়োজন, তাই সেগুলি রেকর্ড করা গুরুত্বপূর্ণ৷

{
  "id": {CHANNEL_ID},
  "kind": "youtube#channel",
  "etag": etag,
  "contentDetails": {
    "relatedPlaylists": {
      "likes": {LIKES_PLAYLIST_ID},
      "favorites": {FAVORITES_PLAYLIST_ID},
      "uploads": {UPLOADS_PLAYLIST_ID},
      "watchHistory": {WATCHHISTORY_PLAYLIST_ID},
      "watchLater": {WATCHLATER_PLAYLIST_ID}
    },
    "googlePlusUserId": string
  },
}

আপলোড করা ভিডিও এবং সিস্টেম-জেনারেটেড প্লেলিস্ট

YouTube চ্যানেলের সাথে যুক্ত একটি প্লেলিস্টে সমস্ত আপলোড করা ভিডিও যোগ করে। আপলোড করা ভিডিওগুলির একটি তালিকা পেতে, আপনি সেই প্লেলিস্টের ভিডিওগুলি পুনরুদ্ধার করতে playlistItems.list পদ্ধতি ব্যবহার করে চ্যানেলের তথ্যের জন্য উপরে দেখানো প্রতিক্রিয়াতে ফিরে আসা "আপলোড" প্লেলিস্টটি জিজ্ঞাসা করুন৷

Google APIs এক্সপ্লোরারে নিম্নলিখিত নমুনা অনুরোধটি কার্যকর করার আগে, আগের অনুরোধের প্লেলিস্ট আইডি দিয়ে {UPLOADS_PLAYLIST_ID} প্রতিস্থাপন করুন।

GET {base_URL}/playlistItems?part=contentDetails
                            &playlistId={UPLOADS_PLAYLIST_ID}

মনে রাখবেন যে প্রতিটি ফেরত আইটেমের জন্য "id" মান হল তার প্লেলিস্ট আইটেম আইডি। প্লেলিস্ট আইটেমের ভিডিও আইডি হল contentDetails অংশে videoId

আপনি চ্যানেল তথ্য প্রতিক্রিয়া থেকে সংশ্লিষ্ট প্লেলিস্ট আইডি প্রতিস্থাপন করে উপরের অনুরোধটি ব্যবহার করে ব্যবহারকারীর পছন্দ, পছন্দ, দেখার ইতিহাস বা পরবর্তী তালিকাগুলি পুনরুদ্ধার করতে পারেন।

ব্যবহারকারীর তৈরি প্লেলিস্ট

এই অনুরোধটি প্রমাণীকৃত চ্যানেলের সাথে যুক্ত প্লেলিস্টগুলি পুনরুদ্ধার করতে playlists.list পদ্ধতি ব্যবহার করে৷ মনে রাখবেন যে এই অনুরোধটি চ্যানেলের তথ্য (আপলোড, দেখার ইতিহাস ইত্যাদি) অন্তর্ভুক্ত সিস্টেম-উত্পন্ন প্লেলিস্টগুলি পুনরুদ্ধার করে না ৷ এটি শুধুমাত্র ব্যবহারকারীর তৈরি প্লেলিস্ট পুনরুদ্ধার করে।

GET {base_URL}/playlists?part=snippet
                        &mine=true

একবার আপনার একটি প্লেলিস্ট আইডি হয়ে গেলে, আপনি পূর্ববর্তী বিভাগে দেখানো অনুরোধটি ব্যবহার করে প্লেলিস্ট থেকে আইটেমগুলি পুনরুদ্ধার করতে পারেন।

আপনি প্রমাণীকরণ ছাড়াই একটি চ্যানেলের সর্বজনীন প্লেলিস্ট সম্পর্কে তথ্য সম্পর্কে তথ্যের জন্য অনুরোধ করতে পারেন৷ আপনি যখন একটি অননুমোদিত অনুরোধ জমা দেন, তখন আপনাকে key আর্গুমেন্ট অন্তর্ভুক্ত করতে হবে যা অনুরোধ করার জন্য অ্যাপ্লিকেশনটির জন্য অনন্য API কী নির্দিষ্ট করে। উদাহরণস্বরূপ, এই অনুরোধটি GoogleDevelopers চ্যানেলের সাথে যুক্ত প্লেলিস্টগুলি পুনরুদ্ধার করে৷

GET {base_URL}/playlists?part=snippet
                        &channelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
                        &key={YOUR_API_KEY}

সদস্যতা পুনরুদ্ধার করুন

একটি subscription সংস্থান একটি YouTube ব্যবহারকারী (সাবস্ক্রাইবার) এবং একটি চ্যানেলের মধ্যে একটি সম্পর্ককে সংজ্ঞায়িত করে৷ subscriptions.list পদ্ধতিটি একটি নির্দিষ্ট চ্যানেলের গ্রাহকদের বা একটি নির্দিষ্ট ব্যবহারকারীর জন্য সদস্যতা পুনরুদ্ধার করে, আপনি অনুরোধে কোন প্যারামিটারগুলি অন্তর্ভুক্ত করেছেন তার উপর নির্ভর করে।

চ্যানেল সাবস্ক্রাইবার

এই অনুরোধটি প্রমাণীকৃত চ্যানেলের গ্রাহকদের একটি তালিকা পুনরুদ্ধার করে।

GET {base_URL}/subscriptions?part=snippet
                            &mySubscribers=true

ব্যবহারকারী সদস্যতা

একই পদ্ধতি যা গ্রাহকদের তালিকা করে ( subscriptions.list ) ব্যবহারকারীর সদস্যতা নেওয়া চ্যানেলগুলির তালিকা করতে ব্যবহার করা যেতে পারে। এই অনুরোধটি ইউটিউব চ্যানেলগুলির একটি তালিকা পুনরুদ্ধার করতে mine প্যারামিটার ব্যবহার করে যা প্রমাণীকৃত ব্যবহারকারী সাবস্ক্রাইব করে।

GET {base_URL}/subscriptions?part=snippet
                            &mine=true

ব্যবহারকারী কার্যকলাপ পুনরুদ্ধার করুন

একটি activity সংস্থানটিতে একটি নির্দিষ্ট চ্যানেল বা ব্যবহারকারী YouTube-এ নেওয়া একটি ক্রিয়া সম্পর্কে তথ্য রয়েছে – একটি ভিডিও আপলোড করা, একটি চ্যানেলে সদস্যতা নেওয়া ইত্যাদি। activities.list পদ্ধতি অনুরোধের মানদণ্ডের সাথে মেলে এমন একটি চ্যানেল বা ব্যবহারকারীর সাথে সম্পর্কিত ক্রিয়াগুলি পুনরুদ্ধার করে৷ উদাহরণস্বরূপ, আপনি একটি নির্দিষ্ট চ্যানেলের সাথে, ব্যবহারকারীর সদস্যতার সাথে বা ব্যবহারকারীর কাস্টম YouTube হোম পেজের সাথে সম্পর্কিত ক্রিয়াগুলি পুনরুদ্ধার করতে পারেন৷

একটি সময়ের মধ্যে কার্যকলাপ

এই অনুরোধটি এপ্রিল 2013-এ প্রমাণীকৃত ব্যবহারকারীর সমস্ত পদক্ষেপগুলি পুনরুদ্ধার করে৷

GET {base_URL}/activities?part=snippet,contentDetails
                         &mine=true
                         &publishedAfter=2013-04-01T00%3A00%3A00Z
                         &publishedBefore=2013-05-01T00%3A00%3A00Z

হোম পেজ কার্যকলাপ

এই অনুরোধটি কাস্টম অ্যাক্টিভিটি ফিড পুনরুদ্ধার করে যা প্রমাণীকৃত ব্যবহারকারীর YouTube হোম পেজে প্রদর্শিত হয়।

GET {base_URL}/activities?part=snippet,contentDetails
                         &home=true

YouTube ভিডিও এবং চ্যানেলগুলির জন্য দেখার পরিসংখ্যান, জনপ্রিয়তা মেট্রিক্স এবং জনসংখ্যা সংক্রান্ত তথ্য পুনরুদ্ধার করতে, আপনি YouTube Analytics API ব্যবহার করেন। নমুনা API অনুরোধ পৃষ্ঠা দেখায় কিভাবে YouTube Analytics থেকে সাধারণ রিপোর্ট পুনরুদ্ধার করতে হয়।

search.list পদ্ধতি আপনাকে YouTube ভিডিও, চ্যানেল বা প্লেলিস্ট অনুসন্ধান করতে সক্ষম করে যা নির্দিষ্ট মানদণ্ডের সাথে মেলে। আপনি ভিডিও বৈশিষ্ট্য, কীওয়ার্ড, বা বিষয় (বা এগুলোর সংমিশ্রণ) উপর ভিত্তি করে অনুসন্ধান করতে পারেন এবং আপনি ফলাফলগুলি তৈরির তারিখ, ভিউকাউন্ট বা রেটিং এর মত বিষয়গুলির উপর ভিত্তি করে সাজাতে পারেন।

অন্যান্য YouTube ডেটা API অনুরোধের মতো, search.list পদ্ধতিটি YouTube রিসোর্সের JSON উপস্থাপনা প্রদান করে। অন্যান্য YouTube রিসোর্স থেকে ভিন্ন, যাইহোক, একটি সার্চ ফলাফল একটি অনন্য আইডি সহ একটি স্থায়ী বস্তু নয়।

অনেক অনুরোধ সর্বজনীনভাবে উপলব্ধ সামগ্রী অনুসন্ধান করে এবং তাই প্রমাণীকরণের প্রয়োজন হয় না। নীচের নমুনার মধ্যে, শুধুমাত্র প্রথমটির জন্য প্রমাণীকরণ প্রয়োজন, কারণ এটি বিশেষভাবে "আমার" ভিডিওগুলির জন্য জিজ্ঞাসা করে৷ আপনি যখন একটি অননুমোদিত অনুরোধ জমা দেন, তখন আপনাকে key যুক্তি অন্তর্ভুক্ত করতে হবে যা আপনার অ্যাপ্লিকেশনের জন্য অনন্য API কী নির্দিষ্ট করে।

আমার সবচেয়ে বেশি দেখা ভিডিও

এই অনুরোধটি সমস্ত প্রমাণীকৃত ব্যবহারকারীর ভিডিও পুনরুদ্ধার করে এবং সেগুলিকে ভিউকাউন্টের ভিত্তিতে নিচের ক্রমে তালিকাভুক্ত করে৷

GET {base_URL}/search?part=snippet
                     &forMine=true
                     &order=viewCount
                     &type=video

এমবেডযোগ্য হাই-ডেফিনিশন ভিডিও

এই অনুরোধটি এমন ভিডিওগুলির জন্য অনুসন্ধান করে যেগুলির বিশেষ বৈশিষ্ট্য রয়েছে, যেমন হাই-ডেফিনিশন ভিডিও যা অন্যান্য সাইটে এম্বেড করা যেতে পারে৷ এটি রেটিং এর অবরোহী ক্রমে ফলাফল তালিকাভুক্ত করে।

GET {base_URL}/search?part=snippet
                     &order=rating
                     &type=video
                     &videoDefinition=high
                     &videoEmbeddable=true
                     &key={YOUR_API_KEY}

একটি নির্দিষ্ট বিষয় সম্পর্কে ভিডিও

এই অনুরোধটি YouTube ডেটা API সম্পর্কে ভিডিওগুলির জন্য একটি কীওয়ার্ড অনুসন্ধান করে যা ক্যাপশনগুলি অন্তর্ভুক্ত করে৷

GET {base_URL}/search?part=snippet
                     &q=YouTube+Data+API
                     &type=video
                     &videoCaption=closedCaption
                     &key={YOUR_API_KEY}

বিষয় ভিত্তিক অনুসন্ধান

একটি নির্দিষ্ট বিষয়ে ভিডিও অনুসন্ধান করার আরও পরিশীলিত উপায় হল কীওয়ার্ডের পরিবর্তে ফ্রিবেস বিষয়গুলি ব্যবহার করা। ইউটিউব চ্যানেল এবং ভিডিও রিসোর্সে একটি টপিক ডিটেলস অবজেক্ট থাকে যাতে রিসোর্সের সাথে যুক্ত ফ্রিবেস টপিক আইডিগুলির একটি তালিকা থাকে। একটি বিষয়-ভিত্তিক অনুসন্ধান একটি কীওয়ার্ড অনুসন্ধানের চেয়ে বেশি বুদ্ধিমান, কারণ একটি Freebase বিষয় একটি বাস্তব-বিশ্বের ধারণা বা জিনিসের সমস্ত দিক উপস্থাপন করে।

একটি Freebase বিষয় ব্যবহার করে অনুসন্ধান করতে, আপনাকে প্রথমে Freebase API ব্যবহার করে বিষয় ID পুনরুদ্ধার করতে হবে। এই অনুরোধটি পাইথনের জন্য Freebase বিষয়ের সাথে যুক্ত ভিডিওগুলি ফেরত দেয়, যার বিষয় ID হল /m/05z1_

GET {base_URL}/search?part=snippet
                     &topicId=/m/05z1_
                     &type=video
                     &key={YOUR_API_KEY}

প্লেলিস্ট বা চ্যানেলের জন্য অনুসন্ধান করা হচ্ছে

অনুসন্ধান ভিডিওতে সীমাবদ্ধ নয়। এছাড়াও আপনি প্লেলিস্ট বা চ্যানেল অনুসন্ধান করতে পারেন। এই অনুরোধটি 'সকার' কীওয়ার্ডের সাথে মেলে এমন প্লেলিস্টগুলি পুনরুদ্ধার করে৷

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &type=playlist
                     &key={YOUR_API_KEY}

আপনি যদি সকার চ্যানেলগুলি খুঁজে পেতে চান তবে শুধু type প্যারামিটার পরিবর্তন করুন৷

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &type=channel
                     &key={YOUR_API_KEY}

আপনি যদি সমস্ত সকার-সম্পর্কিত সামগ্রী (চ্যানেল, প্লেলিস্ট এবং ভিডিও) চান তবে আপনি একটি সর্বজনীন অনুসন্ধান করতে পারেন। আপনি type প্যারামিটার বাদ দিলে, অনুরোধটি সব ধরনের সামগ্রী পুনরুদ্ধার করে

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &key={YOUR_API_KEY}

সম্পদ তৈরি এবং আপডেট করুন

আমরা এখন পর্যন্ত যে অনুরোধগুলি দেখেছি সেগুলি YouTube ডেটা পুনরুদ্ধার করতে HTTP GET পদ্ধতি ব্যবহার করে৷ YouTube ডেটা API এমন পদ্ধতিও অফার করে যা ভিডিও, প্লেলিস্ট বা চ্যানেলের মতো YouTube সম্পদ তৈরি বা আপডেট করতে HTTP POST ব্যবহার করে। নিম্নলিখিত অনুরোধগুলি উদাহরণ প্রদান করে।

POST পদ্ধতিতে একটি Request body অন্তর্ভুক্ত থাকে, যেটি রিসোর্স তৈরি বা আপডেট করার JSON উপস্থাপনা। আপনি একটি ইন্টারেক্টিভ টুল ব্যবহার করে Google APIs এক্সপ্লোরারে JSON উপস্থাপনা তৈরি করতে পারেন।

একটি সদস্যতা তৈরি করুন

এই অনুরোধটি প্রমাণীকৃত ব্যবহারকারীকে GoogleDevelopers চ্যানেলে সদস্যতা দেয়। অন্য কথায়, এটি একটি সাবস্ক্রিপশন সংস্থান তৈরি করে।

POST {base_URL}/subscriptions?part=snippet
Request body: {   'snippet': {     'resourceId': {       'kind': 'youtube#channel',       'channelId': 'UC_x5XG1OV2P6uZZ5FSM9Ttw'     }   } }

একটি প্লেলিস্ট তৈরি করুন

এই অনুরোধটি একটি নতুন সর্বজনীন প্লেলিস্ট তৈরি করে৷

POST {base_URL}/playlists?part=snippet
Request body: {   'snippet': {     'title': 'New playlist',     'description': 'Sample playlist for Data API',   } }

একটি প্লেলিস্টে একটি ভিডিও যোগ করা হচ্ছে৷

এখন যেহেতু আমরা একটি প্লেলিস্ট তৈরি করেছি, আসুন এটিতে একটি ভিডিও যুক্ত করি৷ এই অনুরোধটি প্লেলিস্টের শুরুতে একটি ভিডিও যোগ করে ( 'position': 0 )।

POST {base_URL}/playlistItems?part=snippet
  Request body:
  {
    'snippet': {
      'playlistId': '{PLAYLIST_ID}', 
      'resourceId': {
          'kind': 'youtube#video',
          'videoId': '{VIDEO_ID}'
        }
     'position': 0
      }
   }