এই কুইকস্টার্ট গাইডটি ব্যাখ্যা করে কিভাবে একটি সহজ পিএইচপি কমান্ড-লাইন অ্যাপ্লিকেশন সেট আপ করতে হয় যা ইউটিউব ডেটা এপিআই-তে অনুরোধ পাঠায়। এই কুইকস্টার্টটি আসলে দুটি এপিআই অনুরোধ কীভাবে করতে হয় তা ব্যাখ্যা করে:
- আপনি গুগল ডেভেলপারস ইউটিউব চ্যানেল সম্পর্কিত তথ্য পুনরুদ্ধার করতে একটি এপিআই কী ব্যবহার করবেন, যা আপনার অ্যাপ্লিকেশনকে শনাক্ত করে।
- আপনি আপনার নিজের ইউটিউব চ্যানেল সম্পর্কিত তথ্য সংগ্রহের জন্য একটি অনুমোদিত অনুরোধ জমা দিতে একটি OAuth 2.0 ক্লায়েন্ট আইডি ব্যবহার করবেন।
পূর্বশর্ত
এই কুইকস্টার্টটি চালানোর জন্য আপনার প্রয়োজন হবে:
- পিএইচপি ৫.৪ বা তার উচ্চতর সংস্করণ, সাথে কমান্ড-লাইন ইন্টারফেস (সিএলআই) এবং জেএসওএন এক্সটেনশন ইনস্টল করা থাকতে হবে।
- বিশ্বব্যাপী ইনস্টল করা কম্পোজার নির্ভরতা ব্যবস্থাপনা টুল
- পিএইচপি-এর জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি:
- যদি আপনি আগে ক্লায়েন্ট লাইব্রেরি ইনস্টল না করে থাকেন:
composer require google/apiclient:^2.0
- আপনি যদি আগে ক্লায়েন্ট লাইব্রেরিটি ইনস্টল করে থাকেন, তবে আমরা এটি আপডেট করার পরামর্শ দিচ্ছি, যাতে আপনি যে লাইব্রেরিটি পরীক্ষা করছেন তার জন্য সবচেয়ে হালনাগাদ ক্লাসগুলো আপনার কাছে থাকে:
composer update google/apiclient --with-dependencies
- যদি আপনি আগে ক্লায়েন্ট লাইব্রেরি ইনস্টল না করে থাকেন:
ধাপ ১: আপনার প্রজেক্ট এবং ক্রেডেনশিয়াল সেট আপ করুন।
ক্লাউড কনসোলে একটি প্রজেক্ট তৈরি করুন বা নির্বাচন করুন। আপনার প্রজেক্টের জন্য ক্লাউড কনসোলে নিম্নলিখিত কাজগুলো সম্পন্ন করুন:
লাইব্রেরি প্যানেলে , YouTube Data API v3 অনুসন্ধান করুন। সেই API-এর তালিকায় ক্লিক করুন এবং নিশ্চিত করুন যে API-টি আপনার প্রোজেক্টের জন্য সক্রিয় করা আছে।
ক্রেডেনশিয়াল প্যানেলে দুটি ক্রেডেনশিয়াল তৈরি করুন:
একটি এপিআই কী তৈরি করুন। ব্যবহারকারীর অনুমোদনের প্রয়োজন নেই এমন এপিআই অনুরোধগুলি করার জন্য আপনি এপিআই কী ব্যবহার করবেন। উদাহরণস্বরূপ, একটি পাবলিক ইউটিউব চ্যানেল সম্পর্কে তথ্য পেতে আপনার ব্যবহারকারীর অনুমোদনের প্রয়োজন নেই।
একটি OAuth 2.0 ক্লায়েন্ট আইডি তৈরি করুন এবং অ্যাপ্লিকেশন টাইপটি ' ডেস্কটপ অ্যাপ' হিসেবে সেট করুন। যেসব অনুরোধের জন্য ব্যবহারকারীর অনুমোদনের প্রয়োজন হয়, সেগুলোর জন্য আপনাকে OAuth 2.0 ক্রেডেনশিয়াল ব্যবহার করতে হবে। উদাহরণস্বরূপ, বর্তমানে প্রমাণীকৃত ব্যবহারকারীর ইউটিউব চ্যানেল সম্পর্কিত তথ্য পুনরুদ্ধার করতে আপনার ব্যবহারকারীর অনুমোদন প্রয়োজন।
আপনার OAuth 2.0 ক্রেডেনশিয়াল সম্বলিত JSON ফাইলটি ডাউনলোড করুন। ফাইলটির নাম
client_secret_CLIENTID.jsonএর মতো, যেখানেCLIENTIDহলো আপনার প্রোজেক্টের ক্লায়েন্ট আইডি।
ধাপ ২: নমুনাটি সেট আপ করুন এবং চালান
GoogleDevelopers ইউটিউব চ্যানেল সম্পর্কে তথ্য সংগ্রহের জন্য নমুনা কোড পেতে সাইড প্যানেলে থাকা এপিআই এক্সপ্লোরার উইজেটটি ব্যবহার করুন। এই অনুরোধটি আপনার অ্যাপ্লিকেশন শনাক্ত করতে একটি এপিআই কী ব্যবহার করে এবং এর জন্য নমুনাটি চালনাকারী ব্যবহারকারীর অনুমোদন বা কোনো বিশেষ অনুমতির প্রয়োজন হয় না।
- API-এর channels.list মেথডের ডকুমেন্টেশনটি খুলুন।
সেই পৃষ্ঠার "সাধারণ ব্যবহারের ক্ষেত্রসমূহ" বিভাগে একটি সারণি রয়েছে, যেখানে পদ্ধতিটি ব্যবহারের কয়েকটি সাধারণ উপায় ব্যাখ্যা করা হয়েছে। সারণির প্রথম তালিকাটি চ্যানেল আইডি অনুসারে ফলাফল তালিকাভুক্ত করার জন্য।
পূর্ণস্ক্রিন এপিআই এক্সপ্লোরারটি খুলতে ও তাতে তথ্য যোগ করতে প্রথম তালিকার কোড প্রতীকটিতে ক্লিক করুন।

