এই কুইক স্টার্ট গাইডটি আপনাকে গুগল অ্যাডস এপিআই-তে আপনার প্রথম এপিআই কলটি করতে সাহায্য করবে।
মূল ধারণা
- ডেভেলপার টোকেন : ডেভেলপার টোকেন হলো ২২ অক্ষরের একটি আলফানিউমেরিক স্ট্রিং, যা গুগল অ্যাডস এপিআই সার্ভারের কাছে আপনার অ্যাপকে শনাক্ত করে। এপিআই কল করার জন্য এটি প্রয়োজন।
- এপিআই অ্যাক্সেস লেভেল: আপনার ডেভেলপার টোকেনের এপিআই অ্যাক্সেস লেভেল নিয়ন্ত্রণ করে যে আপনি প্রতিদিন কতবার এপিআই কল করতে পারবেন এবং কোন কোন এনভায়রনমেন্টে এপিআই কল করতে পারবেন।
- গুগল অ্যাডস ম্যানেজার অ্যাকাউন্ট: একটি গুগল অ্যাডস ম্যানেজার অ্যাকাউন্ট অন্যান্য গুগল অ্যাডস অ্যাকাউন্ট পরিচালনা করতে ব্যবহৃত হয়। একটি গুগল অ্যাডস ম্যানেজার অ্যাকাউন্ট গুগল অ্যাডস ক্লায়েন্ট অ্যাকাউন্ট বা অন্যান্য গুগল অ্যাডস ম্যানেজার অ্যাকাউন্ট পরিচালনা করতে ব্যবহার করা যেতে পারে। একটি ডেভেলপার টোকেন পেতে আপনার একটি গুগল অ্যাডস ম্যানেজার অ্যাকাউন্ট প্রয়োজন।
- গুগল অ্যাডস ক্লায়েন্ট অ্যাকাউন্ট: যে গুগল অ্যাডস অ্যাকাউন্ট থেকে আপনি এপিআই (API) কল করছেন।
- ক্লায়েন্ট কাস্টমার আইডি: এটি ১০-সংখ্যার একটি নম্বর যা একটি গুগল অ্যাডস ক্লায়েন্ট অ্যাকাউন্টকে শনাক্ত করে। আপনি যদি এই আইডিটি গুগল অ্যাডস UI থেকে কপি করে থাকেন, তাহলে হাইফেনগুলো মুছে ফেলতে ভুলবেন না।
- OAuth 2.0: OAuth 2.0 হলো অনুমোদনের জন্য একটি শিল্প-মানসম্মত প্রোটোকল, যা সমস্ত গুগল এপিআই (API) ব্যবহার করে। এপিআই কল করার জন্য OAuth 2.0 ক্রেডেনশিয়াল তৈরি করতে আপনার একটি সার্ভিস অ্যাকাউন্ট এবং কী (key) প্রয়োজন।
- গুগল ক্লাউড প্রজেক্ট: একটি গুগল ক্লাউড প্রজেক্ট হলো এপিআই (API) এবং ওঅথ ২.০ (OAuth 2.0) এপিআই ক্রেডেনশিয়ালস (API credentials) পরিচালনা সহ সমস্ত গুগল পরিষেবা তৈরি, সক্রিয় এবং ব্যবহারের ভিত্তি। আপনি গুগল ক্লাউড কনসোল থেকে এটি তৈরি করতে পারেন।
- সার্ভিস অ্যাকাউন্ট: এটি এক বিশেষ ধরনের গুগল অ্যাকাউন্ট যা কোনো একক ব্যবহারকারীর পরিবর্তে আপনার অ্যাপ্লিকেশনের হয়ে থাকে। গুগল অ্যাডস এপিআই-এর কাছে আপনার অ্যাপ্লিকেশনকে প্রমাণীকরণের জন্য এটি ব্যবহৃত হয়। একটি সার্ভিস অ্যাকাউন্ট পেতে আপনার একটি গুগল ক্লাউড প্রজেক্ট প্রয়োজন।
- সার্ভিস অ্যাকাউন্ট কী: এটি একটি JSON অ্যাপ ক্রেডেনশিয়াল ফাইল, যাতে আপনার সার্ভিস অ্যাকাউন্টের প্রাইভেট কী থাকে। গুগল অ্যাডস এপিআই (Google Ads API) কল করার সময় সার্ভিস অ্যাকাউন্টকে প্রমাণীকরণের জন্য OAuth 2.0 ক্রেডেনশিয়াল তৈরি করতে এটি ব্যবহৃত হয়। সার্ভিস অ্যাকাউন্ট কী পেতে হলে আপনার একটি সার্ভিস অ্যাকাউন্ট প্রয়োজন।
পূর্বশর্ত
গুগল অ্যাডস এপিআই কল করার জন্য, আপনাকে নিম্নলিখিত ধাপগুলো সম্পন্ন করতে হবে।
আপনার ডেভেলপার টোকেন সংগ্রহ করুন
আপনি যদি অতীতে ডেভেলপার টোকেনের জন্য সাইন আপ করে থাকেন, তাহলে আপনার Google Ads ম্যানেজার অ্যাকাউন্টে লগ ইন থাকা অবস্থায় API সেন্টারে গিয়ে সেটি খুঁজে নিতে পারেন।
আপনার যদি ডেভেলপার টোকেন না থাকে, তাহলে আপনি এপিআই সেন্টার থেকে একটির জন্য সাইন আপ করতে পারেন।
ডেভেলপার টোকেনের জন্য কীভাবে সাইন আপ করবেন
- আপনার ওয়েব ব্রাউজারে এপিআই সেন্টারে যান। অনুরোধ করা হলে আপনার গুগল অ্যাডস ম্যানেজার অ্যাকাউন্টে সাইন ইন করুন। আপনার যদি গুগল অ্যাডস ম্যানেজার অ্যাকাউন্ট না থাকে, তবে একটি তৈরি করুন ।
- এপিআই অ্যাক্সেস ফর্মটি পূরণ করুন এবং শর্তাবলী ও নিয়মাবলী মেনে নিন।
- আপনার দেওয়া তথ্য সঠিক এবং আপনার কোম্পানির ওয়েবসাইটের ইউআরএল (URL) সচল আছে কিনা, তা নিশ্চিত করুন। ওয়েবসাইটটি সচল না থাকলে, গুগল আপনার আবেদনটি প্রক্রিয়াকরণ করতে না পেরে তা প্রত্যাখ্যান করতে পারে।
- নিশ্চিত করুন যে আপনার দেওয়া এপিআই যোগাযোগের ইমেলটি একটি নিয়মিত পর্যবেক্ষণাধীন ইনবক্সে আসে। পর্যালোচনার সময় স্পষ্টীকরণের জন্য গুগলের এপিআই কমপ্লায়েন্স টিম এই ইমেল ঠিকানায় যোগাযোগ করতে পারে। যদি আপনার সাথে যোগাযোগ করা না যায়, তাহলে গুগল আপনার আবেদনটি নিয়ে আর অগ্রসর নাও হতে পারে।
- আপনি এপিআই সেন্টারে আপনার এপিআই যোগাযোগের ইমেল সম্পাদনা করতে পারেন। আবেদন প্রক্রিয়ার পরেও এই তথ্যটি হালনাগাদ রাখুন, যাতে গুগল আপনাকে গুরুত্বপূর্ণ পরিষেবা সংক্রান্ত ঘোষণা পাঠাতে পারে।
আবেদন প্রক্রিয়া সম্পন্ন করার পর, ডেভেলপার টোকেনটি আপনার এপিআই সেন্টারে ' অনুমোদনের অপেক্ষায়' (Pending Approval) স্ট্যাটাস সহ প্রদর্শিত হবে। আপনার ডেভেলপার টোকেনটির এখন 'টেস্ট অ্যাকাউন্ট অ্যাক্সেস' (Test Account Access ) লেভেল রয়েছে।
আপনার গুগল এপিআই কনসোল প্রজেক্ট কনফিগার করুন
গুগল এপিআই কনসোল প্রজেক্টটি গুগল এপিআই এবং ওঅথ ২.০ এপিআই ক্রেডেনশিয়ালস পরিচালনার জন্য ব্যবহৃত হয়। আপনি গুগল এপিআই কনসোল-এ গিয়ে আপনার বিদ্যমান প্রজেক্টগুলো খুঁজে পেতে পারেন অথবা একটি নতুন প্রজেক্ট তৈরি করতে পারেন।
আপনার প্রজেক্টে গুগল অ্যাডস এপিআই (Google Ads API) সক্রিয় করার মাধ্যমে শুরু করুন:
গুগল অ্যাডস এপিআই সক্রিয় করুন
এরপরে, এপিআই কল করার জন্য আপনার একটি সার্ভিস অ্যাকাউন্ট এবং সার্ভিস অ্যাকাউন্ট কী প্রয়োজন হবে। আপনি যদি ইতিমধ্যেই অন্য কোনো গুগল এপিআই ব্যবহার করে থাকেন এবং একটি OAuth 2.0 সার্ভিস অ্যাকাউন্ট ও কী তৈরি করে থাকেন, তাহলে আপনি এই ধাপটি এড়িয়ে যেতে পারেন এবং বিদ্যমান ক্রেডেনশিয়ালগুলো পুনরায় ব্যবহার করতে পারেন।
কীভাবে একটি পরিষেবা অ্যাকাউন্ট এবং কী তৈরি করবেন
- গুগল ক্লাউড কনসোলে, > আইএএম ও অ্যাডমিন > সার্ভিস অ্যাকাউন্টস- এ যান।
- আপনার পরিষেবা অ্যাকাউন্ট নির্বাচন করুন।
- Keys > Add key > Create new key-তে ক্লিক করুন।
- JSON নির্বাচন করুন, তারপর Create-এ ক্লিক করুন।
আপনার নতুন পাবলিক/প্রাইভেট কী পেয়ারটি তৈরি হয়ে আপনার মেশিনে একটি নতুন ফাইল হিসেবে ডাউনলোড হবে। ডাউনলোড করা JSON ফাইলটি আপনার ওয়ার্কিং ডিরেক্টরিতে
credentials.jsonনামে সেভ করুন। এই ফাইলটিই এই কী-টির একমাত্র কপি। - বন্ধ করুন-এ ক্লিক করুন।
আপনার গুগল অ্যাডস ক্লায়েন্ট অ্যাকাউন্ট কনফিগার করুন
প্রথমে আপনি যে Google Ads অ্যাকাউন্টটিতে API কল করছেন, সেটি শনাক্ত করুন। আপনি কোন ধরনের অ্যাকাউন্টে API কল করতে পারবেন, তা আপনার ডেভেলপার টোকেনের API অ্যাক্সেস লেভেলের উপর নির্ভর করে। আপনার API অ্যাক্সেস লেভেল জানতে আপনার API সেন্টার দেখুন।
এক্সপ্লোরার, বেসিক এবং স্ট্যান্ডার্ড অ্যাক্সেস স্তর
আপনি আপনার গুগল অ্যাডস প্রোডাকশন অ্যাকাউন্টে কল করতে পারেন। তবে, প্রয়োজনে টেস্ট অ্যাকাউন্ট অ্যাক্সেস ট্যাবের নির্দেশাবলী অনুসরণ করে একটি গুগল অ্যাডস টেস্ট অ্যাকাউন্ট তৈরি করতে পারেন।
টেস্ট অ্যাকাউন্ট অ্যাক্সেস স্তর
আপনার ডেভেলপার টোকেন ব্যবহার করে গুগল অ্যাডস প্রোডাকশন অ্যাকাউন্টে এপিআই কল করা যাবে না । আপনি শুধুমাত্র গুগল অ্যাডস টেস্ট অ্যাকাউন্টে এপিআই কল করতে পারবেন।
কীভাবে একটি গুগল অ্যাডস টেস্ট অ্যাকাউন্ট তৈরি করবেন
নিম্নলিখিত নির্দেশাবলী একটি গুগল অ্যাডস টেস্ট ম্যানেজার অ্যাকাউন্ট এবং এর অধীনে একটি গুগল অ্যাডস টেস্ট বিজ্ঞাপনদাতা অ্যাকাউন্ট তৈরি করে।
একটি গুগল অ্যাডস টেস্ট ম্যানেজার অ্যাকাউন্ট তৈরি করতে নীল বোতামটিতে ক্লিক করুন। অনুরোধ করা হলে, এমন একটি গুগল অ্যাকাউন্ট দিয়ে সাইন ইন করুন যা আপনার গুগল অ্যাডস প্রোডাকশন ম্যানেজার অ্যাকাউন্টের সাথে লিঙ্ক করা নেই। যদি আপনার এমন কোনো অ্যাকাউন্ট না থাকে, তবে সেই পৃষ্ঠায় থাকা 'অ্যাকাউন্ট তৈরি করুন' বোতামটি ব্যবহার করে একটি নতুন গুগল অ্যাকাউন্ট তৈরি করুন।
- আপনার গুগল অ্যাডস টেস্ট ম্যানেজার অ্যাকাউন্টে থাকাকালীন, একটি গুগল অ্যাডস টেস্ট কাস্টমার অ্যাকাউন্ট তৈরি করুন: অ্যাকাউন্টস > > ক্রিয়েট নিউ অ্যাকাউন্ট-এ ক্লিক করুন এবং ফর্মটি পূরণ করুন। আপনার গুগল অ্যাডস টেস্ট ম্যানেজার অ্যাকাউন্ট থেকে তৈরি করা যেকোনো গুগল অ্যাডস অ্যাকাউন্ট স্বয়ংক্রিয়ভাবে গুগল অ্যাডস টেস্ট অ্যাকাউন্ট হয়ে যাবে।
- ঐচ্ছিকভাবে, গুগল অ্যাডস পেজ থেকে গুগল অ্যাডস টেস্ট ক্লায়েন্ট অ্যাকাউন্টের অধীনে কয়েকটি ক্যাম্পেইন তৈরি করুন।
কোনো গুগল অ্যাডস গ্রাহকের কাছে এপিআই (API) কল করার জন্য, আপনাকে অবশ্যই আপনার সার্ভিস অ্যাকাউন্টকে সেই গুগল অ্যাডস গ্রাহক অ্যাকাউন্টে অ্যাক্সেস এবং যথাযথ অনুমতি প্রদান করতে হবে। এটি করার জন্য, আপনার গ্রাহক অ্যাকাউন্টটিতে অ্যাডমিনিস্ট্রেটর অ্যাক্সেস প্রয়োজন।
আপনার গুগল অ্যাডস অ্যাকাউন্টে সার্ভিস অ্যাকাউন্টকে কীভাবে অ্যাক্সেস দেবেন
- প্রথমে অ্যাডমিনিস্ট্রেটর হিসেবে আপনার গুগল অ্যাডস অ্যাকাউন্টে সাইন ইন করুন।
- অ্যাডমিন > অ্যাক্সেস এবং নিরাপত্তা- তে যান।
- Users ট্যাবের অধীনে থাকা বাটনটিতে ক্লিক করুন।

