Hızlı başlangıç: Google Marketing Platform Yönetici API'sini kullanarak Google Analytics hesap bağlantılarını yönetme

Bu hızlı başlangıç kılavuzunda, Google Marketing Platform Admin API'ye istek gönderir ve belirtilen Google Marketing Platform kuruluşuna bağlı Google Analytics hesaplarının listesini içeren yanıtları görüntülersiniz.

Bu hızlı başlangıç kılavuzunu yerel ortamınızda bir programlama dili SDK'sı veya REST API'yi kullanarak tamamlayabilirsiniz.

Ön koşullar

Bu hızlı başlangıç kılavuzunu tamamlamak için şunları yapmanız gerekir:

  • Google Cloud projesi oluşturun ve Google Marketing Platform Admin API'yi etkinleştirin
  • Yerel makinenizde:
    • Google Cloud'u yükleme, ilk kullanıma hazırlama ve kimlik doğrulama
    • Dilinize ait SDK'yı yükleme

Google Cloud projesi oluşturun

Google Cloud projenizi oluşturun ve Google Marketing Platform Admin API'yi etkinleştirin.

Yeni bir Google Cloud projesi seçmek veya oluşturmak ve Google Marketing Platform Admin API'yi otomatik olarak etkinleştirmek için bu düğmeyi tıklayın:

Google Marketing Platform Admin API'yi etkinleştirme

Google Cloud'u ayarlama

Yerel makinenizde Google Cloud'u kurun ve kimlik doğrulaması yapın.

  1. Google Cloud'u yükleyin ve başlatın.

  2. Google Cloud'u daha önce yüklediyseniz bu komutu çalıştırarak gcloud bileşenlerinizin güncellendiğinden emin olun.

    gcloud components update
  3. Google Cloud ile kimlik doğrulamak için bu komutu çalıştırarak yerel bir Uygulama Varsayılan Kimlik Bilgileri (ADC) dosyası oluşturun. Komut tarafından başlatılan web akışı, kullanıcı kimlik bilgilerinizi sağlamak için kullanılır.

    gcloud auth application-default login --scopes="https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/marketingplatformadmin.analytics.read"

    Google Marketing Platform Admin API tarafından zorunlu tutulan kapsamların komutta nasıl belirtildiğine dikkat edin.

    Daha fazla bilgi için Uygulama Varsayılan Kimlik Bilgileri'ni ayarlama başlıklı makaleyi inceleyin.

Google Marketing Platform Admin API, varsayılan olarak ayarlanmayan bir kota projesi gerektirir. Kota projenizi nasıl ayarlayacağınızı öğrenmek için Kullanıcı Kimlik Bilgileri Kılavuzu'na bakın.

Google Marketing Platform kuruluş kimliğinizi belirleme

Google Marketing Platform Admin API'yi kullanmak için Google Marketing Platform kuruluş kimliğinizi tanımlamanız gerekir. Google Marketing Platform'a giriş yapın, Yönetim iletişim kutusuna gidin, kuruluşunuzu seçin ve Kuruluş ayrıntıları bölümündeki Kuruluş kimliğini not edin.

Google Marketing Platform Admin API'ye gönderilen tüm istekler, kuruluş kimliğini organizations/ORGANIZATION_ID biçiminde içermelidir.

SDK'yı programlama diliniz için ayarlama

Yerel makinenizde, programlama dilinize ait SDK'yı yüklemek için aşağıdaki sekmelerden birini tıklayın.

Java

Java istemci kitaplığı kurulum kılavuzu

PHP

PHP istemci kitaplığı kurulum kılavuzu

Python

Python istemci kitaplığı kurulum kılavuzu

Node.js

Node.js istemci kitaplığı yükleme kılavuzu

.NET

.NET istemci kitaplığı kurulum kılavuzu

Ruby

Ruby istemci kitaplığı kurulum kılavuzu

REST

Aşağıdakileri girerek ortam değişkenlerinizi yapılandırın.

  1. ORGANIZATION_ID yerine Google Marketing Platform kuruluşunuzun kimliğini yazın.
  2. PROJECT_ID kısmını Google Cloud projenizin kimliğiyle değiştirin.

