Genel Trafik İşlemleri

Bu sayfada, en yaygın trafik işlemleri görevlerinden bazılarının DCM/DFA Raporlaması ve Trafik İşlemleri API'si kullanılarak nasıl gerçekleştirileceği özetlenmiştir.

Genel kodlama ipuçları

  • Zorunlu ve isteğe bağlı özellikler ve parametreler: Bir API çağrısı için bir özellik veya parametre gerekip gerekmediğini öğrenmek üzere referans belgelerine bakın.
  • Joker karakter adı aramaları - Nesne adları için arama yaparken yıldız işareti (*) joker karakterini kullanabilirsiniz. Yıldız işareti, herhangi bir karakterin sıfır veya daha fazla tekrarıyla eşleşir. API, örtülü bir alt dize aramasını da destekler. Bu nedenle, "abc" araması yapıldığında dolaylı yoldan "*abc*" aranır.
  • Güncelleme ve yama uygulama - Mevcut bir nesneyi değiştirmek için iki seçeneğiniz vardır:
    1. Güncelleniyor - Bir nesneyi güncellerken, ekleme sırasında tüm alanların üzerine yazılır. Güncellemek istediğiniz nesneyi yüklemeniz ve bu nesnede istediğiniz değişiklikleri yapmanız önemlidir. Aksi takdirde, güncelleme isteğinde bulunmayan alanlar ayarlanmaz.
    2. Yama uygulama - Yama uygularken, ekleme sırasında yalnızca belirtilen alanların üzerine yazılır. Bu durumda, yeni bir nesne oluşturabilir, buna güncellenecek nesneyle aynı kimliği atayabilir, güncellenecek alanları ayarlayabilir ve yama isteğini yürütebilirsiniz.
  • Boyutlar - Fiziksel boyutlar, boyutlar hizmeti tarafından tanımlanan bir Size nesnesiyle temsil edilir. Hesap bir dizi standart boyut sağlar. Dilerseniz kendi özel boyutlarınızı bu listeye ekleyebilirsiniz.
  • Tarihler ve saatler: Yerel saat dilimlerini kullanarak tarihleri/saatleri RFC 3339 biçiminde kaydedebilirsiniz; API tarafından döndürülen tüm değerler UTC'ye göredir. Bu, yapılandırdığınız saat diliminde (varsayılan olarak Amerika/New York saati) tarihlerin ve saatlerin gösterildiği web sitesinden farklıdır.

Reklamveren oluşturma

C#

  1. Bir Advertiser nesnesi oluşturun ve bu nesnenin gerekli name ve status özelliklerini ayarlayın.
    // Create the advertiser structure.
    Advertiser advertiser = new Advertiser();
    advertiser.Name = advertiserName;
    advertiser.Status = "APPROVED";
    
  2. Reklamvereni kaydetmek için advertisers.insert() numaralı telefonu arayın.
    // Create the advertiser.
    Advertiser result = service.Advertisers.Insert(advertiser, profileId).Execute();
    

Java

  1. Bir Advertiser nesnesi oluşturun ve bu nesnenin gerekli name ve status özelliklerini ayarlayın.
    // Create the advertiser structure.
    Advertiser advertiser = new Advertiser();
    advertiser.setName(advertiserName);
    advertiser.setStatus("APPROVED");
    
  2. Reklamvereni kaydetmek için advertisers.insert() numaralı telefonu arayın.
    // Create the advertiser.
    Advertiser result = reporting.advertisers().insert(profileId, advertiser).execute();
    

PHP

  1. Bir Advertiser nesnesi oluşturun ve bu nesnenin gerekli name ve status özelliklerini ayarlayın.
    $advertiser = new Google_Service_Dfareporting_Advertiser();
    $advertiser->setName($values['advertiser_name']);
    $advertiser->setStatus('APPROVED');
    
  2. Reklamvereni kaydetmek için advertisers.insert() numaralı telefonu arayın.
    $result = $this->service->advertisers->insert(
        $values['user_profile_id'],
        $advertiser
    );
    

Python

  1. Bir Advertiser nesnesi oluşturun ve bu nesnenin gerekli name ve status özelliklerini ayarlayın.
    # Construct and save advertiser.
    advertiser = {
        'name': 'Test Advertiser',
        'status': 'APPROVED'
    }
    
  2. Reklamvereni kaydetmek için advertisers.insert() numaralı telefonu arayın.
    request = service.advertisers().insert(
        profileId=profile_id, body=advertiser)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Bir Advertiser nesnesi oluşturun ve bu nesnenin gerekli name ve status özelliklerini ayarlayın.
    # Create a new advertiser resource to insert.
    advertiser = DfareportingUtils::API_NAMESPACE::Advertiser.new(
      name: format('Example Advertiser #%s', SecureRandom.hex(3)),
      status: 'APPROVED'
    )
    
  2. Reklamvereni kaydetmek için advertisers.insert() numaralı telefonu arayın.
    # Insert the advertiser.
    result = service.insert_advertiser(profile_id, advertiser)
    

Kampanya oluşturma

C#

  1. Bir Campaign nesnesi oluşturun ve gerekli özelliklerini ayarlayın:

    • advertiserId - Bu kampanyanın ilişkilendirileceği reklamveren.
    • name - Bu, reklamverenin tüm kampanyalarında benzersiz olmalıdır.
    • defaultLandingPageId - Bu kampanyadaki bir reklama atanmamışsa kullanıcıların yönlendirileceği bir açılış sayfası. advertiserLandingPages.list numaralı telefonu arayarak mevcut açılış sayfalarını arayabilir veya advertiserLandingPages.insert yöntemini çağırarak yeni bir açılış sayfası oluşturabilirsiniz.
    • Başlangıç ve bitiş tarihleri: Bunlar gelecekte olmalıdır ve güne kadar doğru olabilir. Daha ayrıntılı bilgi için Genel kodlama bilgileri bölümündeki tarih ve saat madde işaretine bakın. Belirli bir kampanya bitiş tarihine kadar doldurulmamışsa yayıncının belirli sayıda eylem için bir sözleşmeyi yerine getirmeye çalışabilmesini sağlamak üzere tek reklam tarihleri bitiş tarihini aşabilir.
    // 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));
    
  2. Kampanyayı kaydetmek için campaigns.insert() numaralı telefonu arayın.

    // Insert the campaign.
    Campaign result = service.Campaigns.Insert(campaign, profileId).Execute();
    

