بدء استخدام واجهة برمجة التطبيقات

يوضّح هذا المستند كيفية البدء في كتابة تطبيقات تستخدم Google Bid Manager API. تتيح لك واجهة برمجة التطبيقات إدارة طلبات البحث واسترداد بيانات وصفية للتقارير.

‫Bid Manager API v2 هو أحدث إصدار متاح وموصى به.

‫1. قبل البدء

إذا لم تكن على دراية بمفاهيم "مساحة العرض والفيديو 360" من Google، يُرجى قراءة مركز مساعدة "مساحة العرض والفيديو 360" وتجربة واجهة المستخدم.

‫2. الاستعداد للمصادقة

لبدء استخدام Bid Manager API، عليك أولاً استخدام أداة الإعدادالتي تساعدك على إنشاء مشروع في وحدة التحكم في Google API وتفعيل واجهة برمجة التطبيقات.

إذا لم يسبق لك إنشاء بيانات اعتماد OAuth 2.0، يمكنك إنشاؤها بالنقر على إنشاء بيانات اعتماد > معرِّف عميل OAuth. بعد إنشاء بيانات الاعتماد، يمكنك الاطّلاع على معرِّف العميل في صفحة بيانات الاعتماد. انقر على معرِّف العميل للاطّلاع على التفاصيل، مثل سرّ العميل وعناوين URI لإعادة التوجيه وعنوان مصادر JavaScript وعنوان البريد الإلكتروني.

لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تفويض الطلبات.

‫3. استدعاء Bid Manager API

توفّر علامات التبويب أدناه أدلة البدء السريع للبرمجة بلغات مختلفة. يمكنك أيضًا العثور على رمز نموذجي مشابه في مستودع أمثلة Bid Manager API.

جافا

  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 يمكنه الوصول إلى "مساحة العرض والفيديو 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. إنشاء عميل واجهة برمجة تطبيقات مُفوَّض

    // 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 مع Java، يُرجى الرجوع إلى README في أمثلة Bid Manager API.

Python

  1. استيراد المكتبات الضرورية

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient import discovery
  2. تحميل ملف أسرار العميل وإنشاء بيانات اعتماد التفويض

    في المرة الأولى التي تنفّذ فيها هذه الخطوة، سيُطلب منك قبول طلب تفويض في متصفّحك. قبل القبول، تأكَّد من تسجيل الدخول باستخدام حساب Google يمكنه الوصول إلى "مساحة العرض والفيديو 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. إنشاء عميل واجهة برمجة تطبيقات مُفوَّض

    # 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 مع Python، يُرجى الرجوع إلى 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

    بعد التثبيت، احرص على تضمين أداة التحميل التلقائي

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

  2. إنشاء عنصر Google_Client

    $client = new Google_Client();
  3. إعداد العميل وإعادة التوجيه إلى عنوان URL مخصّص للمصادقة إذا لزم الأمر واسترداد رمز الدخول.

    في المرة الأولى التي تنفّذ فيها هذه الخطوة، سيُطلب منك قبول طلب تفويض في متصفّحك. قبل القبول، تأكَّد من تسجيل الدخول باستخدام حساب Google يمكنه الوصول إلى "مساحة العرض والفيديو 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. الخطوات التالية

بعد إعداد مكتبة عملاء وتشغيلها، يمكنك استكشاف المستندات المرجعية والبدء في إنشاء عملية التنفيذ.

تتوفّر أيضًا أدلة إضافية حول استخدام التقارير المجدولة و اتّباع أفضل ممارسات إعداد التقارير.