בדף הזה מוסבר איך לבצע כמה מהמשימות הנפוצות ביותר שקשורות להצגת מודעות באמצעות DCM/DFA Reporting and Trafficking API.
טיפים כלליים בנושא תכנות
- מאפיינים ופרמטרים נדרשים ואופציונליים – אפשר לעיין במסמכי העזרה כדי לגלות אם מאפיין או פרמטר נדרשים לקריאה ל-API.
- חיפוש שמות עם תווים כלליים לחיפוש – אפשר להשתמש בתו הכללי לחיפוש כוכבית (*) כשמחפשים אובייקטים לפי שמות. כוכבית מתאימה לאפס או יותר מכל תו. ה-API תומך גם בחיפוש משתמע של מחרוזת משנה, כך שחיפוש של 'abc' יחפש באופן משתמע גם '*abc*'.
- עדכון לעומת תיקון – כדי לשנות אובייקט קיים, יש שתי אפשרויות:
- עדכון – כשמעדכנים אובייקט, כל השדות יימחקו בהוספה. חשוב לטעון את האובייקט שרוצים לעדכן ולבצע בו שינויים. אחרת, כל השדות שלא מופיעים בבקשת העדכון יבוטלו.
- תיקון – כשמבצעים תיקון, רק השדות שצוינו ייכתבו מחדש בזמן ההוספה. במקרה כזה, אפשר ליצור אובייקט חדש, להקצות לו את אותו מזהה כמו לאובייקט שרוצים לעדכן, להגדיר את השדות שרוצים לעדכן ולהריץ את בקשת התיקון.
- מידות – מידות פיזיות מיוצגות על ידי אובייקט
Sizeשמוגדר על ידי שירות המידות. החשבון מספק קבוצה של גדלים סטנדרטיים, ואפשר להוסיף לרשימה הזו גדלים מותאמים אישית משלכם. - תאריכים ושעות – אפשר לשמור תאריכים ושעות בפורמט RFC 3339 באמצעות אזורי זמן מקומיים. כל הערכים שמוחזרים על ידי ה-API הם בפורמט UTC. התאריכים והשעות שמוצגים באתר שונים מאלה שמוצגים ב-Google Ads, כי הם מוצגים לפי אזור הזמן שהגדרתם (ברירת המחדל היא שעון ניו יורק).
יצירת מפרסם
C#
-
יוצרים אובייקט
Advertiserומגדירים את מאפייני החובה שלו: name ו-status.// Create the advertiser structure. Advertiser advertiser = new Advertiser(); advertiser.Name = advertiserName; advertiser.Status = "APPROVED";
-
מתקשרים אל
advertisers.insert()כדי לשמור את המפרסם.// Create the advertiser. Advertiser result = service.Advertisers.Insert(advertiser, profileId).Execute();
Java
-
יוצרים אובייקט
Advertiserומגדירים את מאפייני החובה שלו: name ו-status.// Create the advertiser structure. Advertiser advertiser = new Advertiser(); advertiser.setName(advertiserName); advertiser.setStatus("APPROVED");
-
מתקשרים אל
advertisers.insert()כדי לשמור את המפרסם.// Create the advertiser. Advertiser result = reporting.advertisers().insert(profileId, advertiser).execute();
PHP
-
יוצרים אובייקט
Advertiserומגדירים את מאפייני החובה שלו: name ו-status.$advertiser = new Google_Service_Dfareporting_Advertiser(); $advertiser->setName($values['advertiser_name']); $advertiser->setStatus('APPROVED');
-
מתקשרים אל
advertisers.insert()כדי לשמור את המפרסם.$result = $this->service->advertisers->insert( $values['user_profile_id'], $advertiser );
Python
-
יוצרים אובייקט
Advertiserומגדירים את מאפייני החובה שלו: name ו-status.# Construct and save advertiser. advertiser = { 'name': 'Test Advertiser', 'status': 'APPROVED' }
-
מתקשרים אל
advertisers.insert()כדי לשמור את המפרסם.request = service.advertisers().insert( profileId=profile_id, body=advertiser) # Execute request and print response. response = request.execute()
Ruby
-
יוצרים אובייקט
Advertiserומגדירים את מאפייני החובה שלו: name ו-status.# Create a new advertiser resource to insert. advertiser = DfareportingUtils::API_NAMESPACE::Advertiser.new( name: format('Example Advertiser #%s', SecureRandom.hex(3)), status: 'APPROVED' )
-
מתקשרים אל
advertisers.insert()כדי לשמור את המפרסם.# Insert the advertiser. result = service.insert_advertiser(profile_id, advertiser)
יצירת קמפיין
C#
יוצרים אובייקט
Campaignומגדירים את מאפייני החובה שלו:-
advertiserId– המפרסם שאליו יש לשייך את הקמפיין הזה. -
name– הערך הזה צריך להיות ייחודי בכל הקמפיינים של המפרסם. -
defaultLandingPageId– דף נחיתה שאליו המשתמשים יופנו כשהם ילחצו על מודעה בקמפיין הזה, אם לא הוקצה דף נחיתה למודעה. אפשר לחפש דפי נחיתה קיימים באמצעות קריאה ל-advertiserLandingPages.listאו ליצור דף נחיתה חדש באמצעות קריאה ל-advertiserLandingPages.insert. - תאריכי התחלה וסיום – התאריכים האלה חייבים להיות בעתיד, ואפשר להגדיר אותם ברמת דיוק של יום. פרטים נוספים זמינים בקטע 'תאריכים ושעות' במאמר מידע כללי על קידוד. תאריכים של מודעות ספציפיות יכולים לחרוג מתאריך הסיום, כדי לאפשר לבעל תוכן דיגיטלי לנסות לעמוד בחוזה למספר מוגדר של פעולות, אם הוא לא עמד בו עד תאריך הסיום של הקמפיין.
// Locate an advertiser landing page to use as a default. LandingPage defaultLandingPage = getAdvertiserLandingPage(service, profileId, advertiserId); // Create the campaign structure. Campaign campaign = new Campaign(); campaign.Name = campaignName; campaign.AdvertiserId = advertiserId; campaign.Archived = false; campaign.DefaultLandingPageId = defaultLandingPage.Id; // Set the campaign start date. This example uses today's date. campaign.StartDate = DfaReportingDateConverterUtil.convertToDateString(DateTime.Now); // Set the campaign end date. This example uses one month from today's date. campaign.EndDate = DfaReportingDateConverterUtil.convertToDateString(DateTime.Now.AddMonths(1));
-
מתקשרים אל
campaigns.insert()כדי לשמור את הקמפיין.// Insert the campaign. Campaign result = service.Campaigns.Insert(campaign, profileId).Execute();
Java
יוצרים אובייקט
Campaignומגדירים את מאפייני החובה שלו:-
advertiserId– המפרסם שאליו יש לשייך את הקמפיין הזה. -
name– הערך הזה צריך להיות ייחודי בכל הקמפיינים של המפרסם. -
defaultLandingPageId– דף נחיתה שאליו המשתמשים יופנו כשהם ילחצו על מודעה בקמפיין הזה, אם לא הוקצה דף נחיתה למודעה. אפשר לחפש דפי נחיתה קיימים באמצעות קריאה ל-advertiserLandingPages.listאו ליצור דף נחיתה חדש באמצעות קריאה ל-advertiserLandingPages.insert. - תאריכי התחלה וסיום – התאריכים האלה חייבים להיות בעתיד, ואפשר להגדיר אותם ברמת דיוק של יום. פרטים נוספים זמינים בקטע 'תאריכים ושעות' במאמר מידע כללי על קידוד. תאריכים של מודעות ספציפיות יכולים לחרוג מתאריך הסיום, כדי לאפשר לבעל תוכן דיגיטלי לנסות לעמוד בחוזה למספר מוגדר של פעולות, אם הוא לא עמד בו עד תאריך הסיום של הקמפיין.
// Locate an advertiser landing page to use as a default. LandingPage defaultLandingPage = getAdvertiserLandingPage(reporting, profileId, advertiserId); // Create the campaign structure. Campaign campaign = new Campaign(); campaign.setName(campaignName); campaign.setAdvertiserId(advertiserId); campaign.setArchived(false); campaign.setDefaultLandingPageId(defaultLandingPage.getId()); // Set the campaign start date. This example uses today's date. Calendar today = Calendar.getInstance(); DateTime startDate = new DateTime(true, today.getTimeInMillis(), null); campaign.setStartDate(startDate); // Set the campaign end date. This example uses one month from today's date. Calendar nextMonth = Calendar.getInstance(); nextMonth.add(Calendar.MONTH, 1); DateTime endDate = new DateTime(true, nextMonth.getTimeInMillis(), null); campaign.setEndDate(endDate);
-
מתקשרים אל
campaigns.insert()כדי לשמור את הקמפיין.// Insert the campaign. Campaign result = reporting.campaigns().insert(profileId, campaign).execute();
PHP
יוצרים אובייקט
Campaignומגדירים את מאפייני החובה שלו:-
advertiserId– המפרסם שאליו יש לשייך את הקמפיין הזה. -
name– הערך הזה צריך להיות ייחודי בכל הקמפיינים של המפרסם. -
defaultLandingPageId– דף נחיתה שאליו המשתמשים יופנו כשהם ילחצו על מודעה בקמפיין הזה, אם לא הוקצה דף נחיתה למודעה. אפשר לחפש דפי נחיתה קיימים באמצעות קריאה ל-advertiserLandingPages.listאו ליצור דף נחיתה חדש באמצעות קריאה ל-advertiserLandingPages.insert. - תאריכי התחלה וסיום – התאריכים האלה חייבים להיות בעתיד, ואפשר להגדיר אותם ברמת דיוק של יום. פרטים נוספים זמינים בקטע 'תאריכים ושעות' במאמר מידע כללי על קידוד. תאריכים של מודעות ספציפיות יכולים לחרוג מתאריך הסיום, כדי לאפשר לבעל תוכן דיגיטלי לנסות לעמוד בחוזה למספר מוגדר של פעולות, אם הוא לא עמד בו עד תאריך הסיום של הקמפיין.
$startDate = new DateTime('today'); $endDate = new DateTime('+1 month'); $campaign = new Google_Service_Dfareporting_Campaign(); $campaign->setAdvertiserId($values['advertiser_id']); $campaign->setDefaultLandingPageId($values['default_landing_page_id']); $campaign->setName($values['campaign_name']); $campaign->setStartDate($startDate->format('Y-m-d')); $campaign->setEndDate($endDate->format('Y-m-d'));
-
מתקשרים אל
campaigns.insert()כדי לשמור את הקמפיין.$result = $this->service->campaigns->insert( $values['user_profile_id'], $campaign );
Python
יוצרים אובייקט
Campaignומגדירים את מאפייני החובה שלו:-
advertiserId– המפרסם שאליו יש לשייך את הקמפיין הזה. -
name– הערך הזה צריך להיות ייחודי בכל הקמפיינים של המפרסם. -
defaultLandingPageId– דף נחיתה שאליו המשתמשים יופנו כשהם ילחצו על מודעה בקמפיין הזה, אם לא הוקצה דף נחיתה למודעה. אפשר לחפש דפי נחיתה קיימים באמצעות קריאה ל-advertiserLandingPages.listאו ליצור דף נחיתה חדש באמצעות קריאה ל-advertiserLandingPages.insert. - תאריכי התחלה וסיום – התאריכים האלה חייבים להיות בעתיד, ואפשר להגדיר אותם ברמת דיוק של יום. פרטים נוספים זמינים בקטע 'תאריכים ושעות' במאמר מידע כללי על קידוד. תאריכים של מודעות ספציפיות יכולים לחרוג מתאריך הסיום, כדי לאפשר לבעל תוכן דיגיטלי לנסות לעמוד בחוזה למספר מוגדר של פעולות, אם הוא לא עמד בו עד תאריך הסיום של הקמפיין.
# Locate an advertiser landing page to use as a default. default_landing_page = get_advertiser_landing_page(service, profile_id, advertiser_id) # Construct and save campaign. campaign = { 'name': 'Test Campaign #%s' % uuid.uuid4(), 'advertiserId': advertiser_id, 'archived': 'false', 'defaultLandingPageId': default_landing_page['id'], 'startDate': '2015-01-01', 'endDate': '2020-01-01' }
-
מתקשרים אל
campaigns.insert()כדי לשמור את הקמפיין.request = service.campaigns().insert(profileId=profile_id, body=campaign) # Execute request and print response. response = request.execute()
Ruby
יוצרים אובייקט
Campaignומגדירים את מאפייני החובה שלו:-
advertiserId– המפרסם שאליו יש לשייך את הקמפיין הזה. -
name– הערך הזה צריך להיות ייחודי בכל הקמפיינים של המפרסם. -
defaultLandingPageId– דף נחיתה שאליו המשתמשים יופנו כשהם ילחצו על מודעה בקמפיין הזה, אם לא הוקצה דף נחיתה למודעה. אפשר לחפש דפי נחיתה קיימים באמצעות קריאה ל-advertiserLandingPages.listאו ליצור דף נחיתה חדש באמצעות קריאה ל-advertiserLandingPages.insert. - תאריכי התחלה וסיום – התאריכים האלה חייבים להיות בעתיד, ואפשר להגדיר אותם ברמת דיוק של יום. פרטים נוספים זמינים בקטע 'תאריכים ושעות' במאמר מידע כללי על קידוד. תאריכים של מודעות ספציפיות יכולים לחרוג מתאריך הסיום, כדי לאפשר לבעל תוכן דיגיטלי לנסות לעמוד בחוזה למספר מוגדר של פעולות, אם הוא לא עמד בו עד תאריך הסיום של הקמפיין.
# Locate an advertiser landing page to use as a default. default_landing_page = get_advertiser_landing_page(service, profile_id, advertiser_id) # Create a new campaign resource to insert. campaign = DfareportingUtils::API_NAMESPACE::Campaign.new( advertiser_id: advertiser_id, archived: false, default_landing_page_id: default_landing_page.id, name: format('Example Campaign #%s', SecureRandom.hex(3)), start_date: '2014-01-01', end_date: '2020-01-01' )
-
מתקשרים אל
campaigns.insert()כדי לשמור את הקמפיין.# Insert the campaign. result = service.insert_campaign(profile_id, campaign)
יצירת מיקום מודעה
C#
-
יוצרים אובייקט
Placementומגדירים את מאפייני מיקום המודעה הנדרשים (כוללcampaignIdו-siteId). בנוסף, חשוב להגדיר במדויק את סוג מיקום המודעה והגודל שלו בהתאם למיקום המודעה שסוכם עם האתר.// Create the placement. Placement placement = new Placement(); placement.Name = placementName; placement.CampaignId = campaignId; placement.Compatibility = "DISPLAY"; placement.PaymentSource = "PLACEMENT_AGENCY_PAID"; placement.SiteId = dfaSiteId; placement.TagFormats = new List<string>() { "PLACEMENT_TAG_STANDARD" }; // Set the size of the placement. Size size = new Size(); size.Id = sizeId; placement.Size = size;
-
יוצרים אובייקט
PricingScheduleחדש להקצאה למיקום.// Set the pricing schedule for the placement. PricingSchedule pricingSchedule = new PricingSchedule(); pricingSchedule.EndDate = campaign.EndDate; pricingSchedule.PricingType = "PRICING_TYPE_CPM"; pricingSchedule.StartDate = campaign.StartDate; placement.PricingSchedule = pricingSchedule;
-
שומרים את האובייקט
Placementעל ידי קריאה ל-placements.insert(). אם רוצים להשתמש במזהה שמוחזר כדי להקצות אותו למודעה או לקריאייטיב, חשוב לשמור אותו.// Insert the placement. Placement result = service.Placements.Insert(placement, profileId).Execute();
Java
-
יוצרים אובייקט
Placementומגדירים את מאפייני מיקום המודעה הנדרשים (כוללcampaignIdו-siteId). בנוסף, חשוב להגדיר במדויק את סוג מיקום המודעה והגודל שלו בהתאם למיקום המודעה שסוכם עם האתר.// Create the placement. Placement placement = new Placement(); placement.setName(placementName); placement.setCampaignId(campaignId); placement.setCompatibility("DISPLAY"); placement.setPaymentSource("PLACEMENT_AGENCY_PAID"); placement.setSiteId(dfaSiteId); placement.setTagFormats(ImmutableList.of("PLACEMENT_TAG_STANDARD")); // Set the size of the placement. Size size = new Size(); size.setId(sizeId); placement.setSize(size);
-
יוצרים אובייקט
PricingScheduleחדש להקצאה למיקום.// Set the pricing schedule for the placement. PricingSchedule pricingSchedule = new PricingSchedule(); pricingSchedule.setEndDate(campaign.getEndDate()); pricingSchedule.setPricingType("PRICING_TYPE_CPM"); pricingSchedule.setStartDate(campaign.getStartDate()); placement.setPricingSchedule(pricingSchedule);
-
שומרים את האובייקט
Placementעל ידי קריאה ל-placements.insert(). אם רוצים להשתמש במזהה שמוחזר כדי להקצות אותו למודעה או לקריאייטיב, חשוב לשמור אותו.// Insert the placement. Placement result = reporting.placements().insert(profileId, placement).execute();
PHP
-
יוצרים אובייקט
Placementומגדירים את מאפייני מיקום המודעה הנדרשים (כוללcampaignIdו-siteId). בנוסף, חשוב להגדיר במדויק את סוג מיקום המודעה והגודל שלו בהתאם למיקום המודעה שסוכם עם האתר.$placement = new Google_Service_Dfareporting_Placement(); $placement->setCampaignId($values['campaign_id']); $placement->setCompatibility('DISPLAY'); $placement->setName($values['placement_name']); $placement->setPaymentSource('PLACEMENT_AGENCY_PAID'); $placement->setSiteId($values['site_id']); $placement->setTagFormats(['PLACEMENT_TAG_STANDARD']); // Set the size of the placement. $size = new Google_Service_Dfareporting_Size(); $size->setId($values['size_id']); $placement->setSize($size);
-
יוצרים אובייקט
PricingScheduleחדש להקצאה למיקום.// Set the pricing schedule for the placement. $pricingSchedule = new Google_Service_Dfareporting_PricingSchedule(); $pricingSchedule->setEndDate($campaign->getEndDate()); $pricingSchedule->setPricingType('PRICING_TYPE_CPM'); $pricingSchedule->setStartDate($campaign->getStartDate()); $placement->setPricingSchedule($pricingSchedule);
-
שומרים את האובייקט
Placementעל ידי קריאה ל-placements.insert(). אם רוצים להשתמש במזהה שמוחזר כדי להקצות אותו למודעה או לקריאייטיב, חשוב לשמור אותו.// Insert the placement. $result = $this->service->placements->insert( $values['user_profile_id'], $placement );
Python
-
יוצרים אובייקט
Placementומגדירים את מאפייני מיקום המודעה הנדרשים (כוללcampaignIdו-siteId). בנוסף, חשוב להגדיר במדויק את סוג מיקום המודעה והגודל שלו בהתאם למיקום המודעה שסוכם עם האתר.# Construct and save placement. placement = { 'name': 'Test Placement', 'campaignId': campaign_id, 'compatibility': 'DISPLAY', 'siteId': site_id, 'size': { 'height': '1', 'width': '1' }, 'paymentSource': 'PLACEMENT_AGENCY_PAID', 'tagFormats': ['PLACEMENT_TAG_STANDARD'] }
-
יוצרים אובייקט
PricingScheduleחדש להקצאה למיקום.# Set the pricing schedule for the placement. placement['pricingSchedule'] = { 'startDate': campaign['startDate'], 'endDate': campaign['endDate'], 'pricingType': 'PRICING_TYPE_CPM' }
-
שומרים את האובייקט
Placementעל ידי קריאה ל-placements.insert(). אם רוצים להשתמש במזהה שמוחזר כדי להקצות אותו למודעה או לקריאייטיב, חשוב לשמור אותו.request = service.placements().insert(profileId=profile_id, body=placement) # Execute request and print response. response = request.execute()
Ruby
-
יוצרים אובייקט
Placementומגדירים את מאפייני מיקום המודעה הנדרשים (כוללcampaignIdו-siteId). בנוסף, חשוב להגדיר במדויק את סוג מיקום המודעה והגודל שלו בהתאם למיקום המודעה שסוכם עם האתר.# Create a new placement resource to insert. placement = DfareportingUtils::API_NAMESPACE::Placement.new( campaign_id: campaign_id, compatibility: 'DISPLAY', name: 'Example Placement', payment_source: 'PLACEMENT_AGENCY_PAID', site_id: site_id, size: DfareportingUtils::API_NAMESPACE::Size.new( height: 1, width: 1 ), tag_formats: ['PLACEMENT_TAG_STANDARD'] )
-
יוצרים אובייקט
PricingScheduleחדש להקצאה למיקום.# Set the pricing schedule for the placement. placement.pricing_schedule = DfareportingUtils::API_NAMESPACE::PricingSchedule.new( end_date: campaign.end_date, pricing_type: 'PRICING_TYPE_CPM', start_date: campaign.start_date )
-
שומרים את האובייקט
Placementעל ידי קריאה ל-placements.insert(). אם רוצים להשתמש במזהה שמוחזר כדי להקצות אותו למודעה או לקריאייטיב, חשוב לשמור אותו.# Insert the placement strategy. result = service.insert_placement(profile_id, placement)
העלה נכסים
אפשר להעלות סוגים רבים של נכסים בתהליך שנקרא העלאת מדיה. התהליך הזה דומה לכל סוגי הקריאייטיב, אבל יכול להיות שסוגים מסוימים ידרשו העברה של מאפיינים ספציפיים כמטא-נתונים, כדי שאפשר יהיה להשתמש בהם בצורה תקינה.
C#
יוצרים אובייקט
assetIdentifierומגדירים את המאפיינים הנדרשים. בכל הנכסים, לא משנה מה הסוג שלהם או איך משתמשים בהם, צריך לצייןassetIdentifier. כשמקצים את הנכס לקריאייטיב, האובייקט הזה משמש להפניה חזרה לנכס. מאפייני החובה:-
המאפיין
name, שיהיה שם הנכס בשרת. השם חייב לכלול סיומת שמציינת את סוג הקובץ, כמו .png או .gif, והוא יוצג בדפדפן כשם הנכס, אבל הוא לא חייב להיות זהה לשם הקובץ המקורי. שימו לב: יכול להיות שהשם הזה ישתנה על ידי Campaign Manager 360 כדי שיהיה ייחודי בשרת. כדאי לבדוק את ערך ההחזרה כדי לראות אם הוא השתנה. -
המאפיין
type, שמזהה את סוג הנכס. המאפיין הזה יקבע את סוגי הקריאייטיבים שאפשר לשייך לנכס הזה.
// Create the creative asset ID and Metadata. CreativeAssetId assetId = new CreativeAssetId(); assetId.Name = Path.GetFileName(assetFile); assetId.Type = assetType;
-
המאפיין
מעלים את הקובץ באמצעות הקריאה
creativeAssets.insert(). מבצעים העלאה מרובת חלקים, ומעבירים גם אתassetIdentifierוגם את תוכן הקובץ כחלק מאותה בקשה. אם הפעולה בוצעה ללא שגיאות, יוחזר משאבCreativeAssetעםassetIdentifierשבו תשתמשו כדי להקצות את הנכס הזה לקריאייטיב.// Prepare an input stream. FileStream assetContent = new FileStream(assetFile, FileMode.Open, FileAccess.Read); CreativeAssetMetadata metaData = new CreativeAssetMetadata(); metaData.AssetIdentifier = assetId; // Insert the creative. String mimeType = determineMimeType(assetFile, assetType); CreativeAssetsResource.InsertMediaUpload request = Service.CreativeAssets.Insert(metaData, ProfileId, AdvertiserId, assetContent, mimeType); IUploadProgress progress = request.Upload(); if (UploadStatus.Failed.Equals(progress.Status)) { throw progress.Exception; }
Java
יוצרים אובייקט
assetIdentifierומגדירים את המאפיינים הנדרשים. בכל הנכסים, לא משנה מה הסוג שלהם או איך משתמשים בהם, צריך לצייןassetIdentifier. כשמקצים את הנכס לקריאייטיב, האובייקט הזה משמש להפניה חזרה לנכס. מאפייני החובה:-
המאפיין
name, שיהיה שם הנכס בשרת. השם חייב לכלול סיומת שמציינת את סוג הקובץ, כמו .png או .gif, והוא יוצג בדפדפן כשם הנכס, אבל הוא לא חייב להיות זהה לשם הקובץ המקורי. שימו לב: יכול להיות שהשם הזה ישתנה על ידי Campaign Manager 360 כדי שיהיה ייחודי בשרת. כדאי לבדוק את ערך ההחזרה כדי לראות אם הוא השתנה. -
המאפיין
type, שמזהה את סוג הנכס. המאפיין הזה יקבע את סוגי הקריאייטיבים שאפשר לשייך לנכס הזה.
// Create the creative asset ID and Metadata. CreativeAssetId assetId = new CreativeAssetId(); assetId.setName(assetName); assetId.setType(assetType);
-
המאפיין
מעלים את הקובץ באמצעות הקריאה
creativeAssets.insert(). מבצעים העלאה מרובת חלקים, ומעבירים גם אתassetIdentifierוגם את תוכן הקובץ כחלק מאותה בקשה. אם הפעולה בוצעה ללא שגיאות, יוחזר משאבCreativeAssetעםassetIdentifierשבו תשתמשו כדי להקצות את הנכס הזה לקריאייטיב.// Open the asset file. File file = new File(assetFile); // Prepare an input stream. String contentType = getMimeType(assetFile); InputStreamContent assetContent = new InputStreamContent(contentType, new BufferedInputStream(new FileInputStream(file))); assetContent.setLength(file.length()); CreativeAssetMetadata metaData = new CreativeAssetMetadata(); metaData.setAssetIdentifier(assetId); // Insert the creative. CreativeAssetMetadata result = reporting.creativeAssets() .insert(profileId, advertiserId, metaData, assetContent).execute();
PHP
יוצרים אובייקט
assetIdentifierומגדירים את המאפיינים הנדרשים. בכל הנכסים, לא משנה מה הסוג שלהם או איך משתמשים בהם, צריך לצייןassetIdentifier. כשמקצים את הנכס לקריאייטיב, האובייקט הזה משמש להפניה חזרה לנכס. מאפייני החובה:-
המאפיין
name, שיהיה שם הנכס בשרת. השם חייב לכלול סיומת שמציינת את סוג הקובץ, כמו .png או .gif, והוא יוצג בדפדפן כשם הנכס, אבל הוא לא חייב להיות זהה לשם הקובץ המקורי. שימו לב: יכול להיות שהשם הזה ישתנה על ידי Campaign Manager 360 כדי שיהיה ייחודי בשרת. כדאי לבדוק את ערך ההחזרה כדי לראות אם הוא השתנה. -
המאפיין
type, שמזהה את סוג הנכס. המאפיין הזה יקבע את סוגי הקריאייטיבים שאפשר לשייך לנכס.
$assetId = new Google_Service_Dfareporting_CreativeAssetId(); $assetId->setName($asset['name']); $assetId->setType($type);
-
המאפיין
מעלים את הקובץ באמצעות הקריאה
creativeAssets.insert(). מבצעים העלאה מרובת חלקים, ומעבירים גם אתassetIdentifierוגם את תוכן הקובץ כחלק מאותה בקשה. אם הפעולה בוצעה ללא שגיאות, יוחזר משאבCreativeAssetעםassetIdentifierשבו תשתמשו כדי להקצות את הנכס הזה לקריאייטיב.$metadata = new Google_Service_Dfareporting_CreativeAssetMetadata(); $metadata->setAssetIdentifier($assetId); $result = $service->creativeAssets->insert( $userProfileId, $advertiserId, $metadata, ['data' => file_get_contents($asset['tmp_name']), 'mimeType' => $asset['type'], 'uploadType' => 'multipart'] );
Python
יוצרים אובייקט
assetIdentifierומגדירים את מאפייני החובה. בכל הנכסים, לא משנה מה הסוג שלהם או איך משתמשים בהם, צריך לצייןassetIdentifier. כשמקצים את הנכס לקריאייטיב, האובייקט הזה משמש להפניה חזרה לנכס. מאפייני החובה:-
המאפיין
name, שיהיה שם הנכס בשרת. השם חייב לכלול סיומת שמציינת את סוג הקובץ, כמו .png או .gif, והוא יוצג בדפדפן כשם הנכס, אבל הוא לא חייב להיות זהה לשם הקובץ המקורי. שימו לב: יכול להיות שהשם הזה ישתנה על ידי Campaign Manager 360 כדי שיהיה ייחודי בשרת. כדאי לבדוק את ערך ההחזרה כדי לראות אם הוא השתנה. -
המאפיין
type, שמזהה את סוג הנכס. המאפיין הזה יקבע את סוגי הקריאייטיבים שאפשר לשייך לנכס.
# Construct the creative asset metadata creative_asset = {'assetIdentifier': {'name': asset_name, 'type': asset_type}}
-
המאפיין
מעלים את הקובץ באמצעות הקריאה
creativeAssets.insert(). מבצעים העלאה מרובת חלקים, ומעבירים גם אתassetIdentifierוגם את תוכן הקובץ כחלק מאותה בקשה. אם הפעולה בוצעה ללא שגיאות, יוחזר משאבCreativeAssetעםassetIdentifierשבו תשתמשו כדי להקצות את הנכס הזה לקריאייטיב.media = MediaFileUpload(path_to_asset_file) if not media.mimetype(): media = MediaFileUpload(path_to_asset_file, 'application/octet-stream') response = service.creativeAssets().insert( advertiserId=advertiser_id, profileId=profile_id, media_body=media, body=creative_asset).execute()
Ruby
יוצרים אובייקט
assetIdentifierומגדירים את המאפיינים הנדרשים. בכל הנכסים, לא משנה מה הסוג שלהם או איך משתמשים בהם, צריך לצייןassetIdentifier. כשמקצים את הנכס לקריאייטיב, האובייקט הזה משמש להפניה חזרה לנכס. מאפייני החובה:-
המאפיין
name, שיהיה שם הנכס בשרת. השם חייב לכלול סיומת שמציינת את סוג הקובץ, כמו .png או .gif, והוא יוצג בדפדפן כשם הנכס, אבל הוא לא חייב להיות זהה לשם הקובץ המקורי. שימו לב: יכול להיות שהשם הזה ישתנה על ידי Campaign Manager 360 כדי שיהיה ייחודי בשרת. כדאי לבדוק את ערך ההחזרה כדי לראות אם הוא השתנה. -
המאפיין
type, שמזהה את סוג הנכס. המאפיין הזה יקבע את סוגי הקריאייטיבים שאפשר לשייך לנכס הזה.
# Construct the creative asset metadata creative_asset = DfareportingUtils::API_NAMESPACE::CreativeAsset.new( asset_identifier: DfareportingUtils::API_NAMESPACE::CreativeAssetId.new( name: asset_name, type: asset_type ) )
-
המאפיין
מעלים את הקובץ באמצעות הקריאה
creativeAssets.insert(). מבצעים העלאה מרובת חלקים, ומעבירים גם אתassetIdentifierוגם את תוכן הקובץ כחלק מאותה בקשה. אם הפעולה בוצעה ללא שגיאות, יוחזר משאבCreativeAssetעםassetIdentifierשבו תשתמשו כדי להקצות את הנכס הזה לקריאייטיב.# Upload the asset. mime_type = determine_mime_type(path_to_asset_file, asset_type) result = @service.insert_creative_asset( @profile_id, advertiser_id, creative_asset, content_type: mime_type, upload_source: path_to_asset_file )
יצירת קריאייטיב
אובייקט Creative עוטף נכס קיים. בהתאם לאופן השימוש בנכסי הקריאייטיב בדף המארח, אפשר ליצור Creative אובייקטים מסוגים שונים של קריאייטיב. כדי לדעת איזה סוג מתאים לכם, אפשר לעיין במסמכי העזרה.
בדוגמה הבאה אפשר לראות איך יוצרים נכס קריאייטיב חדש מסוג HTML5 לרשת המדיה.
C#
-
מעלים את הנכסים. סוגים שונים של קריאייטיב דורשים סוגים וכמויות שונים של נכסים. לפרטים נוספים, אפשר לעיין במאמר בנושא העלאת נכסים. בכל פעם שתעלו נכס בהצלחה, תקבלו
assetIdenfitierבתגובה. כדי להפנות לנכסים האלה בנכס הקריאייטיב, תשתמשו בשם ובסוג הקובץ ששמורים במערכת, ולא במזהה רגיל. -
יוצרים קריאייטיב ומקצים לו ערכים מתאימים. יוצרים מופע של
Creativeומגדירים אתtypeהמתאים. אי אפשר לשנות את הסוג של אובייקטCreativeאחרי ששומרים אותו. מציינים את הנכסים לפיAssetIdentifierוrole.// Locate an advertiser landing page to use as a default. LandingPage defaultLandingPage = getAdvertiserLandingPage(service, profileId, advertiserId); // Create the creative structure. Creative creative = new Creative(); creative.AdvertiserId = advertiserId; creative.Name = "Test HTML5 display creative"; creative.Size = new Size() { Id = sizeId }; creative.Type = "DISPLAY"; // Upload the HTML5 asset. CreativeAssetUtils assetUtils = new CreativeAssetUtils(service, profileId, advertiserId); CreativeAssetId html5AssetId = assetUtils.uploadAsset(pathToHtml5AssetFile, "HTML").AssetIdentifier; CreativeAsset html5Asset = new CreativeAsset(); html5Asset.AssetIdentifier = html5AssetId; html5Asset.Role = "PRIMARY"; // Upload the backup image asset. CreativeAssetId imageAssetId = assetUtils.uploadAsset(pathToImageAssetFile, "HTML_IMAGE").AssetIdentifier; CreativeAsset imageAsset = new CreativeAsset(); imageAsset.AssetIdentifier = imageAssetId; imageAsset.Role = "BACKUP_IMAGE"; // Add the creative assets. creative.CreativeAssets = new List<CreativeAsset>() { html5Asset, imageAsset }; // Configure the bacup image. creative.BackupImageClickThroughUrl = new CreativeClickThroughUrl() { LandingPageId = defaultLandingPage.Id }; creative.BackupImageReportingLabel = "backup"; creative.BackupImageTargetWindow = new TargetWindow() { TargetWindowOption = "NEW_WINDOW" }; // Add a click tag. ClickTag clickTag = new ClickTag(); clickTag.Name = "clickTag"; clickTag.EventName = "exit"; clickTag.ClickThroughUrl = new CreativeClickThroughUrl() { LandingPageId = defaultLandingPage.Id }; creative.ClickTags = new List<ClickTag>() { clickTag };
-
שומרים את הקריאייטיב. כדי לעשות זאת, מתקשרים למספר
creatives.insert(). חובה לציין מזהה מפרסם שאליו יש לשייך את הקריאייטיב הזה.Creative result = service.Creatives.Insert(creative, profileId).Execute();
-
(אופציונלי) משייכים את הקריאייטיב לקמפיין. כדי לעשות את זה, מפעילים את השיטה
campaignCreativeAssociations.insert()ומעבירים את מזהי הקמפיין והקריאייטיב.// Create the campaign creative association structure. CampaignCreativeAssociation association = new CampaignCreativeAssociation(); association.CreativeId = creativeId; // Insert the association. CampaignCreativeAssociation result = service.CampaignCreativeAssociations.Insert(association, profileId, campaignId).Execute();
Java
-
מעלים את הנכסים. סוגים שונים של קריאייטיב דורשים סוגים וכמויות שונים של נכסים. לפרטים נוספים, אפשר לעיין במאמר בנושא העלאת נכסים. בכל פעם שתעלו נכס בהצלחה, תקבלו
assetIdenfitierבתגובה. כדי להפנות לנכסים האלה בנכס הקריאייטיב, תשתמשו בשם ובסוג הקובץ ששמורים במערכת, ולא במזהה רגיל. -
יוצרים קריאייטיב ומקצים לו ערכים מתאימים. יוצרים מופע של
Creativeומגדירים אתtypeהמתאים. אי אפשר לשנות את הסוג של אובייקטCreativeאחרי ששומרים אותו. מציינים את הנכסים לפיAssetIdentifierוrole.// Locate an advertiser landing page to use as a default. LandingPage defaultLandingPage = getAdvertiserLandingPage(reporting, profileId, advertiserId); // Create the creative structure. Creative creative = new Creative(); creative.setAdvertiserId(advertiserId); creative.setName("Test HTML5 display creative"); creative.setSize(new Size().setId(sizeId)); creative.setType("DISPLAY"); // Upload the HTML5 asset. CreativeAssetId html5AssetId = CreativeAssetUtils.uploadAsset(reporting, profileId, advertiserId, HTML5_ASSET_NAME, PATH_TO_HTML5_ASSET_FILE, "HTML").getAssetIdentifier(); CreativeAsset html5Asset = new CreativeAsset().setAssetIdentifier(html5AssetId).setRole("PRIMARY"); // Upload the backup image asset (note: asset type must be set to HTML_IMAGE). CreativeAssetId imageAssetId = CreativeAssetUtils.uploadAsset(reporting, profileId, advertiserId, IMAGE_ASSET_NAME, PATH_TO_IMAGE_ASSET_FILE, "HTML_IMAGE") .getAssetIdentifier(); CreativeAsset backupImageAsset = new CreativeAsset().setAssetIdentifier(imageAssetId).setRole("BACKUP_IMAGE"); // Add the creative assets. creative.setCreativeAssets(ImmutableList.of(html5Asset, backupImageAsset)); // Configure the backup image. creative.setBackupImageClickThroughUrl( new CreativeClickThroughUrl().setLandingPageId(defaultLandingPage.getId())); creative.setBackupImageReportingLabel("backup"); creative.setBackupImageTargetWindow(new TargetWindow().setTargetWindowOption("NEW_WINDOW")); // Add a click tag. ClickTag clickTag = new ClickTag().setName("clickTag").setEventName("exit").setClickThroughUrl( new CreativeClickThroughUrl().setLandingPageId(defaultLandingPage.getId())); creative.setClickTags(ImmutableList.of(clickTag));
-
שומרים את הקריאייטיב. כדי לעשות זאת, מתקשרים למספר
creatives.insert(). חובה לציין מזהה מפרסם שאליו יש לשייך את הקריאייטיב הזה.Creative result = reporting.creatives().insert(profileId, creative).execute();
-
(אופציונלי) משייכים את הקריאייטיב לקמפיין. כדי לעשות את זה, מפעילים את השיטה
campaignCreativeAssociations.insert()ומעבירים את מזהי הקמפיין והקריאייטיב.// Create the campaign creative association structure. CampaignCreativeAssociation association = new CampaignCreativeAssociation(); association.setCreativeId(creativeId); // Insert the association. CampaignCreativeAssociation result = reporting .campaignCreativeAssociations().insert(profileId, campaignId, association) .execute();
PHP
-
מעלים את הנכסים. סוגים שונים של קריאייטיב דורשים סוגים וכמויות שונים של נכסים. לפרטים נוספים, אפשר לעיין במאמר בנושא העלאת נכסים. בכל פעם שתעלו נכס בהצלחה, תקבלו
assetIdenfitierבתגובה. כדי להפנות לנכסים האלה בנכס הקריאייטיב, תשתמשו בשם ובסוג הקובץ ששמורים במערכת, ולא במזהה רגיל. -
יוצרים קריאייטיב ומקצים לו ערכים מתאימים. יוצרים מופע של
Creativeומגדירים אתtypeהמתאים. אי אפשר לשנות את הסוג של אובייקטCreativeאחרי ששומרים אותו. מציינים את הנכסים לפיAssetIdentifierוrole.$creative = new Google_Service_Dfareporting_Creative(); $creative->setAdvertiserId($values['advertiser_id']); $creative->setAutoAdvanceImages(true); $creative->setName('Test HTML5 display creative'); $creative->setType('DISPLAY'); $size = new Google_Service_Dfareporting_Size(); $size->setId($values['size_id']); $creative->setSize($size); // Upload the HTML5 asset. $html = uploadAsset( $this->service, $values['user_profile_id'], $values['advertiser_id'], $values['html_asset_file'], 'HTML' ); $htmlAsset = new Google_Service_Dfareporting_CreativeAsset(); $htmlAsset->setAssetIdentifier($html->getAssetIdentifier()); $htmlAsset->setRole('PRIMARY'); // Upload the backup image asset. $image = uploadAsset( $this->service, $values['user_profile_id'], $values['advertiser_id'], $values['image_asset_file'], 'HTML_IMAGE' ); $imageAsset = new Google_Service_Dfareporting_CreativeAsset(); $imageAsset->setAssetIdentifier($image->getAssetIdentifier()); $imageAsset->setRole('BACKUP_IMAGE'); // Add the creative assets. $creative->setCreativeAssets([$htmlAsset, $imageAsset]); // Configure the default click-through URL. $clickThroughUrl = new Google_Service_Dfareporting_CreativeClickThroughUrl(); $clickThroughUrl->setLandingPageId($values['landing_page_id']); // Configure the backup image. $creative->setBackupImageClickThroughUrl($clickThroughUrl); $creative->setBackupImageReportingLabel('backup'); $targetWindow = new Google_Service_Dfareporting_TargetWindow(); $targetWindow->setTargetWindowOption('NEW_WINDOW'); $creative->setBackupImageTargetWindow($targetWindow); // Add a click tag. $clickTag = new Google_Service_Dfareporting_ClickTag(); $clickTag->setName('clickTag'); $clickTag->setEventName('exit'); $clickTag->setClickThroughUrl($clickThroughUrl); $creative->setClickTags([$clickTag]);
-
שומרים את הקריאייטיב. כדי לעשות זאת, מתקשרים למספר
creatives.insert(). חובה לציין מזהה מפרסם שאליו יש לשייך את הקריאייטיב הזה.$result = $this->service->creatives->insert( $values['user_profile_id'], $creative );
-
(אופציונלי) משייכים את הקריאייטיב לקמפיין. כדי לעשות את זה, מפעילים את השיטה
campaignCreativeAssociations.insert()ומעבירים את מזהי הקמפיין והקריאייטיב.$association = new Google_Service_Dfareporting_CampaignCreativeAssociation(); $association->setCreativeId($values['creative_id']); $result = $this->service->campaignCreativeAssociations->insert( $values['user_profile_id'], $values['campaign_id'], $association );
Python
-
מעלים את הנכסים. סוגים שונים של קריאייטיב דורשים סוגים וכמויות שונים של נכסים. לפרטים נוספים, אפשר לעיין במאמר בנושא העלאת נכסים. בכל פעם שתעלו נכס בהצלחה, תקבלו
assetIdenfitierבתגובה. כדי להפנות לנכסים האלה בנכס הקריאייטיב, תשתמשו בשם ובסוג הקובץ ששמורים במערכת, ולא במזהה רגיל. -
יוצרים קריאייטיב ומקצים לו ערכים מתאימים. יוצרים מופע של
Creativeומגדירים אתtypeהמתאים. אי אפשר לשנות את הסוג של אובייקטCreativeאחרי ששומרים אותו. מציינים את הנכסים לפיAssetIdentifierוrole.# Locate an advertiser landing page to use as a default. default_landing_page = get_advertiser_landing_page(service, profile_id, advertiser_id) # Upload the HTML5 asset html5_asset_id = upload_creative_asset(service, profile_id, advertiser_id, html5_asset_name, path_to_html5_asset_file, 'HTML') # Upload the backup image asset backup_image_asset_id = upload_creative_asset( service, profile_id, advertiser_id, backup_image_name, path_to_backup_image_file, 'HTML_IMAGE') # Construct the creative structure. creative = { 'advertiserId': advertiser_id, 'backupImageClickThroughUrl': { 'landingPageId': default_landing_page['id'] }, 'backupImageReportingLabel': 'backup_image_exit', 'backupImageTargetWindow': {'targetWindowOption': 'NEW_WINDOW'}, 'clickTags': [{ 'eventName': 'exit', 'name': 'click_tag', 'clickThroughUrl': {'landingPageId': default_landing_page['id']} }], 'creativeAssets': [ {'assetIdentifier': html5_asset_id, 'role': 'PRIMARY'}, {'assetIdentifier': backup_image_asset_id, 'role': 'BACKUP_IMAGE'} ], 'name': 'Test HTML5 display creative', 'size': {'id': size_id}, 'type': 'DISPLAY' }
-
שומרים את הקריאייטיב. כדי לעשות זאת, מתקשרים למספר
creatives.insert(). חובה לציין מזהה מפרסם שאליו יש לשייך את הקריאייטיב הזה.request = service.creatives().insert(profileId=profile_id, body=creative) # Execute request and print response. response = request.execute()
-
(אופציונלי) משייכים את הקריאייטיב לקמפיין. כדי לעשות את זה, מפעילים את השיטה
campaignCreativeAssociations.insert()ומעבירים את מזהי הקמפיין והקריאייטיב.# Construct the request. association = { 'creativeId': creative_id } request = service.campaignCreativeAssociations().insert( profileId=profile_id, campaignId=campaign_id, body=association) # Execute request and print response. response = request.execute()
Ruby
-
מעלים את הנכסים. סוגים שונים של קריאייטיב דורשים סוגים וכמויות שונים של נכסים. לפרטים נוספים, אפשר לעיין במאמר בנושא העלאת נכסים. בכל פעם שתעלו נכס בהצלחה, תקבלו
assetIdenfitierבתגובה. כדי להפנות לנכסים האלה בנכס הקריאייטיב, תשתמשו בשם ובסוג הקובץ ששמורים במערכת, ולא במזהה רגיל. -
יוצרים קריאייטיב ומקצים לו ערכים מתאימים. יוצרים מופע של
Creativeומגדירים אתtypeהמתאים. אי אפשר לשנות את הסוג של אובייקטCreativeאחרי ששומרים אותו. מציינים את הנכסים לפיAssetIdentifierוrole.# Locate an advertiser landing page to use as a default. default_landing_page = get_advertiser_landing_page(service, profile_id, advertiser_id) # Upload the HTML5 asset. html5_asset_id = util.upload_asset(advertiser_id, path_to_html5_asset_file, 'HTML').asset_identifier # Upload the backup image asset. backup_image_asset_id = util.upload_asset(advertiser_id, path_to_backup_image_file, 'HTML_IMAGE').asset_identifier # Construct the creative structure. creative = DfareportingUtils::API_NAMESPACE::Creative.new( advertiser_id: advertiser_id, backup_image_click_through_url: DfareportingUtils::API_NAMESPACE::CreativeClickThroughUrl.new( landing_page_id: default_landing_page.id ), backup_image_reporting_label: 'backup', backup_image_target_window: DfareportingUtils::API_NAMESPACE::TargetWindow.new( target_window_option: 'NEW_WINDOW' ), click_tags: [ DfareportingUtils::API_NAMESPACE::ClickTag.new( event_name: 'exit', name: 'click_tag', click_through_url: DfareportingUtils::API_NAMESPACE::CreativeClickThroughUrl.new( landing_page_id: default_landing_page.id ) ) ], creative_assets: [ DfareportingUtils::API_NAMESPACE::CreativeAsset.new( asset_identifier: html5_asset_id, role: 'PRIMARY' ), DfareportingUtils::API_NAMESPACE::CreativeAsset.new( asset_identifier: backup_image_asset_id, role: 'BACKUP_IMAGE' ) ], name: 'Example HTML5 display creative', size: DfareportingUtils::API_NAMESPACE::Size.new(id: size_id), type: 'DISPLAY' )
-
שומרים את הקריאייטיב. כדי לעשות זאת, מתקשרים למספר
creatives.insert(). חובה לציין מזהה מפרסם שאליו יש לשייך את הקריאייטיב הזה.# Insert the creative. result = service.insert_creative(profile_id, creative)
-
(אופציונלי) משייכים את הקריאייטיב לקמפיין. כדי לעשות את זה, מפעילים את השיטה
campaignCreativeAssociations.insert()ומעבירים את מזהי הקמפיין והקריאייטיב.# Create a new creative-campaign association to insert association = DfareportingUtils::API_NAMESPACE::CampaignCreativeAssociation.new( creative_id: creative_id ) # Insert the advertiser group. result = service.insert_campaign_creative_association(profile_id, campaign_id, association)
יצירת מודעה
Ad הוא הקישור בין Creative לבין Placement. Ad יכול להיות מקושר למיקום מודעה אחד או יותר, והוא מכיל קריאייטיב אחד או יותר.
אפשר ליצור Ad באופן מפורש או מרומז.
באופן מפורש
C#
-
יוצרים אובייקט
CreativeAssignmentלכל קריאייטיב שהמודעה הזו צריכה להיות משויכת אליו. חשוב להגדיר את השדהCreativeAssignment.activeלערך true.// Create a click-through URL. ClickThroughUrl clickThroughUrl = new ClickThroughUrl(); clickThroughUrl.DefaultLandingPage = true; // Create a creative assignment. CreativeAssignment creativeAssignment = new CreativeAssignment(); creativeAssignment.Active = true; creativeAssignment.CreativeId = creativeId; creativeAssignment.ClickThroughUrl = clickThroughUrl;
-
יוצרים אובייקט
CreativeRotationלאחסון שלCreativeAssignment. אם יוצרים קבוצת רוטציה, חשוב להגדיר את שאר שדות החובה של רוטציית הקריאייטיב.// Create a creative rotation. CreativeRotation creativeRotation = new CreativeRotation(); creativeRotation.CreativeAssignments = new List<CreativeAssignment>() { creativeAssignment };
-
יוצרים אובייקט
PlacementAssignmentלכל מיקום שרוצים לשייך אליו את המודעה. חשוב להגדיר את השדהPlacementAssignment.activeלערך true.// Create a placement assignment. PlacementAssignment placementAssignment = new PlacementAssignment(); placementAssignment.Active = true; placementAssignment.PlacementId = placementId;
-
יוצרים אובייקט
Ad. מגדירים את creativeRotation בשדהcreativeRotationשל האובייקטAdואת placementAssignments במערךplacementAssignmentsשל האובייקטAd.// Create a delivery schedule. DeliverySchedule deliverySchedule = new DeliverySchedule(); deliverySchedule.ImpressionRatio = 1; deliverySchedule.Priority = "AD_PRIORITY_01"; DateTime startDate = DateTime.Now; DateTime endDate = Convert.ToDateTime(campaign.EndDate); // Create a rotation group. Ad rotationGroup = new Ad(); rotationGroup.Active = true; rotationGroup.CampaignId = campaignId; rotationGroup.CreativeRotation = creativeRotation; rotationGroup.DeliverySchedule = deliverySchedule; rotationGroup.StartTime = startDate; rotationGroup.EndTime = endDate; rotationGroup.Name = adName; rotationGroup.PlacementAssignments = new List<PlacementAssignment>() { placementAssignment }; rotationGroup.Type = "AD_SERVING_STANDARD_AD";
-
כדי לשמור את המודעה, מתקשרים למספר
ads.insert().// Insert the rotation group. Ad result = service.Ads.Insert(rotationGroup, profileId).Execute();
Java
-
יוצרים אובייקט
CreativeAssignmentלכל קריאייטיב שהמודעה הזו צריכה להיות משויכת אליו. חשוב להגדיר את השדהCreativeAssignment.activeלערך true.// Create a click-through URL. ClickThroughUrl clickThroughUrl = new ClickThroughUrl(); clickThroughUrl.setDefaultLandingPage(true); // Create a creative assignment. CreativeAssignment creativeAssignment = new CreativeAssignment(); creativeAssignment.setActive(true); creativeAssignment.setCreativeId(creativeId); creativeAssignment.setClickThroughUrl(clickThroughUrl);
-
יוצרים אובייקט
CreativeRotationלאחסון שלCreativeAssignment. אם יוצרים קבוצת רוטציה, חשוב להגדיר את שאר שדות החובה של רוטציית הקריאייטיב.// Create a creative rotation. CreativeRotation creativeRotation = new CreativeRotation(); creativeRotation.setCreativeAssignments(ImmutableList.of(creativeAssignment));
-
יוצרים אובייקט
PlacementAssignmentלכל מיקום שרוצים לשייך אליו את המודעה. חשוב להגדיר את השדהPlacementAssignment.activeלערך true.// Create a placement assignment. PlacementAssignment placementAssignment = new PlacementAssignment(); placementAssignment.setActive(true); placementAssignment.setPlacementId(placementId);
-
יוצרים אובייקט
Ad. מגדירים את creativeRotation בשדהcreativeRotationשל האובייקטAdואת placementAssignments במערךplacementAssignmentsשל האובייקטAd.// Create a delivery schedule. DeliverySchedule deliverySchedule = new DeliverySchedule(); deliverySchedule.setImpressionRatio(1L); deliverySchedule.setPriority("AD_PRIORITY_01"); DateTime startDate = new DateTime(new Date()); DateTime endDate = new DateTime(campaign.getEndDate().getValue()); // Create a rotation group. Ad rotationGroup = new Ad(); rotationGroup.setActive(true); rotationGroup.setCampaignId(campaignId); rotationGroup.setCreativeRotation(creativeRotation); rotationGroup.setDeliverySchedule(deliverySchedule); rotationGroup.setStartTime(startDate); rotationGroup.setEndTime(endDate); rotationGroup.setName(adName); rotationGroup.setPlacementAssignments(ImmutableList.of(placementAssignment)); rotationGroup.setType("AD_SERVING_STANDARD_AD");
-
כדי לשמור את המודעה, מתקשרים למספר
ads.insert().// Insert the rotation group. Ad result = reporting.ads().insert(profileId, rotationGroup).execute();
PHP
-
יוצרים אובייקט
CreativeAssignmentלכל קריאייטיב שהמודעה הזו צריכה להיות משויכת אליו. חשוב להגדיר את השדהCreativeAssignment.activeלערך true.// Create a click-through URL. $url = new Google_Service_Dfareporting_ClickThroughUrl(); $url->setDefaultLandingPage(true); // Create a creative assignment. $creativeAssignment = new Google_Service_Dfareporting_CreativeAssignment(); $creativeAssignment->setActive(true); $creativeAssignment->setCreativeId($values['creative_id']); $creativeAssignment->setClickThroughUrl($url);
-
יוצרים אובייקט
CreativeRotationלאחסון שלCreativeAssignment. אם יוצרים קבוצת רוטציה, חשוב להגדיר את שאר שדות החובה של רוטציית הקריאייטיב.// Create a creative rotation. $creativeRotation = new Google_Service_Dfareporting_CreativeRotation(); $creativeRotation->setCreativeAssignments([$creativeAssignment]);
-
יוצרים אובייקט
PlacementAssignmentלכל מיקום שרוצים לשייך אליו את המודעה. חשוב להגדיר את השדהPlacementAssignment.activeלערך true.// Create a placement assignment. $placementAssignment = new Google_Service_Dfareporting_PlacementAssignment(); $placementAssignment->setActive(true); $placementAssignment->setPlacementId($values['placement_id']);
-
יוצרים אובייקט
Ad. מגדירים את creativeRotation בשדהcreativeRotationשל האובייקטAdואת placementAssignments במערךplacementAssignmentsשל האובייקטAd.// Create a delivery schedule. $deliverySchedule = new Google_Service_Dfareporting_DeliverySchedule(); $deliverySchedule->setImpressionRatio(1); $deliverySchedule->SetPriority('AD_PRIORITY_01'); $startDate = new DateTime('today'); $endDate = new DateTime($campaign->getEndDate()); // Create a rotation group. $ad = new Google_Service_Dfareporting_Ad(); $ad->setActive(true); $ad->setCampaignId($values['campaign_id']); $ad->setCreativeRotation($creativeRotation); $ad->setDeliverySchedule($deliverySchedule); $ad->setStartTime($startDate->format('Y-m-d') . 'T23:59:59Z'); $ad->setEndTime($endDate->format('Y-m-d') . 'T00:00:00Z'); $ad->setName($values['ad_name']); $ad->setPlacementAssignments([$placementAssignment]); $ad->setType('AD_SERVING_STANDARD_AD');
-
כדי לשמור את המודעה, מתקשרים למספר
ads.insert().$result = $this->service->ads->insert($values['user_profile_id'], $ad);
Python
-
יוצרים אובייקט
CreativeAssignmentלכל קריאייטיב שהמודעה הזו צריכה להיות משויכת אליו. חשוב להגדיר את השדהCreativeAssignment.activeלערך true.# Construct creative assignment. creative_assignment = { 'active': 'true', 'creativeId': creative_id, 'clickThroughUrl': { 'defaultLandingPage': 'true' } }
-
יוצרים אובייקט
CreativeRotationלאחסון שלCreativeAssignment. אם יוצרים קבוצת רוטציה, חשוב להגדיר את שאר שדות החובה של רוטציית הקריאייטיב.# Construct creative rotation. creative_rotation = { 'creativeAssignments': [creative_assignment], 'type': 'CREATIVE_ROTATION_TYPE_RANDOM', 'weightCalculationStrategy': 'WEIGHT_STRATEGY_OPTIMIZED' }
-
יוצרים אובייקט
PlacementAssignmentלכל מיקום שרוצים לשייך אליו את המודעה. חשוב להגדיר את השדהPlacementAssignment.activeלערך true.# Construct placement assignment. placement_assignment = { 'active': 'true', 'placementId': placement_id, }
-
יוצרים אובייקט
Ad. מגדירים את creativeRotation בשדהcreativeRotationשל האובייקטAdואת placementAssignments במערךplacementAssignmentsשל האובייקטAd.# Construct delivery schedule. delivery_schedule = { 'impressionRatio': '1', 'priority': 'AD_PRIORITY_01' } # Construct and save ad. ad = { 'active': 'true', 'campaignId': campaign_id, 'creativeRotation': creative_rotation, 'deliverySchedule': delivery_schedule, 'endTime': '%sT00:00:00Z' % campaign['endDate'], 'name': 'Test Rotation Group', 'placementAssignments': [placement_assignment], 'startTime': '%sT23:59:59Z' % time.strftime('%Y-%m-%d'), 'type': 'AD_SERVING_STANDARD_AD' }
-
כדי לשמור את המודעה, מתקשרים למספר
ads.insert().request = service.ads().insert(profileId=profile_id, body=ad) # Execute request and print response. response = request.execute()
Ruby
-
יוצרים אובייקט
CreativeAssignmentלכל קריאייטיב שהמודעה הזו צריכה להיות משויכת אליו. חשוב להגדיר את השדהCreativeAssignment.activeלערך true.# Construct creative assignment. creative_assignment = DfareportingUtils::API_NAMESPACE::CreativeAssignment.new( active: true, creative_id: creative_id, click_through_url: DfareportingUtils::API_NAMESPACE::ClickThroughUrl.new( default_landing_page: true ) )
-
יוצרים אובייקט
CreativeRotationלאחסון שלCreativeAssignment. אם יוצרים קבוצת רוטציה, חשוב להגדיר את שאר שדות החובה של רוטציית הקריאייטיב.# Construct creative rotation. creative_rotation = DfareportingUtils::API_NAMESPACE::CreativeRotation.new( creative_assignments: [creative_assignment], type: 'CREATIVE_ROTATION_TYPE_RANDOM', weight_calculation_strategy: 'WEIGHT_STRATEGY_OPTIMIZED' )
-
יוצרים אובייקט
PlacementAssignmentלכל מיקום שרוצים לשייך אליו את המודעה. חשוב להגדיר את השדהPlacementAssignment.activeלערך true.# Construct placement assignment. placement_assignment = DfareportingUtils::API_NAMESPACE::PlacementAssignment.new( active: true, placement_id: placement_id )
-
יוצרים אובייקט
Ad. מגדירים את creativeRotation בשדהcreativeRotationשל האובייקטAdואת placementAssignments במערךplacementAssignmentsשל האובייקטAd.# Construct delivery schedule. delivery_schedule = DfareportingUtils::API_NAMESPACE::DeliverySchedule.new( impression_ratio: 1, priority: 'AD_PRIORITY_01' ) # Construct and save ad. ad = DfareportingUtils::API_NAMESPACE::Ad.new( active: true, campaign_id: campaign_id, creative_rotation: creative_rotation, delivery_schedule: delivery_schedule, end_time: format('%sT00:00:00Z', campaign.end_date), name: 'Example Rotation Group', placement_assignments: [placement_assignment], start_time: format('%sT23:59:59Z', Time.now.strftime('%Y-%m-%d')), type: 'AD_SERVING_STANDARD_AD' )
-
כדי לשמור את המודעה, מתקשרים למספר
ads.insert().result = service.insert_ad(profile_id, ad)
באופן מרומז
C#
-
צריך ליצור ולשמור
Placement. -
צריך ליצור ולשמור
Creative. -
משייכים את
CreativeלאותוCampaignשמשמש ל-Placementעל ידי קריאה ל-campaignCreativeAssociations.insert()(ראו שלב 4 בקטע יצירת קריאייטיב). פעולה זו תיצור מודעה שמוגדרת כברירת מחדל שמשויכת לקריאייטיב ולמיקום.// Create the campaign creative association structure. CampaignCreativeAssociation association = new CampaignCreativeAssociation(); association.CreativeId = creativeId; // Insert the association. CampaignCreativeAssociation result = service.CampaignCreativeAssociations.Insert(association, profileId, campaignId).Execute();
Java
-
צריך ליצור ולשמור
Placement. -
צריך ליצור ולשמור
Creative. -
משייכים את
CreativeלאותוCampaignשמשמש ל-Placementעל ידי קריאה ל-campaignCreativeAssociations.insert()(ראו שלב 4 בקטע יצירת קריאייטיב). פעולה זו תיצור מודעה שמוגדרת כברירת מחדל שמשויכת לקריאייטיב ולמיקום.// Create the campaign creative association structure. CampaignCreativeAssociation association = new CampaignCreativeAssociation(); association.setCreativeId(creativeId); // Insert the association. CampaignCreativeAssociation result = reporting .campaignCreativeAssociations().insert(profileId, campaignId, association) .execute();
PHP
-
צריך ליצור ולשמור
Placement. -
צריך ליצור ולשמור
Creative. -
משייכים את
CreativeלאותוCampaignשמשמש ל-Placementעל ידי קריאה ל-campaignCreativeAssociations.insert()(ראו שלב 4 בקטע יצירת קריאייטיב). פעולה זו תיצור מודעה שמוגדרת כברירת מחדל שמשויכת לקריאייטיב ולמיקום.$association = new Google_Service_Dfareporting_CampaignCreativeAssociation(); $association->setCreativeId($values['creative_id']); $result = $this->service->campaignCreativeAssociations->insert( $values['user_profile_id'], $values['campaign_id'], $association );
Python
-
צריך ליצור ולשמור
Placement. -
צריך ליצור ולשמור
Creative. -
משייכים את
CreativeלאותוCampaignשמשמש ל-Placementעל ידי קריאה ל-campaignCreativeAssociations.insert()(ראו שלב 4 בקטע יצירת קריאייטיב). פעולה זו תיצור מודעה שמוגדרת כברירת מחדל שמשויכת לקריאייטיב ולמיקום.# Construct the request. association = { 'creativeId': creative_id } request = service.campaignCreativeAssociations().insert( profileId=profile_id, campaignId=campaign_id, body=association) # Execute request and print response. response = request.execute()
Ruby
-
צריך ליצור ולשמור
Placement. -
צריך ליצור ולשמור
Creative. -
משייכים את
CreativeלאותוCampaignשמשמש ל-Placementעל ידי קריאה ל-campaignCreativeAssociations.insert()(ראו שלב 4 בקטע יצירת קריאייטיב). פעולה זו תיצור מודעה שמוגדרת כברירת מחדל שמשויכת לקריאייטיב ולמיקום.# Create a new creative-campaign association to insert association = DfareportingUtils::API_NAMESPACE::CampaignCreativeAssociation.new( creative_id: creative_id ) # Insert the advertiser group. result = service.insert_campaign_creative_association(profile_id, campaign_id, association)
כשיוצרים מודעה, לא צריך ליצור Ad בנפרד. חשוב לזכור שאפשר לעשות את זה רק אם בקמפיין שלכם לא קיימת כבר מודעת ברירת מחדל בגודל שצוין.
חיפוש אובייקטים
כדי לחפש אובייקטים, אפשר לקרוא לפעולה list() שנחשפת על ידי השירות שמגדיר את האובייקט לחיפוש, ולציין קריטריונים אופציונליים שמתאימים לסוג האובייקט. לדוגמה, כדי לחפש אובייקטים של מודעות, צריך להפעיל את ads.list(). הקריטריונים האופציונליים חושפים קבוצה של מאפיינים שמתאימים לאובייקט הזה. ממלאים כמה מאפיינים שרוצים לחפש. החיפוש יחזיר רק אובייקטים שממלאים את כל הקריטריונים שהזנתם. אי אפשר לבצע חיפוש שמתאים לכל קריטריון. מחרוזות תומכות בתו הכללי לחיפוש *, הן לא תלויות באותיות רישיות ומתאימות למחרוזות גדולות יותר.
כדי לשפר את הביצועים, אפשר לבקש תשובות חלקיות באמצעות הפרמטר fields. ההוראה הזו מורה לשרת להחזיר רק את השדות שציינתם, ולא את הייצוג המלא של המשאב. מידע נוסף על הנושא הזה זמין במדריך טיפים לשיפור הביצועים.
חלוקה לדפים
לפעמים לא כדאי לאחזר את כל התוצאות של בקשת list(). לדוגמה, יכול להיות שתרצו לראות רק את 10 המודעות החדשות ביותר מתוך מאגר של אלפי מודעות. כדי לעזור לכם בכך, הרבה list() שיטות מאפשרות לכם לבקש פחות תוצאות באמצעות תהליך שנקרא חלוקה לדפים.
שיטות שתומכות בחלוקה לדפים מחזירות קבוצות משנה של תוצאות בקבוצות שנקראות דפים. מספר התוצאות המקסימלי בכל דף הוא 1,000 (ברירת המחדל). כדי לשנות את מספר התוצאות בדף, צריך להגדיר את maxResults. כדי לעבור בין הדפים, צריך להשתמש ב-nextPageToken שמוחזר בתגובה:
C#
// Limit the fields returned. String fields = "nextPageToken,ads(advertiserId,id,name)"; AdsListResponse result; String nextPageToken = null; do { // Create and execute the ad list request. AdsResource.ListRequest request = service.Ads.List(profileId); request.Active = true; request.Fields = fields; request.PageToken = nextPageToken; result = request.Execute(); foreach (Ad ad in result.Ads) { Console.WriteLine( "Ad with ID {0} and name \"{1}\" is associated with advertiser" + " ID {2}.", ad.Id, ad.Name, ad.AdvertiserId); } // Update the next page token. nextPageToken = result.NextPageToken; } while (result.Ads.Any() && !String.IsNullOrEmpty(nextPageToken));
Java
// Limit the fields returned. String fields = "nextPageToken,ads(advertiserId,id,name)"; AdsListResponse result; String nextPageToken = null; do { // Create and execute the ad list request. result = reporting.ads().list(profileId).setActive(true).setFields(fields) .setPageToken(nextPageToken).execute(); for (Ad ad : result.getAds()) { System.out.printf( "Ad with ID %d and name \"%s\" is associated with advertiser ID %d.%n", ad.getId(), ad.getName(), ad.getAdvertiserId()); } // Update the next page token. nextPageToken = result.getNextPageToken(); } while (!result.getAds().isEmpty() && !Strings.isNullOrEmpty(nextPageToken));
PHP
$response = null; $pageToken = null; do { // Create and execute the ads list request. $response = $this->service->ads->listAds( $values['user_profile_id'], ['active' => true, 'pageToken' => $pageToken] ); foreach ($response->getAds() as $ads) { $this->printResultsTableRow($ads); } // Update the next page token. $pageToken = $response->getNextPageToken(); } while (!empty($response->getAds()) && !empty($pageToken));
Python
# Construct the request. request = service.ads().list(profileId=profile_id, active=True) while True: # Execute request and print response. response = request.execute() for ad in response['ads']: print 'Found ad with ID %s and name "%s".' % (ad['id'], ad['name']) if response['ads'] and response['nextPageToken']: request = service.ads().list_next(request, response) else: break
Ruby
token = nil loop do result = service.list_ads(profile_id, page_token: token, fields: 'nextPageToken,ads(id,name)') # Display results. if result.ads.any? result.ads.each do |ad| puts format('Found ad with ID %d and name "%s".', ad.id, ad.name) end token = result.next_page_token else # Stop paging if there are no more results. token = nil end break if token.to_s.empty? end
יצירת תגי Floodlight
תגי Floodlight הם תגי HTML שמוטמעים בדף, ומשמשים למעקב אחרי פעולות משתמשים (למשל, רכישות) באתר. כדי ליצור תגי Floodlight, צריך FloodlightActivity
ששייך לFloodlightActivityGroup:
C#
-
יוצרים קבוצת פעילויות חדשה ב-Floodlight ומעבירים ערכים לפרמטרים
name,typeו-floodlightConfigurationId.// Create the floodlight activity group. FloodlightActivityGroup floodlightActivityGroup = new FloodlightActivityGroup(); floodlightActivityGroup.Name = groupName; floodlightActivityGroup.FloodlightConfigurationId = floodlightConfigurationId; floodlightActivityGroup.Type = "COUNTER";
-
שומרים את קבוצת הפעילות ב-Floodlight באמצעות קריאה אל
floodlightActivityGroups.insert(), שתחזיר את המזהה של הקבוצה החדשה.// Insert the activity group. FloodlightActivityGroup result = service.FloodlightActivityGroups.Insert(floodlightActivityGroup, profileId).Execute();
-
יוצרים פעילות חדשה ב-Floodlight ומקצים לה את המזהה של קבוצת הפעילות ב-Floodlight שיצרתם, וגם את כל שאר השדות הנדרשים.
// Set floodlight activity structure. FloodlightActivity activity = new FloodlightActivity(); activity.CountingMethod = "STANDARD_COUNTING"; activity.Name = activityName; activity.FloodlightActivityGroupId = activityGroupId; activity.FloodlightTagType = "GLOBAL_SITE_TAG"; activity.ExpectedUrl = url;
-
שומרים את הפעילות החדשה על ידי קריאה ל-
floodlightActivities.insert(), שיחזיר את מזהה הפעילות החדשה.// Create the floodlight tag activity. FloodlightActivity result = service.FloodlightActivities.Insert(activity, profileId).Execute();
-
מפעילים את הפונקציה
floodlightActivities.generatetag()עםfloodlightActivityIdשל הפעילות החדשה כדי ליצור את התגים. שולחים את התגים למנהל האתר של המפרסם.// Generate the floodlight activity tag. FloodlightActivitiesResource.GeneratetagRequest request = service.FloodlightActivities.Generatetag(profileId); request.FloodlightActivityId = activityId; FloodlightActivitiesGenerateTagResponse response = request.Execute();
Java
-
יוצרים קבוצת פעילויות חדשה ב-Floodlight ומעבירים ערכים לפרמטרים
name,typeו-floodlightConfigurationId.// Create the floodlight activity group. FloodlightActivityGroup floodlightActivityGroup = new FloodlightActivityGroup(); floodlightActivityGroup.setName(groupName); floodlightActivityGroup.setFloodlightConfigurationId(floodlightConfigurationId); floodlightActivityGroup.setType("COUNTER");
-
שומרים את קבוצת הפעילות ב-Floodlight באמצעות קריאה אל
floodlightActivityGroups.insert(), שתחזיר את המזהה של הקבוצה החדשה.// Insert the activity group. FloodlightActivityGroup result = reporting.floodlightActivityGroups().insert(profileId, floodlightActivityGroup).execute();
-
יוצרים פעילות חדשה ב-Floodlight ומקצים לה את המזהה של קבוצת הפעילות ב-Floodlight שיצרתם, וגם את כל שאר השדות הנדרשים.
// Set floodlight activity structure. FloodlightActivity activity = new FloodlightActivity(); activity.setName(activityName); activity.setCountingMethod("STANDARD_COUNTING"); activity.setExpectedUrl(url); activity.setFloodlightActivityGroupId(activityGroupId); activity.setFloodlightTagType("GLOBAL_SITE_TAG");
-
שומרים את הפעילות החדשה על ידי קריאה ל-
floodlightActivities.insert(), שיחזיר את מזהה הפעילות החדשה.// Create the floodlight tag activity. FloodlightActivity result = reporting.floodlightActivities().insert(profileId, activity).execute();
-
מפעילים את הפונקציה
floodlightActivities.generatetag()עםfloodlightActivityIdשל הפעילות החדשה כדי ליצור את התגים. שולחים את התגים למנהל האתר של המפרסם.// Generate the floodlight activity tag. Generatetag request = reporting.floodlightActivities().generatetag(profileId); request.setFloodlightActivityId(activityId); FloodlightActivitiesGenerateTagResponse response = request.execute();
PHP
-
יוצרים קבוצת פעילויות חדשה ב-Floodlight ומעבירים ערכים לפרמטרים
name,typeו-floodlightConfigurationId.$group = new Google_Service_Dfareporting_FloodlightActivityGroup(); $group->setFloodlightConfigurationId($values['configuration_id']); $group->setName($values['group_name']); $group->setType('COUNTER');
-
שומרים את קבוצת הפעילות ב-Floodlight באמצעות קריאה אל
floodlightActivityGroups.insert(), שתחזיר את המזהה של הקבוצה החדשה.$result = $this->service->floodlightActivityGroups->insert( $values['user_profile_id'], $group );
-
יוצרים פעילות חדשה ב-Floodlight ומקצים לה את המזהה של קבוצת הפעילות ב-Floodlight שיצרתם, וגם את כל שאר השדות הנדרשים.
$activity = new Google_Service_Dfareporting_FloodlightActivity(); $activity->setCountingMethod('STANDARD_COUNTING'); $activity->setExpectedUrl($values['url']); $activity->setFloodlightActivityGroupId($values['activity_group_id']); $activity->setFloodlightTagType('GLOBAL_SITE_TAG'); $activity->setName($values['activity_name']);
-
שומרים את הפעילות החדשה על ידי קריאה ל-
floodlightActivities.insert(), שיחזיר את מזהה הפעילות החדשה.$result = $this->service->floodlightActivities->insert( $values['user_profile_id'], $activity );
-
מפעילים את הפונקציה
floodlightActivities.generatetag()עםfloodlightActivityIdשל הפעילות החדשה כדי ליצור את התגים. שולחים את התגים למנהל האתר של המפרסם.$result = $this->service->floodlightActivities->generatetag( $values['user_profile_id'], ['floodlightActivityId' => $values['activity_id']] );
Python
-
יוצרים קבוצת פעילויות חדשה ב-Floodlight ומעבירים ערכים לפרמטרים
name,typeו-floodlightConfigurationId.# Construct and save floodlight activity group. activity_group = { 'name': 'Test Floodlight Activity Group', 'floodlightConfigurationId': floodlight_config_id, 'type': 'COUNTER' }
-
שומרים את קבוצת הפעילות ב-Floodlight באמצעות קריאה אל
floodlightActivityGroups.insert(), שתחזיר את המזהה של הקבוצה החדשה.request = service.floodlightActivityGroups().insert( profileId=profile_id, body=activity_group)
-
יוצרים פעילות חדשה ב-Floodlight ומקצים לה את המזהה של קבוצת הפעילות ב-Floodlight שיצרתם, וגם את כל שאר השדות הנדרשים.
# Construct and save floodlight activity. floodlight_activity = { 'countingMethod': 'STANDARD_COUNTING', 'expectedUrl': 'http://www.google.com', 'floodlightActivityGroupId': activity_group_id, 'floodlightTagType': 'GLOBAL_SITE_TAG', 'name': 'Test Floodlight Activity' }
-
שומרים את הפעילות החדשה על ידי קריאה ל-
floodlightActivities.insert(), שיחזיר את מזהה הפעילות החדשה.request = service.floodlightActivities().insert( profileId=profile_id, body=floodlight_activity)
-
מפעילים את הפונקציה
floodlightActivities.generatetag()עםfloodlightActivityIdשל הפעילות החדשה כדי ליצור את התגים. שולחים את התגים למנהל האתר של המפרסם.# Construct the request. request = service.floodlightActivities().generatetag( profileId=profile_id, floodlightActivityId=activity_id) # Execute request and print response. response = request.execute()
Ruby
-
יוצרים קבוצת פעילויות חדשה ב-Floodlight ומעבירים ערכים לפרמטרים
name,typeו-floodlightConfigurationId.# Create a new floodlight activity group resource to insert. activity_group = DfareportingUtils::API_NAMESPACE::FloodlightActivityGroup.new( floodlight_configuration_id: floodlight_config_id, name: format('Example Floodlight Activity Group #%s', SecureRandom.hex(3)), type: 'COUNTER' )
-
שומרים את קבוצת הפעילות ב-Floodlight באמצעות קריאה אל
floodlightActivityGroups.insert(), שתחזיר את המזהה של הקבוצה החדשה.# Insert the floodlight activity group. result = service.insert_floodlight_activity_group(profile_id, activity_group)
-
יוצרים פעילות חדשה ב-Floodlight ומקצים לה את המזהה של קבוצת הפעילות ב-Floodlight שיצרתם, וגם את כל שאר השדות הנדרשים.
# Create a new floodlight activity resource to insert. activity = DfareportingUtils::API_NAMESPACE::FloodlightActivity.new( counting_method: 'STANDARD_COUNTING', expected_url: 'http://www.google.com', floodlight_activity_group_id: activity_group_id, floodlight_tag_type: 'GLOBAL_SITE_TAG', name: format('Example Floodlight Activity #%s', SecureRandom.hex(3)) )
-
שומרים את הפעילות החדשה על ידי קריאה ל-
floodlightActivities.insert(), שיחזיר את מזהה הפעילות החדשה.# Insert the floodlight activity. result = service.insert_floodlight_activity(profile_id, activity)
-
מפעילים את הפונקציה
floodlightActivities.generatetag()עםfloodlightActivityIdשל הפעילות החדשה כדי ליצור את התגים. שולחים את התגים למנהל האתר של המפרסם.# Construct the request. result = service.generatetag_floodlight_activity(profile_id, floodlight_activity_id: activity_id)
יצירת תגי מיקום מודעה
השלב האחרון הוא יצירת תגי HTML לשליחה אל בעל האתר כדי להציג את המודעות. כדי ליצור את התגים באמצעות ה-API, שולחים בקשה אל placements.generatetags() ומציינים קבוצה של placementIds ושל tagFormats.
C#
// Generate the placement activity tags. PlacementsResource.GeneratetagsRequest request = service.Placements.Generatetags(profileId); request.CampaignId = campaignId; request.TagFormats = PlacementsResource.GeneratetagsRequest.TagFormatsEnum.PLACEMENTTAGIFRAMEJAVASCRIPT; request.PlacementIds = placementId.ToString(); PlacementsGenerateTagsResponse response = request.Execute();
Java
// Generate the placement activity tags. Generatetags request = reporting.placements().generatetags(profileId); request.setCampaignId(campaignId); request.setTagFormats(tagFormats); request.setPlacementIds(ImmutableList.of(placementId)); PlacementsGenerateTagsResponse response = request.execute();
PHP
$placementTags = $this->service->placements->generatetags( $values['user_profile_id'], ['campaignId' => $values['campaign_id'], 'placementIds' => [$values['placement_id']], 'tagFormats' => ['PLACEMENT_TAG_STANDARD', 'PLACEMENT_TAG_IFRAME_JAVASCRIPT', 'PLACEMENT_TAG_INTERNAL_REDIRECT'] ] );
Python
# Construct the request. request = service.placements().generatetags( profileId=profile_id, campaignId=campaign_id, placementIds=[placement_id]) # Execute request and print response. response = request.execute()
Ruby
# Construct the request. result = service.generate_placement_tags(profile_id, campaign_id: campaign_id, placement_ids: [placement_id])