Java

  1. Bir Campaign nesnesi oluşturun ve gerekli özelliklerini ayarlayın:

    • advertiserId - Bu kampanyanın ilişkilendirileceği reklamveren.
    • name - Bu, reklamverenin tüm kampanyalarında benzersiz olmalıdır.
    • defaultLandingPageId - Bu kampanyadaki bir reklama atanmamışsa kullanıcıların yönlendirileceği bir açılış sayfası. advertiserLandingPages.list numaralı telefonu arayarak mevcut açılış sayfalarını arayabilir veya advertiserLandingPages.insert yöntemini çağırarak yeni bir açılış sayfası oluşturabilirsiniz.
    • Başlangıç ve bitiş tarihleri: Bunlar gelecekte olmalıdır ve güne kadar doğru olabilir. Daha ayrıntılı bilgi için Genel kodlama bilgileri bölümündeki tarih ve saat madde işaretine bakın. Belirli bir kampanya bitiş tarihine kadar doldurulmamışsa yayıncının belirli sayıda eylem için bir sözleşmeyi yerine getirmeye çalışabilmesini sağlamak üzere tek reklam tarihleri bitiş tarihini aşabilir.
    // 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);
    
  2. Kampanyayı kaydetmek için campaigns.insert() numaralı telefonu arayın.

    // Insert the campaign.
    Campaign result = reporting.campaigns().insert(profileId, campaign).execute();
    

PHP

  1. Bir Campaign nesnesi oluşturun ve gerekli özelliklerini ayarlayın:

    • advertiserId - Bu kampanyanın ilişkilendirileceği reklamveren.
    • name - Bu, reklamverenin tüm kampanyalarında benzersiz olmalıdır.
    • defaultLandingPageId - Bu kampanyadaki bir reklama atanmamışsa kullanıcıların yönlendirileceği bir açılış sayfası. advertiserLandingPages.list numaralı telefonu arayarak mevcut açılış sayfalarını arayabilir veya advertiserLandingPages.insert yöntemini çağırarak yeni bir açılış sayfası oluşturabilirsiniz.
    • Başlangıç ve bitiş tarihleri: Bunlar gelecekte olmalıdır ve güne kadar doğru olabilir. Daha ayrıntılı bilgi için Genel kodlama bilgileri bölümündeki tarih ve saat madde işaretine bakın. Belirli bir kampanya bitiş tarihine kadar doldurulmamışsa yayıncının belirli sayıda eylem için bir sözleşmeyi yerine getirmeye çalışabilmesini sağlamak üzere tek reklam tarihleri bitiş tarihini aşabilir.
    $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'));
    
  2. Kampanyayı kaydetmek için campaigns.insert() numaralı telefonu arayın.

    $result = $this->service->campaigns->insert(
        $values['user_profile_id'],
        $campaign
    );
    

Python

  1. Bir Campaign nesnesi oluşturun ve gerekli özelliklerini ayarlayın:

    • advertiserId - Bu kampanyanın ilişkilendirileceği reklamveren.
    • name - Bu, reklamverenin tüm kampanyalarında benzersiz olmalıdır.
    • defaultLandingPageId - Bu kampanyadaki bir reklama atanmamışsa kullanıcıların yönlendirileceği bir açılış sayfası. advertiserLandingPages.list numaralı telefonu arayarak mevcut açılış sayfalarını arayabilir veya advertiserLandingPages.insert yöntemini çağırarak yeni bir açılış sayfası oluşturabilirsiniz.
    • Başlangıç ve bitiş tarihleri: Bunlar gelecekte olmalıdır ve güne kadar doğru olabilir. Daha ayrıntılı bilgi için Genel kodlama bilgileri bölümündeki tarih ve saat madde işaretine bakın. Belirli bir kampanya bitiş tarihine kadar doldurulmamışsa yayıncının belirli sayıda eylem için bir sözleşmeyi yerine getirmeye çalışabilmesini sağlamak üzere tek reklam tarihleri bitiş tarihini aşabilir.
    # 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'
    }
    
  2. Kampanyayı kaydetmek için campaigns.insert() numaralı telefonu arayın.

    request = service.campaigns().insert(profileId=profile_id, body=campaign)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Bir Campaign nesnesi oluşturun ve gerekli özelliklerini ayarlayın:

    • advertiserId - Bu kampanyanın ilişkilendirileceği reklamveren.
    • name - Bu, reklamverenin tüm kampanyalarında benzersiz olmalıdır.
    • defaultLandingPageId - Bu kampanyadaki bir reklama atanmamışsa kullanıcıların yönlendirileceği bir açılış sayfası. advertiserLandingPages.list numaralı telefonu arayarak mevcut açılış sayfalarını arayabilir veya advertiserLandingPages.insert yöntemini çağırarak yeni bir açılış sayfası oluşturabilirsiniz.
    • Başlangıç ve bitiş tarihleri: Bunlar gelecekte olmalıdır ve güne kadar doğru olabilir. Daha ayrıntılı bilgi için Genel kodlama bilgileri bölümündeki tarih ve saat madde işaretine bakın. Belirli bir kampanya bitiş tarihine kadar doldurulmamışsa yayıncının belirli sayıda eylem için bir sözleşmeyi yerine getirmeye çalışabilmesini sağlamak üzere tek reklam tarihleri bitiş tarihini aşabilir.
    # 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'
    )
    
  2. Kampanyayı kaydetmek için campaigns.insert() numaralı telefonu arayın.

    # Insert the campaign.
    result = service.insert_campaign(profile_id, campaign)
    

Yerleşim oluşturma

C#

  1. Bir Placement nesnesi oluşturun ve gerekli yerleşim özelliklerini (campaignId ve siteId dahil) ayarlayın. Ayrıca, web sitenizle pazarlık yaptığınız yerleşim için yerleşim türünü ve boyutunu doğru ayarladığınızdan emin olun.
    // 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;
    
  2. Yerleşime atamak için yeni bir PricingSchedule nesnesi oluşturun.
    // 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;
    
  3. placements.insert() yöntemini çağırarak Placement nesnesini kaydedin. Döndürülen kimliği bir reklama veya reklam öğesine atamak için kullanmak istiyorsanız döndürülen kimliği sakladığınızdan emin olun.
    // Insert the placement.
    Placement result = service.Placements.Insert(placement, profileId).Execute();
    

Java

  1. Bir Placement nesnesi oluşturun ve gerekli yerleşim özelliklerini (campaignId ve siteId dahil) ayarlayın. Ayrıca, web sitenizle pazarlık yaptığınız yerleşim için yerleşim türünü ve boyutunu doğru ayarladığınızdan emin olun.
    // 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);
    
  2. Yerleşime atamak için yeni bir PricingSchedule nesnesi oluşturun.
    // 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);
    
  3. placements.insert() yöntemini çağırarak Placement nesnesini kaydedin. Döndürülen kimliği bir reklama veya reklam öğesine atamak için kullanmak istiyorsanız döndürülen kimliği sakladığınızdan emin olun.
    // Insert the placement.
    Placement result = reporting.placements().insert(profileId, placement).execute();
    

