شروع به کار

می‌توانید از Google Ad Manager SOAP API برای ساختن برنامه‌هایی استفاده کنید که موجودی را مدیریت می‌کنند، سفارش ایجاد می‌کنند، گزارش‌ها را استخراج می‌کنند، و کارهای دیگری انجام می‌دهند.

برای کمک به شما در شروع کار، کتابخانه‌های کارخواه را برای Java،‏ NET.،‏ Python،‏ PHP، و Ruby ارائه می‌دهیم.

برای ایجاد اولین درخواست API، این مراحل را دنبال کنید:

دسترسی به شبکه Ad Manager

اگر ازقبل حساب ندارید، برای حساب Ad Manager ثبت‌نام کنید. اگر می‌خواهید میانای برنامه‌سازی کاربردی را در محیطی جداگانه آزمایش کنید، می‌توانید شبکه آزمایشی نیز ایجاد کنید. توجه داشته باشید که برای اهداف آزمایشی به حساب AdSense نیاز ندارید.

کد شبکه‌تان را یادداشت کنید. وقتی به سیستم شبکه‌تان وارد می‌شوید، می‌توانید این مورد را در نشانی وب پیدا کنید. برای مثال، در نشانی وب https://admanager.google.com/1234#home، 1234 کد شبکه شما است.

ایجاد اعتبارنامه‌های اصالت‌سنجی

باید همه درخواست‌های Ad Manager SOAP API را بااستفاده از OAuth 2.0 اصالت‌سنجی کنید. مراحل زیر مورد استفاده دسترسی به داده‌های Ad Manager خودتان را پوشش می‌دهد. برای جزئیات بیشتر و گزینه‌های دیگر، اصالت‌سنجی را ببینید.

  1. صفحه اطلاعات کاربری کنسول Google API را باز کنید

  2. از منو پروژه، ایجاد پروژه را انتخاب کنید، نامی برای پروژه وارد کنید، و درصورت تمایل، «شناسه پروژه» ارائه‌شده را ویرایش کنید. روی ایجاد کلیک کنید.

  3. در صفحه «اعتبارنامه‌ها»، ایجاد اعتبارنامه و سپس کلید حساب سرویس را انتخاب کنید.

  4. حساب سرویس جدید را انتخاب کنید و JSON را به‌عنوان نوع کلید انتخاب کنید.

  5. روی ایجاد کلیک کنید تا فایلی حاوی کلید خصوصی بارگیری شود.

پیکربندی شبکه «مدیر آگهی» شما

  1. به سیستم Google Ad Manager وارد شوید.

  2. در نوار کناری، روی سرپرست > تنظیمات سراسری کلیک کنید.

  3. در بخش تنظیمات عمومی > دسترسی Api، لغزنده را روی فعال قرار دهید.

  4. روی دکمه ذخیره در پایین صفحه کلیک کنید.

راه‌اندازی مشتری

یکی از کتابخانه‌های مشتری Ad Manager را بارگیری کنید. کتابخانه‌های توابع و ویژگی‌های پوشاننده‌ای ارائه می‌دهند که توسعه برنامه‌ها را آسان‌تر و سریع‌تر می‌کند.

برگه‌های زیر شروع‌های سریع را برای کدنویسی در هریک از زبان‌هایی که کتابخانه مشتری برای آن‌ها وجود دارد ارائه می‌دهند.

جاوا

