Häufige Trafficking-Aufgaben

Auf dieser Seite wird beschrieben, wie Sie einige der gängigsten Trafficking-Aufgaben mithilfe der DCM/DFA Reporting and Trafficking API ausführen.

Allgemeine Programmiertipps

  • Erforderliche und optionale Eigenschaften und Parameter: In der Referenzdokumentation erfahren Sie, ob eine Eigenschaft oder ein Parameter für einen API-Aufruf erforderlich ist.
  • Suchen mit Platzhalternamen: Sie können das Sternchen (*) als Platzhalter verwenden, wenn Sie nach Objektnamen suchen. Ein Sternchen entspricht null oder mehr einem beliebigen Zeichen. Die API unterstützt auch eine implizite Teilstring-Suche, sodass bei einer Suche nach "abc" auch implizit nach "*abc*" gesucht wird.
  • Aktualisieren und Patchen: Zum Ändern eines vorhandenen Objekts haben Sie zwei Möglichkeiten:
    1. Aktualisierung: Wenn Sie ein Objekt aktualisieren, werden beim Einfügen alle Felder überschrieben. Es ist wichtig, das Objekt zu laden, das Sie aktualisieren möchten, und Änderungen daran vorzunehmen. Andernfalls werden alle Felder, die in der Aktualisierungsanfrage nicht vorhanden sind, nicht festgelegt.
    2. Patching: Beim Patchen werden beim Einfügen nur die angegebenen Felder überschrieben. In diesem Fall kannst du ein neues Objekt erstellen, ihm dieselbe ID wie das zu aktualisierende Objekt zuweisen, die zu aktualisierenden Felder festlegen und die Patchanfrage ausführen.
  • Größen: Physische Abmessungen werden durch ein Size-Objekt dargestellt, das durch den Größendienst definiert wird. Das Konto stellt eine Reihe von Standardgrößen bereit, und Sie können dieser Liste eigene benutzerdefinierte Größen hinzufügen.
  • Datums- und Uhrzeitangaben: Sie können Datum und Uhrzeit im RFC 3339-Format in lokalen Zeitzonen speichern. Alle von der API zurückgegebenen Werte sind in UTC. Dies unterscheidet sich von der Website, auf der Datum und Uhrzeit in Ihrer konfigurierten Zeitzone (standardmäßig Amerika/New York Zeit) angezeigt werden.

Einen Werbetreibenden erstellen

C#

  1. Erstellen Sie ein Advertiser-Objekt und legen Sie die erforderlichen Attribute name und status fest.
    // Create the advertiser structure.
    Advertiser advertiser = new Advertiser();
    advertiser.Name = advertiserName;
    advertiser.Status = "APPROVED";
    
  2. Rufen Sie advertisers.insert() auf, um den Werbetreibenden zu speichern.
    // Create the advertiser.
    Advertiser result = service.Advertisers.Insert(advertiser, profileId).Execute();
    

Java

  1. Erstellen Sie ein Advertiser-Objekt und legen Sie die erforderlichen Attribute name und status fest.
    // Create the advertiser structure.
    Advertiser advertiser = new Advertiser();
    advertiser.setName(advertiserName);
    advertiser.setStatus("APPROVED");
    
  2. Rufen Sie advertisers.insert() auf, um den Werbetreibenden zu speichern.
    // Create the advertiser.
    Advertiser result = reporting.advertisers().insert(profileId, advertiser).execute();
    

PHP

  1. Erstellen Sie ein Advertiser-Objekt und legen Sie die erforderlichen Attribute name und status fest.
    $advertiser = new Google_Service_Dfareporting_Advertiser();
    $advertiser->setName($values['advertiser_name']);
    $advertiser->setStatus('APPROVED');
    
  2. Rufen Sie advertisers.insert() auf, um den Werbetreibenden zu speichern.
    $result = $this->service->advertisers->insert(
        $values['user_profile_id'],
        $advertiser
    );
    

Python

  1. Erstellen Sie ein Advertiser-Objekt und legen Sie die erforderlichen Attribute name und status fest.
    # Construct and save advertiser.
    advertiser = {
        'name': 'Test Advertiser',
        'status': 'APPROVED'
    }
    
  2. Rufen Sie advertisers.insert() auf, um den Werbetreibenden zu speichern.
    request = service.advertisers().insert(
        profileId=profile_id, body=advertiser)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Erstellen Sie ein Advertiser-Objekt und legen Sie die erforderlichen Attribute name und status fest.
    # Create a new advertiser resource to insert.
    advertiser = DfareportingUtils::API_NAMESPACE::Advertiser.new(
      name: format('Example Advertiser #%s', SecureRandom.hex(3)),
      status: 'APPROVED'
    )
    
  2. Rufen Sie advertisers.insert() auf, um den Werbetreibenden zu speichern.
    # Insert the advertiser.
    result = service.insert_advertiser(profile_id, advertiser)
    

Kampagne erstellen

C#

  1. Erstellen Sie ein Campaign-Objekt und legen Sie seine erforderlichen Attribute fest:

    • advertiserId: Der Werbetreibende, mit dem diese Kampagne verknüpft werden soll.
    • name: Dieses Feld muss für alle Kampagnen dieses Werbetreibenden eindeutig sein.
    • defaultLandingPageId: Eine Landingpage, auf die Nutzer weitergeleitet werden, wenn sie auf eine Anzeige in dieser Kampagne klicken, falls der Anzeige keine Anzeige zugewiesen ist. Sie können vorhandene Landingpages aufrufen, indem Sie advertiserLandingPages.list aufrufen, oder advertiserLandingPages.insert aufrufen, um eine neue Landingpage zu erstellen.
    • Start- und Enddatum: Diese Daten müssen in der Zukunft liegen und können bis zum Tag genau sein. Weitere Informationen finden Sie im Aufzählungspunkt Allgemeine Codierungsinformationen. Datumsangaben für einzelne Anzeigen können das Enddatum überschreiten, damit ein Publisher versuchen kann, einen Vertrag für eine bestimmte Anzahl von Aktionen zu erfüllen, wenn er nicht bis zum angegebenen Enddatum der Kampagne gefüllt wurde.
    // 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. Rufen Sie campaigns.insert() auf, um die Kampagne zu speichern.

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