PHP

  1. Bir Placement nesnesi oluşturun ve gerekli yerleşim özelliklerini (campaignId ve siteId dahil) ayarlayın. Ayrıca, web sitenizle pazarlık yaptığınız yerleşim için yerleşim türünü ve boyutunu doğru ayarladığınızdan emin olun.
    $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);
    
  2. Yerleşime atamak için yeni bir PricingSchedule nesnesi oluşturun.
    // 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);
    
  3. placements.insert() yöntemini çağırarak Placement nesnesini kaydedin. Döndürülen kimliği bir reklama veya reklam öğesine atamak için kullanmak istiyorsanız döndürülen kimliği sakladığınızdan emin olun.
    // Insert the placement.
    $result = $this->service->placements->insert(
        $values['user_profile_id'],
        $placement
    );
    

Python

  1. Bir Placement nesnesi oluşturun ve gerekli yerleşim özelliklerini (campaignId ve siteId dahil) ayarlayın. Ayrıca, web sitenizle pazarlık yaptığınız yerleşim için yerleşim türünü ve boyutunu doğru ayarladığınızdan emin olun.
    # 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']
    }
    
  2. Yerleşime atamak için yeni bir PricingSchedule nesnesi oluşturun.
    # Set the pricing schedule for the placement.
    placement['pricingSchedule'] = {
        'startDate': campaign['startDate'],
        'endDate': campaign['endDate'],
        'pricingType': 'PRICING_TYPE_CPM'
    }
    
  3. placements.insert() yöntemini çağırarak Placement nesnesini kaydedin. Döndürülen kimliği bir reklama veya reklam öğesine atamak için kullanmak istiyorsanız döndürülen kimliği sakladığınızdan emin olun.
    request = service.placements().insert(profileId=profile_id, body=placement)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Bir Placement nesnesi oluşturun ve gerekli yerleşim özelliklerini (campaignId ve siteId dahil) ayarlayın. Ayrıca, web sitenizle pazarlık yaptığınız yerleşim için yerleşim türünü ve boyutunu doğru ayarladığınızdan emin olun.
    # 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']
    )
    
  2. Yerleşime atamak için yeni bir PricingSchedule nesnesi oluşturun.
    # 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
      )
    
  3. placements.insert() yöntemini çağırarak Placement nesnesini kaydedin. Döndürülen kimliği bir reklama veya reklam öğesine atamak için kullanmak istiyorsanız döndürülen kimliği sakladığınızdan emin olun.
    # Insert the placement strategy.
    result = service.insert_placement(profile_id, placement)
    

Öğe yükle

Medya yükleme olarak bilinen bir işlem aracılığıyla birçok öğe türünü yükleyebilirsiniz. Bu süreç tüm reklam öğesi türleri için benzer olsa da, bazı türler, düzgün şekilde kullanılabilmesi için belirli özelliklerin meta veri olarak geçirilmesini gerektirebilir.

