Offerta per conto di più account

Un offerente può acquistare inventario per più acquirenti in una singola offerta risposta. Ad esempio, una Demand-Side Platform (DSP) potrebbe utilizzare le sue offerte un'applicazione per l'acquisto di inventario per diversi professionisti del marketing o agenzie che acquirenti. Questa guida spiega come programmare lo strumento di offerta in modo che elabori una singola richiesta inviati per conto di più acquirenti.

Sfondo

In alcuni scenari, una rete pubblicitaria o un trading desk di agenzie potrebbero decidere di lavorare con una o più DSP. Sono disponibili due opzioni per gli acquirenti che lavorano attraverso una DSP:

  • La piattaforma DSP acquista inventario per i professionisti del marketing o le agenzie che non acquirenti. In questo caso, il DSP riceve una richiesta di offerta. e risponde con un'offerta. Google fattura direttamente la DSP.
  • La piattaforma DSP acquista inventario per i professionisti del marketing o le agenzie che acquirenti. Il DSP riceve una richiesta di offerta che include più ID associati agli acquirenti idonei e possono presentare offerte distinte per ciascuno acquirente per conto del quale intendono fare offerte. In questo modello, Google fattura la l'acquirente, non il DSP. Il resto di questa guida si concentra su questo scenario.

Configurazione e pretargeting

Google invierà una richiesta di offerta contenente uno o più ID fatturazione associati con gli acquirenti e le configurazioni di pretargeting che hanno scelto come target l'impressione. Puoi trovarli con BidRequest.imp.ext.billing_id .

Quando rispondi a un messaggio BidRequest che contiene ID fatturazione da più acquirenti, BidResponse.seatbid.bid.ext.billing_id è per far sapere a Google quale account associare all'offerta. Qualsiasi che non imposta il campo viene filtrata. Il campo rimane facoltativo per qualsiasi BidRequest che include un solo ID fatturazione.

Esempio di pretargeting

Un offerente fa un'offerta per conto di due acquirenti, uno con ID fatturazione 123 e l'altra con ID fatturazione 124. L'offerente configura un pretargeting configurazione con ID fatturazione 213 per avere come target la lingua inglese e un'altra con ID fatturazione 231 per scegliere come target i personal computer. Di seguito viene descritta la gli ID fatturazione visualizzati nelle richieste di offerta per diversi tipi di impressioni.

Descrizione impressione ID fatturazione nella richiesta di offerta
Contenuti in lingua giapponese su PC. 123, 124, 231
Contenuti in lingua inglese su un cellulare. 123, 124, 213
Contenuti in lingua inglese su PC. 123, 124, 213, 231

Esempi di richieste di offerta

Di seguito sono riportati alcuni esempi di BidRequest. Noterai che sono presenti più ID fatturazione in queste richieste perché si applicano a più account.

