با API شروع کنید

این سند نحوه شروع نوشتن برنامه‌هایی را که از Google Bid Manager API استفاده می‌کنند، توضیح می‌دهد. API به شما امکان می دهد Queries را مدیریت کنید و ابرداده های گزارش را بازیابی کنید.

Bid Manager API v2 آخرین نسخه موجود و توصیه شده است.

1. قبل از شروع

اگر با مفاهیم Google Display & Video 360 آشنا نیستید، مرکز راهنمای Display & Video 360 را بخوانید و با UI آزمایش کنید.

2. برای احراز هویت آماده شوید

برای شروع استفاده از Bid Manager API، ابتدا باید از ابزار راه‌اندازی استفاده کنید که شما را از طریق ایجاد پروژه در کنسول API Google، فعال کردن API و ایجاد اعتبارنامه راهنمایی می‌کند.

اگر قبلاً این کار را انجام نداده‌اید، اعتبارنامه OAuth 2.0 خود را با کلیک کردن روی ایجاد اعتبار > شناسه مشتری OAuth ایجاد کنید. پس از ایجاد اعتبارنامه، می توانید شناسه مشتری خود را در صفحه اعتبارنامه ها مشاهده کنید. برای جزئیات، مانند رمز سرویس گیرنده، URI های تغییر مسیر، آدرس مبدا جاوا اسکریپت و آدرس ایمیل، روی شناسه مشتری کلیک کنید.

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

3. با Bid Manager API تماس بگیرید

برگه های زیر شروع سریع برای کدنویسی به زبان های مختلف ارائه می دهند. کد نمونه مشابهی را نیز می توان در مخزن Bid Manager API Examples یافت.

جاوا

  1. کتابخانه های لازم را وارد کنید.

    import static java.nio.charset.StandardCharsets.UTF_8;
    import com.google.api.client.auth.oauth2.Credential;
    import com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp;
    import com.google.api.client.extensions.jetty.auth.oauth2.LocalServerReceiver;
    import com.google.api.client.googleapis.auth.oauth2.GoogleAuthorizationCodeFlow;
    import com.google.api.client.googleapis.auth.oauth2.GoogleClientSecrets;
    import com.google.api.client.googleapis.util.Utils;
    import com.google.api.services.doubleclickbidmanager.DoubleClickBidManager;
    import com.google.api.services.doubleclickbidmanager.model.ListQueriesResponse;
    import com.google.api.services.doubleclickbidmanager.model.Query;
    import java.io.Reader;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
  2. فایل اسرار مشتری را بارگیری کنید و اعتبارنامه مجوز ایجاد کنید.

    اولین باری که این مرحله را انجام می‌دهید، از شما خواسته می‌شود که درخواست مجوز را در مرورگر خود بپذیرید. قبل از پذیرش، مطمئن شوید که با یک حساب Google وارد سیستم شده‌اید که به Display & Video 360 دسترسی دارد. برنامه شما مجاز خواهد بود از طرف هر حسابی که در حال حاضر به سیستم وارد شده است، به داده‌ها دسترسی داشته باشد.

    // Read client secrets file.
    GoogleClientSecrets clientSecrets;
    try (Reader reader = Files.newBufferedReader(Paths.get(path-to-client-secrets-file), UTF_8)) {
      clientSecrets = GoogleClientSecrets.load(Utils.getDefaultJsonFactory(), reader);
    }
    
    // Generate authorization credentials.
    // Set up the authorization code flow.
    GoogleAuthorizationCodeFlow flow =
        new GoogleAuthorizationCodeFlow.Builder(
            Utils.getDefaultTransport(),
            Utils.getDefaultJsonFactory(),
            clientSecrets,
            oauth-scopes)
        .build();
    
    Credential credential =
        new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
    
  3. یک کلاینت مجاز API ایجاد کنید.

    // Create authorized API client.
    DoubleClickBidManager service =
        new DoubleClickBidManager.Builder(credential.getTransport(), credential.getJsonFactory(), credential)
            .setApplicationName("bidmanager-java-installed-app-sample")
            .build();
    
  4. یک عملیات انجام دهید.

    // Perform an operation.
    // Call the API, getting a list of 10 queries.
    ListQueriesResponse queriesResponse = service.queries().list().setPageSize(10).execute();
    
    // Print them out.
    System.out.println("Id\t\tName");
    if (queriesResponse.getQueries().size() > 0) {
      for (int i = 0; i < queriesResponse.getQueries().size(); i++) {
        Query currentQuery = queriesResponse.getQueries().get(i);
        System.out.printf(
            "%s\t%s%n",
            currentQuery.getQueryId(),
            currentQuery.getMetadata().getTitle());
      }
    } else {
      System.out.println("No queries exist.");
    }
    

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