C#

  1. Bir assetIdentifiernesne oluşturun ve gerekli özellikleri ayarlayın. Ne tür veya ne şekilde kullanıldığına bakılmaksızın tüm öğelerin bir assetIdentifier belirtmesi gerekir. Öğeyi bir reklam öğesine atarken bu nesne tekrar öğeye başvurmak için kullanılır. Aşağıdaki özellikler gereklidir:

    • name özelliği (sunucudaki öğenin adı olacak). Ad, .png veya .gif gibi dosya türünü belirten bir uzantı içermelidir. Tarayıcıda öğe adı olarak gösterilir, ancak orijinal dosya adıyla aynı olması gerekmez. Bu adın sunucuda benzersiz olması için Campaign Manager 360 tarafından değiştirilebileceğini unutmayın. Döndürülen değeri kontrol edip değiştirilip değiştirilmediğini kontrol edin.
    • Öğe türünü tanımlayan type özelliği. Bu özellik, bu öğenin ilişkilendirilebileceği reklam öğesi türlerini belirler.
    // Create the creative asset ID and Metadata.
    CreativeAssetId assetId = new CreativeAssetId();
    assetId.Name = Path.GetFileName(assetFile);
    assetId.Type = assetType;
    
  2. creativeAssets.insert() yöntemini çağırarak dosyayı yükleyin. Aynı isteğin bir parçası olarak hem assetIdentifier hem de dosya içeriğini ileterek çok parçalı bir yükleme gerçekleştirin. Başarılı olursa bu öğeyi bir reklam öğesine atamak için kullanacağınız assetIdentifier ile birlikte bir CreativeAsset kaynağı döndürülür.

    // 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

  1. Bir assetIdentifiernesne oluşturun ve gerekli özellikleri ayarlayın. Ne tür veya ne şekilde kullanıldığına bakılmaksızın tüm öğelerin bir assetIdentifier belirtmesi gerekir. Öğeyi bir reklam öğesine atarken bu nesne tekrar öğeye başvurmak için kullanılır. Aşağıdaki özellikler gereklidir:

    • name özelliği (sunucudaki öğenin adı olacak). Ad, .png veya .gif gibi dosya türünü belirten bir uzantı içermelidir. Tarayıcıda öğe adı olarak gösterilir, ancak orijinal dosya adıyla aynı olması gerekmez. Bu adın sunucuda benzersiz olması için Campaign Manager 360 tarafından değiştirilebileceğini unutmayın. Döndürülen değeri kontrol edip değiştirilip değiştirilmediğini kontrol edin.
    • Öğe türünü tanımlayan type özelliği. Bu özellik, bu öğenin ilişkilendirilebileceği reklam öğesi türlerini belirler.
    // Create the creative asset ID and Metadata.
    CreativeAssetId assetId = new CreativeAssetId();
    assetId.setName(assetName);
    assetId.setType(assetType);
    
  2. creativeAssets.insert() yöntemini çağırarak dosyayı yükleyin. Aynı isteğin bir parçası olarak hem assetIdentifier hem de dosya içeriğini ileterek çok parçalı bir yükleme gerçekleştirin. Başarılı olursa bu öğeyi bir reklam öğesine atamak için kullanacağınız assetIdentifier ile birlikte bir CreativeAsset kaynağı döndürülür.

    // 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

  1. Bir assetIdentifiernesne oluşturun ve gerekli özellikleri ayarlayın. Ne tür veya ne şekilde kullanıldığına bakılmaksızın tüm öğelerin bir assetIdentifier belirtmesi gerekir. Öğeyi bir reklam öğesine atarken bu nesne tekrar öğeye başvurmak için kullanılır. Aşağıdaki özellikler gereklidir:

    • name özelliği (sunucudaki öğenin adı olacak). Ad, .png veya .gif gibi dosya türünü belirten bir uzantı içermelidir. Tarayıcıda öğe adı olarak gösterilir, ancak orijinal dosya adıyla aynı olması gerekmez. Bu adın sunucuda benzersiz olması için Campaign Manager 360 tarafından değiştirilebileceğini unutmayın. Döndürülen değeri kontrol edip değiştirilip değiştirilmediğini kontrol edin.
    • Öğe türünü tanımlayan type özelliği. Bu özellik, bu öğenin ilişkilendirilebileceği reklam öğesi türlerini belirler.
    $assetId = new Google_Service_Dfareporting_CreativeAssetId();
    $assetId->setName($asset['name']);
    $assetId->setType($type);
    
  2. creativeAssets.insert() yöntemini çağırarak dosyayı yükleyin. Aynı isteğin bir parçası olarak hem assetIdentifier hem de dosya içeriğini ileterek çok parçalı bir yükleme gerçekleştirin. Başarılı olursa bu öğeyi bir reklam öğesine atamak için kullanacağınız assetIdentifier ile birlikte bir CreativeAsset kaynağı döndürülür.

    $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

  1. Bir assetIdentifiernesne oluşturun ve gerekli özellikleri ayarlayın. Ne tür veya ne şekilde kullanıldığına bakılmaksızın tüm öğelerin bir assetIdentifier belirtmesi gerekir. Öğeyi bir reklam öğesine atarken bu nesne tekrar öğeye başvurmak için kullanılır. Aşağıdaki özellikler gereklidir:

    • name özelliği (sunucudaki öğenin adı olacak). Ad, .png veya .gif gibi dosya türünü belirten bir uzantı içermelidir. Tarayıcıda öğe adı olarak gösterilir, ancak orijinal dosya adıyla aynı olması gerekmez. Bu adın sunucuda benzersiz olması için Campaign Manager 360 tarafından değiştirilebileceğini unutmayın. Döndürülen değeri kontrol edip değiştirilip değiştirilmediğini kontrol edin.
    • Öğe türünü tanımlayan type özelliği. Bu özellik, bu öğenin ilişkilendirilebileceği reklam öğesi türlerini belirler.
    # Construct the creative asset metadata
    creative_asset = {'assetIdentifier': {'name': asset_name, 'type': asset_type}}
    
  2. creativeAssets.insert() yöntemini çağırarak dosyayı yükleyin. Aynı isteğin bir parçası olarak hem assetIdentifier hem de dosya içeriğini ileterek çok parçalı bir yükleme gerçekleştirin. Başarılı olursa bu öğeyi bir reklam öğesine atamak için kullanacağınız assetIdentifier ile birlikte bir CreativeAsset kaynağı döndürülür.

    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

  1. Bir assetIdentifiernesne oluşturun ve gerekli özellikleri ayarlayın. Ne tür veya ne şekilde kullanıldığına bakılmaksızın tüm öğelerin bir assetIdentifier belirtmesi gerekir. Öğeyi bir reklam öğesine atarken bu nesne tekrar öğeye başvurmak için kullanılır. Aşağıdaki özellikler gereklidir:

    • name özelliği (sunucudaki öğenin adı olacak). Ad, .png veya .gif gibi dosya türünü belirten bir uzantı içermelidir. Tarayıcıda öğe adı olarak gösterilir, ancak orijinal dosya adıyla aynı olması gerekmez. Bu adın sunucuda benzersiz olması için Campaign Manager 360 tarafından değiştirilebileceğini unutmayın. Döndürülen değeri kontrol edip değiştirilip değiştirilmediğini kontrol edin.
    • Öğe türünü tanımlayan type özelliği. Bu özellik, bu öğenin ilişkilendirilebileceği reklam öğesi türlerini belirler.
    # 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
      )
    )
    
  2. creativeAssets.insert() yöntemini çağırarak dosyayı yükleyin. Aynı isteğin bir parçası olarak hem assetIdentifier hem de dosya içeriğini ileterek çok parçalı bir yükleme gerçekleştirin. Başarılı olursa bu öğeyi bir reklam öğesine atamak için kullanacağınız assetIdentifier ile birlikte bir CreativeAsset kaynağı döndürülür.

    # 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
    )
    

Reklam öğesi oluşturma

Creative nesnesi, mevcut bir öğeyi sarmalar. Ana makine sayfasında reklam öğelerini nasıl kullanacağınıza bağlı olarak, farklı reklam öğesi türlerinde Creative nesneleri oluşturabilirsiniz. Size en uygun türü belirlemek için referans belgelerine bakın.

Aşağıdaki örnekte, yeni bir HTML5 görüntülü reklam öğesinin nasıl oluşturulacağı gösterilmektedir.