Java

  1. Erstellen Sie ein Campaign-Objekt und legen Sie seine erforderlichen Attribute fest:

    • advertiserId: Der Werbetreibende, mit dem diese Kampagne verknüpft werden soll.
    • name: Dieses Feld muss für alle Kampagnen dieses Werbetreibenden eindeutig sein.
    • defaultLandingPageId: Eine Landingpage, auf die Nutzer weitergeleitet werden, wenn sie auf eine Anzeige in dieser Kampagne klicken, falls der Anzeige keine Anzeige zugewiesen ist. Sie können vorhandene Landingpages aufrufen, indem Sie advertiserLandingPages.list aufrufen, oder advertiserLandingPages.insert aufrufen, um eine neue Landingpage zu erstellen.
    • Start- und Enddatum: Diese Daten müssen in der Zukunft liegen und können bis zum Tag genau sein. Weitere Informationen finden Sie im Aufzählungspunkt Allgemeine Codierungsinformationen. Datumsangaben für einzelne Anzeigen können das Enddatum überschreiten, damit ein Publisher versuchen kann, einen Vertrag für eine bestimmte Anzahl von Aktionen zu erfüllen, wenn er nicht bis zum angegebenen Enddatum der Kampagne gefüllt wurde.
    // 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. Rufen Sie campaigns.insert() auf, um die Kampagne zu speichern.

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

PHP

  1. Erstellen Sie ein Campaign-Objekt und legen Sie seine erforderlichen Attribute fest:

    • advertiserId: Der Werbetreibende, mit dem diese Kampagne verknüpft werden soll.
    • name: Dieses Feld muss für alle Kampagnen dieses Werbetreibenden eindeutig sein.
    • defaultLandingPageId: Eine Landingpage, auf die Nutzer weitergeleitet werden, wenn sie auf eine Anzeige in dieser Kampagne klicken, falls der Anzeige keine Anzeige zugewiesen ist. Sie können vorhandene Landingpages aufrufen, indem Sie advertiserLandingPages.list aufrufen, oder advertiserLandingPages.insert aufrufen, um eine neue Landingpage zu erstellen.
    • Start- und Enddatum: Diese Daten müssen in der Zukunft liegen und können bis zum Tag genau sein. Weitere Informationen finden Sie im Aufzählungspunkt Allgemeine Codierungsinformationen. Datumsangaben für einzelne Anzeigen können das Enddatum überschreiten, damit ein Publisher versuchen kann, einen Vertrag für eine bestimmte Anzahl von Aktionen zu erfüllen, wenn er nicht bis zum angegebenen Enddatum der Kampagne gefüllt wurde.
    $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. Rufen Sie campaigns.insert() auf, um die Kampagne zu speichern.

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

Python

  1. Erstellen Sie ein Campaign-Objekt und legen Sie seine erforderlichen Attribute fest:

    • advertiserId: Der Werbetreibende, mit dem diese Kampagne verknüpft werden soll.
    • name: Dieses Feld muss für alle Kampagnen dieses Werbetreibenden eindeutig sein.
    • defaultLandingPageId: Eine Landingpage, auf die Nutzer weitergeleitet werden, wenn sie auf eine Anzeige in dieser Kampagne klicken, falls der Anzeige keine Anzeige zugewiesen ist. Sie können vorhandene Landingpages aufrufen, indem Sie advertiserLandingPages.list aufrufen, oder advertiserLandingPages.insert aufrufen, um eine neue Landingpage zu erstellen.
    • Start- und Enddatum: Diese Daten müssen in der Zukunft liegen und können bis zum Tag genau sein. Weitere Informationen finden Sie im Aufzählungspunkt Allgemeine Codierungsinformationen. Datumsangaben für einzelne Anzeigen können das Enddatum überschreiten, damit ein Publisher versuchen kann, einen Vertrag für eine bestimmte Anzahl von Aktionen zu erfüllen, wenn er nicht bis zum angegebenen Enddatum der Kampagne gefüllt wurde.
    # 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. Rufen Sie campaigns.insert() auf, um die Kampagne zu speichern.

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

Ruby

  1. Erstellen Sie ein Campaign-Objekt und legen Sie seine erforderlichen Attribute fest:

    • advertiserId: Der Werbetreibende, mit dem diese Kampagne verknüpft werden soll.
    • name: Dieses Feld muss für alle Kampagnen dieses Werbetreibenden eindeutig sein.
    • defaultLandingPageId: Eine Landingpage, auf die Nutzer weitergeleitet werden, wenn sie auf eine Anzeige in dieser Kampagne klicken, falls der Anzeige keine Anzeige zugewiesen ist. Sie können vorhandene Landingpages aufrufen, indem Sie advertiserLandingPages.list aufrufen, oder advertiserLandingPages.insert aufrufen, um eine neue Landingpage zu erstellen.
    • Start- und Enddatum: Diese Daten müssen in der Zukunft liegen und können bis zum Tag genau sein. Weitere Informationen finden Sie im Aufzählungspunkt Allgemeine Codierungsinformationen. Datumsangaben für einzelne Anzeigen können das Enddatum überschreiten, damit ein Publisher versuchen kann, einen Vertrag für eine bestimmte Anzahl von Aktionen zu erfüllen, wenn er nicht bis zum angegebenen Enddatum der Kampagne gefüllt wurde.
    # 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. Rufen Sie campaigns.insert() auf, um die Kampagne zu speichern.

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

Placement erstellen

C#

  1. Erstellen Sie ein Placement-Objekt und legen Sie die erforderlichen Placement-Eigenschaften fest, einschließlich campaignId und siteId. Legen Sie außerdem den Placement-Typ und die Größe genau für das Placement fest, das Sie mit Ihrer Website ausgehandelt haben.
    // 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. Erstellen Sie ein neues PricingSchedule-Objekt, das dem Placement zugewiesen werden soll.
    // 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. Speichern Sie das Placement-Objekt, indem Sie placements.insert() aufrufen. Die zurückgegebene ID muss gespeichert werden, wenn Sie sie einer Anzeige oder einem Creative zuweisen möchten.
    // Insert the placement.
    Placement result = service.Placements.Insert(placement, profileId).Execute();
    

Java

  1. Erstellen Sie ein Placement-Objekt und legen Sie die erforderlichen Placement-Eigenschaften fest, einschließlich campaignId und siteId. Legen Sie außerdem den Placement-Typ und die Größe genau für das Placement fest, das Sie mit Ihrer Website ausgehandelt haben.
    // 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. Erstellen Sie ein neues PricingSchedule-Objekt, das dem Placement zugewiesen werden soll.
    // 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. Speichern Sie das Placement-Objekt, indem Sie placements.insert() aufrufen. Die zurückgegebene ID muss gespeichert werden, wenn Sie sie einer Anzeige oder einem Creative zuweisen möchten.
    // Insert the placement.
    Placement result = reporting.placements().insert(profileId, placement).execute();
    