در اینجا نمونه‌ای ساده ارائه شده است که نحوه استفاده از کتابخانه کلاینت Java را نشان می‌دهد. برای اطلاعات دقیق‌تر درباره استفاده، به فایل README در توزیع کتابخانه مشتری مراجعه کنید.

  1. راه‌اندازی اطلاعات کاربری

    فرمان زیر را در پوسته اجرا کنید:

    curl https://raw.githubusercontent.com/googleads/googleads-java-lib/main/examples/admanager_axis/src/main/resources/ads.properties -o ~/ads.properties
    فایل ~/ads.properties را باز کنید و فیلدهای زیر را پر کنید:
    [...]
    api.admanager.applicationName=INSERT_APPLICATION_NAME_HERE
    api.admanager.jsonKeyFilePath=INSERT_PATH_TO_JSON_KEY_FILE_HERE
    api.admanager.networkCode=INSERT_NETWORK_CODE_HERE
    [...]
  2. مشخص کردن وابستگی‌ها

    فایل pom.xml را ویرایش کنید و موارد زیر را به برچسب dependencies اضافه کنید. می‌توانید شماره جدیدترین نسخه را در Github پیدا کنید.

    <dependency>
      <groupId>com.google.api-ads</groupId>
      <artifactId>ads-lib</artifactId>
      <version>RELEASE</version>
    </dependency>
    <dependency>
      <groupId>com.google.api-ads</groupId>
      <artifactId>dfp-axis</artifactId>
      <version>RELEASE</version>
    </dependency>
  3. کدی بنویسید و درخواست کنید!

    import com.google.api.ads.common.lib.auth.OfflineCredentials;
    import com.google.api.ads.common.lib.auth.OfflineCredentials.Api;
    import com.google.api.ads.admanager.axis.factory.AdManagerServices;
    import com.google.api.ads.admanager.axis.v202608.Network;
    import com.google.api.ads.admanager.axis.v202608.NetworkServiceInterface;
    import com.google.api.ads.admanager.lib.client.AdManagerSession;
    import com.google.api.client.auth.oauth2.Credential;
    
    public class App {
      public static void main(String[] args) throws Exception {
        Credential oAuth2Credential = new OfflineCredentials.Builder()
            .forApi(Api.AD_MANAGER)
            .fromFile()
            .build()
            .generateCredential();
    
        // Construct an AdManagerSession.
        AdManagerSession session = new AdManagerSession.Builder()
            .fromFile()
            .withOAuth2Credential(oAuth2Credential)
            .build();
    
        // Construct a Google Ad Manager service factory, which can only be used once per
        // thread, but should be reused as much as possible.
        AdManagerServices adManagerServices = new AdManagerServices();
    
        // Retrieve the appropriate service
        NetworkServiceInterface networkService = adManagerServices.get(session,
            NetworkServiceInterface.class);
    
        // Make a request
        Network network = networkService.getCurrentNetwork();
    
        System.out.printf("Current network has network code '%s' and display" +
            " name '%s'.%n", network.getNetworkCode(), network.getDisplayName());
      }
    }

Python

در اینجا نمونه‌ای پایه آورده شده است که نحوه استفاده از کتابخانه کلاینت Python را نشان می‌دهد. «کتابخانه مشتری Python» از Python نسخه ۳.۶ به بالا پشتیبانی می‌کند. برای اطلاعات دقیق‌تر درباره استفاده، به فایل README در توزیع کتابخانه مشتری مراجعه کنید.

  1. کتابخانه را نصب کنید و اطلاعات اعتباری‌تان را راه‌اندازی کنید.

    فرمان‌های زیر را در پوسته اجرا کنید:

    python3 -m pip install googleads
    curl https://raw.githubusercontent.com/googleads/googleads-python-lib/main/googleads.yaml \
         -o ~/googleads.yaml
  2. فایل ~/googleads.yaml را راه‌اندازی کنید.

    فیلدهای زیر را پر کنید:

    ad_manager:
      application_name: INSERT_APPLICATION_NAME_HERE
      network_code: INSERT_NETWORK_CODE_HERE
      path_to_private_key_file: INSERT_PATH_TO_FILE_HERE
  3. کدی را اجرا کنید و درخواستی ایجاد کنید.
    # Import the library.
    from googleads import ad_manager
    
    # Initialize a client object, by default uses the credentials in ~/googleads.yaml.
    client = ad_manager.AdManagerClient.LoadFromStorage()
    
    # Initialize a service.
    network_service = client.GetService('NetworkService', version='v202608')
    
    # Make a request.
    current_network = network_service.getCurrentNetwork()
    
    print("Current network has network code '%s' and display name '%s'." %
            (current_network['networkCode'], current_network['displayName']))

PHP