C#

  1. Öğeleri yükleyin. Farklı reklam öğeleri, farklı tür ve miktarlarda öğe gerektirir. Ayrıntılar için Öğeleri Yükleme bölümüne bakın. Bir öğeyi başarıyla yüklediğiniz her seferde, yanıtta bir assetIdenfitier alırsınız. Reklam öğenizde bu öğelere referans vermek için geleneksel bir kimlik yerine depolanan dosya adını ve türünü kullanırsınız.
  2. Bir reklam öğesi oluşturun ve uygun değerleri atayın. Bir Creative örneği oluşturun ve uygun type değerini ayarlayın. Bir Creative nesnesini kaydettikten sonra onun türünü değiştiremezsiniz. Öğeleri AssetIdentifier ve role değerlerine göre belirtin.
    // 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 };
    
  3. Reklam öğesini kaydedin. Bunu creatives.insert() numaralı telefonu arayarak yapabilirsiniz. Bu reklam öğesinin ilişkilendirileceği reklamveren kimliğinin belirtilmesi gerekir.
    Creative result = service.Creatives.Insert(creative, profileId).Execute();
    
  4. (İsteğe bağlı) Reklam öğesini bir kampanyayla ilişkilendirin. Bunu, campaignCreativeAssociations.insert() yöntemini çağırarak, kampanya ve reklam öğesi kimliklerini ileterek yapabilirsiniz.
    // 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

  1. Öğeleri yükleyin. Farklı reklam öğeleri, farklı tür ve miktarlarda öğe gerektirir. Ayrıntılar için Öğeleri Yükleme bölümüne bakın. Bir öğeyi başarıyla yüklediğiniz her seferde, yanıtta bir assetIdenfitier alırsınız. Reklam öğenizde bu öğelere referans vermek için geleneksel bir kimlik yerine depolanan dosya adını ve türünü kullanırsınız.
  2. Bir reklam öğesi oluşturun ve uygun değerleri atayın. Bir Creative örneği oluşturun ve uygun type değerini ayarlayın. Bir Creative nesnesini kaydettikten sonra onun türünü değiştiremezsiniz. Öğeleri AssetIdentifier ve role değerlerine göre belirtin.
    // 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));
    
  3. Reklam öğesini kaydedin. Bunu creatives.insert() numaralı telefonu arayarak yapabilirsiniz. Bu reklam öğesinin ilişkilendirileceği reklamveren kimliğinin belirtilmesi gerekir.
    Creative result = reporting.creatives().insert(profileId, creative).execute();
    
  4. (İsteğe bağlı) Reklam öğesini bir kampanyayla ilişkilendirin. Bunu, campaignCreativeAssociations.insert() yöntemini çağırarak, kampanya ve reklam öğesi kimliklerini ileterek yapabilirsiniz.
    // 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

  1. Öğeleri yükleyin. Farklı reklam öğeleri, farklı tür ve miktarlarda öğe gerektirir. Ayrıntılar için Öğeleri Yükleme bölümüne bakın. Bir öğeyi başarıyla yüklediğiniz her seferde, yanıtta bir assetIdenfitier alırsınız. Reklam öğenizde bu öğelere referans vermek için geleneksel bir kimlik yerine depolanan dosya adını ve türünü kullanırsınız.
  2. Bir reklam öğesi oluşturun ve uygun değerleri atayın. Bir Creative örneği oluşturun ve uygun type değerini ayarlayın. Bir Creative nesnesini kaydettikten sonra onun türünü değiştiremezsiniz. Öğeleri AssetIdentifier ve role değerlerine göre belirtin.
    $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]);
    
  3. Reklam öğesini kaydedin. Bunu creatives.insert() numaralı telefonu arayarak yapabilirsiniz. Bu reklam öğesinin ilişkilendirileceği reklamveren kimliğinin belirtilmesi gerekir.
    $result = $this->service->creatives->insert(
        $values['user_profile_id'],
        $creative
    );
    
  4. (İsteğe bağlı) Reklam öğesini bir kampanyayla ilişkilendirin. Bunu, campaignCreativeAssociations.insert() yöntemini çağırarak, kampanya ve reklam öğesi kimliklerini ileterek yapabilirsiniz.
    $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

  1. Öğeleri yükleyin. Farklı reklam öğeleri, farklı tür ve miktarlarda öğe gerektirir. Ayrıntılar için Öğeleri Yükleme bölümüne bakın. Bir öğeyi başarıyla yüklediğiniz her seferde, yanıtta bir assetIdenfitier alırsınız. Reklam öğenizde bu öğelere referans vermek için geleneksel bir kimlik yerine depolanan dosya adını ve türünü kullanırsınız.
  2. Bir reklam öğesi oluşturun ve uygun değerleri atayın. Bir Creative örneği oluşturun ve uygun type değerini ayarlayın. Bir Creative nesnesini kaydettikten sonra onun türünü değiştiremezsiniz. Öğeleri AssetIdentifier ve role değerlerine göre belirtin.
    # 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'
    }
    
  3. Reklam öğesini kaydedin. Bunu creatives.insert() numaralı telefonu arayarak yapabilirsiniz. Bu reklam öğesinin ilişkilendirileceği reklamveren kimliğinin belirtilmesi gerekir.
    request = service.creatives().insert(profileId=profile_id, body=creative)
    
    # Execute request and print response.
    response = request.execute()
    
  4. (İsteğe bağlı) Reklam öğesini bir kampanyayla ilişkilendirin. Bunu, campaignCreativeAssociations.insert() yöntemini çağırarak, kampanya ve reklam öğesi kimliklerini ileterek yapabilirsiniz.
    # 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

  1. Öğeleri yükleyin. Farklı reklam öğeleri, farklı tür ve miktarlarda öğe gerektirir. Ayrıntılar için Öğeleri Yükleme bölümüne bakın. Bir öğeyi başarıyla yüklediğiniz her seferde, yanıtta bir assetIdenfitier alırsınız. Reklam öğenizde bu öğelere referans vermek için geleneksel bir kimlik yerine depolanan dosya adını ve türünü kullanırsınız.
  2. Bir reklam öğesi oluşturun ve uygun değerleri atayın. Bir Creative örneği oluşturun ve uygun type değerini ayarlayın. Bir Creative nesnesini kaydettikten sonra onun türünü değiştiremezsiniz. Öğeleri AssetIdentifier ve role değerlerine göre belirtin.
    # 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'
    )
    
  3. Reklam öğesini kaydedin. Bunu creatives.insert() numaralı telefonu arayarak yapabilirsiniz. Bu reklam öğesinin ilişkilendirileceği reklamveren kimliğinin belirtilmesi gerekir.
    # Insert the creative.
    result = service.insert_creative(profile_id, creative)
    
  4. (İsteğe bağlı) Reklam öğesini bir kampanyayla ilişkilendirin. Bunu, campaignCreativeAssociations.insert() yöntemini çağırarak, kampanya ve reklam öğesi kimliklerini ileterek yapabilirsiniz.
    # 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)
    

Bir reklam oluşturun

Ad, Creative ile Placement arasındaki bağlantıdır. Bir Ad, bir veya daha fazla yerleşime bağlanabilir ve bir veya daha fazla reklam öğesini barındırır.

Ad öğelerini açık veya dolaylı olarak oluşturabilirsiniz.

Açıkça

C#

  1. Bu reklamın ilişkilendirilmesi gereken her bir reklam öğesi için bir CreativeAssignment nesnesi oluşturun. CreativeAssignment.active alanını true olarak ayarladığınızdan emin olun.
    // 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;
    
  2. CreativeAssignment öğelerini depolamak için bir CreativeRotation nesnesi oluşturun. Rotasyon grubu oluşturuyorsanız diğer zorunlu reklam rotasyonu alanlarını ayarladığınızdan emin olun.
    // Create a creative rotation.
    CreativeRotation creativeRotation = new CreativeRotation();
    creativeRotation.CreativeAssignments = new List<CreativeAssignment>() {
        creativeAssignment
    };
    
  3. Bu reklamın ilişkilendirilmesi gereken her bir yerleşim için bir PlacementAssignment nesnesi oluşturun. PlacementAssignment.active alanını true olarak ayarladığınızdan emin olun.
    // Create a placement assignment.
    PlacementAssignment placementAssignment = new PlacementAssignment();
    placementAssignment.Active = true;
    placementAssignment.PlacementId = placementId;
    
  4. Bir Ad nesnesi oluşturun. CreativeRotation'ı Ad nesnesinin creativeRotation alanına ve yerleşimAtamaları'nı Ad nesnesinin placementAssignments dizisine ayarlayın.
    // 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";
    
  5. ads.insert() numaralı telefonu arayarak reklamı kaydedin.
    // Insert the rotation group.
    Ad result = service.Ads.Insert(rotationGroup, profileId).Execute();
    