PHP

  1. Erstellen Sie ein Placement-Objekt und legen Sie die erforderlichen Placement-Eigenschaften fest, einschließlich campaignId und siteId. Legen Sie außerdem den Placement-Typ und die Größe genau für das Placement fest, das Sie mit Ihrer Website ausgehandelt haben.
    $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. Erstellen Sie ein neues PricingSchedule-Objekt, das dem Placement zugewiesen werden soll.
    // 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. Speichern Sie das Placement-Objekt, indem Sie placements.insert() aufrufen. Die zurückgegebene ID muss gespeichert werden, wenn Sie sie einer Anzeige oder einem Creative zuweisen möchten.
    // Insert the placement.
    $result = $this->service->placements->insert(
        $values['user_profile_id'],
        $placement
    );
    

Python

  1. Erstellen Sie ein Placement-Objekt und legen Sie die erforderlichen Placement-Eigenschaften fest, einschließlich campaignId und siteId. Legen Sie außerdem den Placement-Typ und die Größe genau für das Placement fest, das Sie mit Ihrer Website ausgehandelt haben.
    # 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. Erstellen Sie ein neues PricingSchedule-Objekt, das dem Placement zugewiesen werden soll.
    # Set the pricing schedule for the placement.
    placement['pricingSchedule'] = {
        'startDate': campaign['startDate'],
        'endDate': campaign['endDate'],
        'pricingType': 'PRICING_TYPE_CPM'
    }
    
  3. Speichern Sie das Placement-Objekt, indem Sie placements.insert() aufrufen. Die zurückgegebene ID muss gespeichert werden, wenn Sie sie einer Anzeige oder einem Creative zuweisen möchten.
    request = service.placements().insert(profileId=profile_id, body=placement)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Erstellen Sie ein Placement-Objekt und legen Sie die erforderlichen Placement-Eigenschaften fest, einschließlich campaignId und siteId. Legen Sie außerdem den Placement-Typ und die Größe genau für das Placement fest, das Sie mit Ihrer Website ausgehandelt haben.
    # 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. Erstellen Sie ein neues PricingSchedule-Objekt, das dem Placement zugewiesen werden soll.
    # 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. Speichern Sie das Placement-Objekt, indem Sie placements.insert() aufrufen. Die zurückgegebene ID muss gespeichert werden, wenn Sie sie einer Anzeige oder einem Creative zuweisen möchten.
    # Insert the placement strategy.
    result = service.insert_placement(profile_id, placement)
    

Assets hochladen

Sie können viele Arten von Assets über einen Prozess hochladen, der als Medien-Upload bezeichnet wird. Obwohl dieses Verfahren für alle Creative-Typen ähnlich ist, müssen bei einigen Typen möglicherweise bestimmte Eigenschaften als Metadaten übergeben werden, damit sie ordnungsgemäß verwendet werden können.