id: "n9YFp0D9qE02Q5A49bo68a"
imp {
  id: "1"
  banner {
    w: 320
    h: 50
    pos: ABOVE_THE_FOLD
    api: MRAID_1
    api: MRAID_2
    format {
      w: 320
      h: 50
    }
  }
  displaymanager: "GoogleMobileAds-iOS"
  displaymanagerver: "11.2.0"
  tagid: "2913643481"
  bidfloor: 0.04
  bidfloorcur: "USD"
  secure: true
  exp: 3600
  clickbrowser: true
  metric {
    type: "click_through_rate"
    value: 0.0003642654628492892
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.98
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 41048190734
    billing_id: 87998475627
    publisher_settings_list_id: 5889715199959683550
    publisher_settings_list_id: 3379823455061055318
    allowed_vendor_type: 566
    allowed_vendor_type: 113
    ampad: AMP_AD_NOT_ALLOWED
    skadn {
      sourceapp: "com.google.testapp"
      skadnetids: "6ZVs3vs4"
      versions: "2.0"
      versions: "2.1"
      fidelities: VIEW_THROUGH_ADS
      fidelities: STOREKIT_RENDERED_ADS
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-6227762759521589"
    [com.google.doubleclick.publisher] {
      country: "US"
    }
  }
  content {
    url: "https://www.google.com"
    livestream: false
    language: "en"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "USA"
    region: "TX"
    metro: "623"
    city: "Lewisville"
    type: IP
    utcoffset: -300
    accuracy: 6225
  }
  make: "Apple"
  model: "iPhone13,2"
  os: "iOS"
  osv: "17.4.1"
  connectiontype: WIFI
  devicetype: HIGHEND_PHONE
  lmt: true
  hwv: "iPhone13,2"
  w: 390
  h: 844
  pxratio: 3.0
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "605"
      version: "1"
    }
    platform {
      brand: "iPhone"
      version: "17"
      version: "4"
    }
    mobile: true
    bitness: "64"
    model: "iPhone"
    source: USER_AGENT_STRING
  }
  [com.google.doubleclick.device] {
    atts: 2
  }
}
at: FIRST_PRICE
tmax: 1000
cur: "USD"
bcat: "IAB18-5"
bcat: "IAB23-4"
bapp: "359917414"
bapp: "1446254576"
source {
  schain {
    complete: true
    nodes {
      asi: "testssp.com"
      sid: "pub-1111111111111111"
      hp: true
    }
    ver: "1.0"
  }
  [com.google.doubleclick.source] {
    omidpn: "Google"
    omidpv: "afma-sdk-i-v11.2.0"
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-z17251-40u3eXfXPL5j3MDPa7n6Ree92uf7354o71FP67Rk5i3G30Ez7p39Ze1722D8H"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_APP
  privacy_treatments {
    allow_user_data_collection: true
  }
}
{
  "id": "pu96xf0D7otnT4Q317588G",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 320,
        "h": 50,
        "pos": 1,
        "expdir": [
          1,
          2,
          3,
          4
        ],
        "api": [
          3,
          5
        ],
        "format": [
          {
            "w": 320,
            "h": 50
          },
          {
            "w": 320,
            "h": 100
          }
        ]
      },
      "displaymanager": "GoogleMobileAds-iOS",
      "displaymanagerver": "10.5.0",
      "tagid": "1077633402",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 3600,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "viewability",
          "value": 0.74,
          "vendor": "EXCHANGE"
        },
        {
          "type": "session_depth",
          "value": 1,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          77621228638,
          75301362736
        ],
        "dfp_ad_unit_code": "/9041646/google/test",
        "ampad": 2,
        "buyer_generated_request_data": [
          {
            "source_app": {
              "id": "com.google.ads.mediation.test.TestAdapter"
            },
            "data": "Test Data"
          }
        ],
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "creative_enforcement_settings": {
          "policy_enforcement": 1,
          "publisher_blocks_enforcement": 2
        },
        "billable_event_rate_adjustment": 1,
        "auction_environment": 0,
        "ad_unit_mapping": [
          {
            "keyvals": [
              {
                "key": "OMITTED",
                "value": "OMITTED"
              },
              {
                "key": "OMITTED",
                "value": "OMITTED"
              }
            ],
            "format": 1
          }
        ],
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-3858090347872942",
      "ext": {
        "country": "JP"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "livestream": 0,
      "language": "ja"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "installed_sdk": [
        {
          "id": "com.google.ads.mediation.test.TestAdapter",
          "sdk_version": {
            "major": 5,
            "minor": 2,
            "micro": 6
          },
          "adapter_version": {
            "major": 5,
            "minor": 2,
            "micro": 600
          }
        }
      ],
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "JPN",
      "region": "JP-11",
      "city": "Wako",
      "type": 2,
      "utcoffset": 540,
      "accuracy": 1656
    },
    "make": "Apple",
    "model": "iPhone13,2",
    "os": "iOS",
    "osv": "17.4.1",
    "connectiontype": 2,
    "devicetype": 4,
    "ifa": "644t6oo9K5630T4P55UhH3U6QwBvyR8434j1",
    "lmt": 0,
    "hwv": "iPhone13,2",
    "w": 390,
    "h": 844,
    "pxratio": 3,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "605",
            "1"
          ]
        }
      ],
      "platform": {
        "brand": "iPhone",
        "version": [
          "17",
          "4"
        ]
      },
      "mobile": 1,
      "bitness": "64",
      "model": "iPhone",
      "source": 3
    },
    "ext": {
      "atts": 3
    }
  },
  "user": {
    "id": "wr62bT596f06jhZ1V77n3I1b63h",
    "data": [
      {
        "id": "pub-9226299926337762",
        "name": "Publisher Passed",
        "segment": [
          {
            "name": "TEST_NAME",
            "value": "TEST_VALUE"
          },
          {
            "name": "TEST_NAME",
            "value": "TEST_VALUE"
          }
        ]
      }
    ],
  },
  "at": 1,
  "tmax": 1000,
  "cur": [
    "USD"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-i-v10.5.0",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z3D398-yn1l2uC2D50Bl9f19AQ3nSQAI82307LmCWc646P925n10EqSpUdQ1wt1IxQj7",
    "fcap_scope": 1
  }
}
id: "\330\334\201\343\345\\jN\3313`V^\214\207\003\345\022GP\023\323\251"
user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
url: "https://www.google.com"
detected_language: "it"
adslot {
  id: 1
  width: 414
  width: 320
  height: 50
  height: 50
  excluded_attribute: 15
  excluded_attribute: 22
  allowed_vendor_type: 489
  allowed_vendor_type: 550
  excluded_sensitive_category: 36
  excluded_sensitive_category: 4
  matching_ad_data {
    billing_id: 97713609660
    billing_id: 60373602214
    minimum_cpm_micros: 40000
  }
  matching_ad_data {
    billing_id: 84882034591
    billing_id: 74365219129
    minimum_cpm_micros: 520000
  }
  slot_visibility: ABOVE_THE_FOLD
  ad_block_key: 4252652432
  publisher_settings_list_id: 8511095895255592384
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  viewability: 89
  click_through_rate: 0.0027791813
  allowed_ad_types: ALLOWED_AD_TYPE_BANNER
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  consented_providers_settings {
    consented_providers: 196
    consented_providers: 153
    additional_consent_string: "OMITTED"
  }
  regs_gdpr: true
  api: OMID_1
  api: MRAID_1
  omidpn: "Google"
  omidpv: "afma-sdk-i-v9.0.0"
  creative_enforcement_settings {
    policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
    publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
  }
  auction_environment: SERVER_SIDE_AUCTION
  impression_expiration_seconds: 3600
  supported_auction_environment: SERVER_SIDE_AUCTION
  display_manager: "GoogleMobileAds-iOS"
  display_manager_version: "9.0.0"
}
is_test: false
timezone_offset: 120
mobile {
  app_id: "116395214"
  is_app: true
  app_name: "Test App"
}
postal_code: "10011"
geo_criteria_id: 20524
publisher_settings_list_id: 9033154688577085139
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 8689962800479104672
device {
  device_type: HIGHEND_PHONE
  platform: "iphone"
  brand: "Apple"
  model: "iPhone9,4"
  os_version {
    major: 15
    minor: 8
    micro: 2
  }
  carrier_id: 0
  screen_width: 414
  screen_height: 736
  screen_pixel_ratio_millis: 3000
  screen_orientation: PORTRAIT
  hardware_version: "iPhone9,4"
  limit_ad_tracking: true
  app_tracking_authorization_status: DENIED
  connection_type: WIFI
}
publisher_country: "IT"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-z17d1Q-rs050w92ve6V2Lm2820pMZ0517u12jT7m02AURu7dw0XbsQ0pK5EAd173Cm1Q"
auction_type: FIRST_PRICE
geo {
  lat: 42.85
  lon: 13.7
  country: "ITA"
  region: "IT-AP"
  zip: "63082"
  utcoffset: 120
  accuracy: 19730
}
user_agent_data {
  platform {
    brand: "iPhone"
    version: "15"
    version: "0"
  }
  mobile: true
  model: "iPhone"
  browsers {
    brand: "Mozilla"
    version: "5"
    version: "0"
  }
  browsers {
    brand: "AppleWebKit"
    version: "605"
    version: "1"
  }
  bitness: "64"
  source: USER_AGENT_STRING
}
supply_chain {
  complete: true
  nodes {
    advertising_system_identifier: "testdomain.com"
    seller_identifier: "pub-1111111111111111"
    handles_payment: true
  }
  version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_NONE
privacy_treatments {
  ip: IP_REDACTED
  user_agent: USER_AGENT_COARSENED
  non_personalized_ads_reason: PUBLISHER_DECLARED_NPA
  allow_user_data_collection: false
  device_storage_restriction_reason: INSUFFICIENT_USER_CONSENT
}
inventory_partner_domain: "OMITTED"