در اینجا نمونه‌ای ساده آورده شده است که نحوه استفاده از کتابخانه کارخواه PHP را نشان می‌دهد.

  1. کتابخانه را نصب کنید و اطلاعات اعتباری‌تان را راه‌اندازی کنید.

    فرمان‌های زیر را در پوسته اجرا کنید تا کتابخانه کارخواه را نصب کنید و فایل adsapi_php.ini را در دایرکتوری صفحه اصلی‌تان بارگیری کنید:

    composer require googleads/googleads-php-lib
    curl https://raw.githubusercontent.com/googleads/googleads-php-lib/main/examples/AdManager/adsapi_php.ini -o ~/adsapi_php.ini
  2. فایل ~/adsapi_php.ini را راه‌اندازی کنید.

    فیلدهای زیر را پر کنید:

    [AD_MANAGER]
    networkCode = "INSERT_NETWORK_CODE_HERE"
    applicationName = "INSERT_APPLICATION_NAME_HERE"
    
    [OAUTH2]
    jsonKeyFilePath = "INSERT_ABSOLUTE_PATH_TO_OAUTH2_JSON_KEY_FILE_HERE"
    scopes = "https://www.googleapis.com/auth/dfp"
  3. کدی را اجرا کنید و درخواستی ارسال کنید!
    <?php
    require 'vendor/autoload.php';
    use Google\AdsApi\AdManager\AdManagerSession;
    use Google\AdsApi\AdManager\AdManagerSessionBuilder;
    use Google\AdsApi\AdManager\v202608\ApiException;
    use Google\AdsApi\AdManager\v202608\ServiceFactory;
    use Google\AdsApi\Common\OAuth2TokenBuilder;
    
    // Generate a refreshable OAuth2 credential for authentication.
    $oAuth2Credential = (new OAuth2TokenBuilder())
        ->fromFile()
        ->build();
    // Construct an API session configured from a properties file and the OAuth2
    // credentials above.
    $session = (new AdManagerSessionBuilder())
        ->fromFile()
        ->withOAuth2Credential($oAuth2Credential)
        ->build();
    
    // Get a service.
    $serviceFactory = new ServiceFactory();
    $networkService = $serviceFactory->createNetworkService($session);
    
    // Make a request
    $network = $networkService->getCurrentNetwork();
    printf(
        "Network with code %d and display name '%s' was found.\n",
        $network->getNetworkCode(),
        $network->getDisplayName()
    );

دات نت

در اینجا نمونه‌ای ساده آورده شده است که نحوه استفاده از کتابخانه کارخواه NET. را نشان می‌دهد

  1. ایجاد کردن پروژه جدید

    Visual Studio را باز کنید و پروژه جدیدی (Console Application) ایجاد کنید.

  2. افزودن ارجاع‌های کتابخانه موردنیاز به پروژه

    یک وابستگی nuget برای Google.Dfp اضافه کنید.

  3. راه‌اندازی App.config

    src\App.config را در دایرکتوری پروژه‌تان کپی کنید و آن را به پروژه‌تان اضافه کنید. اگر برنامه شما App.config خودش را دارد، می‌توانید گره‌های زیر را در App.config خودتان کپی کنید:

    • configuration/AdManagerApi
    • configuration/configSections/section[name="AdManagerApi"]
    • configuration/system.net
  4. راه‌اندازی اطلاعات اعتباری

    App.config را باز کنید و کلیدهای زیر را ویرایش کنید:

    <add key="ApplicationName" value="INSERT_YOUR_APPLICATION_NAME_HERE" />
    <add key="NetworkCode" value="INSERT_YOUR_NETWORK_CODE_HERE" />
    <add key="OAuth2Mode" value="SERVICE_ACCOUNT" />
    <add key="OAuth2SecretsJsonPath" value="INSERT_OAUTH2_SECRETS_JSON_FILE_PATH_HERE" />
  5. با کتابخانه تماس بگیرید

    می‌توانید کتابخانه را همان‌طور که در تکه‌کد C# ‎ زیر نشان داده شده است فراخوانی کنید

    AdManagerUser user = new AdManagerUser();
          using (InventoryService inventoryService = user.GetService<InventoryService>())
                {
                    // Create a statement to select ad units.
                    int pageSize = StatementBuilder.SUGGESTED_PAGE_LIMIT;
                    StatementBuilder statementBuilder =
                        new StatementBuilder().OrderBy("id ASC").Limit(pageSize);
    
                    // Retrieve a small amount of ad units at a time, paging through until all
                    // ad units have been retrieved.
                    int totalResultSetSize = 0;
                    do
                    {
                        AdUnitPage page =
                            inventoryService.getAdUnitsByStatement(statementBuilder.ToStatement());
    
                        // Print out some information for each ad unit.
                        if (page.results != null)
                        {
                            totalResultSetSize = page.totalResultSetSize;
                            int i = page.startIndex;
                            foreach (AdUnit adUnit in page.results)
                            {
                                Console.WriteLine(
                                    "{0}) Ad unit with ID \"{1}\" and name \"{2}\" was found.", i++,
                                    adUnit.id, adUnit.name);
                            }
                        }
    
                        statementBuilder.IncreaseOffsetBy(pageSize);
                    } while (statementBuilder.GetOffset() < totalResultSetSize);
    
                    Console.WriteLine("Number of results found: {0}", totalResultSetSize);
                }
            