C#

  1. Erstellen Sie ein assetIdentifier-Objekt und legen Sie die erforderlichen Attribute fest. Für alle Assets muss unabhängig vom Typ oder ihrer Verwendung ein assetIdentifier angegeben werden. Beim Zuweisen des Assets zu einem Creative wird dieses Objekt verwendet, um auf das Asset zu verweisen. Die folgenden Attribute sind erforderlich:

    • Die name-Eigenschaft, die dem Namen des Assets auf dem Server entspricht Der Name muss eine Erweiterung haben, die den Dateityp angibt, z. B. .png oder .gif. Er wird dem Browser als Asset-Name angezeigt, muss jedoch nicht mit dem ursprünglichen Dateinamen übereinstimmen. Dieser Name kann von Campaign Manager 360 geändert werden, um ihn auf dem Server eindeutig zu machen. Prüfen Sie den Rückgabewert, um zu sehen, ob er geändert wurde.
    • Die type-Eigenschaft, die den Asset-Typ angibt. Mit dieser Eigenschaft wird festgelegt, mit welchen Creative-Typen dieses Asset verknüpft werden kann.
    // Create the creative asset ID and Metadata.
    CreativeAssetId assetId = new CreativeAssetId();
    assetId.Name = Path.GetFileName(assetFile);
    assetId.Type = assetType;
    
  2. Laden Sie die Datei durch Aufrufen von creativeAssets.insert() hoch. Führen Sie einen mehrteiligen Upload durch und übergeben Sie dabei sowohl die assetIdentifier als auch den Dateiinhalt als Teil derselben Anfrage. Bei Erfolg wird eine CreativeAsset-Ressource mit einer assetIdentifier zurückgegeben, mit der Sie dieses Asset einem Creative zuweisen.

    // 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. Erstellen Sie ein assetIdentifier-Objekt und legen Sie die erforderlichen Attribute fest. Für alle Assets muss unabhängig vom Typ oder ihrer Verwendung ein assetIdentifier angegeben werden. Beim Zuweisen des Assets zu einem Creative wird dieses Objekt verwendet, um auf das Asset zu verweisen. Die folgenden Attribute sind erforderlich:

    • Die name-Eigenschaft, die dem Namen des Assets auf dem Server entspricht Der Name muss eine Erweiterung haben, die den Dateityp angibt, z. B. .png oder .gif. Er wird dem Browser als Asset-Name angezeigt, muss jedoch nicht mit dem ursprünglichen Dateinamen übereinstimmen. Dieser Name kann von Campaign Manager 360 geändert werden, um ihn auf dem Server eindeutig zu machen. Prüfen Sie den Rückgabewert, um zu sehen, ob er geändert wurde.
    • Die type-Eigenschaft, die den Asset-Typ angibt. Mit dieser Eigenschaft wird festgelegt, mit welchen Creative-Typen dieses Asset verknüpft werden kann.
    // Create the creative asset ID and Metadata.
    CreativeAssetId assetId = new CreativeAssetId();
    assetId.setName(assetName);
    assetId.setType(assetType);
    
  2. Laden Sie die Datei durch Aufrufen von creativeAssets.insert() hoch. Führen Sie einen mehrteiligen Upload durch und übergeben Sie dabei sowohl die assetIdentifier als auch den Dateiinhalt als Teil derselben Anfrage. Bei Erfolg wird eine CreativeAsset-Ressource mit einer assetIdentifier zurückgegeben, mit der Sie dieses Asset einem Creative zuweisen.

    // 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. Erstellen Sie ein assetIdentifier-Objekt und legen Sie die erforderlichen Attribute fest. Für alle Assets muss unabhängig vom Typ oder ihrer Verwendung ein assetIdentifier angegeben werden. Beim Zuweisen des Assets zu einem Creative wird dieses Objekt verwendet, um auf das Asset zu verweisen. Die folgenden Attribute sind erforderlich:

    • Die name-Eigenschaft, die dem Namen des Assets auf dem Server entspricht Der Name muss eine Erweiterung haben, die den Dateityp angibt, z. B. .png oder .gif. Er wird dem Browser als Asset-Name angezeigt, muss jedoch nicht mit dem ursprünglichen Dateinamen übereinstimmen. Dieser Name kann von Campaign Manager 360 geändert werden, um ihn auf dem Server eindeutig zu machen. Prüfen Sie den Rückgabewert, um zu sehen, ob er geändert wurde.
    • Die type-Eigenschaft, die den Asset-Typ angibt. Mit dieser Eigenschaft wird festgelegt, mit welchen Creative-Typen dieses Asset verknüpft werden kann.
    $assetId = new Google_Service_Dfareporting_CreativeAssetId();
    $assetId->setName($asset['name']);
    $assetId->setType($type);
    
  2. Laden Sie die Datei durch Aufrufen von creativeAssets.insert() hoch. Führen Sie einen mehrteiligen Upload durch und übergeben Sie dabei sowohl die assetIdentifier als auch den Dateiinhalt als Teil derselben Anfrage. Bei Erfolg wird eine CreativeAsset-Ressource mit einer assetIdentifier zurückgegeben, mit der Sie dieses Asset einem Creative zuweisen.

    $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. Erstellen Sie ein assetIdentifier-Objekt und legen Sie die erforderlichen Attribute fest. Für alle Assets muss unabhängig vom Typ oder ihrer Verwendung ein assetIdentifier angegeben werden. Beim Zuweisen des Assets zu einem Creative wird dieses Objekt verwendet, um auf das Asset zu verweisen. Die folgenden Attribute sind erforderlich:

    • Die name-Eigenschaft, die dem Namen des Assets auf dem Server entspricht Der Name muss eine Erweiterung haben, die den Dateityp angibt, z. B. .png oder .gif. Er wird dem Browser als Asset-Name angezeigt, muss jedoch nicht mit dem ursprünglichen Dateinamen übereinstimmen. Dieser Name kann von Campaign Manager 360 geändert werden, um ihn auf dem Server eindeutig zu machen. Prüfen Sie den Rückgabewert, um zu sehen, ob er geändert wurde.
    • Die type-Eigenschaft, die den Asset-Typ angibt. Mit dieser Eigenschaft wird festgelegt, mit welchen Creative-Typen dieses Asset verknüpft werden kann.
    # Construct the creative asset metadata
    creative_asset = {'assetIdentifier': {'name': asset_name, 'type': asset_type}}
    
  2. Laden Sie die Datei durch Aufrufen von creativeAssets.insert() hoch. Führen Sie einen mehrteiligen Upload durch und übergeben Sie dabei sowohl die assetIdentifier als auch den Dateiinhalt als Teil derselben Anfrage. Bei Erfolg wird eine CreativeAsset-Ressource mit einer assetIdentifier zurückgegeben, mit der Sie dieses Asset einem Creative zuweisen.

    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. Erstellen Sie ein assetIdentifier-Objekt und legen Sie die erforderlichen Attribute fest. Für alle Assets muss unabhängig vom Typ oder ihrer Verwendung ein assetIdentifier angegeben werden. Beim Zuweisen des Assets zu einem Creative wird dieses Objekt verwendet, um auf das Asset zu verweisen. Die folgenden Attribute sind erforderlich:

    • Die name-Eigenschaft, die dem Namen des Assets auf dem Server entspricht Der Name muss eine Erweiterung haben, die den Dateityp angibt, z. B. .png oder .gif. Er wird dem Browser als Asset-Name angezeigt, muss jedoch nicht mit dem ursprünglichen Dateinamen übereinstimmen. Dieser Name kann von Campaign Manager 360 geändert werden, um ihn auf dem Server eindeutig zu machen. Prüfen Sie den Rückgabewert, um zu sehen, ob er geändert wurde.
    • Die type-Eigenschaft, die den Asset-Typ angibt. Mit dieser Eigenschaft wird festgelegt, mit welchen Creative-Typen dieses Asset verknüpft werden kann.
    # 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. Laden Sie die Datei durch Aufrufen von creativeAssets.insert() hoch. Führen Sie einen mehrteiligen Upload durch und übergeben Sie dabei sowohl die assetIdentifier als auch den Dateiinhalt als Teil derselben Anfrage. Bei Erfolg wird eine CreativeAsset-Ressource mit einer assetIdentifier zurückgegeben, mit der Sie dieses Asset einem Creative zuweisen.

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

Ein Creative-Objekt umschließt ein vorhandenes Asset. Je nachdem, wie Sie die Creatives auf der Hostseite einsetzen, können Sie Creative-Objekte unterschiedlicher Creative-Typen erstellen. In der Referenzdokumentation können Sie nachlesen, welcher für Sie geeignete Typ ist.

Im folgenden Beispiel sehen Sie, wie Sie ein neues HTML5-Display-Creative erstellen.