ফুলস্ক্রিন এপিআই এক্সপ্লোরারের বাম দিকে নিম্নলিখিত বিষয়গুলো দেখানো হয়:
রিকোয়েস্ট প্যারামিটারস হেডারের নিচে, মেথডটি যে প্যারামিটারগুলো সাপোর্ট করে তার একটি তালিকা রয়েছে।
partএবংidপ্যারামিটারের ভ্যালু অবশ্যই সেট করতে হবে।idপ্যারামিটারের ভ্যালু,UC_x5XG1OV2P6uZZ5FSM9Ttw, হলো গুগলডেভেলপারস ইউটিউব চ্যানেলের আইডি।প্যারামিটারগুলোর নিচে ক্রেডেনশিয়ালস (Credentials ) নামে একটি সেকশন আছে। সেই সেকশনের পুলডাউন মেনুতে এপিআই কী (API key) ভ্যালুটি দেখানো উচিত। এপিআই এক্সপ্লোরার (APIs Explorer) কাজ শুরু করা সহজ করার জন্য ডিফল্টভাবে ডেমো ক্রেডেনশিয়ালস ব্যবহার করে। কিন্তু স্যাম্পলটি লোকালি চালানোর জন্য আপনাকে আপনার নিজের এপিআই কী (API key) ব্যবহার করতে হবে।

