با Search Ads 360 Reporting API شروع کنید

بخش‌های زیر نحوه شروع کار با Search Ads 360 Reporting API را شرح می‌دهند.

پروژه خود را در Google Cloud تنظیم کنید

برای استفاده از Search Ads 360 Reporting API باید یک پروژه برای برنامه خود در Google Cloud ایجاد کنید.

یک پروژه گوگل ایجاد کنید

یک پروژه Google به عنوان یک محفظه منبع برای منابع Google Cloud شما عمل می کند.

  1. Go to the Google API Console.
  2. روی ایجاد پروژه کلیک کنید
  3. یک نام را وارد کنید یا پیشنهاد تولید شده را بپذیرید.
  4. سایر قسمتهای باقی مانده را تأیید یا ویرایش کنید.
  5. روی ایجاد کلیک کنید

اعتبارنامه OAuth2 را ایجاد کنید

Search Ads 360 Reporting API از OAuth 2.0 برای احراز هویت و مجوز استفاده می کند. اعتبارنامه OAuth برنامه شما را برای Google شناسایی می کند و به شما امکان می دهد توکن های OAuth را برای مدیریت کاربران Search Ads 360 ایجاد کنید.

برای ایجاد یک اعتبار OAuth 2.0 در Google API Console ، موارد زیر را انجام دهید:

  1. Go to the Credentials page.
  2. روی ایجاد اعتبار> شناسه مشتری OAuth کلیک کنید
  3. نوع برنامه خود را انتخاب کنید.
  4. فرم را پر کرده و روی ایجاد کلیک کنید.

Search Ads 360 Reporting API را فعال کنید

برای استفاده از API، باید Search Ads 360 Reporting API را برای پروژه خود در Google API Console فعال کنید.

برای فعال کردن یک API برای پروژه خود:

  1. Open the API Library در Google API Console .
  2. If prompted, select a project, or create a new one. API Library لیست تمام API های موجود ، گروه بندی شده توسط خانواده محصول و محبوبیت.
  3. اگر API را که می خواهید فعال کنید در لیست قابل مشاهده نیست ، از جستجو برای یافتن آن استفاده کنید ، یا از View All در خانواده کالایی که به آن تعلق دارد کلیک کنید.
  4. API را که می خواهید فعال کنید انتخاب کنید ، سپس بر روی دکمه Enable کلیک کنید.
  5. If prompted, enable billing.
  6. If prompted, read and accept the API's Terms of Service.

به صورت اختیاری صورتحساب پروژه خود را فعال کنید

هیچ هزینه ای برای استفاده از Search Ads 360 Reporting API در Google Cloud وجود ندارد. با این حال، یک سهمیه برای تعداد کل پروژه های Cloud رایگان برای هر حساب وجود دارد. اگر به حد مجاز خود رسیده اید، می توانید برای یک حساب Google جدید ثبت نام کنید که شامل سهمیه پروژه رایگان است.

برای فعال کردن صورتحساب برای پروژه خود:

  1. به Billing page .
  2. اگر حساب صدور صورتحساب فعال ندارید ، با کلیک کردن روی افزودن حساب صورتحساب و پیروی از دستورالعمل ها ، یکی را ایجاد کنید.

برای فعال کردن صفحه رضایت پروژه خود:

  1. Consent Screen page در Google API Console .
  2. If prompted, select a project, or create a new one.
  3. فرم را پر کنید و روی ذخیره کلیک کنید.

ایجاد، ویرایش یا مشاهده URI(های) تغییر مسیر

برای ایجاد ، مشاهده و یا ویرایش URI های تغییر مسیر برای اعتبار OAuth 2.0 داده شده ، موارد زیر را انجام دهید:

  1. Go to the Credentials page.
  2. در بخش شناسه های مشتری OAuth 2.0 از صفحه ، روی اعتبار نامه کلیک کنید.
  3. URI های تغییر مسیر را مشاهده یا ویرایش کنید.

اگر در صفحه شناسنامه ها هیچ بخش شناسه مشتری OAuth 2.0 وجود ندارد ، پروژه شما هیچ اعتبار OAuth ندارد. برای ایجاد یک ، روی ایجاد اعتبارنامه کلیک کنید.

یک کتابخانه مشتری دانلود کنید

استفاده از کتابخانه سرویس گیرنده Search Ads 360 Reporting API روش توصیه شده برای اتصال به Search Ads 360 Reporting API است.

کتابخانه سرویس گیرنده Search Ads 360 Reporting API را برای محیط توسعه خود دانلود کنید. دستورالعمل های خاص زبان را در مورد نحوه تنظیم فایل پیکربندی کتابخانه مشتری خود دنبال کنید. در بیشتر موارد، هنگام مهاجرت به کتابخانه سرویس گیرنده Search Ads 360 Reporting API جدید، می توانید از پیکربندی موجود خود مجددا استفاده کنید.

یکی از تغییرات مهم login-customer-id است. برای جزئیات در مورد اینکه چه زمانی باید این را به پیکربندی خود اضافه کنید، سربرگ شناسه مشتری ورود به سیستم را ببینید.

اولین تماس خود را انجام دهید

هنگامی که کتابخانه مشتری خود را پیکربندی کردید، می توانید اولین تماس خود را برقرار کنید.

کمپین ها را دریافت کنید

در IDE خود کد زیر را اجرا کنید:

جاوا

// Copyright 2022 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package sample;