C#

  1. Laden Sie die Assets hoch. Unterschiedliche Creatives erfordern unterschiedliche Arten und Mengen von Assets. Weitere Informationen finden Sie unter Assets hochladen. Jedes Mal, wenn Sie ein Asset hochladen, erhalten Sie ein assetIdenfitier in der Antwort. Sie verwenden anstelle einer herkömmlichen ID den gespeicherten Dateinamen und den gespeicherten Dateinamen, um in Ihrem Creative auf diese Assets zu verweisen.
  2. Erstellen Sie ein Creative und weisen Sie die entsprechenden Werte zu. Instanziieren Sie ein Creative und legen Sie die richtige type fest. Sie können den Typ eines Creative-Objekts nach dem Speichern nicht mehr ändern. Gib die Assets mit ihren AssetIdentifier und ihren role an.
    // 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. Speichern Sie das Creative. Rufen Sie dazu creatives.insert() auf. Es muss eine Werbetreibenden-ID angegeben werden, mit der dieses Creative verknüpft werden soll.
    Creative result = service.Creatives.Insert(creative, profileId).Execute();
    
  4. Optional: Weisen Sie das Creative einer Kampagne zu. Rufen Sie dazu campaignCreativeAssociations.insert() auf und übergeben Sie die Kampagnen- und Creative-IDs.
    // 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. Laden Sie die Assets hoch. Unterschiedliche Creatives erfordern unterschiedliche Arten und Mengen von Assets. Weitere Informationen finden Sie unter Assets hochladen. Jedes Mal, wenn Sie ein Asset hochladen, erhalten Sie ein assetIdenfitier in der Antwort. Sie verwenden anstelle einer herkömmlichen ID den gespeicherten Dateinamen und den gespeicherten Dateinamen, um in Ihrem Creative auf diese Assets zu verweisen.
  2. Erstellen Sie ein Creative und weisen Sie die entsprechenden Werte zu. Instanziieren Sie ein Creative und legen Sie die richtige type fest. Sie können den Typ eines Creative-Objekts nach dem Speichern nicht mehr ändern. Gib die Assets mit ihren AssetIdentifier und ihren role an.
    // 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. Speichern Sie das Creative. Rufen Sie dazu creatives.insert() auf. Es muss eine Werbetreibenden-ID angegeben werden, mit der dieses Creative verknüpft werden soll.
    Creative result = reporting.creatives().insert(profileId, creative).execute();
    
  4. Optional: Weisen Sie das Creative einer Kampagne zu. Rufen Sie dazu campaignCreativeAssociations.insert() auf und übergeben Sie die Kampagnen- und Creative-IDs.
    // 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. Laden Sie die Assets hoch. Unterschiedliche Creatives erfordern unterschiedliche Arten und Mengen von Assets. Weitere Informationen finden Sie unter Assets hochladen. Jedes Mal, wenn Sie ein Asset hochladen, erhalten Sie ein assetIdenfitier in der Antwort. Sie verwenden anstelle einer herkömmlichen ID den gespeicherten Dateinamen und den gespeicherten Dateinamen, um in Ihrem Creative auf diese Assets zu verweisen.
  2. Erstellen Sie ein Creative und weisen Sie die entsprechenden Werte zu. Instanziieren Sie ein Creative und legen Sie die richtige type fest. Sie können den Typ eines Creative-Objekts nach dem Speichern nicht mehr ändern. Gib die Assets mit ihren AssetIdentifier und ihren role an.
    $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. Speichern Sie das Creative. Rufen Sie dazu creatives.insert() auf. Es muss eine Werbetreibenden-ID angegeben werden, mit der dieses Creative verknüpft werden soll.
    $result = $this->service->creatives->insert(
        $values['user_profile_id'],
        $creative
    );
    
  4. Optional: Weisen Sie das Creative einer Kampagne zu. Rufen Sie dazu campaignCreativeAssociations.insert() auf und übergeben Sie die Kampagnen- und Creative-IDs.
    $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. Laden Sie die Assets hoch. Unterschiedliche Creatives erfordern unterschiedliche Arten und Mengen von Assets. Weitere Informationen finden Sie unter Assets hochladen. Jedes Mal, wenn Sie ein Asset hochladen, erhalten Sie ein assetIdenfitier in der Antwort. Sie verwenden anstelle einer herkömmlichen ID den gespeicherten Dateinamen und den gespeicherten Dateinamen, um in Ihrem Creative auf diese Assets zu verweisen.
  2. Erstellen Sie ein Creative und weisen Sie die entsprechenden Werte zu. Instanziieren Sie ein Creative und legen Sie die richtige type fest. Sie können den Typ eines Creative-Objekts nach dem Speichern nicht mehr ändern. Gib die Assets mit ihren AssetIdentifier und ihren role an.
    # 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. Speichern Sie das Creative. Rufen Sie dazu creatives.insert() auf. Es muss eine Werbetreibenden-ID angegeben werden, mit der dieses Creative verknüpft werden soll.
    request = service.creatives().insert(profileId=profile_id, body=creative)
    
    # Execute request and print response.
    response = request.execute()
    
  4. Optional: Weisen Sie das Creative einer Kampagne zu. Rufen Sie dazu campaignCreativeAssociations.insert() auf und übergeben Sie die Kampagnen- und Creative-IDs.
    # 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. Laden Sie die Assets hoch. Unterschiedliche Creatives erfordern unterschiedliche Arten und Mengen von Assets. Weitere Informationen finden Sie unter Assets hochladen. Jedes Mal, wenn Sie ein Asset hochladen, erhalten Sie ein assetIdenfitier in der Antwort. Sie verwenden anstelle einer herkömmlichen ID den gespeicherten Dateinamen und den gespeicherten Dateinamen, um in Ihrem Creative auf diese Assets zu verweisen.
  2. Erstellen Sie ein Creative und weisen Sie die entsprechenden Werte zu. Instanziieren Sie ein Creative und legen Sie die richtige type fest. Sie können den Typ eines Creative-Objekts nach dem Speichern nicht mehr ändern. Gib die Assets mit ihren AssetIdentifier und ihren role an.
    # 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. Speichern Sie das Creative. Rufen Sie dazu creatives.insert() auf. Es muss eine Werbetreibenden-ID angegeben werden, mit der dieses Creative verknüpft werden soll.
    # Insert the creative.
    result = service.insert_creative(profile_id, creative)
    
  4. Optional: Weisen Sie das Creative einer Kampagne zu. Rufen Sie dazu campaignCreativeAssociations.insert() auf und übergeben Sie die Kampagnen- und Creative-IDs.
    # 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)
    

Anzeige erstellen

Ein Ad ist die Verknüpfung zwischen einem Creative und einem Placement. Ein Ad kann mit einem oder mehreren Placements verknüpft sein und ein oder mehrere Creatives enthalten.

Sie können ein Ad explizit oder implizit erstellen.

Ausdrücklich

C#

  1. Erstellen Sie ein CreativeAssignment-Objekt für jedes Creative, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld CreativeAssignment.active auf „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;
    
  2. Erstellen Sie ein CreativeRotation-Objekt, um die CreativeAssignments zu speichern. Wenn Sie eine Rotationsgruppe erstellen, müssen Sie die anderen erforderlichen Felder für die Creative-Rotation festlegen.
    // Create a creative rotation.
    CreativeRotation creativeRotation = new CreativeRotation();
    creativeRotation.CreativeAssignments = new List<CreativeAssignment>() {
        creativeAssignment
    };
    
  3. Erstellen Sie ein PlacementAssignment-Objekt für jedes Placement, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld PlacementAssignment.active auf „true“.
    // Create a placement assignment.
    PlacementAssignment placementAssignment = new PlacementAssignment();
    placementAssignment.Active = true;
    placementAssignment.PlacementId = placementId;
    
  4. Erstellen Sie ein Ad-Objekt. Legen Sie „creativeRotation“ im Feld creativeRotation des Ad-Objekts und unter „placementAssignments“ (Platzierungszuweisung) in das placementAssignments-Array des Ad-Objekts fest.
    // 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. Speichern Sie die Anzeige, indem Sie ads.insert() aufrufen.
    // Insert the rotation group.
    Ad result = service.Ads.Insert(rotationGroup, profileId).Execute();
    