Java

  1. Bu reklamın ilişkilendirilmesi gereken her bir reklam öğesi için bir CreativeAssignment nesnesi oluşturun. CreativeAssignment.active alanını true olarak ayarladığınızdan emin olun.
    // 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);
    
  2. CreativeAssignment öğelerini depolamak için bir CreativeRotation nesnesi oluşturun. Rotasyon grubu oluşturuyorsanız diğer zorunlu reklam rotasyonu alanlarını ayarladığınızdan emin olun.
    // Create a creative rotation.
    CreativeRotation creativeRotation = new CreativeRotation();
    creativeRotation.setCreativeAssignments(ImmutableList.of(creativeAssignment));
    
  3. Bu reklamın ilişkilendirilmesi gereken her bir yerleşim için bir PlacementAssignment nesnesi oluşturun. PlacementAssignment.active alanını true olarak ayarladığınızdan emin olun.
    // Create a placement assignment.
    PlacementAssignment placementAssignment = new PlacementAssignment();
    placementAssignment.setActive(true);
    placementAssignment.setPlacementId(placementId);
    
  4. Bir Ad nesnesi oluşturun. CreativeRotation'ı Ad nesnesinin creativeRotation alanına ve yerleşimAtamaları'nı Ad nesnesinin placementAssignments dizisine ayarlayın.
    // 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");
    
  5. ads.insert() numaralı telefonu arayarak reklamı kaydedin.
    // Insert the rotation group.
    Ad result = reporting.ads().insert(profileId, rotationGroup).execute();
    

PHP

  1. Bu reklamın ilişkilendirilmesi gereken her bir reklam öğesi için bir CreativeAssignment nesnesi oluşturun. CreativeAssignment.active alanını true olarak ayarladığınızdan emin olun.
    // 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);
    
  2. CreativeAssignment öğelerini depolamak için bir CreativeRotation nesnesi oluşturun. Rotasyon grubu oluşturuyorsanız diğer zorunlu reklam rotasyonu alanlarını ayarladığınızdan emin olun.
    // Create a creative rotation.
    $creativeRotation = new Google_Service_Dfareporting_CreativeRotation();
    $creativeRotation->setCreativeAssignments([$creativeAssignment]);
    
  3. Bu reklamın ilişkilendirilmesi gereken her bir yerleşim için bir PlacementAssignment nesnesi oluşturun. PlacementAssignment.active alanını true olarak ayarladığınızdan emin olun.
    // Create a placement assignment.
    $placementAssignment =
        new Google_Service_Dfareporting_PlacementAssignment();
    $placementAssignment->setActive(true);
    $placementAssignment->setPlacementId($values['placement_id']);
    
  4. Bir Ad nesnesi oluşturun. CreativeRotation'ı Ad nesnesinin creativeRotation alanına ve yerleşimAtamaları'nı Ad nesnesinin placementAssignments dizisine ayarlayın.
    // 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');
    
  5. ads.insert() numaralı telefonu arayarak reklamı kaydedin.
    $result = $this->service->ads->insert($values['user_profile_id'], $ad);
    

Python

  1. Bu reklamın ilişkilendirilmesi gereken her bir reklam öğesi için bir CreativeAssignment nesnesi oluşturun. CreativeAssignment.active alanını true olarak ayarladığınızdan emin olun.
    # Construct creative assignment.
    creative_assignment = {
        'active': 'true',
        'creativeId': creative_id,
        'clickThroughUrl': {
            'defaultLandingPage': 'true'
        }
    }
    
  2. CreativeAssignment öğelerini depolamak için bir CreativeRotation nesnesi oluşturun. Rotasyon grubu oluşturuyorsanız diğer zorunlu reklam rotasyonu alanlarını ayarladığınızdan emin olun.
    # Construct creative rotation.
    creative_rotation = {
        'creativeAssignments': [creative_assignment],
        'type': 'CREATIVE_ROTATION_TYPE_RANDOM',
        'weightCalculationStrategy': 'WEIGHT_STRATEGY_OPTIMIZED'
    }
    
  3. Bu reklamın ilişkilendirilmesi gereken her bir yerleşim için bir PlacementAssignment nesnesi oluşturun. PlacementAssignment.active alanını true olarak ayarladığınızdan emin olun.
    # Construct placement assignment.
    placement_assignment = {
        'active': 'true',
        'placementId': placement_id,
    }
    
  4. Bir Ad nesnesi oluşturun. CreativeRotation'ı Ad nesnesinin creativeRotation alanına ve yerleşimAtamaları'nı Ad nesnesinin placementAssignments dizisine ayarlayın.
    # 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'
    }
    
  5. ads.insert() numaralı telefonu arayarak reklamı kaydedin.
    request = service.ads().insert(profileId=profile_id, body=ad)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Bu reklamın ilişkilendirilmesi gereken her bir reklam öğesi için bir CreativeAssignment nesnesi oluşturun. CreativeAssignment.active alanını true olarak ayarladığınızdan emin olun.
    # 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
        )
      )
    
  2. CreativeAssignment öğelerini depolamak için bir CreativeRotation nesnesi oluşturun. Rotasyon grubu oluşturuyorsanız diğer zorunlu reklam rotasyonu alanlarını ayarladığınızdan emin olun.
    # 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'
    )
    
  3. Bu reklamın ilişkilendirilmesi gereken her bir yerleşim için bir PlacementAssignment nesnesi oluşturun. PlacementAssignment.active alanını true olarak ayarladığınızdan emin olun.
    # Construct placement assignment.
    placement_assignment =
      DfareportingUtils::API_NAMESPACE::PlacementAssignment.new(
        active: true,
        placement_id: placement_id
      )
    
  4. Bir Ad nesnesi oluşturun. CreativeRotation'ı Ad nesnesinin creativeRotation alanına ve yerleşimAtamaları'nı Ad nesnesinin placementAssignments dizisine ayarlayın.
    # 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'
    )
    
  5. ads.insert() numaralı telefonu arayarak reklamı kaydedin.
    result = service.insert_ad(profile_id, ad)
    

Üstü kapalı

