В этом руководстве по началу работы вы создадите запросы к Admin API Google Платформы для маркетинга и посмотрите ответы, содержащие список аккаунтов Google Аналитики, связанных с указанной организацией Google Платформы для маркетинга.
Вы можете выполнить краткое руководство, используя SDK языка программирования в локальной среде или REST API.
Требования
Чтобы выполнить это руководство по быстрому старту, вам нужно:
- Как настроить облачный проект Google Cloud и включить Admin API Google Платформы для маркетинга
- На локальном компьютере:
- Как установить, инициализировать и пройти аутентификацию в Google Cloud
- Установите SDK для своего языка
Как настроить проект Google Cloud
Настройте проект Google Cloud и включите Admin API Google Платформы для маркетинга.
Нажмите эту кнопку, чтобы выбрать или создать новый облачный проект Google Cloud и автоматически включить Admin API Google Платформы для маркетинга:
Как включить Admin API Google Платформы для маркетингаНастройте Google Cloud
Настройте и выполните аутентификацию в Google Cloud на локальном компьютере.
-
Установите и инициализируйте Google Cloud.
-
Если вы ранее установили Google Cloud, убедитесь, что компоненты
gcloudобновлены, выполнив следующую команду:gcloud components update
-
Чтобы пройти аутентификацию в Google Cloud, создайте локальный файл Application Default Credentials (ADC), выполнив следующую команду: Для предоставления учетных данных пользователя используется веб-процесс, запущенный командой.
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.
Дополнительную информацию можно найти в статье о том, как настроить Application Default Credentials.
Для Admin API Google Платформы для маркетинга требуется проект квоты, который не задан по умолчанию. Информацию о том, как задать проект квоты, можно найти в руководстве по учетным данным пользователя.
Как узнать идентификатор организации Google Платформы для маркетинга
Чтобы использовать Admin API Google Платформы для маркетинга, вам нужно знать идентификатор организации Google Платформы для маркетинга. Войдите в Google Платформу для маркетинга, откройте диалоговое окно Администрирование, выберите организацию и запишите идентификатор организации в разделе Сведения об организации.
Все запросы к Admin API Google Платформы для маркетинга должны содержать идентификатор организации в формате organizations/ORGANIZATION_ID.
Как настроить SDK для языка программирования
На локальном компьютере нажмите на одну из вкладок ниже, чтобы установить SDK для нужного языка программирования.
Java
PHP
Python
Node.js
.NET
Ruby
REST
Настройте переменные среды, введя следующие команды:
- Замените
ORGANIZATION_IDидентификатором организации Google Платформы для маркетинга. - Замените
PROJECT_IDидентификатором вашего облачного проекта Google Cloud.
Как выполнить вызов API
Теперь вы можете использовать Google Marketing Platform API, чтобы получить список аккаунтов Google Аналитики, связанных с указанной организацией Google Платформы для маркетинга. Выполните следующий код, чтобы сделать первый вызов API:
Java
Удалите звонки на номера .setPageSize и .setPageToken при быстром запуске.
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
Использование: 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
Чтобы отправить этот запрос, выполните команду curl в командной строке или добавьте вызов REST в свое приложение.
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
В образце кода выводится ответ со списком аккаунтов Google Аналитики, связанных с указанной организацией Google Платформы для маркетинга:
{
"analyticsAccountLinks": [
{
"name": "organizations/0a123456789-wxyz/analyticsAccountLinks/1234567890",
"analyticsAccount": "analyticsadmin.googleapis.com/accounts/1234567890",
"displayName": "Demo Account",
"linkVerificationState": "LINK_VERIFICATION_STATE_VERIFIED"
}
]
}
Поздравляем! Вы отправили первый запрос к Google Платформе для маркетинга API.