Java

  1. Erstellen Sie ein CreativeAssignment-Objekt für jedes Creative, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld CreativeAssignment.active auf „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);
    
  2. Erstellen Sie ein CreativeRotation-Objekt, um die CreativeAssignments zu speichern. Wenn Sie eine Rotationsgruppe erstellen, müssen Sie die anderen erforderlichen Felder für die Creative-Rotation festlegen.
    // Create a creative rotation.
    CreativeRotation creativeRotation = new CreativeRotation();
    creativeRotation.setCreativeAssignments(ImmutableList.of(creativeAssignment));
    
  3. Erstellen Sie ein PlacementAssignment-Objekt für jedes Placement, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld PlacementAssignment.active auf „true“.
    // Create a placement assignment.
    PlacementAssignment placementAssignment = new PlacementAssignment();
    placementAssignment.setActive(true);
    placementAssignment.setPlacementId(placementId);
    
  4. Erstellen Sie ein Ad-Objekt. Legen Sie „creativeRotation“ im Feld creativeRotation des Ad-Objekts und unter „placementAssignments“ (Platzierungszuweisung) in das placementAssignments-Array des Ad-Objekts fest.
    // 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. Speichern Sie die Anzeige, indem Sie ads.insert() aufrufen.
    // Insert the rotation group.
    Ad result = reporting.ads().insert(profileId, rotationGroup).execute();
    

PHP

  1. Erstellen Sie ein CreativeAssignment-Objekt für jedes Creative, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld CreativeAssignment.active auf „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);
    
  2. Erstellen Sie ein CreativeRotation-Objekt, um die CreativeAssignments zu speichern. Wenn Sie eine Rotationsgruppe erstellen, müssen Sie die anderen erforderlichen Felder für die Creative-Rotation festlegen.
    // Create a creative rotation.
    $creativeRotation = new Google_Service_Dfareporting_CreativeRotation();
    $creativeRotation->setCreativeAssignments([$creativeAssignment]);
    
  3. Erstellen Sie ein PlacementAssignment-Objekt für jedes Placement, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld PlacementAssignment.active auf „true“.
    // Create a placement assignment.
    $placementAssignment =
        new Google_Service_Dfareporting_PlacementAssignment();
    $placementAssignment->setActive(true);
    $placementAssignment->setPlacementId($values['placement_id']);
    
  4. Erstellen Sie ein Ad-Objekt. Legen Sie „creativeRotation“ im Feld creativeRotation des Ad-Objekts und unter „placementAssignments“ (Platzierungszuweisung) in das placementAssignments-Array des Ad-Objekts fest.
    // 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. Speichern Sie die Anzeige, indem Sie ads.insert() aufrufen.
    $result = $this->service->ads->insert($values['user_profile_id'], $ad);
    

Python

  1. Erstellen Sie ein CreativeAssignment-Objekt für jedes Creative, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld CreativeAssignment.active auf „true“.
    # Construct creative assignment.
    creative_assignment = {
        'active': 'true',
        'creativeId': creative_id,
        'clickThroughUrl': {
            'defaultLandingPage': 'true'
        }
    }
    
  2. Erstellen Sie ein CreativeRotation-Objekt, um die CreativeAssignments zu speichern. Wenn Sie eine Rotationsgruppe erstellen, müssen Sie die anderen erforderlichen Felder für die Creative-Rotation festlegen.
    # Construct creative rotation.
    creative_rotation = {
        'creativeAssignments': [creative_assignment],
        'type': 'CREATIVE_ROTATION_TYPE_RANDOM',
        'weightCalculationStrategy': 'WEIGHT_STRATEGY_OPTIMIZED'
    }
    
  3. Erstellen Sie ein PlacementAssignment-Objekt für jedes Placement, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld PlacementAssignment.active auf „true“.
    # Construct placement assignment.
    placement_assignment = {
        'active': 'true',
        'placementId': placement_id,
    }
    
  4. Erstellen Sie ein Ad-Objekt. Legen Sie „creativeRotation“ im Feld creativeRotation des Ad-Objekts und unter „placementAssignments“ (Platzierungszuweisung) in das placementAssignments-Array des Ad-Objekts fest.
    # 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. Speichern Sie die Anzeige, indem Sie ads.insert() aufrufen.
    request = service.ads().insert(profileId=profile_id, body=ad)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Erstellen Sie ein CreativeAssignment-Objekt für jedes Creative, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld CreativeAssignment.active auf „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
        )
      )
    
  2. Erstellen Sie ein CreativeRotation-Objekt, um die CreativeAssignments zu speichern. Wenn Sie eine Rotationsgruppe erstellen, müssen Sie die anderen erforderlichen Felder für die Creative-Rotation festlegen.
    # 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. Erstellen Sie ein PlacementAssignment-Objekt für jedes Placement, mit dem diese Anzeige verknüpft werden soll. Setzen Sie das Feld PlacementAssignment.active auf „true“.
    # Construct placement assignment.
    placement_assignment =
      DfareportingUtils::API_NAMESPACE::PlacementAssignment.new(
        active: true,
        placement_id: placement_id
      )
    
  4. Erstellen Sie ein Ad-Objekt. Legen Sie „creativeRotation“ im Feld creativeRotation des Ad-Objekts und unter „placementAssignments“ (Platzierungszuweisung) in das placementAssignments-Array des Ad-Objekts fest.
    # 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. Speichern Sie die Anzeige, indem Sie ads.insert() aufrufen.
    result = service.insert_ad(profile_id, ad)
    

Implizit

