অন্যান্য Google API-এর মতো, Google Ads API যাচাইকরণ ও অনুমোদনের জন্য OAuth 2.0 প্রোটোকল ব্যবহার করে। OAuth 2.0 আপনার Google Ads API ক্লায়েন্ট অ্যাপকে ব্যবহারকারীর লগ-ইন তথ্য ম্যানেজ বা স্টোর না করেই ব্যবহারকারীর Google Ads অ্যাকাউন্ট অ্যাক্সেস করার সুবিধা দেয়।
Google Ads অ্যাক্সেস মডেল সম্পর্কে বোঝা
Google Ads API-এর সাথে কার্যকরভাবে কাজ করতে, Google Ads অ্যাক্সেস মডেল কীভাবে কাজ করে তা বুঝুন। Google Ads অ্যাক্সেস মডেল গাইড দেখুন।
OAuth ওয়ার্কফ্লো
Google Ads API-এর সাথে কাজ করার সময় তিনটি সাধারণ ওয়ার্কফ্লো ব্যবহার করা হয়।
পরিষেবা অ্যাকাউন্ট ফ্লো
আপনার ওয়ার্কফ্লোতে কোনও হিউম্যান ইন্টার্যাকশনের প্রয়োজন না হলে, এই ওয়ার্কফ্লো সাজেস্ট করা হয়। এই ওয়ার্কফ্লোতে কনফিগারেশন ধাপ প্রয়োজন, যেখানে ব্যবহারকারী তার Google Ads অ্যাকাউন্টে পরিষেবা অ্যাকাউন্ট যোগ করেন। তারপর, অ্যাপটি ব্যবহারকারীর Google Ads অ্যাকাউন্ট ম্যানেজ করার জন্য পরিষেবা অ্যাকাউন্টের ক্রেডেনশিয়াল ব্যবহার করতে পারে।
Perl ক্লায়েন্ট লাইব্রেরিতে পরিষেবা অ্যাকাউন্টের সাথে আপনার নিজের ক্রেডেনশিয়াল ব্যবহার করে API অ্যাক্সেসের জন্য OAuth2 কীভাবে সেট-আপ করবেন তা এখানে দেওয়া হল:
OAuth2 ক্রেডেনশিয়াল তৈরি করুন:
পরিষেবা অ্যাকাউন্ট ও JSON কী ফাইল তৈরি করতে নির্দেশাবলী অনুসরণ করুন।
ক্লায়েন্ট লাইব্রেরি সেট-আপ করুন:
আপনার কনফিগারেশনে ব্যক্তিগত কী JSON পাথ (এবং ঐচ্ছিক
impersonatedEmail, যদি Google Workspace ডোমেন-ওয়াইড ডেলিগেশন ব্যবহার করেন) সেট করুন। আপনিgoogleads.propertiesফাইল ব্যবহার করলে, নিম্নলিখিত তথ্য যোগ করুন:jsonKeyFilePath=PRIVATE_KEY_FILE_PATH # Optional unless using Google Workspace domain-wide delegation: impersonatedEmail=IMPERSONATED_EMAIL loginCustomerId=LOGIN_CUSTOMER_IDআপনি এনভায়রনমেন্ট ভেরিয়েবেল ব্যবহার করলে, আপনার Bash কনফিগারেশন বা এনভায়রনমেন্টে নিম্নলিখিতগুলি যোগ করুন:
export GOOGLE_ADS_JSON_KEY_FILE_PATH=KEY_FILE_PATH export GOOGLE_ADS_IMPERSONATED_EMAIL=\ IMPERSONATED_EMAIL export GOOGLE_ADS_LOGIN_CUSTOMER_ID=LOGIN_CUSTOMER_IDআরও জানতে সার্ভিস অ্যাকাউন্ট ওয়ার্কফ্লো গাইড দেখুন।
সিঙ্গেল-ইউজার যাচাইকরণ ফ্লো
আপনি যদি পরিষেবা অ্যাকাউন্ট ব্যবহার করতে না পারেন, তাহলে এই ওয়ার্কফ্লো ব্যবহার করা হতে পারে। এই ওয়ার্কফ্লোর জন্য দুটি কনফিগারেশন ধাপ প্রয়োজন:
- Google Ads API ব্যবহার করে ম্যানেজ করা হবে এমন সব অ্যাকাউন্টে একজন ব্যবহারকারীকে অ্যাক্সেস দিন। একটি সাধারণ পদ্ধতি হল ব্যবহারকারীকে Google Ads API ম্যানেজার অ্যাকাউন্টে অ্যাক্সেস দেওয়া এবং সেই ম্যানেজার অ্যাকাউন্টের অধীনে সব Google Ads অ্যাকাউন্ট লিঙ্ক করা।
- ব্যবহারকারী
generate_user_credentials.plকোডের উদাহরণ রান করেন যাতে আপনার অ্যাপ তার হয়ে তার সব Google Ads অ্যাকাউন্ট ম্যানেজ করার অনুমতি পায়।
নিম্নলিখিত ধাপগুলি একটি ইন্টার্যাক্টিভ কোডের উদাহরণ রান করে, যার জন্য আপনাকে ইনপুট দিতে হয়।
টার্মিনালে,
examplesডিরেক্টরিতেgenerate_user_credentials.plউদাহরণটি রান করুন। আপনি রান করার আগে উদাহরণেINSERT_XXX_HEREভ্যালু পরিবর্তন করতে পারেন অথবা ক্লায়েন্ট আইডির জন্য কমান্ড-লাইন আর্গুমেন্ট-client_idএবং ক্লায়েন্ট সিক্রেটের জন্য-client_secretব্যবহার করতে পারেন।perl generate_user_credentials.pl \ -client_id OAUTH_CLIENT_ID \ -client_secret OAUTH_CLIENT_SECRETএই কোডের উদাহরণ আপনাকে একটি URL-এ যেতে প্রম্পট করে যেখানে আপনাকে অবশ্যই আপনার হয়ে আপনার Google Ads অ্যাকাউন্ট অ্যাক্সেস করার জন্য অ্যাপটিকে অনুমোদন করতে হবে।
Paste this url in your browser: https://accounts.google.com/o/oauth2/v2/auth?response_type=code&access_type=offline...ব্যক্তিগত ব্রাউজার সেশন বা ছদ্মবেশী উইন্ডোতে URL-এ নেভিগেট করুন। Google Ads অ্যাক্সেস করার জন্য আপনি যে Google অ্যাকাউন্ট ব্যবহার করেন সেটি দিয়ে সাইন-ইন করুন। সাধারণত, এটি হল এমন একটি ইমেল অ্যাকাউন্ট যার Google Ads ম্যানেজার অ্যাকাউন্টে অ্যাক্সেস আছে এবং যেখানে আপনার ম্যানেজ করা প্রয়োজন এমন সব অ্যাকাউন্ট, অ্যাকাউন্ট হায়ারার্কির মধ্যে থাকে। OAuth 2.0 সম্মতি সংক্রান্ত স্ক্রিনে চালিয়ে যান বিকল্পে ক্লিক করুন।