اگر نمی‌خواهید اعتبارنامه‌هایتان را در App.config تنظیم کنید، به این مقاله ویکی برای روش‌های جایگزین استفاده از کلاس AdManagerUser مراجعه کنید. برای اطلاعات دقیق‌تر درباره استفاده از کتابخانه مشتری .NET، به README مراجعه کنید. اگر می‌خواهید در .NET بدون کتابخانه مشتری توسعه دهید، لطفاً به NoClientLibrary مقاله ویکی مراجعه کنید.

Ruby

در اینجا نمونه‌ای ساده آورده شده است که نحوه استفاده از کتابخانه کارخواه Ruby را نشان می‌دهد. کتابخانه کارخواه Ruby به Ruby نسخه ۲.۱ یا بالاتر نیاز دارد.

  1. Ruby gem را نصب کنید و فایل پیکربندی را دریافت کنید.

    فرمان‌های زیر را در پوسته اجرا کنید:

    gem install google-dfp-api
    curl https://raw.githubusercontent.com/googleads/google-api-ads-ruby/main/ad_manager_api/ad_manager_api.yml -o ~/ad_manager_api.yml
  2. راه‌اندازی اطلاعات کاربری

    فیلدهای الزامی را در فایل ~/ad_manager_api.yml پر کنید. اگر ازقبل فایل کلید OAuth2 ندارید، باید مراحل ایجاد اعتبارنامه OAuth2 را دنبال کنید.

    :authentication:
      :oauth2_keyfile: INSERT_PATH_TO_JSON_KEY_FILE_HERE
      :application_name: INSERT_APPLICATION_NAME_HERE
      :network_code: INSERT_NETWORK_CODE_HERE
  3. کدی بنویسید و درخواست کنید!
    # Import the library.
    require 'ad_manager_api'
    
    # Initialize an Ad Manager client instance (uses credentials in ~/ad_manager_api.yml by default).
    ad_manager = AdManagerApi::Api.new
    
    # Get a service instance.
    network_service = ad_manager.service(:NetworkService, :v202608)
    
    # Make a request.
    network = network_service.get_current_network()
    
    puts "The current network is %s (%d)." %
            [network[:display_name], network[:network_code]]

مراحل دقیق‌تر برای شروع به کار را می‌توانید در فایل README که با کتابخانه کارخواه Ruby توزیع شده است پیدا کنید. همچنین، کتابخانه کامل نمونه‌ها برای Ruby را بررسی کنید.

مراحل بعدی

وقتی کتابخانه مشتری را راه‌اندازی کردید، نمونه‌های ارائه‌شده را اصلاح کنید تا آن‌ها را برای نیازهایتان گسترش دهید.

برای کسب اطلاعات بیشتر درباره میانای برنامه‌سازی کاربردی، اسناد مرجع را مرور کنید.

اگر به راهنمایی نیاز دارید، به صفحه پشتیبانی ما مراجعه کنید.