C#

  1. Erstellen und speichern Sie eine Placement.
  2. Erstellen und speichern Sie eine Creative.
  3. Weisen Sie Creative demselben Campaign wie für das Placement zu, indem Sie campaignCreativeAssociations.insert() aufrufen (siehe Schritt 4 im Abschnitt Creative erstellen). Dadurch wird eine Default-Anzeige erstellt, die sowohl dem Creative als auch dem Placement zugeordnet ist.
    // 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. Erstellen und speichern Sie eine Placement.
  2. Erstellen und speichern Sie eine Creative.
  3. Weisen Sie Creative demselben Campaign wie für das Placement zu, indem Sie campaignCreativeAssociations.insert() aufrufen (siehe Schritt 4 im Abschnitt Creative erstellen). Dadurch wird eine Default-Anzeige erstellt, die sowohl dem Creative als auch dem Placement zugeordnet ist.
    // 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. Erstellen und speichern Sie eine Placement.
  2. Erstellen und speichern Sie eine Creative.
  3. Weisen Sie Creative demselben Campaign wie für das Placement zu, indem Sie campaignCreativeAssociations.insert() aufrufen (siehe Schritt 4 im Abschnitt Creative erstellen). Dadurch wird eine Default-Anzeige erstellt, die sowohl dem Creative als auch dem Placement zugeordnet ist.
    $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. Erstellen und speichern Sie eine Placement.
  2. Erstellen und speichern Sie eine Creative.
  3. Weisen Sie Creative demselben Campaign wie für das Placement zu, indem Sie campaignCreativeAssociations.insert() aufrufen (siehe Schritt 4 im Abschnitt Creative erstellen). Dadurch wird eine Default-Anzeige erstellt, die sowohl dem Creative als auch dem Placement zugeordnet ist.
    # 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. Erstellen und speichern Sie eine Placement.
  2. Erstellen und speichern Sie eine Creative.
  3. Weisen Sie Creative demselben Campaign wie für das Placement zu, indem Sie campaignCreativeAssociations.insert() aufrufen (siehe Schritt 4 im Abschnitt Creative erstellen). Dadurch wird eine Default-Anzeige erstellt, die sowohl dem Creative als auch dem Placement zugeordnet ist.
    # 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)
    

Durch das Erstellen einer Anzeige entfällt der zusätzliche Schritt zum Erstellen einer Ad. Beachten Sie, dass dies nur möglich ist, wenn in Ihrer Kampagne noch keine Default-Anzeige der angegebenen Größe vorhanden ist.

Nach Objekten suchen

Sie können nach Objekten suchen, indem Sie den list()-Vorgang aufrufen, der von dem Dienst bereitgestellt wird, der das zu suchende Objekt definiert, und optionale Kriterien für diesen Objekttyp angeben. Um beispielsweise nach Anzeigenobjekten zu suchen, würden Sie ads.list() aufrufen. Die optionalen Kriterien stellen eine Reihe von Eigenschaften bereit, die für das Objekt geeignet sind. Geben Sie so viele Eigenschaften an, wie Sie suchen möchten. Bei der Suche werden nur Objekte zurückgegeben, die alle Ihre Kriterien erfüllen. Es ist nicht möglich, nach einem Kriterium zu suchen. Strings unterstützen den Platzhalter *, unterscheiden sich nicht zwischen Groß- und Kleinschreibung und werden in größeren Strings abgeglichen.

Zur Leistungsverbesserung können Teilantworten mit dem Parameter fields angefordert werden. Damit wird der Server angewiesen, nur die von Ihnen angegebenen Felder anstelle der vollständigen Ressourcendarstellung zurückzugeben. Weitere Informationen zu diesem Thema finden Sie im Leitfaden Tipps zur Leistungsoptimierung.

Paging

Manchmal ist es nicht sinnvoll, alle Ergebnisse einer list()-Anfrage abzurufen. Möglicherweise sind Sie beispielsweise nur an den zehn neuesten Anzeigen aus Tausenden von Anzeigen interessiert. Zu diesem Zweck können Sie mit vielen list()-Methoden weniger Ergebnisse über einen Prozess anfordern, der als Paging bezeichnet wird.

Methoden, die Paging unterstützen, geben Teilmengen der Ergebnisse in Gruppen zurück, die als Seiten bezeichnet werden. Die maximale Anzahl von Ergebnissen pro Seite beträgt 1.000 (Standardeinstellung). Sie können die Anzahl der Ergebnisse pro Seite ändern, indem Sie maxResults festlegen. Außerdem können Sie Seiten durchlaufen, indem Sie die in der Antwort zurückgegebene nextPageToken verwenden:

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-Tags generieren

Floodlight-Tags sind in eine Seite eingebettete HTML-Tags, mit denen Nutzeraktionen (z.B. Käufe) auf einer Website erfasst werden. Zum Generieren von Floodlight-Tags benötigen Sie eine FloodlightActivity, die zu einer FloodlightActivityGroup gehört:

C#

  1. Erstellen Sie eine neue Floodlight-Aktivitätsgruppe und übergeben Sie die Werte für name, type und floodlightConfigurationId.
    // Create the floodlight activity group.
    FloodlightActivityGroup floodlightActivityGroup = new FloodlightActivityGroup();
    floodlightActivityGroup.Name = groupName;
    floodlightActivityGroup.FloodlightConfigurationId = floodlightConfigurationId;
    floodlightActivityGroup.Type = "COUNTER";
    
  2. Speichern Sie die Floodlight-Aktivitätsgruppe, indem Sie floodlightActivityGroups.insert() aufrufen. Dadurch wird die ID der neuen Gruppe zurückgegeben.
    // Insert the activity group.
    FloodlightActivityGroup result =
        service.FloodlightActivityGroups.Insert(floodlightActivityGroup, profileId).Execute();
    
  3. Erstellen Sie eine neue Floodlight-Aktivität und weisen Sie ihr die ID der soeben erstellten Floodlight-Aktivitätsgruppe sowie alle anderen erforderlichen Felder zu.
    // 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. Speichern Sie die neue Aktivität, indem Sie floodlightActivities.insert() aufrufen, wodurch die ID der neuen Aktivität zurückgegeben wird.
    // Create the floodlight tag activity.
    FloodlightActivity result =
        service.FloodlightActivities.Insert(activity, profileId).Execute();
    
  5. Generieren Sie die Tags, indem Sie floodlightActivities.generatetag() mit dem floodlightActivityId der neuen Aktivität aufrufen. Senden Sie die Tags an den Webmaster auf der Website des Werbetreibenden.
    // Generate the floodlight activity tag.
    FloodlightActivitiesResource.GeneratetagRequest request =
        service.FloodlightActivities.Generatetag(profileId);
    request.FloodlightActivityId = activityId;
    
    FloodlightActivitiesGenerateTagResponse response = request.Execute();
    