আপনাকে এমন একটি পৃষ্ঠায় রিডাইরেক্ট করা হবে যেখানে একটি মেসেজ থাকবে যা নির্দেশ করবে যে অনুমোদন সফল হয়েছে।
Authorization code was successfully retrieved.আপনি যে কনসোলে কোডের উদাহরণ রান করছেন সেখানে ফিরে যান। আপনি দেখতে পাবেন যে কোডের উদাহরণ সম্পূর্ণ হয়েছে এবং আপনার রিফ্রেশ টোকেন ও কিছু নির্দেশাবলী দেখাচ্ছে, এর পরে ক্লায়েন্ট লাইব্রেরি কনফিগার করার জন্য আপনাকে যেসব নির্দেশাবলী অনুসরণ করতে হবে সেগুলি দেখানো হবে:
Replace the following keys and values in your googleads.properties configuration file: clientId=***********************apps.googleusercontent.com clientSecret=**** refreshToken=****প্রসেসটি বন্ধ করতে
Ctrl + Cপ্রেস করুন। তারপর, জেনারেট করা রিফ্রেশ টোকেন, ক্লায়েন্ট আইডি ও ক্লায়েন্ট সিক্রেট সহ আপনারgoogleads.propertiesফাইলে কপি করুন অথবা রানটাইমে লাইব্রেরি ইনস্ট্যান্টিয়েট করার সময় ব্যবহার করার জন্য অন্য কোথাও সেভ করুন।
googleads.properties-এ নিম্নলিখিতগুলি সেট করে ব্যবহারকারীর OAuth 2.0 ক্রেডেনশিয়াল ব্যবহার করে লাইব্রেরি শুরু করা যেতে পারে:
clientId=OAUTH_CLIENT_ID
clientSecret=OAUTH_CLIENT_SECRET
refreshToken=REFRESH_TOKEN
loginCustomerId=LOGIN_CUSTOMER_ID
অন্যথায়, এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করুন:
export GOOGLE_ADS_CLIENT_ID=OAUTH_CLIENT_ID
export GOOGLE_ADS_CLIENT_SECRET=OAUTH_CLIENT_SECRET
export GOOGLE_ADS_REFRESH_TOKEN=REFRESH_TOKEN
export GOOGLE_ADS_LOGIN_CUSTOMER_ID=LOGIN_CUSTOMER_ID
আরও জানতে সিঙ্গেল-ইউজার যাচাইকরণ ওয়ার্কফ্লো গাইড দেখুন।
মাল্টি-ইউজার যাচাইকরণ ফ্লো
আপনার অ্যাপ ব্যবহারকারীদের সাইন-ইন করার অনুমতি দিলে এবং তাদের হয়ে Google Ads অ্যাকাউন্ট ম্যানেজ করার জন্য আপনার অ্যাপকে অনুমতি দিলে, এটিই হল সাজেস্ট করা ওয়ার্কফ্লো। আপনার অ্যাপ OAuth 2.0 ব্যবহারকারীর ক্রেডেনশিয়াল তৈরি ও ম্যানেজ করে।
Perl-এর জন্য, আপনি সাধারণত একটি ওয়েব অ্যাপ্লিকেশন ফ্লো প্রয়োগ করবেন যেখানে আপনার অ্যাপ্লিকেশন OAuth 2.0 রিডাইরেকশন এবং টোকেন ম্যানেজমেন্ট পরিচালনা করে। ব্যবহারকারী আপনার অ্যাপ্লিকেশনের মাধ্যমে যাচাইকরণ করেন এবং আপনার অ্যাপ্লিকেশন ব্যবহারকারীর হয়ে API কল করার জন্য ব্যবহারকারীর রিফ্রেশ টোকেন স্টোর ও ব্যবহার করে।
প্রাপ্ত ক্রেডেনশিয়াল ব্যবহার করার কনফিগারেশন, সিঙ্গেল-ইউজার যাচাইকরণ ফ্লোয়ের মতোই:
clientId=OAUTH_CLIENT_ID
clientSecret=OAUTH_CLIENT_SECRET
refreshToken=REFRESH_TOKEN
loginCustomerId=LOGIN_CUSTOMER_ID
অন্যথায়, এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করুন:
export GOOGLE_ADS_CLIENT_ID=OAUTH_CLIENT_ID
export GOOGLE_ADS_CLIENT_SECRET=OAUTH_CLIENT_SECRET
export GOOGLE_ADS_REFRESH_TOKEN=REFRESH_TOKEN
export GOOGLE_ADS_LOGIN_CUSTOMER_ID=LOGIN_CUSTOMER_ID
আরও জানতে মাল্টি-ইউজার যাচাইকরণ ওয়ার্কফ্লো গাইড দেখুন।
আমার ব্যবহারকারী একাধিক অ্যাকাউন্ট ম্যানেজ করলে কী হবে?
একজন ব্যবহারকারীর পক্ষে একাধিক Google Ads অ্যাকাউন্ট ম্যানেজ করা সাধারণ ব্যাপার, হয় অ্যাকাউন্টে সরাসরি অ্যাক্সেসের মাধ্যমে অথবা Google Ads ম্যানেজার অ্যাকাউন্টের মাধ্যমে। Perl ক্লায়েন্ট লাইব্রেরি এই ধরনের পরিস্থিতি কীভাবে সামলাতে হয় তার উদাহরণ প্রদান করে:
get_account_hierarchy.plউদাহরণে দেখানো হয়েছে কীভাবে Google Ads ম্যানেজার অ্যাকাউন্টের অধীনে থাকা সব অ্যাকাউন্টের তালিকা ফিরিয়ে আনা যায়।list_accessible_customers.plউদাহরণে দেখানো হয়েছে যে কোনও ব্যবহারকারীর সরাসরি অ্যাক্সেস আছে এমন সব অ্যাকাউন্টের তালিকা কীভাবে ফিরিয়ে আনা যায়। এই অ্যাকাউন্টগুলি তখনgoogleads.propertiesফাইলেloginCustomerIdসেটিংয়ের জন্য বাGOOGLE_ADS_LOGIN_CUSTOMER_IDএনভায়রনমেন্ট ভেরিয়েবলের জন্য সঠিক ভ্যালু হিসেবে ব্যবহার করা যেতে পারে।