C#

  1. Bir Placement oluşturup kaydedin.
  2. Bir Creative oluşturup kaydedin.
  3. campaignCreativeAssociations.insert() yöntemini çağırarak Creative öğesini, Placement için kullanılan Campaign ile ilişkilendirin (Reklam öğesi oluşturma bölümündeki 4. adıma bakın). Bu işlem, hem reklam öğesi hem de yerleşim ile ilişkilendirilen bir varsayılan reklam oluşturur.
    // 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

  1. Bir Placement oluşturup kaydedin.
  2. Bir Creative oluşturup kaydedin.
  3. campaignCreativeAssociations.insert() yöntemini çağırarak Creative öğesini, Placement için kullanılan Campaign ile ilişkilendirin (Reklam öğesi oluşturma bölümündeki 4. adıma bakın). Bu işlem, hem reklam öğesi hem de yerleşim ile ilişkilendirilen bir varsayılan reklam oluşturur.
    // 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

  1. Bir Placement oluşturup kaydedin.
  2. Bir Creative oluşturup kaydedin.
  3. campaignCreativeAssociations.insert() yöntemini çağırarak Creative öğesini, Placement için kullanılan Campaign ile ilişkilendirin (Reklam öğesi oluşturma bölümündeki 4. adıma bakın). Bu işlem, hem reklam öğesi hem de yerleşim ile ilişkilendirilen bir varsayılan reklam oluşturur.
    $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

  1. Bir Placement oluşturup kaydedin.
  2. Bir Creative oluşturup kaydedin.
  3. campaignCreativeAssociations.insert() yöntemini çağırarak Creative öğesini, Placement için kullanılan Campaign ile ilişkilendirin (Reklam öğesi oluşturma bölümündeki 4. adıma bakın). Bu işlem, hem reklam öğesi hem de yerleşim ile ilişkilendirilen bir varsayılan reklam oluşturur.
    # 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

  1. Bir Placement oluşturup kaydedin.
  2. Bir Creative oluşturup kaydedin.
  3. campaignCreativeAssociations.insert() yöntemini çağırarak Creative öğesini, Placement için kullanılan Campaign ile ilişkilendirin (Reklam öğesi oluşturma bölümündeki 4. adıma bakın). Bu işlem, hem reklam öğesi hem de yerleşim ile ilişkilendirilen bir varsayılan reklam oluşturur.
    # 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)
    

Reklam oluşturmak, Ad oluşturma işleminin fazladan adımını dolaylı olarak kaydeder. Bunun yalnızca, kampanyanızda belirtilen boyutta herhangi bir varsayılan reklam zaten yoksa yapılabildiğini unutmayın.

Nesne arama

Bulunacak nesneyi tanımlayan hizmet tarafından sunulan list() işlemini çağırarak ve söz konusu nesne türü için uygun isteğe bağlı ölçütler belirterek nesne arayabilirsiniz. Dolayısıyla, örneğin, Reklam nesnelerini aramak için ads.list() yöntemini çağırırsınız. İsteğe bağlı ölçütler, söz konusu nesne için uygun olan bir özellik grubunu gösterir. Aramak istediğiniz kadar özellik doldurabilirsiniz. Arama yalnızca ölçütlerinizin tümünü karşılayan nesneleri döndürür; herhangi bir ölçütle eşleşen bir arama yapamazsınız. Dizeler * joker karakterini destekler, büyük/küçük harfe duyarlı değildir ve daha büyük dizeler içinde eşleşir.

Performansı artırmak için fields parametresi kullanılarak kısmi yanıtlar istenebilir. Bu, sunucuya tam kaynak gösterimi yerine yalnızca belirttiğiniz alanları döndürmesi talimatını verir. Bu konuyla ilgili daha fazla bilgiyi Performans İpuçları kılavuzunda bulabilirsiniz.

Sayfalama

Bazen bir list() isteği için tüm sonuçların alınması istenmeyebilir. Örneğin, binlercelerden oluşan bir havuzdan en yeni 10 reklam ilginizi çekebilir. Bu konuda yardımcı olmak için birçok list() yöntemi, sayfalama olarak bilinen bir işlemle daha az sonuç istemenize olanak tanır.

Sayfalara ayırmayı destekleyen yöntemler, sayfalar adı verilen gruplarda sonuçların alt kümelerini döndürür. Sayfa başına maksimum sonuç sayısı 1000'dir (varsayılan). Sayfa başına sonuç sayısını maxResults ayarlayarak değiştirebilir ve yanıtta döndürülen nextPageToken öğesini kullanarak sayfalar arasında yineleme yapabilirsiniz:

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 etiketleri oluşturma

Floodlight etiketleri, bir sayfaya yerleştirilen HTML etiketleridir ve site içindeki kullanıcı işlemlerini (ör. satın alma işlemleri) izlemek için kullanılırlar. Floodlight etiketleri oluşturmak için FloodlightActivityGroup öğesine ait bir FloodlightActivity öğesine ihtiyacınız vardır:

C#

  1. name, type ve floodlightConfigurationId değerlerini ileten yeni bir Floodlight etkinlik grubu oluşturun.
    // Create the floodlight activity group.
    FloodlightActivityGroup floodlightActivityGroup = new FloodlightActivityGroup();
    floodlightActivityGroup.Name = groupName;
    floodlightActivityGroup.FloodlightConfigurationId = floodlightConfigurationId;
    floodlightActivityGroup.Type = "COUNTER";
    
  2. floodlightActivityGroups.insert() yöntemini çağırarak Floodlight etkinlik grubunu kaydedin. Bu işlem, yeni grubun kimliğini döndürür.
    // Insert the activity group.
    FloodlightActivityGroup result =
        service.FloodlightActivityGroups.Insert(floodlightActivityGroup, profileId).Execute();
    
  3. Yeni bir Floodlight etkinliği oluşturun ve bu etkinliğe, oluşturduğunuz Floodlight etkinlik grubunun kimliğini ve diğer tüm zorunlu alanları atayın.
    // 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;
    
  4. Yeni etkinliğin kimliğini döndürecek olan floodlightActivities.insert() yöntemini çağırarak yeni etkinliği kaydedin.
    // Create the floodlight tag activity.
    FloodlightActivity result =
        service.FloodlightActivities.Insert(activity, profileId).Execute();
    
  5. Yeni etkinliğinizin floodlightActivityId kısmıyla floodlightActivities.generatetag() yöntemini çağırarak etiketleri oluşturun. Etiketleri, reklamverenin web sitesinde web yöneticisine gönderin.
    // Generate the floodlight activity tag.
    FloodlightActivitiesResource.GeneratetagRequest request =
        service.FloodlightActivities.Generatetag(profileId);
    request.FloodlightActivityId = activityId;
    
    FloodlightActivitiesGenerateTagResponse response = request.Execute();
    