پایتون

  1. کتابخانه های لازم را وارد کنید.

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
    
  2. فایل اسرار مشتری را بارگیری کنید و اعتبارنامه مجوز ایجاد کنید.

    اولین باری که این مرحله را انجام می‌دهید، از شما خواسته می‌شود که درخواست مجوز را در مرورگر خود بپذیرید. قبل از پذیرش، مطمئن شوید که با یک حساب Google وارد سیستم شده‌اید که به Display & Video 360 دسترسی دارد. برنامه شما مجاز خواهد بود از طرف هر حسابی که در حال حاضر به سیستم وارد شده است، به داده‌ها دسترسی داشته باشد.

    # Set up a flow object to create the credentials using the
    # client secrets file and OAuth scopes.
    credentials = InstalledAppFlow.from_client_secrets_file(
        path-to-client-secrets-file, oauth-scopes).run_local_server()
    
  3. یک کلاینت مجاز API ایجاد کنید.

    # Build the discovery document URL.
    discovery_url = f'https://doubleclickbidmanager.googleapis.com/$discovery/rest?version=v2'
    
    # Build the API service.
    service = discovery.build(
        'doubleclickbidmanager',
        'v2',
        discoveryServiceUrl=discovery_url,
        credentials=credentials)
    
  4. یک عملیات انجام دهید.

    # Build and execute queries.listqueries request.
    response = service.queries().list(pageSize='10').execute()
    
    # Print queries out.
    if 'queries' in response:
      print('Id\t\tName')
      for query in response['queries']:
        print('%s\t%s' % (query['queryId'], query['metadata']['title']))
    else:
      print('No queries exist.')
    

برای اطلاعات بیشتر در مورد استفاده از Bid Manager API با پایتون، به فایل README در مثال‌های Bid Manager API مراجعه کنید.

PHP

این نمونه فرض می کند که شما PHP را با یک وب سرور داخلی اجرا می کنید و اعتبار خود را برای تغییر مسیر به صفحه وب مربوطه پیکربندی کرده اید. به عنوان مثال، این کد در یک فایل index.php ، می تواند با استفاده از دستور زیر و اعتبارنامه های پیکربندی شده برای تغییر مسیر به http://localhost:8000 پس از احراز هویت اجرا شود:

php -S localhost:8000 -t ./

  1. Google API PHP Client را دانلود و نصب کنید.

    روش ترجیحی از طریق Composer است:

    composer require google/apiclient:^2.12.1
    

    پس از نصب، حتماً Autoloader را در آن قرار دهید

    require_once '/path/to/your-project/vendor/autoload.php';
    

  2. یک شی Google_Client ایجاد کنید.

    $client = new Google_Client();
    
  3. کلاینت را تنظیم کنید، در صورت نیاز به URL احراز هویت هدایت کنید و یک نشانه دسترسی را بازیابی کنید.

    اولین باری که این مرحله را انجام می‌دهید، از شما خواسته می‌شود که درخواست مجوز را در مرورگر خود بپذیرید. قبل از پذیرش، مطمئن شوید که با یک حساب Google وارد سیستم شده‌اید که به Display & Video 360 دسترسی دارد. برنامه شما مجاز خواهد بود از طرف هر حسابی که در حال حاضر به سیستم وارد شده است، به داده‌ها دسترسی داشته باشد.

    // Set up the client.
    $client->setApplicationName('DBM API PHP Samples');
    $client->addScope(oauth-scope);
    $client->setAccessType('offline');
    $client->setAuthConfigFile(path-to-client-secrets-file);
    
    // If the code is passed, authenticate. If not, redirect to authentication page.
    if (isset($_GET['code'])) {
      $client->authenticate($_GET['code']);
    } else {
      $authUrl = $client->createAuthUrl();
      header('Location: ' . $authUrl);
    }
    
    // Exchange authorization code for an access token.
    $accessToken = $client->getAccessToken();
    $client->setAccessToken($accessToken);
    
  4. یک کلاینت برای سرویس Display & Video 360 API بسازید.

    $service = new Google_Service_DoubleClickBidManager($client);
    
  5. یک عملیات انجام دهید.

    // Configure params for the Queries.listqueries request.
    $optParams = array('pageSize' => 10);
    
    // Execute the request.
    $result = $service->queries->listQueries($optParams);
    
    // Print the retrieved queries.
    if (!empty($result->getQueries())) {
      print('<pre><p>Id Name</p>');
      foreach ($result->getQueries() as $query) {
        printf('<p>%s %s</p>', $query->queryId, $query->metadata->title);
      }
      print('</pre>');
    } else {
      print '<p>No queries exist.</p>';
    }
    

برای اطلاعات دقیق تر در مورد استفاده از Bid Manager API با PHP، به فایل README در نمونه های Bid Manager API مراجعه کنید.

4. مراحل بعدی

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

راهنماهای اضافی نیز در مورد استفاده از گزارش های برنامه ریزی شده و دنبال کردن بهترین شیوه های گزارش دهی موجود است.