Integrazione di DDM per il monitoraggio di app di terze parti

Il seguente flusso end-to-end descrive sia la configurazione dell'inserzionista sia l'implementazione di terze parti necessaria per pubblicare una campagna sui prodotti lato acquisto DoubleClick utilizzando una soluzione di monitoraggio delle app di terze parti.

Per ulteriori informazioni su DoubleClick Digital Marketing in generale e una panoramica delle funzionalità di attribuzione in-app, consulta la pagina di background di DoubleClick Digital Marketing.

  1. L'inserzionista configura l'evento di conversione in DDM per rappresentare l'installazione o la conversione (solo Bid Manager - pixel di conversione) (Campaign Manager - attività Floodlight).

  2. L'inserzionista "collega" l'evento di conversione DDM nell'interfaccia di terze parti e fornisce le variabili chiave che identificano un inserzionista e un gruppo di attività di conversione.

    • src è l'ID dell'inserzionista che ha dato inizio all'attività Floodlight.
    • cat è la stringa tag attività, che i server Floodlight utilizzano per identificare il gruppo attività a cui appartiene l'attività.
    • type è la stringa tag gruppo, che identifica il gruppo attività a cui è associata l'attività Floodlight.
    • u1, u2, ... (se disponibili) sono le coppie chiave-valore delle variabili personalizzate Floodlight.
  3. L'inserzionista aggiunge variabili per indicare la raccolta del consenso per la conformità al DMA.

    • eea viene utilizzato per identificare gli utenti del SEE.
      • eea=0 indica che l'utente non proviene dal SEE.
      • eea=1 indica che l'utente proviene dal SEE.
    • ad_user_data è il flag di consenso per l'utilizzo dei dati utente per scopi pubblicitari.
      • Deve essere impostato solo se eea=1
      • ad_user_data=0 indica che l'utente ha negato il consenso alla trasmissione dei dati a livello di utente a Google per scopi pubblicitari.
      • ad_user_data=1 indica che l'utente ha concesso il consenso per la trasmissione dei dati a livello di utente a Google per scopi pubblicitari.
    • npa viene utilizzato per i contenuti di personalizzazione degli annunci.
      • npa=0 indica che l'utente acconsente alla personalizzazione.
      • npa=1 indica che l'utente non ha acconsentito alla personalizzazione.
    • test_request_reason=dma può essere utilizzato per testare i parametri DMA
      • Convalida tutti i parametri DMA e restituisce avvisi.
      • Restituisce una risposta multipla con clic falsi.
      • Registra le conversioni come conversioni di prova.
  4. Inoltre, l'inserzionista deve fornire alle terze parti il proprio token di autorizzazione specifico:

    token è una stringa alfanumerica specifica per l'inserzionista che deve essere trasmessa insieme a ogni richiesta del server a DDM.

  5. L'inserzionista pubblica una campagna pubblicitaria in-app con tag annuncio pubblicati da DBM su piattaforme di scambio di offerte in tempo reale o pubblicati da DCM su media acquistati direttamente.

  6. L'utente finale vede e fa clic sugli annunci, che vengono registrati da DDM.

  7. Quando l'utente finale installa l'app o completa un evento di conversione, ad esempio "game play", i server di terze parti "pingano" DDM a ogni attività dell'app:

    Un URL di esempio per un utente non residente nel SEE

    https://ad.doubleclick.net/ddm/s2s/appactivity/src=1234567;cat=fghij456;type=abcde123;u1=[friendlyname1];ord=1312312312;eea=0;npa=0
    

    Un URL di esempio per un utente nel SEE

    https://ad.doubleclick.net/ddm/s2s/appactivity/src=1234567;cat=fghij456;type=abcde123;u1=[friendlyname1];ord=1312312312;eea=1;ad_user_data=1;npa=0
    

    dove:

    • src è l'ID dell'inserzionista che ha dato inizio all'attività Floodlight.
    • cat è la stringa tag attività, che i server Floodlight utilizzano per identificare il gruppo attività a cui appartiene l'attività.
    • type è la stringa tag gruppo, che identifica il gruppo attività a cui è associata l'attività Floodlight.
    • ord è un numero casuale utilizzato per rendere univoco il tag Floodlight.
    • u1, u2, ... (se disponibili) sono le coppie chiave-valore delle variabili personalizzate Floodlight.
    • eea identifica se l'utente si trova nel SEE.
    • ad_user_data indica se l'utente acconsente all'utilizzo di cookie e alla misurazione.
    • npa indica se l'utente acconsente alla personalizzazione.

    con parametri aggiuntivi inviati tramite un payload JSON in una richiesta POST HTTP:

    {
      "app": {
        "bundle": "com.rovio.angrybirds"
      },
      "device": {
        "ua": "Mozilla/5.0 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25",
        "ip": "108.176.57.230",
        "didmd5": "A2D2DA47AC2DE1BCA16883BD5CAA6F2F",
        "lmt": 1
      }
    }
    

    e il token di autorizzazione dell'inserzionista viene passato nell'intestazione di autorizzazione HTTP:

    Authorization: Token token="[advertiser authorization token string]"
    

    dove:

    • app (obbligatorio) è l'oggetto JSON che rappresenta l'app in cui si è verificata l'attività di conversione. Utilizza app: {} se l'app in cui si è svolta l'attività di conversione non è disponibile.
    • bundle (se disponibile) è il campo dell'oggetto app contenente un valore stringa del nome del bundle del Play Store o dell'ID App Store.
    • device è l'oggetto JSON che rappresenta il dispositivo su cui si è svolta l'attività di conversione.
    • ua è il campo dell'oggetto dispositivo che rappresenta la stringa user agent dell'app in cui è stata registrata un'attività. Questo parametro è obbligatorio.
    • ip (se disponibile) è l'indirizzo IPv4 del dispositivo assegnato al dispositivo. Questo parametro è obbligatorio.
    • didmd5 è la stringa con hash MD5 dell'IDFA o dell'ID pubblicità di Google Play in maiuscolo.
    • lmt è un numero intero con valore 1 se l'utente ha attivato l'opzione "Limita il monitoraggio degli annunci" con IDFA o ID pubblicità oppure 0 se non è impostato.

    DDM risponderà con una risposta JSON che indica se l'evento di conversione è attribuito a una visualizzazione o a un clic pubblicati da DCM e, in caso affermativo, fornirà ulteriori informazioni sull'evento (ultima visualizzazione o ultimo clic):

    • ID annuncio
    • ID sito
    • ID posizionamento
    • ID creatività
    • Timestamp

    Una risposta JSON di esempio potrebbe essere simile a questa:

    {
      "attributed": 1,  // Whether the conversion can be attributed to a DCM event.
      "last_impression_ad_id":283641088,
      "last_impression_site_id":1408067,
      "last_impression_placement_id":107616368,
      "last_impression_creative_id":60162352,
      "last_impression_timestamp":1415647607,
      "last_click_ad_id":283641088,
      "last_click_site_id":1408067,
      "last_click_placement_id":107616368,
      "last_click_creative_id":60162352,
      "last_click_timestamp":1415647657,
      "last_click_exclid":"CKm0nLKhyssCFceH2wod8l4I4A",
      "cps": <cps>,
      "ad_events": [
        <ad event objects>
      ],
      "warnings": [<warning strings>],
      "errors": [<error strings>],
    }
    

    dove:

    • attributed è il valore 1 (se la conversione può essere attribuita a un'impressione o a un clic) o 0 (se non è attribuibile).
    • last_impression_ad_id (se attributed = 1) è l'ID annuncio per l'ultima impressione.
    • last_impression_site_id (se attributed = 1) è l'ID sito dell'ultima impressione.
    • last_impression_placement_id (se attributed = 1) è l'ID posizionamento per l'ultima impressione.
    • last_impression_creative_id (se attributed = 1) è l'ID creatività dell'ultima impressione.
    • last_click_ad_id (se attributed = 1 e un clic è stato attribuito) è l'ID annuncio dell'ultimo clic.
    • last_click_site_id (se attributed = 1 ed è stato attribuito un clic) è l'ID sito dell'ultimo clic.
    • last_click_placement_id (se attributed = 1 e un clic è stato attribuito) è l'ID posizionamento dell'ultimo clic.
    • last_click_creative_id (se attributed = 1 e un clic è stato attribuito) è l'ID creatività dell'ultimo clic.
    • last_click_exclid corrisponde a un ID clic univoco compilato utilizzando la macro %eiid!

    A partire dall'applicazione del DMA a marzo 2024, saranno disponibili anche i seguenti campi:

    • cps indica a quale servizio di piattaforma di base appartiene l'evento
      • a : Annunci
      • m : Maps
      • p : Play Store
      • s : Cerca
      • h : Shopping
      • y : YouTube
    • ad_events è un array di oggetti ad_event contenenti tutti gli eventi di conversione.
      • L'oggetto ad_event ha i seguenti campi:
      • product_type è una stringa che indica il prodotto responsabile della conversione. Può essere DCM o DBM.
      • interaction_type è il tipo di interazione che ha portato all'evento. impression o click.
      • conversion_metric è la metrica di conversione utilizzata per l'attribuzione. conversion o view_through_conversion.
      • timestamp è il timestamp UNIX in cui si è verificato l'evento dell'annuncio con precisione al microsecondo. Questo valore deve essere utilizzato per l'attribuzione dell'ultimo clic.
      • campaign_type identifica il tipo di campagna che ha generato l'evento pubblicità.
      • line_item_id (solo DBM) è l'ID elemento pubblicitario DBM che ha generato l'evento pubblicitario.
      • line_item_name (solo DBM) è il nome dell'elemento pubblicitario DBM che ha generato l'evento annuncio.
      • placement_id (solo DCM) è l'ID tag posizionamento DCM che ha generato l'evento annuncio.
      • placement_name (solo DCM) è il nome del tag posizionamento DCM che ha generato l'evento annuncio.
      • external_customer_id è l'identificatore dell'inserzionista proprietario della campagna che ha generato l'evento annuncio.
        • Se product è DBM, questo campo rappresenta l'ID inserzionista DBM.
        • Se product è DCM, questo campo rappresenta l'ID inserzionista DCM.
      • creative_id è l'ID dell'unità pubblicitaria della creatività che ha generato l'evento pubblicitario.
        • Se product è DBM, questo campo rappresenta l'ID creatività DBM.
        • Se product è DCM, questo campo rappresenta l'ID creatività DCM.
      • exchange_id (solo DBM) è l'ID della piattaforma di scambio che ha pubblicato l'annuncio DBM.
      • insertion_order_id (solo DBM) è l'ID ordine di inserzione DBM.
      • site_id (solo DCM) è l'ID sito DCM per l'evento annuncio.
      • cps indica a quale servizio della piattaforma principale appartiene l'evento annuncio. Per ulteriori dettagli, consulta la spiegazione completa del campo cps riportata in precedenza nella documentazione.
    • warnings è un array di avvisi generati dall'evento di conversione.
    • errors è un array di errori prodotti dall'evento di conversione con codici di errore HTTP, per i seguenti scenari:

      • HTTP 204 se la quota di richieste è stata superata.
      • HTTP 400 quando la richiesta è considerata non valida, ad esempio mancano parametri obbligatori e il server è tornato al monitoraggio dei pixel.
      • HTTP 401 se il token di autorizzazione non è valido.
      • HTTP 404 per eventuali richieste errate.

    L'inserzionista potrà visualizzare i report sulle campagne nel tuo sistema e anche i report sulle conversioni in DCM con gli stessi parametri.

    Altri esempi di risposte dopo l'entrata in vigore del DMA a marzo 2024

    Un esempio di risposta di monitoraggio delle conversioni attribuite in cui la conversione viene attribuita sia alle interazioni con gli annunci della rete di ricerca che con quelli di YouTube, ma il consenso all'utilizzo incrociato ai sensi degli articoli 5(2)(b) e 5(2)(c) è negato tra i CPS della rete di ricerca e di YouTube:

    {
      attributed: 1,
      last_impression_ad_id: 283641088,
      last_impression_site_id: 1408067,
      last_impression_placement_id: 107616368,
      last_impression_creative_id: 60162352,
      last_impression_timestamp: 1415647607,
      last_click_ad_id: 283641088,
      last_click_site_id: 1408067,
      last_click_placement_id: 107616368,
      last_click_creative_id: 60162352,
      last_click_timestamp: 1415647655,
      last_click_exclid: "CKm0nLKhyssCFceH2wod8l4I4A",
      cps: "s",
      ad_events: [{
          cps : "s",
          product_type: "DCM",
          interaction_type: "click",
          ad_event_type: "click",
          campaign_type: "Display",
          placement_id: 107616368,
          placement_name: "TEST PLACEMENT NAME",
          external_customer_id: 7480542,
          creative_id: 60162352,
          timestamp: 1415647655.123456,
          site_id: 1408067,
          }, {
          cps : "s",
          product_type:"DCM",
          interaction_type: "impression",
          ad_event_type: "impression",
          campaign_type: "Display",
          placement_id: 107616368,
          placement_name: "TEST PLACEMENT NAME",
          external_customer_id: 7480542,
          creative_id: 60162352,
          timestamp: 1415647607.123456,
          site_id: 1408067
          },{
          cps : "y",
          product_type: "DCM",
          ad_event_type: "click",
          campaign_type: "Display",
          placement_id: 107616370,
          placement_name: "Placement on Youtube",
          external_customer_id: 7480542,
          creative_id: 6016444,
          timestamp: 14344344.123456,
          site_id: 140806
          },
      ]}
    

    Esempio di risposta affermativa del monitoraggio delle conversioni per una campagna DBM:

    {
      attributed: 1,
      last_click_ad_id: 283641088,
      last_click_site_id: 1408067,
      last_click_placement_id: 107616368,
      last_click_creative_id :60162352,
      last_click_timestamp: 1415647655,
      last_click_exclid: "CKm0nLKhyssCFceH2wod8l4I4A"
      cps: "y",
      ad_events: [{
        product_type: "DBM",
        interaction_type: "click",
        ad_event_type: "click",
        campaign_type: "Display",
        line_item_id: 123456789,
        line_item_name: "TEST LINE ITEM NAME",
        external_customer_id: 2550,
        creative_id: 512333,
        exchange_id: 132,
        insertion_order_id: 523423,
        timestamp: 1432681913.123456
        cps: "y"
      },
      {
        product_type: "DCM",
        interaction_type: "click",
        campaign_type: "Display",
        placement_id: 9342323,
        placement_name: "TEST PLACEMENT NAME",
        external_customer_id: 7480542,
        creative_id: 8234234,
        timestamp: 1432681913.123456,
        cps: "y"
      }
    ]}