API çağrısı yapma

Artık Google Marketing Platform API'yi kullanarak belirtilen Google Marketing Platform kuruluşuna bağlı Google Analytics hesaplarını listeleyebilirsiniz. API'ye ilk çağrınızı gerçekleştirmek için aşağıdaki kodu çalıştırın:

Java

Hızlı başlangıç programını çalıştırırken .setPageSize ve .setPageToken aramalarını kaldırın.

import com.google.ads.marketingplatform.admin.v1alpha.AnalyticsAccountLink;
import com.google.ads.marketingplatform.admin.v1alpha.ListAnalyticsAccountLinksRequest;
import com.google.ads.marketingplatform.admin.v1alpha.MarketingplatformAdminServiceClient;
import com.google.ads.marketingplatform.admin.v1alpha.OrganizationName;

public class SyncListAnalyticsAccountLinks {

  public static void main(String[] args) throws Exception {
    syncListAnalyticsAccountLinks();
  }

  public static void syncListAnalyticsAccountLinks() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (MarketingplatformAdminServiceClient marketingplatformAdminServiceClient =
        MarketingplatformAdminServiceClient.create()) {
      ListAnalyticsAccountLinksRequest request =
          ListAnalyticsAccountLinksRequest.newBuilder()
              .setParent(OrganizationName.of("[ORGANIZATION]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .build();
      for (AnalyticsAccountLink element :
          marketingplatformAdminServiceClient.listAnalyticsAccountLinks(request).iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

PHP

use Google\Ads\MarketingPlatform\Admin\V1alpha\AnalyticsAccountLink;
use Google\Ads\MarketingPlatform\Admin\V1alpha\Client\MarketingplatformAdminServiceClient;
use Google\Ads\MarketingPlatform\Admin\V1alpha\ListAnalyticsAccountLinksRequest;
use Google\ApiCore\ApiException;
use Google\ApiCore\PagedListResponse;

/**
 * Lists the Google Analytics accounts link to the specified Google Marketing
 * Platform organization.
 *
 * @param string $formattedParent The parent organization, which owns this collection of Analytics
 *                                account links. Format: organizations/{org_id}
 *                                Please see {@see MarketingplatformAdminServiceClient::organizationName()} for help formatting this field.
 */
function list_analytics_account_links_sample(string $formattedParent): void
{
    // Create a client.
    $marketingplatformAdminServiceClient = new MarketingplatformAdminServiceClient();

    // Prepare the request message.
    $request = (new ListAnalyticsAccountLinksRequest())
        ->setParent($formattedParent);

    // Call the API and handle any network failures.
    try {
        /** @var PagedListResponse $response */
        $response = $marketingplatformAdminServiceClient->listAnalyticsAccountLinks($request);

        /** @var AnalyticsAccountLink $element */
        foreach ($response as $element) {
            printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
        }
    } catch (ApiException $ex) {
        printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
    }
}

/**
 * Helper to execute the sample.
 *
 * This sample has been automatically generated and should be regarded as a code
 * template only. It will require modifications to work:
 *  - It may require correct/in-range values for request initialization.
 *  - It may require specifying regional endpoints when creating the service client,
 *    please see the apiEndpoint client configuration option for more details.
 */
function callSample(): void
{
    $formattedParent = MarketingplatformAdminServiceClient::organizationName('[ORGANIZATION]');

    list_analytics_account_links_sample($formattedParent);
}

Python

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.ads import marketingplatform_admin_v1alpha


def sample_list_analytics_account_links():
    # Create a client
    client = marketingplatform_admin_v1alpha.MarketingplatformAdminServiceClient()

    # Initialize request argument(s)
    request = marketingplatform_admin_v1alpha.ListAnalyticsAccountLinksRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_analytics_account_links(request=request)

    # Handle the response
    for response in page_result:
        print(response)

Node.js

Kullanım: node packages/google-marketingplatform-admin/samples/quickstart.js organizations/ORGANIZATION_ID.

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The parent organization, which owns this collection of Analytics
   *  account links. Format: organizations/{org_id}
   */
  // const parent = 'abc123'
  /**
   *  Optional. The maximum number of Analytics account links to return in one
   *  call. The service may return fewer than this value.
   *  If unspecified, at most 50 Analytics account links will be returned. The
   *  maximum value is 1000; values above 1000 will be coerced to 1000.
   */
  // const pageSize = 1234
  /**
   *  Optional. A page token, received from a previous ListAnalyticsAccountLinks
   *  call. Provide this to retrieve the subsequent page.
   *  When paginating, all other parameters provided to
   *  `ListAnalyticsAccountLinks` must match the call that provided the page
   *  token.
   */
  // const pageToken = 'abc123'

  // Imports the Admin library
  const {MarketingplatformAdminServiceClient} =
    require('@google-ads/marketing-platform-admin').v1alpha;

  // Instantiates a client
  const adminClient = new MarketingplatformAdminServiceClient({fallback: true});

  async function callListAnalyticsAccountLinks() {
    // Construct request
    const request = {
      parent,
    };

    // Run request
    const iterable = adminClient.listAnalyticsAccountLinksAsync(request);
    for await (const response of iterable) {
      console.log(response);
    }
  }

  callListAnalyticsAccountLinks();

.NET

    using Google.Ads.MarketingPlatform.Admin.V1Alpha;
    using Google.Api.Gax;
    using System;

    public sealed partial class GeneratedMarketingplatformAdminServiceClientSnippets
    {
        /// <summary>Snippet for ListAnalyticsAccountLinks</summary>
        /// <remarks>
        /// This snippet has been automatically generated and should be regarded as a code template only.
        /// It will require modifications to work:
        /// - It may require correct/in-range values for request initialization.
        /// - It may require specifying regional endpoints when creating the service client as shown in
        ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
        /// </remarks>
        public void ListAnalyticsAccountLinks()
        {
            // Create client
            MarketingplatformAdminServiceClient marketingplatformAdminServiceClient = MarketingplatformAdminServiceClient.Create();
            // Initialize request argument(s)
            string parent = "organizations/[ORGANIZATION]";
            // Make the request
            PagedEnumerable<ListAnalyticsAccountLinksResponse, AnalyticsAccountLink> response = marketingplatformAdminServiceClient.ListAnalyticsAccountLinks(parent);

            // Iterate over all response items, lazily performing RPCs as required
            foreach (AnalyticsAccountLink item in response)
            {
                // Do something with each item
                Console.WriteLine(item);
            }

            // Or iterate over pages (of server-defined size), performing one RPC per page
            foreach (ListAnalyticsAccountLinksResponse page in response.AsRawResponses())
            {
                // Do something with each page of items
                Console.WriteLine("A page of results:");
                foreach (AnalyticsAccountLink item in page)
                {
                    // Do something with each item
                    Console.WriteLine(item);
                }
            }

            // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
            int pageSize = 10;
            Page<AnalyticsAccountLink> singlePage = response.ReadPage(pageSize);
            // Do something with the page of items
            Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
            foreach (AnalyticsAccountLink item in singlePage)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
            // Store the pageToken, for when the next page is required.
            string nextPageToken = singlePage.NextPageToken;
        }
    }

REST

Bu isteği göndermek için komut satırından curl komutunu çalıştırın veya REST çağrısını uygulamanıza ekleyin.

curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \\
  -H "x-goog-user-project: ${PROJECT_ID}"
  -H "Content-Type: application/json" \\
  https://marketingplatformadmin.googleapis.com/v1alpha/organizations/${ORGANIZATION_ID}/analyticsAccountLinks

Örnek kod, belirtilen Google Marketing Platform kuruluşuna bağlı Google Analytics hesaplarının listesini içeren bir yanıt yazdırır:

{
  "analyticsAccountLinks": [
    {
      "name": "organizations/0a123456789-wxyz/analyticsAccountLinks/1234567890",
      "analyticsAccount": "analyticsadmin.googleapis.com/accounts/1234567890",
      "displayName": "Demo Account",
      "linkVerificationState": "LINK_VERIFICATION_STATE_VERIFIED"
    }
  ]
}

Tebrikler! Google Marketing Platform API'ye ilk isteğinizi gönderdiniz.