ফুলস্ক্রিন এপিআই এক্সপ্লোরারের ডান দিকে বিভিন্ন ভাষার কোড স্যাম্পলসহ ট্যাব দেখা যায়। পিএইচপি (PHP) ট্যাবটি নির্বাচন করুন।
কোড নমুনাটি কপি করে
example.phpনামের ফাইলে সংরক্ষণ করুন।আপনার ডাউনলোড করা নমুনাটিতে,
YOUR_API_KEYস্ট্রিংটি খুঁজুন এবং এই কুইকস্টার্টের ধাপ ১-এ আপনার তৈরি করা API কী-টি দিয়ে সেটি প্রতিস্থাপন করুন।কমান্ড লাইন থেকে নমুনাটি চালান। আপনার ওয়ার্কিং ডিরেক্টরিতে, চালান:
php example.phpনমুনাটি অনুরোধটি কার্যকর করবে এবং প্রতিক্রিয়াটি
STDOUTএ প্রিন্ট করবে।
ধাপ ৩: একটি অনুমোদিত অনুরোধ চালান
এই ধাপে, আপনি আপনার কোডের নমুনাটি এমনভাবে পরিবর্তন করবেন যাতে এটি GoogleDevelopers ইউটিউব চ্যানেলের তথ্য সংগ্রহের পরিবর্তে আপনার নিজের ইউটিউব চ্যানেলের তথ্য সংগ্রহ করে। এই অনুরোধটির জন্য ব্যবহারকারীর অনুমোদনের প্রয়োজন হবে।
API-এর channels.list মেথডের ডকুমেন্টেশনে ফিরে যান।
"সাধারণ ব্যবহারের ক্ষেত্র" বিভাগে, টেবিলের তৃতীয় তালিকার কোড প্রতীকটিতে ক্লিক করুন। সেই ব্যবহারের ক্ষেত্রটি হলো "আমার চ্যানেল"-এর জন্য
listমেথডটি কল করা।আবার, ফুলস্ক্রিন এপিআই এক্সপ্লোরারের বাম দিকে, আপনি প্যারামিটারগুলির একটি তালিকার পরে ক্রেডেনশিয়ালস বিভাগটি দেখতে পাবেন। তবে, যে উদাহরণে আপনি গুগলডেভেলপারস চ্যানেল সম্পর্কে তথ্য সংগ্রহ করেছিলেন, তার থেকে দুটি পরিবর্তন রয়েছে:
প্যারামিটার সেকশনে,
idপ্যারামিটারের মান সেট করার পরিবর্তেmineপ্যারামিটারের মানtrueসেট করতে হবে। এটি এপিআই সার্ভারকে বর্তমানে অথেনটিকেটেড ব্যবহারকারীর চ্যানেল সম্পর্কে তথ্য সংগ্রহ করতে নির্দেশ দেয়।ক্রেডেনশিয়ালস সেকশনে, পুলডাউন মেনু থেকে গুগল ওঅথ ২.০ (Google OAuth 2.0 ) অপশনটি সিলেক্ট করতে হবে।
এছাড়াও, আপনি যদি 'Show scopes' লিঙ্কে ক্লিক করেন, তাহলে https://www.googleapis.com/auth/youtube.readonly স্কোপটি চেক করা উচিত।

আগের উদাহরণের মতোই, PHP ট্যাবটি নির্বাচন করুন, কোডের নমুনাটি কপি করুন এবং
example.phpনামে সংরক্ষণ করুন।কোডে,
YOUR_CLIENT_SECRET_FILE.jsonস্ট্রিংটি খুঁজুন এবং এই কুইকস্টার্টের ধাপ ১-এ ডাউনলোড করা ক্লায়েন্ট সিক্রেট ফাইলের লোকেশন দিয়ে এটি প্রতিস্থাপন করুন।কমান্ড লাইন থেকে নমুনাটি চালান। আপনার ওয়ার্কিং ডিরেক্টরিতে, চালান:
php example.phpকনসোল থেকে URL-টি কপি করে আপনার ব্রাউজারে খুলুন।
আপনি যদি আগে থেকেই আপনার গুগল অ্যাকাউন্টে লগ ইন করা না থাকেন, তাহলে আপনাকে লগ ইন করতে বলা হবে। আপনি যদি একাধিক গুগল অ্যাকাউন্টে লগ ইন করে থাকেন, তাহলে অনুমোদনের জন্য আপনাকে একটি অ্যাকাউন্ট বেছে নিতে বলা হবে।
আপনার কোড নমুনায় নির্দিষ্ট করা স্কোপগুলিতে আপনার অ্যাপ্লিকেশনকে অ্যাক্সেস দেওয়ার জন্য বোতামটি ক্লিক করুন।
ব্রাউজার থেকে অথোরাইজেশন কোডটি কপি করে আপনার টার্মিনালে পেস্ট করুন। এরপর আপনি অথোরাইজেশন প্রক্রিয়ার জন্য ব্যবহৃত ব্রাউজার ট্যাবটি বন্ধ করে দিতে পারেন।
এপিআই প্রতিক্রিয়াটি আবার
STDOUTএ প্রিন্ট করা উচিত।
আরও পড়ুন
- গুগল ডেভেলপারস কনসোল হেল্প ডকুমেন্টেশন
- পিএইচপি ডকুমেন্টেশনের জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি
- গিটহাবে পিএইচপি-এর জন্য গুগল এপিআই ক্লায়েন্ট লাইব্রেরি এবং ইউটিউব এপিআই-এর জন্য স্বয়ংক্রিয়ভাবে তৈরি ক্লাসসমূহ । (পৃষ্ঠাটিতে,
YouTubeফোল্ডার এবংYouTube.phpফাইলটি খুঁজুন।) - ইউটিউব ডেটা এপিআই রেফারেন্স ডকুমেন্টেশন