Java

  1. name, type ve floodlightConfigurationId değerlerini ileten yeni bir Floodlight etkinlik grubu oluşturun.
    // Create the floodlight activity group.
    FloodlightActivityGroup floodlightActivityGroup = new FloodlightActivityGroup();
    floodlightActivityGroup.setName(groupName);
    floodlightActivityGroup.setFloodlightConfigurationId(floodlightConfigurationId);
    floodlightActivityGroup.setType("COUNTER");
    
  2. floodlightActivityGroups.insert() yöntemini çağırarak Floodlight etkinlik grubunu kaydedin. Bu işlem, yeni grubun kimliğini döndürür.
    // Insert the activity group.
    FloodlightActivityGroup result =
        reporting.floodlightActivityGroups().insert(profileId, floodlightActivityGroup).execute();
    
  3. Yeni bir Floodlight etkinliği oluşturun ve bu etkinliğe, oluşturduğunuz Floodlight etkinlik grubunun kimliğini ve diğer tüm zorunlu alanları atayın.
    // 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");
    
  4. Yeni etkinliğin kimliğini döndürecek olan floodlightActivities.insert() yöntemini çağırarak yeni etkinliği kaydedin.
    // Create the floodlight tag activity.
    FloodlightActivity result =
        reporting.floodlightActivities().insert(profileId, activity).execute();
    
  5. Yeni etkinliğinizin floodlightActivityId kısmıyla floodlightActivities.generatetag() yöntemini çağırarak etiketleri oluşturun. Etiketleri, reklamverenin web sitesinde web yöneticisine gönderin.
    // Generate the floodlight activity tag.
    Generatetag request = reporting.floodlightActivities().generatetag(profileId);
    request.setFloodlightActivityId(activityId);
    
    FloodlightActivitiesGenerateTagResponse response = request.execute();
    

PHP

  1. name, type ve floodlightConfigurationId değerlerini ileten yeni bir Floodlight etkinlik grubu oluşturun.
    $group = new Google_Service_Dfareporting_FloodlightActivityGroup();
    $group->setFloodlightConfigurationId($values['configuration_id']);
    $group->setName($values['group_name']);
    $group->setType('COUNTER');
    
  2. floodlightActivityGroups.insert() yöntemini çağırarak Floodlight etkinlik grubunu kaydedin. Bu işlem, yeni grubun kimliğini döndürür.
    $result = $this->service->floodlightActivityGroups->insert(
        $values['user_profile_id'],
        $group
    );
    
  3. Yeni bir Floodlight etkinliği oluşturun ve bu etkinliğe, oluşturduğunuz Floodlight etkinlik grubunun kimliğini ve diğer tüm zorunlu alanları atayın.
    $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']);
    
  4. Yeni etkinliğin kimliğini döndürecek olan floodlightActivities.insert() yöntemini çağırarak yeni etkinliği kaydedin.
    $result = $this->service->floodlightActivities->insert(
        $values['user_profile_id'],
        $activity
    );
    
  5. Yeni etkinliğinizin floodlightActivityId kısmıyla floodlightActivities.generatetag() yöntemini çağırarak etiketleri oluşturun. Etiketleri, reklamverenin web sitesinde web yöneticisine gönderin.
    $result = $this->service->floodlightActivities->generatetag(
        $values['user_profile_id'],
        ['floodlightActivityId' => $values['activity_id']]
    );
    

Python

  1. name, type ve floodlightConfigurationId değerlerini ileten yeni bir Floodlight etkinlik grubu oluşturun.
    # Construct and save floodlight activity group.
    activity_group = {
        'name': 'Test Floodlight Activity Group',
        'floodlightConfigurationId': floodlight_config_id,
        'type': 'COUNTER'
    }
    
  2. floodlightActivityGroups.insert() yöntemini çağırarak Floodlight etkinlik grubunu kaydedin. Bu işlem, yeni grubun kimliğini döndürür.
    request = service.floodlightActivityGroups().insert(
        profileId=profile_id, body=activity_group)
    
  3. Yeni bir Floodlight etkinliği oluşturun ve bu etkinliğe, oluşturduğunuz Floodlight etkinlik grubunun kimliğini ve diğer tüm zorunlu alanları atayın.
    # 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'
    }
    
  4. Yeni etkinliğin kimliğini döndürecek olan floodlightActivities.insert() yöntemini çağırarak yeni etkinliği kaydedin.
    request = service.floodlightActivities().insert(
        profileId=profile_id, body=floodlight_activity)
    
  5. Yeni etkinliğinizin floodlightActivityId kısmıyla floodlightActivities.generatetag() yöntemini çağırarak etiketleri oluşturun. Etiketleri, reklamverenin web sitesinde web yöneticisine gönderin.
    # Construct the request.
    request = service.floodlightActivities().generatetag(
        profileId=profile_id, floodlightActivityId=activity_id)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. name, type ve floodlightConfigurationId değerlerini ileten yeni bir Floodlight etkinlik grubu oluşturun.
    # 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'
      )
    
  2. floodlightActivityGroups.insert() yöntemini çağırarak Floodlight etkinlik grubunu kaydedin. Bu işlem, yeni grubun kimliğini döndürür.
    # Insert the floodlight activity group.
    result = service.insert_floodlight_activity_group(profile_id, activity_group)
    
  3. Yeni bir Floodlight etkinliği oluşturun ve bu etkinliğe, oluşturduğunuz Floodlight etkinlik grubunun kimliğini ve diğer tüm zorunlu alanları atayın.
    # 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))
    )
    
  4. Yeni etkinliğin kimliğini döndürecek olan floodlightActivities.insert() yöntemini çağırarak yeni etkinliği kaydedin.
    # Insert the floodlight activity.
    result = service.insert_floodlight_activity(profile_id, activity)
    
  5. Yeni etkinliğinizin floodlightActivityId kısmıyla floodlightActivities.generatetag() yöntemini çağırarak etiketleri oluşturun. Etiketleri, reklamverenin web sitesinde web yöneticisine gönderin.
    # Construct the request.
    result = service.generatetag_floodlight_activity(profile_id,
      floodlight_activity_id: activity_id)
    

Yerleşim etiketleri oluşturma

Son adım, reklamlarınızı görüntülemek üzere yayıncıya gönderilecek HTML etiketlerinin oluşturulmasıdır. Etiketleri API aracılığıyla oluşturmak için placementIds ve tagFormats kümesini belirterek placements.generatetags() için bir istekte bulunun.

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])