import com.beust.jcommander.Parameter;
import com.google.ads.searchads360.v0.lib.SearchAds360Client;
import com.google.ads.searchads360.v0.services.SearchAds360Row;
import com.google.ads.searchads360.v0.services.SearchAds360ServiceClient;
import com.google.ads.searchads360.v0.services.SearchAds360ServiceClient.SearchPagedResponse;
import com.google.ads.searchads360.v0.services.SearchSearchAds360Request;

/** Get campaign details. */
public class GetCampaigns {
  private static final int PAGE_SIZE = 200;

  private static class GetCampaignsParams extends CodeSampleParams {

    @Parameter(names = "--customerId", required = true)
    private String customerId;

    @Parameter(names = "--loginCustomerId")
    private String loginCustomerId;
  }

  public static void main(String[] args) {
    GetCampaignsParams params = new GetCampaignsParams();
    if (!params.parseArguments(args)) {
      // Optional: You may pass the loginCustomerId on the command line or specify a loginCustomerId
      // here (10 digits, no dashes). If neither are set, customerId will be used as
      // loginCustomerId.
      // params.loginCustomerId = Long.parseLong("INSERT_LOGIN_CUSTOMER_ID_HERE");
    }
    final String loginCustomerId = params.loginCustomerId;
    final String customerId = params.customerId;

    try {
      // Creates a SearchAds360Client with the specified loginCustomerId. If there's
      // no loginCustomerId, customerId will be used instead.
      final SearchAds360Client searchAds360Client =
          SearchAds360Client.newBuilder()
              .setLoginCustomerId(loginCustomerId == null ? customerId : loginCustomerId)
              .fromPropertiesFile()
              .build();
      // Creates the Search Ads 360 Service client.
      SearchAds360ServiceClient client = searchAds360Client.create();
      new GetCampaigns().runExample(client, customerId);
    } catch (Exception exception) {
      System.err.printf("Failed with exception: %s%n", exception);
      exception.printStackTrace();
      System.exit(1);
    }
  }

  private void runExample(SearchAds360ServiceClient searchAds360ServiceClient, String customerId) {
    // Creates a query that retrieves all campaigns under the customerId.
    String query = "SELECT campaign.name, campaign.id, campaign.status FROM campaign";
    SearchSearchAds360Request request =
        SearchSearchAds360Request.newBuilder()
            .setCustomerId(customerId)
            .setQuery(query)
            .setPageSize(PAGE_SIZE)
            .build();

    // Issues a search request.
    final SearchPagedResponse searchPagedResponse = searchAds360ServiceClient.search(request);
    for (SearchAds360Row element : searchPagedResponse.iterateAll()) {
      System.out.printf(
          "Campaign found with name '%s', ID %d, and status: %s.%n",
          element.getCampaign().getName(),
          element.getCampaign().getId(),
          element.getCampaign().getStatus());
    }
  }
}

GetCampaigns.java را دانلود کنید

پایتون

#!/usr/bin/env python
# Copyright 2022 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Retrieves campaigns for a customer using a pagination search request."""

import argparse
import traceback
from google.ads.searchads360.v0.services.types.search_ads360_service import SearchSearchAds360Request
from util_searchads360 import SearchAds360Client

_DEFAULT_PAGE_SIZE = 10000


def main(client, customer_id, page_size) -> None:
  search_ads_360_service = client.get_service()

  query = """
      SELECT
        campaign.name,
        campaign.id,
        campaign.status
      FROM campaign"""

  request = SearchSearchAds360Request()
  request.customer_id = customer_id
  request.query = query
  request.page_size = page_size

  # Issues a search request.
  results = search_ads_360_service.search(request=request)

  for row in results:
    campaign = row.campaign
    print(
        f'campaign "{campaign.name}" has id {campaign.id} and status {campaign.status.name}'
    )


if __name__ == "__main__":
  # SearchAds360Client will read the search-ads-360.yaml configuration file in
  # the home directory if none is specified.
  search_ads_360_client = SearchAds360Client.load_from_file()

  parser = argparse.ArgumentParser(
      description=("Retrieves campaigns for a customer."))
  # Arguments to provide to run the example.
  parser.add_argument(
      "-c",
      "--customer_id",
      type=str,
      required=True,
      help="The Search Ads 360 customer ID (10 digits, no dashes).",
  )

  parser.add_argument(
      "-l",
      "--login_customer_id",
      type=str,
      required=False,
      help="The Search Ads 360 login customer ID (10 digits, no dashes).",
  )

  args = parser.parse_args()

  search_ads_360_client.set_ids(args.customer_id, args.login_customer_id)

  try:
    main(search_ads_360_client, args.customer_id, _DEFAULT_PAGE_SIZE)
  except Exception:  # pylint: disable=broad-except
    traceback.print_exc()

get_campaigns.py را دانلود کنید

کنسول باید فهرستی از کمپین های موجود در حساب شما را چاپ کند.

از REST استفاده کنید

اگر تصمیم دارید از کتابخانه مشتری استفاده نکنید، باید نحوه استفاده از REST را بدانید.

اگر از REST با Search Ads 360 API قدیمی استفاده کرده‌اید، اعتبار شما همچنان با Search Ads 360 Reporting API جدید کار می‌کند. نقطه پایانی جدید و سایر جزئیات را در بخش مرجع REST بیابید.

بیشتر بدانید

درباره Search Ads 360 Reporting API بیشتر بیاموزید