সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
প্রতিবেদনগুলি আপনার অ্যাকাউন্টের সমস্ত বিভিন্ন সংস্থান সম্পর্কে তথ্য প্রদান করে৷ আপনি প্রচারাভিযান, বিজ্ঞাপন গোষ্ঠী এবং তাদের পরিসংখ্যান, আপনার অ্যাকাউন্টের ইতিহাস পরিবর্তন এবং আরও অনেক কিছু সম্পর্কে তথ্য আনতে পারেন। রিপোর্টিং পরিকাঠামো Google Ads API দ্বারা সমর্থিত এবং আপনি কোন ক্ষেত্র, মেট্রিক্স এবং শর্তাবলী সেট করতে চান তা নির্দিষ্ট করতে GAQL ব্যবহার করে।
প্রতিবেদন বনাম অনুসন্ধান
রিপোর্ট করার জন্য দুটি প্রধান প্রক্রিয়া আছে। তারা উভয়ই একই ধরণের প্রশ্ন গ্রহণ করে এবং প্রাথমিকভাবে তারা কীভাবে ফলাফলগুলি ফিরিয়ে দেয় তার মধ্যে পার্থক্য রয়েছে।
উভয় ক্ষেত্রেই, আমরা নিম্নলিখিত ক্যোয়ারী ব্যবহার করব:
এটি আপনার অনুসন্ধান ফলাফলগুলির একটি সমতল, অভিধানের মতো উপস্থাপনা ফিরিয়ে দেবে। আপনি ক্ষেত্রগুলি অ্যাক্সেস করতে পারেন যেন একটি অভিধান ব্যবহার করে, যেমন row["campaign.id"] এবং row["metrics.impressions"] সরাসরি। এই বিন্যাসটি ব্যবহার করে, আপনি exportToSheet() পদ্ধতি ব্যবহার করে সরাসরি একটি স্প্রেডশীটে ফলাফল রপ্তানি করতে পারেন। এটি এমন নেটিভ ফর্ম্যাট নয় যে ফলাফলগুলি Google Ads API দ্বারা ফেরত দেওয়া হয়, তাই কিছু ক্ষেত্রে কিছু ফিল্ড এই ফর্ম্যাটে উপলব্ধ নাও হতে পারে। যদি তা হয়, তবে আপনার পরিবর্তে search ব্যবহার করা উচিত।
AdsApp.search()
এটি GoogleAdsRow অবজেক্টের একটি তালিকা ফিরিয়ে দেবে, যার বিভিন্ন ক্ষেত্র রয়েছে, যার প্রতিটিতে সাব-ফিল্ড থাকতে পারে। তাই আপনি ডেটা আনতে row.campaign.id এবং row.metrics.impressions অ্যাক্সেস করতে পারবেন। আপনি যদি প্রোগ্রামগতভাবে ডেটা প্রক্রিয়া করার পরিকল্পনা করেন তবে এটি সাধারণত আরও কার্যকর, এবং কিছু ক্ষেত্র কেবলমাত্র search বিন্যাসে উপলব্ধ হতে পারে যদি সেগুলিকে ফ্ল্যাট উপস্থাপনায় রূপান্তর করা না যায়।
রিপোর্ট উদাহরণ
letreport=AdsApp.report("SELECT "+" ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions "+"FROM search_term_view "+"WHERE metrics.impressions < 10 AND segments.date DURING LAST_30_DAYS");letrows=report.rows();while(rows.hasNext()){letrow=rows.next();letquery=row["search_term_view.search_term"];letimpressions=row["metrics.impressions"];}
এই ভিউ ব্যবহার করার সম্পূর্ণ বিবরণের জন্য AdsApp.report ডকুমেন্টেশন দেখুন।
অনুসন্ধান উদাহরণ
letsearch=AdsApp.search("SELECT "+" ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions "+"FROM search_term_view "+"WHERE metrics.impressions < 10 AND segments.date DURING LAST_30_DAYS");while(search.hasNext()){letrow=search.next();letquery=row.searchTermView.searchTerm;letimpressions=row.metrics.impressions;}
সমস্ত সম্ভাব্য সেটিংসের জন্য সম্পূর্ণ Adsapp.search ডকুমেন্টেশন দেখুন।
[null,null,["2025-08-26 UTC-তে শেষবার আপডেট করা হয়েছে।"],[[["\u003cp\u003eGoogle Ads scripts reporting uses GAQL to specify the data you want to retrieve, allowing you to access information about various resources like campaigns and ad groups.\u003c/p\u003e\n"],["\u003cp\u003eThere are two primary reporting methods: \u003ccode\u003eAdsApp.report()\u003c/code\u003e, which provides a flat, dictionary-like output suitable for spreadsheets, and \u003ccode\u003eAdsApp.search()\u003c/code\u003e, which returns \u003ccode\u003eGoogleAdsRow\u003c/code\u003e objects for programmatic processing.\u003c/p\u003e\n"],["\u003cp\u003eBoth \u003ccode\u003eAdsApp.report()\u003c/code\u003e and \u003ccode\u003eAdsApp.search()\u003c/code\u003e accept the same GAQL queries but differ in how they present the results, with some fields potentially exclusive to one method.\u003c/p\u003e\n"],["\u003cp\u003eWhile \u003ccode\u003eAdsApp.report()\u003c/code\u003e uses dictionary-like access (e.g., \u003ccode\u003erow["campaign.id"]\u003c/code\u003e), \u003ccode\u003eAdsApp.search()\u003c/code\u003e leverages object properties (e.g., \u003ccode\u003erow.campaign.id\u003c/code\u003e) and uses \u003ccode\u003elowerCamelCase\u003c/code\u003e for field names regardless of the query's casing.\u003c/p\u003e\n"]]],[],null,["# Reporting\n\nReports provide information about all the different resources in your account.\nYou can fetch information about campaigns, ad groups, and their stats, change\nhistory for your account, and more. The reporting infrastructure is backed by\nthe Google Ads API and uses [GAQL](/google-ads/api/docs/query/overview) to specify\nwhat fields, metrics, and conditions you want to set.\n\nReport vs. search\n-----------------\n\nThere are two main mechanisms for reporting. They both accept the same kinds of\nqueries, and differ primarily in how they return the results.\n\nFor both cases, we will use the following query: \n\n SELECT\n campaign.id,\n campaign.status,\n metrics.clicks,\n metrics.impressions,\n customer.id\n FROM campaign\n WHERE\n metrics.impressions \u003e 0\n\n`AdsApp.report()`\n: This will return a flat, dictionary-like representation of your search\n results. You can access fields as if using a dictionary, such as\n `row[\"campaign.id\"]` and `row[\"metrics.impressions\"]` directly. By using this\n format, you can export the results directly to a spreadsheet using the\n `exportToSheet()` method. This is not the native format that results are\n returned in by the Google Ads API, so in some cases some fields may not be available\n in this format. If that is the case, you should use `search` instead.\n\n`AdsApp.search()`\n: This will return a list of `GoogleAdsRow` objects, which have various fields,\n each of which may have sub-fields. So you would access `row.campaign.id` and\n `row.metrics.impressions` to fetch the data. This is generally more useful if\n you plan to process the data programmatically, and some fields may only be\n available in the `search` format if they cannot be converted to a flat\n representation.\n| **Note:** When using `AdsApp.search`, the fields returned will be in `lowerCamelCase` even though they are specified in `underscore_case` in the query. For example, if your field in the query is `campaign.start_date`, then to fetch the result from the row, you would use `campaign.startDate`.\n\nReport Example\n--------------\n\n let report = AdsApp.report(\n \"SELECT \" +\n \" ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions \" +\n \"FROM search_term_view \" +\n \"WHERE metrics.impressions \u003c 10 AND segments.date DURING LAST_30_DAYS\");\n\n let rows = report.rows();\n while (rows.hasNext()) {\n let row = rows.next();\n let query = row[\"search_term_view.search_term\"];\n let impressions = row[\"metrics.impressions\"];\n }\n\nTake a look at the\n[`AdsApp.report`](/google-ads/scripts/docs/reference/adsapp/adsapp#report_query-optArgs)\ndocumentation for full details on using this view.\n\nSearch Example\n--------------\n\n let search = AdsApp.search(\n \"SELECT \" +\n \" ad_group.id, search_term_view.search_term, metrics.ctr, metrics.cost_micros, metrics.impressions \" +\n \"FROM search_term_view \" +\n \"WHERE metrics.impressions \u003c 10 AND segments.date DURING LAST_30_DAYS\");\n\n while (search.hasNext()) {\n let row = search.next();\n let query = row.searchTermView.searchTerm;\n let impressions = row.metrics.impressions;\n }\n\nConsult the full\n[`Adsapp.search`](/google-ads/scripts/docs/reference/adsapp/adsapp#search_query-optArgs)\ndocumentation for all possible settings."]]