- সার্ভিস অ্যাকাউন্টের ইমেল ঠিকানাটি ইমেল ইনপুট বক্সে টাইপ করুন। উপযুক্ত অ্যাকাউন্ট অ্যাক্সেস লেভেল নির্বাচন করুন এবং 'অ্যাড অ্যাকাউন্ট' বোতামে ক্লিক করুন। উল্লেখ্য যে, সার্ভিস অ্যাকাউন্টের জন্য ইমেল অ্যাক্সেস লেভেল সমর্থিত নয়।

- সার্ভিস অ্যাকাউন্টটিকে অ্যাক্সেস দেওয়া হয়েছে।

- [ঐচ্ছিক] ডিফল্টরূপে, আপনি কোনো সার্ভিস অ্যাকাউন্টে অ্যাডমিনিস্ট্রেটর অ্যাক্সেস দিতে পারবেন না। যদি আপনার API কলগুলোর জন্য অ্যাডমিনিস্ট্রেটর অ্যাক্সেসের প্রয়োজন হয়, তবে আপনি নিম্নলিখিত উপায়ে অ্যাক্সেসটি আপগ্রেড করতে পারেন।
- অ্যাক্সেস লেভেল কলামে সার্ভিস অ্যাকাউন্টের অ্যাক্সেস লেভেলের পাশে থাকা ড্রপ-ডাউন তীরটিতে ক্লিক করুন।
- ড্রপ-ডাউন তালিকা থেকে অ্যাডমিন নির্বাচন করুন।
টুলস এবং ক্লায়েন্ট লাইব্রেরি ডাউনলোড করুন
আপনি কীভাবে এপিআই কল করতে চান তার উপর নির্ভর করে একটি ক্লায়েন্ট লাইব্রেরি অথবা একটি এইচটিটিপি ক্লায়েন্ট ডাউনলোড করতে পারেন।
একটি ক্লায়েন্ট লাইব্রেরি ব্যবহার করুন
আপনার পছন্দমতো একটি ক্লায়েন্ট লাইব্রেরি ডাউনলোড ও ইনস্টল করুন।
HTTP ক্লায়েন্ট (REST) ব্যবহার করুন
কার্ল
URL-এর মাধ্যমে ডেটা স্থানান্তরের কমান্ড লাইন টুল ` curl` ডাউনলোড ও ইনস্টল করুন।
গুগল ক্লাউড সিএলআই
gcloud CLI ইনস্টল করার জন্য নির্দেশাবলী অনুসরণ করুন।
এই গাইডের বাকি অংশের নির্দেশনাগুলো gcloud টুলের নিম্নলিখিত সংস্করণের সাথে কাজ করার জন্য যাচাই করা হয়েছে এবং অ্যাপ্লিকেশন আচরণ বা কমান্ড-লাইন অপশনের পার্থক্যের কারণে পূর্ববর্তী সংস্করণগুলোর সাথে কাজ নাও করতে পারে।
:~$ gcloud version
Google Cloud SDK 492.0.0
alpha 2024.09.06
beta 2024.09.06
bq 2.1.8
bundled-python3-unix 3.11.9
core 2024.09.06
enterprise-certificate-proxy 0.3.2
gcloud-crc32c 1.0.0
gsutil 5.30এপিআই কল করুন
এপিআই কল করার নির্দেশাবলীর জন্য আপনার পছন্দের ক্লায়েন্ট নির্বাচন করুন:
জাভা
ক্লায়েন্ট লাইব্রেরি আর্টিফ্যাক্টগুলো মেভেন সেন্ট্রাল রিপোজিটরিতে প্রকাশিত হয়। নিম্নলিখিতভাবে আপনার প্রজেক্টে ক্লায়েন্ট লাইব্রেরিটিকে একটি ডিপেন্ডেন্সি হিসেবে যুক্ত করুন:
Maven নির্ভরতাটি হলো:
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads</artifactId>
<version>43.0.0</version>
</dependency>
গ্রেডল নির্ভরতাটি হলো:
implementation 'com.google.api-ads:google-ads:43.0.0'
ডিপেন্ডেন্সি ভার্সনগুলো ম্যানেজ করার জন্য আমরা গুগল অ্যাডস এপিআই বিল অফ মেটেরিয়ালস (BOM) ব্যবহার করারও পরামর্শ দিই। নির্দেশাবলীর জন্য BOM গাইডটি দেখুন।
নিম্নলিখিত বিষয়বস্তু সহ ~/ads.properties নামে একটি ফাইল তৈরি করুন:
api.googleads.serviceAccountSecretsPath=JSON_KEY_FILE_PATH
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE
api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
নিম্নলিখিতভাবে একটি GoogleAdsClient অবজেক্ট তৈরি করুন:
GoogleAdsClient googleAdsClient = null;
try {
googleAdsClient = GoogleAdsClient.newBuilder().fromPropertiesFile().build();
} catch (FileNotFoundException fnfe) {
System.err.printf(
"Failed to load GoogleAdsClient configuration from file. Exception: %s%n",
fnfe);
System.exit(1);
} catch (IOException ioe) {
System.err.printf("Failed to create GoogleAdsClient. Exception: %s%n", ioe);
System.exit(1);
}
এরপরে, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান।
private void runExample(GoogleAdsClient googleAdsClient, long customerId) {
try (GoogleAdsServiceClient googleAdsServiceClient =
googleAdsClient.getLatestVersion().createGoogleAdsServiceClient()) {
String query = "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id";
// Constructs the SearchGoogleAdsStreamRequest.
SearchGoogleAdsStreamRequest request =
SearchGoogleAdsStreamRequest.newBuilder()
.setCustomerId(Long.toString(customerId))
.setQuery(query)
.build();
// Creates and issues a search Google Ads stream request that will retrieve all campaigns.
ServerStream<SearchGoogleAdsStreamResponse> stream =
googleAdsServiceClient.searchStreamCallable().call(request);
// Iterates through and prints all of the results in the stream response.
for (SearchGoogleAdsStreamResponse response : stream) {
for (GoogleAdsRow googleAdsRow : response.getResultsList()) {
System.out.printf(
"Campaign with ID %d and name '%s' was found.%n",
googleAdsRow.getCampaign().getId(), googleAdsRow.getCampaign().getName());
}
}
}
}
সি#
ক্লায়েন্ট লাইব্রেরি প্যাকেজগুলো Nuget.org রিপোজিটরিতে প্রকাশ করা হয়। প্রথমে Google.Ads.GoogleAds প্যাকেজটিতে একটি nuget রেফারেন্স যোগ করুন।
dotnet add package Google.Ads.GoogleAds --version 25.1.0 প্রাসঙ্গিক সেটিংস সহ একটি GoogleAdsConfig অবজেক্ট তৈরি করুন এবং এটি ব্যবহার করে একটি GoogleAdsClient অবজেক্ট তৈরি করুন।
GoogleAdsConfig config = new GoogleAdsConfig()
{
DeveloperToken = "******",
OAuth2Mode = OAuth2Flow.SERVICE_ACCOUNT,
OAuth2SecretsJsonPath = "PATH_TO_CREDENTIALS_JSON",
LoginCustomerId = ******
};
GoogleAdsClient client = new GoogleAdsClient(config);
এরপর, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান। এই নির্দেশিকায় রিপোর্টিং -এর বিস্তারিত আলোচনা করা হয়নি।
public void Run(GoogleAdsClient client, long customerId)
{
// Get the GoogleAdsService.
GoogleAdsServiceClient googleAdsService = client.GetService(
Services.V24.GoogleAdsService);
// Create a query that will retrieve all campaigns.
string query = @"SELECT
campaign.id,
campaign.name,
campaign.network_settings.target_content_network
FROM campaign
ORDER BY campaign.id";
try
{
// Issue a search request.
googleAdsService.SearchStream(customerId.ToString(), query,
delegate (SearchGoogleAdsStreamResponse resp)
{
foreach (GoogleAdsRow googleAdsRow in resp.Results)
{
Console.WriteLine("Campaign with ID {0} and name '{1}' was found.",
googleAdsRow.Campaign.Id, googleAdsRow.Campaign.Name);
}
}
);
}
catch (GoogleAdsException e)
{
Console.WriteLine("Failure:");
Console.WriteLine($"Message: {e.Message}");
Console.WriteLine($"Failure: {e.Failure}");
Console.WriteLine($"Request ID: {e.RequestId}");
throw;
}
}
পিএইচপি
ক্লায়েন্ট লাইব্রেরি প্যাকেজগুলো Packagist রিপোজিটরিতে প্রকাশিত হয়। আপনার প্রজেক্টের রুট ডিরেক্টরিতে যান এবং লাইব্রেরি ও এর সমস্ত ডিপেন্ডেন্সিগুলো আপনার প্রজেক্টের রুট ডিরেক্টরির vendor/ ডিরেক্টরিতে ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান।
composer require googleads/google-ads-php:32.2.0গিটহাব রিপোজিটরি থেকে google_ads_php.ini ফাইলটির একটি কপি তৈরি করুন এবং আপনার ক্রেডেনশিয়াল অন্তর্ভুক্ত করার জন্য এটি পরিবর্তন করুন।
[GOOGLE_ADS]
developerToken = "INSERT_DEVELOPER_TOKEN_HERE"
loginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
[OAUTH2]
jsonKeyFilePath = "INSERT_ABSOLUTE_PATH_TO_OAUTH2_JSON_KEY_FILE_HERE"
scopes = "https://www.googleapis.com/auth/adwords"
GoogleAdsClient অবজেক্টের একটি ইনস্ট্যান্স তৈরি করুন।
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
এরপরে, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান।
public static function runExample(GoogleAdsClient $googleAdsClient, int $customerId)
{
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient();
// Creates a query that retrieves all campaigns.
$query = 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id';
// Issues a search stream request.
/** @var GoogleAdsServerStreamDecorator $stream */
$stream = $googleAdsServiceClient->searchStream(
SearchGoogleAdsStreamRequest::build($customerId, $query)
);
// Iterates over all rows in all messages and prints the requested field values for
// the campaign in each row.
foreach ($stream->iterateAllElements() as $googleAdsRow) {
/** @var GoogleAdsRow $googleAdsRow */
printf(
"Campaign with ID %d and name '%s' was found.%s",
$googleAdsRow->getCampaign()->getId(),
$googleAdsRow->getCampaign()->getName(),
PHP_EOL
);
}
}
পাইথন
ক্লায়েন্ট লাইব্রেরিটি PyPI- তে বিতরণ করা হয় এবং এটি pip কমান্ড ব্যবহার করে নিম্নরূপে ইনস্টল করা যেতে পারে:
python -m pip install google-ads==29.2.0গিটহাব রিপোজিটরি থেকে google-ads.yaml ফাইলটির একটি কপি তৈরি করুন এবং আপনার ক্রেডেনশিয়াল অন্তর্ভুক্ত করার জন্য এটি পরিবর্তন করুন।
developer_token: INSERT_DEVELOPER_TOKEN_HERE
login_customer_id: INSERT_LOGIN_CUSTOMER_ID_HERE
json_key_file_path: JSON_KEY_FILE_PATH_HERE
GoogleAdsClient.load_from_storage মেথডটি কল করে একটি GoogleAdsClient ইনস্ট্যান্স তৈরি করুন। মেথডটি কল করার সময় আপনার google-ads.yaml ফাইলের পাথটি একটি স্ট্রিং হিসেবে পাস করুন:
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage("path/to/google-ads.yaml")
লাইব্রেরির লগারে একটি হ্যান্ডলার যোগ করুন যা তাকে বলে দেবে লগগুলো কোথায় প্রিন্ট করতে হবে। নিচের কোডটি লাইব্রেরির লগারকে কনসোলে ( stdout ) প্রিন্ট করতে বলবে।
import logging
import sys
logger = logging.getLogger('google.ads.googleads.client')
logger.addHandler(logging.StreamHandler(sys.stdout))
এরপরে, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান।
def main(client: GoogleAdsClient, customer_id: str) -> None:
ga_service: GoogleAdsServiceClient = client.get_service("GoogleAdsService")
query: str = """
SELECT
campaign.id,
campaign.name
FROM campaign
ORDER BY campaign.id"""
# Issues a search request using streaming.
stream: Iterator[SearchGoogleAdsStreamResponse] = ga_service.search_stream(
customer_id=customer_id, query=query
)
for batch in stream:
rows: List[GoogleAdsRow] = batch.results
for row in rows:
print(
f"Campaign with ID {row.campaign.id} and name "
f'"{row.campaign.name}" was found.'
)
রুবি
ক্লায়েন্ট লাইব্রেরির জন্য রুবি জেমগুলো রুবিজেমস জেম হোস্টিং সাইটে প্রকাশিত হয়। বান্ডলার ব্যবহার করে এটি ইনস্টল করার পরামর্শ দেওয়া হয়। আপনার Gemfile-এ একটি লাইন যোগ করুন:
gem 'google-ads-googleads', '~> 38.0.0'
তারপর চালান:
bundle installগিটহাব রিপোজিটরি থেকে google_ads_config.rb ফাইলটির একটি কপি তৈরি করুন এবং আপনার ক্রেডেনশিয়াল অন্তর্ভুক্ত করার জন্য এটি পরিবর্তন করুন।
Google::Ads::GoogleAds::Config.new do |c|
c.developer_token = 'INSERT_DEVELOPER_TOKEN_HERE'
c.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
c.keyfile = 'JSON_KEY_FILE_PATH'
end
এই ফাইলটি যেখানে রেখেছেন, সেই পাথটি দিয়ে একটি GoogleAdsClient ইনস্ট্যান্স তৈরি করুন।
client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/google_ads_config.rb')
এরপরে, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান।
def get_campaigns(customer_id)
# GoogleAdsClient will read a config file from
# ENV['HOME']/google_ads_config.rb when called without parameters
client = Google::Ads::GoogleAds::GoogleAdsClient.new
responses = client.service.google_ads.search_stream(
customer_id: customer_id,
query: 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id',
)
responses.each do |response|
response.results.each do |row|
puts "Campaign with ID #{row.campaign.id} and name '#{row.campaign.name}' was found."
end
end
end
পার্ল
লাইব্রেরিটি CPAN- এ বিতরণ করা হয়। প্রথমে আপনার পছন্দের ডিরেক্টরিতে google-ads-perl রিপোজিটরিটি ক্লোন করুন।
git clone https://github.com/googleads/google-ads-perl.gitgoogle-ads-perl ডিরেক্টরিতে প্রবেশ করুন এবং লাইব্রেরিটি ব্যবহারের জন্য প্রয়োজনীয় সমস্ত ডিপেন্ডেন্সি ইনস্টল করতে কমান্ড প্রম্পটে নিম্নলিখিত কমান্ডটি চালান।
cd google-ads-perlcpan install Module::Buildperl Build.PLperl Build installdeps
গিটহাব রিপোজিটরি থেকে googleads.properties ফাইলটির একটি কপি তৈরি করুন এবং আপনার ক্রেডেনশিয়াল অন্তর্ভুক্ত করার জন্য এটি পরিবর্তন করুন।
jsonKeyFilePath=JSON_KEY_FILE_PATH
developerToken=INSERT_DEVELOPER_TOKEN_HERE
loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
এই ফাইলটি যেখানে রেখেছেন, সেই পাথটি দিয়ে একটি Client ইনস্ট্যান্স তৈরি করুন।
my $properties_file = "/path/to/googleads.properties";
my $api_client = Google::Ads::GoogleAds::Client->new({
properties_file => $properties_file
});
এরপরে, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান।
sub get_campaigns {
my ($api_client, $customer_id) = @_;
# Create a search Google Ads stream request that will retrieve all campaigns.
my $search_stream_request =
Google::Ads::GoogleAds::V24::Services::GoogleAdsService::SearchGoogleAdsStreamRequest
->new({
customerId => $customer_id,
query =>
"SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id"
});
# Get the GoogleAdsService.
my $google_ads_service = $api_client->GoogleAdsService();
my $search_stream_handler =
Google::Ads::GoogleAds::Utils::SearchStreamHandler->new({
service => $google_ads_service,
request => $search_stream_request
});
# Issue a search request and process the stream response to print the requested
# field values for the campaign in each row.
$search_stream_handler->process_contents(
sub {
my $google_ads_row = shift;
printf "Campaign with ID %d and name '%s' was found.\n",
$google_ads_row->{campaign}{id}, $google_ads_row->{campaign}{name};
});
return 1;
}
কার্ল
প্রথমে gcloud CLI-তে সার্ভিস অ্যাকাউন্টটিকে সক্রিয় ক্রেডেনশিয়াল হিসেবে সেট করুন।
gcloud auth login --cred-file=PATH_TO_CREDENTIALS_JSONএরপর, গুগল অ্যাডস এপিআই-এর জন্য একটি OAuth 2.0 অ্যাক্সেস টোকেন সংগ্রহ করুন।
gcloud auth \
print-access-token \
--scopes='https://www.googleapis.com/auth/adwords'এরপরে, আপনার অ্যাকাউন্টের ক্যাম্পেইনগুলো পাওয়ার জন্য GoogleAdsService.SearchStream মেথড ব্যবহার করে একটি ক্যাম্পেইন রিপোর্ট চালান।
curl -i -X POST https://googleads.googleapis.com/v24/customers/CUSTOMER_ID/googleAds:searchStream \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "developer-token: DEVELOPER_TOKEN" \
-H "login-customer-id: LOGIN_CUSTOMER_ID" \
--data-binary "@query.json"query.json ফাইলের বিষয়বস্তু নিম্নরূপ:
{
"query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}
প্রথমবার কল করার সময় কোনো ত্রুটি দেখা দিলে, সমস্যা সমাধানের নির্দেশনার জন্য ‘Handle API errors’ দেখুন।