במדריך הזה ליצירת בקשות מהירה, תיצרו בקשות ל-Google Marketing Platform Admin API ותציגו את התשובות שמכילות את רשימת החשבונות ב-Google Analytics שמקושרים לארגון שצוין ב-Google Marketing Platform.
כדי להשלים את המדריך למתחילים הזה, אתם יכולים להשתמש בערכת SDK של שפת תכנות בסביבה המקומית או ב-API בארכיטקטורת REST.
דרישות מוקדמות
כדי להשלים את המדריך למתחילים הזה, צריך:
- הגדרת פרויקט בענן ב-Google Cloud והפעלת Google Marketing Platform Admin API
- במכונה המקומית:
- התקנה, הפעלה ואימות באמצעות Google Cloud
- התקנה של ה-SDK בשפה שלכם
הגדרת פרויקט ב-Google Cloud
מגדירים את הפרויקט בענן ב-Google Cloud ומפעילים את Google Marketing Platform Admin API.
לוחצים על הלחצן הזה כדי לבחור או ליצור פרויקט בענן חדש ב-Google Cloud ולהפעיל באופן אוטומטי את Google Marketing Platform Admin API:
הפעלת Google Marketing Platform Admin APIהגדרת 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.
ב-Google Marketing Platform Admin API נדרשת מכסה בפרויקט, שלא מוגדרת כברירת מחדל. במדריך לפרטי כניסה של משתמשים מוסבר איך להגדיר את פרויקט המכסה.
איך מזהים את מספר הארגון ב-Google Marketing Platform
כדי להשתמש ב-Google Marketing Platform Admin API, צריך לזהות את מספר הארגון שלכם ב-Google Marketing Platform. מתחברים אל Google Marketing Platform, עוברים לתיבת הדו-שיח ניהול, בוחרים את הארגון ורושמים את מזהה הארגון בקטע פרטי הארגון.
כל הבקשות אל Google Marketing Platform Admin API צריכות לכלול את מזהה הארגון בפורמט organizations/ORGANIZATION_ID.
הגדרת ה-SDK לשפת התכנות
במחשב המקומי, לוחצים על אחת מהכרטיסיות הבאות כדי להתקין את ה-SDK עבור שפת התכנות שלכם.
Java
PHP
Python
Node.js
.NET
Ruby
REST
מגדירים את משתני הסביבה על ידי הזנת הערכים הבאים.
- מחליפים את
ORGANIZATION_IDבמזהה הארגון שלכם ב-Google Marketing Platform. - מחליפים את
PROJECT_IDבמזהה הפרויקט ב-Google Cloud.
ביצוע קריאה ל-API
עכשיו אפשר להשתמש ב-Google Marketing Platform API כדי להציג רשימה של חשבונות Google Analytics שמקושרים לארגון שצוין ב-Google Marketing Platform. מריצים את הקוד הבא כדי לבצע את הקריאה הראשונה ל-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 Analytics שמקושרים לארגון שצוין ב-Google Marketing Platform:
{
"analyticsAccountLinks": [
{
"name": "organizations/0a123456789-wxyz/analyticsAccountLinks/1234567890",
"analyticsAccount": "analyticsadmin.googleapis.com/accounts/1234567890",
"displayName": "Demo Account",
"linkVerificationState": "LINK_VERIFICATION_STATE_VERIFIED"
}
]
}
מעולה! שלחתם את הבקשה הראשונה אל Google Marketing Platform API.