Java

  1. Erstellen Sie eine neue Floodlight-Aktivitätsgruppe und übergeben Sie die Werte für name, type und floodlightConfigurationId.
    // Create the floodlight activity group.
    FloodlightActivityGroup floodlightActivityGroup = new FloodlightActivityGroup();
    floodlightActivityGroup.setName(groupName);
    floodlightActivityGroup.setFloodlightConfigurationId(floodlightConfigurationId);
    floodlightActivityGroup.setType("COUNTER");
    
  2. Speichern Sie die Floodlight-Aktivitätsgruppe, indem Sie floodlightActivityGroups.insert() aufrufen. Dadurch wird die ID der neuen Gruppe zurückgegeben.
    // Insert the activity group.
    FloodlightActivityGroup result =
        reporting.floodlightActivityGroups().insert(profileId, floodlightActivityGroup).execute();
    
  3. Erstellen Sie eine neue Floodlight-Aktivität und weisen Sie ihr die ID der soeben erstellten Floodlight-Aktivitätsgruppe sowie alle anderen erforderlichen Felder zu.
    // 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. Speichern Sie die neue Aktivität, indem Sie floodlightActivities.insert() aufrufen, wodurch die ID der neuen Aktivität zurückgegeben wird.
    // Create the floodlight tag activity.
    FloodlightActivity result =
        reporting.floodlightActivities().insert(profileId, activity).execute();
    
  5. Generieren Sie die Tags, indem Sie floodlightActivities.generatetag() mit dem floodlightActivityId der neuen Aktivität aufrufen. Senden Sie die Tags an den Webmaster auf der Website des Werbetreibenden.
    // Generate the floodlight activity tag.
    Generatetag request = reporting.floodlightActivities().generatetag(profileId);
    request.setFloodlightActivityId(activityId);
    
    FloodlightActivitiesGenerateTagResponse response = request.execute();
    

PHP

  1. Erstellen Sie eine neue Floodlight-Aktivitätsgruppe und übergeben Sie die Werte für name, type und floodlightConfigurationId.
    $group = new Google_Service_Dfareporting_FloodlightActivityGroup();
    $group->setFloodlightConfigurationId($values['configuration_id']);
    $group->setName($values['group_name']);
    $group->setType('COUNTER');
    
  2. Speichern Sie die Floodlight-Aktivitätsgruppe, indem Sie floodlightActivityGroups.insert() aufrufen. Dadurch wird die ID der neuen Gruppe zurückgegeben.
    $result = $this->service->floodlightActivityGroups->insert(
        $values['user_profile_id'],
        $group
    );
    
  3. Erstellen Sie eine neue Floodlight-Aktivität und weisen Sie ihr die ID der soeben erstellten Floodlight-Aktivitätsgruppe sowie alle anderen erforderlichen Felder zu.
    $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. Speichern Sie die neue Aktivität, indem Sie floodlightActivities.insert() aufrufen, wodurch die ID der neuen Aktivität zurückgegeben wird.
    $result = $this->service->floodlightActivities->insert(
        $values['user_profile_id'],
        $activity
    );
    
  5. Generieren Sie die Tags, indem Sie floodlightActivities.generatetag() mit dem floodlightActivityId der neuen Aktivität aufrufen. Senden Sie die Tags an den Webmaster auf der Website des Werbetreibenden.
    $result = $this->service->floodlightActivities->generatetag(
        $values['user_profile_id'],
        ['floodlightActivityId' => $values['activity_id']]
    );
    

Python

  1. Erstellen Sie eine neue Floodlight-Aktivitätsgruppe und übergeben Sie die Werte für name, type und floodlightConfigurationId.
    # Construct and save floodlight activity group.
    activity_group = {
        'name': 'Test Floodlight Activity Group',
        'floodlightConfigurationId': floodlight_config_id,
        'type': 'COUNTER'
    }
    
  2. Speichern Sie die Floodlight-Aktivitätsgruppe, indem Sie floodlightActivityGroups.insert() aufrufen. Dadurch wird die ID der neuen Gruppe zurückgegeben.
    request = service.floodlightActivityGroups().insert(
        profileId=profile_id, body=activity_group)
    
  3. Erstellen Sie eine neue Floodlight-Aktivität und weisen Sie ihr die ID der soeben erstellten Floodlight-Aktivitätsgruppe sowie alle anderen erforderlichen Felder zu.
    # 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. Speichern Sie die neue Aktivität, indem Sie floodlightActivities.insert() aufrufen, wodurch die ID der neuen Aktivität zurückgegeben wird.
    request = service.floodlightActivities().insert(
        profileId=profile_id, body=floodlight_activity)
    
  5. Generieren Sie die Tags, indem Sie floodlightActivities.generatetag() mit dem floodlightActivityId der neuen Aktivität aufrufen. Senden Sie die Tags an den Webmaster auf der Website des Werbetreibenden.
    # Construct the request.
    request = service.floodlightActivities().generatetag(
        profileId=profile_id, floodlightActivityId=activity_id)
    
    # Execute request and print response.
    response = request.execute()
    

Ruby

  1. Erstellen Sie eine neue Floodlight-Aktivitätsgruppe und übergeben Sie die Werte für name, type und 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'
      )
    
  2. Speichern Sie die Floodlight-Aktivitätsgruppe, indem Sie floodlightActivityGroups.insert() aufrufen. Dadurch wird die ID der neuen Gruppe zurückgegeben.
    # Insert the floodlight activity group.
    result = service.insert_floodlight_activity_group(profile_id, activity_group)
    
  3. Erstellen Sie eine neue Floodlight-Aktivität und weisen Sie ihr die ID der soeben erstellten Floodlight-Aktivitätsgruppe sowie alle anderen erforderlichen Felder zu.
    # 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. Speichern Sie die neue Aktivität, indem Sie floodlightActivities.insert() aufrufen, wodurch die ID der neuen Aktivität zurückgegeben wird.
    # Insert the floodlight activity.
    result = service.insert_floodlight_activity(profile_id, activity)
    
  5. Generieren Sie die Tags, indem Sie floodlightActivities.generatetag() mit dem floodlightActivityId der neuen Aktivität aufrufen. Senden Sie die Tags an den Webmaster auf der Website des Werbetreibenden.
    # Construct the request.
    result = service.generatetag_floodlight_activity(profile_id,
      floodlight_activity_id: activity_id)
    

Placement-Tags generieren

Der letzte Schritt besteht darin, HTML-Tags zu generieren, die an den Publisher gesendet werden, damit Ihre Anzeigen ausgeliefert werden können. Um die Tags über die API zu generieren, stellen Sie eine Anfrage an placements.generatetags() und geben Sie einen Satz von placementIds und tagFormats an.

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