Xử lý yêu cầu

Quá trình tương tác đặt giá thầu theo thời gian thực bắt đầu khi Google gửi yêu cầu giá thầu đến ứng dụng của bạn. Hướng dẫn này giải thích cách lập trình ứng dụng để xử lý yêu cầu giá thầu.

Phân tích cú pháp yêu cầu Protobuf

Google gửi yêu cầu giá thầu dưới dạng vùng đệm giao thức được chuyển đổi tuần tự đính kèm dưới dạng tải trọng tệp nhị phân của yêu cầu POST HTTP. Content-Type được đặt thành application/octet-stream. Hãy xem Ví dụ về yêu cầu giá thầu để biết ví dụ.

Bạn phải phân tích cú pháp yêu cầu này thành một thực thể của thông báo BidRequest. Tuỳ thuộc vào giao thức bạn chọn, BidRequest được xác định trong openrtb.proto hoặc realtime-bidding.proto không dùng nữa. Bạn có thể lấy dữ liệu này từ trang dữ liệu tham chiếu. Bạn có thể phân tích cú pháp thông báo bằng cách sử dụng phương thức ParseFromString() trong lớp được tạo cho BidRequest. Ví dụ: mã C++ sau đây phân tích cú pháp một yêu cầu được cung cấp tải trọng POST trong một chuỗi:

string post_payload = /* the payload from the POST request */;
BidRequest bid_request;
if (bid_request.ParseFromString(post_payload)) {
  // Process the request.
}

Sau khi có BidRequest, bạn có thể xử lý tệp này dưới dạng một đối tượng, trích xuất và diễn giải các trường mà bạn cần. Ví dụ: trong C++, việc lặp lại các giao dịch trong "BidRequest" OpenRTB có thể có dạng như sau:

for (const BidRequest::Imp::Pmp::Deal& deal : pmp.deals()) {
  DoSomething(deal.id(), deal.wseat());
}

Mã thanh toán

Bạn sẽ nhận được yêu cầu giá thầu khi khoảng không quảng cáo của nhà xuất bản được nhắm mục tiêu bằng một hoặc nhiều cấu hình nhắm mục tiêu trước. BidRequest.imp.ext.billing_id sẽ được điền sẵn mã thanh toán của mọi người mua đủ điều kiện và các cấu hình nhắm mục tiêu trước có liên quan. Ngoài ra, đối với khoảng không quảng cáo của giao dịch, bạn có thể tìm thấy mã nhận dạng thanh toán được liên kết với người mua có liên quan bằng cách sử dụng BidRequest.imp.pmp.deal.ext.billing_id. Bạn chỉ có thể chỉ định mã thanh toán của người mua có trong yêu cầu giá thầu khi đặt giá thầu.

Nếu yêu cầu giá thầu có nhiều mã thanh toán, bạn phải chỉ định mã thanh toán của người mua mà bạn dự định phân bổ giá thầu bằng trường BidResponse.seatbid.bid.ext.billing_id.

Tệp từ điển

Yêu cầu giá thầu sử dụng giá trị nhận dạng được xác định trong các tệp từ điển có sẵn trên trang dữ liệu tham chiếu.

Macro URL giá thầu theo giao thức RTB của Google

Bạn có thể chèn một số trường của BidRequest vào URL dùng trong yêu cầu POST HTTP (không bắt buộc). Điều này rất hữu ích, ví dụ: nếu bạn sử dụng một giao diện người dùng nhẹ giúp cân bằng tải trên nhiều phần phụ trợ bằng cách sử dụng một giá trị từ yêu cầu. Hãy liên hệ với người quản lý tài khoản kỹ thuật để yêu cầu hỗ trợ về các macro mới.

MacroMô tả
%%GOOGLE_USER_ID%%

Thay thế bằng google_user_id từ BidRequest. Ví dụ: URL của bên đặt giá thầu

http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%%
sẽ được thay thế bằng một nội dung như
http://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl
tại thời điểm yêu cầu.

Nếu không xác định được Mã nhận dạng người dùng của Google, thì chuỗi trống sẽ được thay thế, với kết quả tương tự như

http://google.bidder.com/path?gid=
%%HAS_MOBILE%%

Được thay thế bằng 1 hoặc 0 khi gọi has_mobile() của BidRequest.

%%HAS_VIDEO%%

Được thay thế bằng 1 (đúng) hoặc 0 (sai) khi gọi has_video() của BidRequest.

%%HOSTED_MATCH_DATA%%

Được thay thế bằng giá trị của trường hosted_match_data từ BidRequest.

%%MOBILE_IS_APP%%

Được thay thế bằng 1 (đúng) hoặc 0 (sai) từ trường mobile.is_app của BidRequest.

Tìm mã ứng dụng di động từ URL giao dịch

Các giao dịch ứng dụng di động sẽ báo cáo các URL có dạng như sau:

mbappgewtimrzgyytanjyg4888888.com

Sử dụng bộ giải mã cơ số 32 để giải mã phần chuỗi in đậm (gewtimrzgyytanjyg4888888).

Bạn có thể sử dụng trình giải mã trực tuyến, nhưng bạn sẽ phải viết hoa các chữ cái và thay thế 8 ở cuối bằng các giá trị =.

Vì vậy, hãy giải mã giá trị này:

GEWTIMRZGYYTANJYG4======
sẽ dẫn đến:
1-429610587
Chuỗi 429610587 là mã ứng dụng cho ứng dụng iOS iFunny.

Sau đây là một ví dụ khác. URL được báo cáo là:

mbappgewtgmjug4ytmmrtgm888888.com
Giải mã giá trị này:
GEWTGMJUG4YTMMRTGM======
sẽ dẫn đến:
1-314716233
Kết quả 314716233 là mã ứng dụng cho ứng dụng iOS TextNow.

Tìm tên ứng dụng di động qua URL giao dịch

Dưới đây là ví dụ về cách lấy tên ứng dụng. URL được báo cáo như sau:

mbappMFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q888.com
Giải mã giá trị này:
MFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q===
sẽ dẫn đến:
air.com.hypah.io.slither
Kết quả tương đương với ứng dụng Android slither.io.

Các trường Đặt giá thầu mở

Yêu cầu giá thầu được gửi đến bên đặt giá thầu trên mạng và sàn giao dịch tham gia tính năng Đặt giá thầu mở tương tự như yêu cầu của Authorized Buyers tham gia tính năng đặt giá thầu theo thời gian thực tiêu chuẩn. Khách hàng sử dụng tính năng Đặt giá thầu mở sẽ nhận được một số trường bổ sung và một vài trường hiện có có thể có cách sử dụng thay thế. Các tính năng này bao gồm:

OpenRTB Authorized Buyers Thông tin chi tiết
BidRequest.imp[].ext.dfp_ad_unit_code BidRequest.adslot[].dfp_ad_unit_code

Chứa mã mạng Ad Manager của nhà xuất bản, theo sau là hệ thống phân cấp đơn vị quảng cáo, được phân tách bằng dấu gạch chéo lên.

Ví dụ: nội dung này sẽ xuất hiện với định dạng tương tự như: /1234/cruises/mars.

BidRequest.user.data[].segment[] BidRequest.adslot[].exchange_bidding.key_value[]

Các cặp khoá-giá trị lặp lại được gửi từ nhà xuất bản đến bên đặt giá thầu trao đổi.

Bạn có thể xác định rằng các giá trị này là cặp khoá-giá trị do nhà xuất bản gửi khi BidRequest.user.data[].name được đặt thành “Publisher Passed”.

Khai báo nhà cung cấp được phép

Các nhà cung cấp công nghệ cung cấp các dịch vụ như nghiên cứu, tái tiếp thị và phân phát quảng cáo có thể đóng vai trò trong hoạt động tương tác giữa người mua và người bán. Chỉ những nhà cung cấp mà Google đã kiểm tra để tham gia các hoạt động tương tác với Authorized Buyers mới được phép.

Để hiểu BidRequest và tạo BidResponse, bạn cần biết hai cách khai báo nhà cung cấp công nghệ:

  1. Bạn không cần khai báo một số nhà cung cấp; những nhà cung cấp này được liệt kê trong phần Nhà cung cấp bên ngoài được chứng nhận của Ad Manager.
  2. Các nhà cung cấp khác chỉ có thể tham gia nếu được khai báo trong BidRequest:
    • Trong BidRequest, trường BidRequest.imp.ext.allowed_vendor_type chỉ định những nhà cung cấp mà người bán cho phép. Các nhà cung cấp sẽ được gửi trong allowed_vendor_type được liệt kê trong tệp từ điển vendors.txt.

Ví dụ về yêu cầu giá thầu

Các ví dụ sau đây thể hiện các mẫu yêu cầu Protobuf và JSON mà con người có thể đọc được.

Yêu cầu tuần tự
id: "G44mF74ywRs183dKa9565D"
imp {
  id: "1"
  banner {
    w: 320
    h: 50
    pos: BELOW_THE_FOLD
    expdir: LEFT
    expdir: RIGHT
    expdir: UP
    expdir: DOWN
    wmax: 320
    hmax: 50
    wmin: 214
    hmin: 33
    format {
      w: 320
      h: 50
    }
    format {
      w: 300
      h: 50
    }
    [com.google.doubleclick.banner_ext] {
      flexslot {
        wmin: 214
        wmax: 320
        hmin: 33
        hmax: 50
      }
    }
  }
  tagid: "3724651684"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  exp: 3600
  metric {
    type: "click_through_rate"
    value: 2.80155200016452e-05
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.14
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 61560909063
    dfp_ad_unit_code: "/2149822/google/test"
    ampad: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
    buyer_generated_request_data {
      data: "Test Data"
    }
    buyer_generated_request_data {
      data: "Test Data"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    open_bidding {
      is_open_bidding: true
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_OVERRIDDEN
    }
    auction_environment: SERVER_SIDE_AUCTION
    ae: SERVER_SIDE_AUCTION
  }
}
site {
  page: "https://www.google.com"
  publisher {
    id: "pub-1111111111111111"
    [com.google.doubleclick.publisher] {
      country: "US"
    }
  }
  content {
    livestream: false
    language: "es"
  }
  mobile: true
  [com.google.doubleclick.site] {
    amp: DIALECT_HTML
    page_visibility: VISIBILITY_STATE_HIDDEN
    inventorypartnerdomain: "OMITTED"
    uact {
      wasact: true
      isact: true
    }
    ntype: NAVIGATION_TYPE_NAVIGATE
  }
}
device {
  ua: "OMITTED"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "MEX"
    region: "MX-NLE"
    zip: "67050"
    type: IP
    utcoffset: -360
    accuracy: 3447
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9143049
    }
  }
  make: "Motorola"
  model: "razr 2024"
  os: "android"
  osv: "14"
  devicetype: HIGHEND_PHONE
  lmt: false
  w: 320
  h: 783
  pxratio: 3.375
  sua {
    browsers {
      brand: "Chromium"
      version: "130"
      version: "0"
    }
    browsers {
      brand: "Android WebView"
      version: "130"
      version: "0"
    }
    platform {
      brand: "Android"
      version: "14"
      version: "0"
    }
    mobile: true
    model: "motorola razr 2024"
    source: CLIENT_HINTS_HIGH_ENTROPY
  }
}
user {
  id: "7pWq9gH2c44W14G0diM896340U7"
  buyeruid: "ob9RP0311MR4X7c983o221v0B890U239"
  customdata: "77o24I2Ie6j9g1Svm1J60Nnn8zB185Bk1yBhM6i28cWp9wjb"
  [com.google.doubleclick.user] {
    eids {
      source: "OMITTED"
      uids {
        id: "12JD92JD8078S8J29SDOAKC0EF230337"
      }
    }
    eids {
      source: "OMITTED"
      uids {
        id: "12JD92JD8078S8J29SDOAKC0EF230337"
      }
    }
    idage: 1296000
  }
}
at: FIRST_PRICE
tmax: 350
cur: "USD"
source {
  schain {
    complete: true
    nodes {
      asi: "testssp.com"
      sid: "pub-1111111111111111"
      hp: true
    }
    ver: "1.0"
  }
  [com.google.doubleclick.source] {
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-zph5Vk-45u86x7963d1Se8v5W33W604M5WCTYJ4eH7jzh9702Y7A818s510l2vhC7tK4"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_NONE
}
{
  "id": "G44mF74ywRs183dKa9565D",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 320,
        "h": 50,
        "pos": 3,
        "expdir": [
          1,
          2,
          3,
          4
        ],
        "wmax": 320,
        "hmax": 50,
        "wmin": 214,
        "hmin": 33,
        "format": [
          {
            "w": 320,
            "h": 50
          },
          {
            "w": 300,
            "h": 50
          }
        ],
        "ext": {
          "flexslot": {
            "wmin": 214,
            "wmax": 320,
            "hmin": 33,
            "hmax": 50
          }
        }
      },
      "tagid": "3724651684",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 3600,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 2.80155200016452e-05,
          "vendor": "EXCHANGE"
        },
        {
          "type": "viewability",
          "value": 0.14,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "61560909063"
        ],
        "dfp_ad_unit_code": "/2149822/google/test",
        "ampad": 3,
        "buyer_generated_request_data": [
          {
            "data": "Test Data"
          },
          {
            "data": "Test Data"
          }
        ],
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "open_bidding": {
          "is_open_bidding": 1
        },
        "creative_enforcement_settings": {
          "policy_enforcement": 1,
          "publisher_blocks_enforcement": 2
        },
        "auction_environment": 0,
        "ae": 0
      }
    }
  ],
  "site": {
    "page": "https://www.google.com",
    "publisher": {
      "id": "pub-1111111111111111",
      "ext": {
        "country": "US"
      }
    },
    "content": {
      "livestream": 0,
      "language": "es"
    },
    "mobile": 1,
    "ext": {
      "amp": 0,
      "page_visibility": 2,
      "inventorypartnerdomain": "OMITTED",
      "uact": {
        "wasact": 1,
        "isact": 1
      },
      "ntype": 1
    }
  },
  "device": {
    "ua": "OMITTED",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "MEX",
      "region": "MX-NLE",
      "zip": "67050",
      "type": 2,
      "utcoffset": -360,
      "accuracy": 3447,
      "ext": {
        "geo_criteria_id": 9143049
      }
    },
    "make": "Motorola",
    "model": "razr 2024",
    "os": "android",
    "osv": "14",
    "devicetype": 4,
    "lmt": 0,
    "w": 320,
    "h": 783,
    "pxratio": 3.375,
    "sua": {
      "browsers": [
        {
          "brand": "Chromium",
          "version": [
            "130",
            "0"
          ]
        },
        {
          "brand": "Android WebView",
          "version": [
            "130",
            "0"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "14",
          "0"
        ]
      },
      "mobile": 1,
      "model": "motorola razr 2024",
      "source": 2
    }
  },
  "user": {
    "id": "7pWq9gH2c44W14G0diM896340U7",
    "buyeruid": "ob9RP0311MR4X7c983o221v0B890U239",
    "customdata": "77o24I2Ie6j9g1Svm1J60Nnn8zB185Bk1yBhM6i28cWp9wjb",
    "ext": {
      "eids": [
        {
          "source": "OMITTED",
          "uids": [
            {
              "id": "12JD92JD8078S8J29SDOAKC0EF230337"
            }
          ]
        },
        {
          "source": "OMITTED",
          "uids": [
            {
              "id": "12JD92JD8078S8J29SDOAKC0EF230337"
            }
          ]
        }
      ],
      "idage": 1296000
    }
  },
  "at": 1,
  "tmax": 350,
  "cur": [
    "USD"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-zph5Vk-45u86x7963d1Se8v5W33W604M5WCTYJ4eH7jzh9702Y7A818s510l2vhC7tK4",
    "fcap_scope": 1
  }
}
Yêu cầu tuần tự
id: "To1)\351\216ec%\362\220w\235\300\010\255G\020^\257\'[}"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "it"
adslot {
  id: 1
  width: 336
  width: 300
  height: 280
  height: 250
  excluded_attribute: 70
  excluded_attribute: 16
  allowed_vendor_type: 445
  allowed_vendor_type: 704
  excluded_sensitive_category: 31
  excluded_sensitive_category: 24
  matching_ad_data {
    billing_id: 78614473201
    minimum_cpm_micros: 10000
  }
  slot_visibility: BELOW_THE_FOLD
  excluded_product_category: 10003
  excluded_product_category: 10017
  ad_block_key: 5501504864
  publisher_settings_list_id: 3066683014322168515
  iframing_state: UNKNOWN_IFRAME_STATE
  viewability: 80
  click_through_rate: 0.001814635
  renderer: GOOGLE
  allowed_ad_types: ALLOWED_AD_TYPE_BANNER
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
  consented_providers_settings {
    consented_providers: 1227
    consented_providers: 2140
    tcf_consent_string: "OMITTED"
    additional_consent_string: "OMITTED"
  }
  regs_gdpr: true
  flexible_adslot_settings {
    max_width: 412
    max_height: 361
    min_width: 206
    min_height: 46
  }
  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
}
is_test: false
cookie_version: 1
google_user_id: "Fl9o7N66Yl32fK90ZvfV50238gt"
timezone_offset: 120
mobile {
  app_id: "com.google.testapp"
  is_app: false
  is_mobile_web_optimized: true
  app_name: "Test App"
  app_rating: 3.9867892
}
cookie_age_seconds: 10368000
geo_criteria_id: 1008141
publisher_settings_list_id: 7538157606866003226
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 7568211982740612868
device {
  device_type: HIGHEND_PHONE
  platform: "android"
  brand: "Samsung"
  model: "sm-a750fn"
  os_version {
    major: 10
  }
  carrier_id: 70150
  screen_width: 412
  screen_height: 846
  screen_pixel_ratio_millis: 2625
  screen_orientation: PORTRAIT
  limit_ad_tracking: false
}
publisher_country: "IT"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 350
google_query_id: "ANy-zM40L2-685i3i9Pb9aV5D0nlcJ6vR1yvq0Xev4635927DQi781B2X403h2GoyQQdMl26"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "ITA"
  region: "IT-BO"
  city: "Bologna"
  utcoffset: 120
  accuracy: 5230
}
user_agent_data {
  platform {
    brand: "Android"
    version: "10"
    version: "0"
  }
  mobile: true
  model: "SM-A750FN"
  browsers {
    brand: "Android WebView"
    version: "129"
    version: "0"
  }
  browsers {
    brand: "Not=A?Brand"
    version: "8"
    version: "0"
  }
  source: CLIENT_HINTS_HIGH_ENTROPY
}
page_visibility: VISIBILITY_STATE_VISIBLE
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_BROWSER
privacy_treatments {
  allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"

Để chuyển đổi yêu cầu giá thầu thành một dạng tệp nhị phân, như bạn sẽ nhận được từ tải trọng POST trong một yêu cầu thực, bạn có thể làm như sau (trong C++). Tuy nhiên, xin lưu ý rằng phương thức này không áp dụng cho JSON OpenRTB.

string text_format_example = /* example from above */;
BidRequest bid_request;
if (TextFormat::ParseFromString(text_format_example, &bid_request)) {
  string post_payload;
  if (bid_request.SerializeToString(&post_payload)) {
    // post_payload is a binary serialization of the protocol buffer
  }
}

Phản hồi theo thời gian thực

Authorized Buyers cũng như các sàn giao dịch và mạng sử dụng tính năng Đặt giá thầu mở có thể xem ý kiến phản hồi theo thời gian thực.

Phản hồi về giá thầu phản hồi được hỗ trợ trên yêu cầu giá thầu tiếp theo cho cả giao thức OpenRTB và giao thức Google RTB không còn được dùng nữa. Đối với OpenRTB, thông tin này được gửi trong BidRequest.ext.bid_feedback.

Ngoài các trường mặc định được gửi trong Ý kiến phản hồi về phản hồi giá thầu, bạn cũng có thể gửi dữ liệu tuỳ chỉnh trong phản hồi giá thầu bằng cách sử dụng trường BidResponse.seatbid.bid.ext.event_notification_token. event_notification_token là dữ liệu tuỳ ý mà chỉ bên đặt giá thầu mới biết và có thể giúp gỡ lỗi, ví dụ: mã nhắm mục tiêu mới hoặc mã đặt giá thầu đại diện cho một chiến thuật mới hoặc siêu dữ liệu liên kết với mẫu quảng cáo mà chỉ bên đặt giá thầu mới biết. Để biết thông tin chi tiết, hãy xem Vùng đệm giao thức của tiện ích OpenRTB dành cho OpenRTB hoặc giao thức RTB của Google không còn được dùng nữa.

Khi Authorized Buyers gửi yêu cầu giá thầu đến một bên đặt giá thầu, bên đặt giá thầu sẽ phản hồi bằng BidResponse. Nếu bên đặt giá thầu đã bật tính năng phản hồi theo thời gian thực, thì trong một yêu cầu giá thầu tiếp theo, Authorized Buyers sẽ gửi phản hồi về phản hồi trong một thông báo BidFeedback:

message BidFeedback {
  // The unique id from BidRequest.id.
  optional string request_id = 1;

  // The status code for the ad. See creative-status-codes.txt in the
  // technical documentation for a list of ids.
  optional int32 creative_status_code = 2;

  // Deprecated. This field is not populated and will be removed after March,
  // 2025. If the bid won the auction, this is the price paid in your account
  // currency. If the bid participated in the auction but was out-bid, this
  // is the CPM that should have been exceeded in order to win. This is not
  // set if the bid was filtered prior to the auction, if the publisher or
  // winning bidder has opted out of price feedback or if your account has
  // opted out of sharing winning prices with other bidders. For first-price
  // auctions, minimum_bid_to_win is populated instead of this field.
  optional double price = 3 [deprecated = true];

  // The minimum bid value necessary to have won the auction, in your account
  // currency. If your bid won the auction, this is the second highest bid
  // that was not filtered (including the floor price). If your bid didn't win
  // the auction, this is the winning candidate's bid. This field will only be
  // populated if your bid participated in a first-price auction, and will not
  // be populated if your bid was filtered prior to the auction.
  optional double minimum_bid_to_win = 6;

  // The minimum bid value necessary to have won the server-side component of
  // the overall auction given that there was also an interest group bidding
  // component to the overall auction which ran using the Protected Audience
  // API. The value is expressed in CPM of the buyer account currency. The
  // minimum bid to win for the overall auction, including bids from the
  // server-side and the on-device interest group components, is populated in
  // the minimum_bid_to_win field of the same BidFeedback object.
  optional double sscminbidtowin = 14;

  // Billable event rate multiplier that was applied to this bid during
  // ranking. The adjustment reflects the likelihood that your bid would
  // generate a billable event (namely, the ad renders successfully) if it won
  // the auction, relative to the probability that other bids generate a
  // billable event if they won the auction. This adjustment can be larger or
  // smaller than 1. This affects the final ranking in the auction only; in
  // particular, this multiplier does not affect the payment or whether the
  // bid clears any floor price.
  optional float billable_event_rate_bid_adjustment = 13 [default = 1];

  // When a publisher uses an RTB auction and waterfall-based SDK mediation on
  // the same query, the winner of the real-time auction must also compete in
  // a mediation waterfall (which is ordered by price) to win the impression.
  // If the bid participated in the auction and there was no waterfall, the
  // value of this field is 0. If the bid participated in the auction and
  // there was a waterfall, the value of this field is a price representing a
  // sample bid from the eligible mediation networks that were higher than the
  // auction winner, weighted by expected fill rate. This field can be used
  // in conjunction with minimum_bid_to_win to train bidding models. The CPM
  // is in your account currency.
  optional double sampled_mediation_cpm_ahead_of_auction_winner = 8;

  message EventNotificationToken {
    // The contents of the token.
    optional string payload = 1;
  }

  // The token included in the corresponding bid.
  optional EventNotificationToken event_notification_token = 4;

  // The creative ID included in the corresponding bid.
  optional string buyer_creative_id = 5;

  // Possible types of bid response feedback objects.
  enum FeedbackType {
    FEEDBACK_TYPE_UNSPECIFIED = 0;

    // Feedback for a bid that was submitted on a bid response.
    BID_FEEDBACK = 1;

    // Feedback for an interest group buyer submitted on a bid response to
    // particpate in an interest group bidding component of the auction run
    // using the Protected Audience API.
    INTEREST_GROUP_BUYER_FEEDBACK = 2;
  }

  // The type of the BidFeedback message. Google will send separate
  // BidFeedback objects for:
  // a) Each bid submitted on a bid response
  // b) Each buyer submitted on a bid response to particpate in an interest
  // group bidding component of the auction run using the Protected Audience
  // API.
  optional FeedbackType feedbacktype = 15;

  // Origin of an interest group buyer that was included in the bid response.
  // This field is populated only for feedback where a bidder opted in an
  // interest group buyer to participate in the interest group bidding
  // component of the overall auction run using the Protected Audience API.
  // To learn more about origins, see https://www.rfc-editor.org/rfc/rfc6454.
  // To learn more about interest group bidding and the Protected Audience
  // API, see
  // https://developers.google.com/authorized-buyers/rtb/fledge-origin-trial.
  optional string buyerorigin = 16;

  // The status code for the submitted interest group buyer. This field is
  // only populated in the feedback for an interest group buyer that a bidder
  // requested to enter into the interest group auction through the bid
  // response. Individual creative status codes of bids submitted by the buyer
  // in the on-device interest group auction are not available. See
  // https://storage.googleapis.com/adx-rtb-dictionaries/interest-group-buyer-status-codes.txt
  // for a list of interest group buyer status codes.
  optional int32 igbuyerstatus = 17;
}

Trong thông báo này, trường đầu tiên bạn nên kiểm tra là bid_feedback.creative_status_code; bạn có thể tìm thấy ý nghĩa của mã trong creative-status-codes.txt. Xin lưu ý rằng nếu thắng giá thầu, bạn có thể chọn không tham gia tính năng ý kiến phản hồi về giá. Để biết thêm thông tin, hãy xem bài viết Cách chọn không tham gia.

Phản hồi theo thời gian thực bao gồm mã yêu cầu giá thầu và một trong những thông tin sau:

Kết quả đấu giá Phản hồi theo thời gian thực
Người mua không gửi giá thầu. Miễn phí.
Người mua đã gửi một giá thầu bị lọc ra trước khi tham gia phiên đấu giá. Mã trạng thái mẫu quảng cáo (creative-status-codes.txt).
Người mua đã gửi giá thầu nhưng thua phiên đấu giá. Mã trạng thái mẫu quảng cáo 79 (bị trả giá cao hơn trong phiên đấu giá).
Người mua đã gửi một giá thầu thắng phiên đấu giá. Giá thanh toán và mã trạng thái mẫu quảng cáo 1.

Đối với một lượt hiển thị ứng dụng và mã trạng thái mẫu quảng cáo là 83, nhà xuất bản ứng dụng có thể đang sử dụng quy trình dàn xếp dạng thác nước, do đó, giá thầu chiến thắng sẽ cạnh tranh với các nhu cầu khác trong chuỗi thác nước trả về của nhà xuất bản. Tìm hiểu cách sử dụng sampled_mediation_cpm_ahead_of_auction_winner khi đặt giá thầu.

Mẫu

Sau đây là mẫu phản hồi theo thời gian thực như trong các giao thức được hỗ trợ:

Yêu cầu tuần tự
id: "01WjN3uc042XYP8Yw509Q7"
imp {
  id: "1"
  banner {
    w: 344
    h: 650
    pos: AD_POSITION_FULLSCREEN
    api: MRAID_1
    api: MRAID_2
    format {
      w: 344
      h: 650
    }
    format {
      w: 300
      h: 600
    }
  }
  displaymanager: "GoogleMobileAds-Android"
  displaymanagerver: "22.6.0"
  instl: true
  tagid: "7282514850"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  exp: 14400
  clickbrowser: true
  metric {
    type: "viewability"
    value: 0.77
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 75441834964
    publisher_settings_list_id: 9268043626392948934
    publisher_settings_list_id: 2867966915706729060
    allowed_vendor_type: 113
    allowed_vendor_type: 41423
    ampad: AMP_AD_NOT_ALLOWED
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    allowed_restricted_category: 32
    allowed_restricted_category: 33
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    is_app_open_ad: true
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  ver: "6.46.0"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-7120195540802809"
    [com.google.doubleclick.publisher] {
      country: "US"
    }
  }
  content {
    url: "https://www.google.com"
    userrating: "4.6"
    livestream: false
    language: "en"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "GHA"
    type: IP
    utcoffset: 0
    accuracy: 8865
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9067654
    }
  }
  make: "Itel"
  model: "itel W6502"
  os: "android"
  osv: "10"
  connectiontype: CELL_4G
  devicetype: HIGHEND_PHONE
  lmt: true
  w: 360
  h: 722
  pxratio: 2.0
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "537"
      version: "36"
    }
    platform {
      brand: "Android"
      version: "10"
    }
    mobile: true
    model: "itel W6502"
    source: USER_AGENT_STRING
  }
}
user {
  [com.google.doubleclick.user] {
    session {
      duration: 660
    }
  }
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
bcat: "IAB19-22"
bcat: "IAB23-1"
source {
  schain {
    complete: true
    nodes {
      asi: "testssp.com"
      sid: "pub-1111111111111111"
      hp: true
    }
    ver: "1.0"
  }
  [com.google.doubleclick.source] {
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  bid_feedback {
    request_id: "4004C52Z6Z7Fa39Lf6F2AQ"
    creative_status_code: 79
    buyer_creative_id: "test_creative_id_129669"
    minimum_bid_to_win: 0.1
    feedbacktype: BID_FEEDBACK
  }
  google_query_id: "ANy-zbp8Gw-Mv43u3ni49Ena0i57E0789881P6YVa8jXDHq36B3fNk8me8F20GS6114onx7A"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_APP
  privacy_treatments {
    allow_user_data_collection: true
  }
}
{
  "id": "01WjN3uc042XYP8Yw509Q7",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 344,
        "h": 650,
        "pos": 7,
        "api": [
          3,
          5
        ],
        "format": [
          {
            "w": 344,
            "h": 650
          },
          {
            "w": 300,
            "h": 600
          }
        ]
      },
      "displaymanager": "GoogleMobileAds-Android",
      "displaymanagerver": "22.6.0",
      "instl": 1,
      "tagid": "7282514850",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 14400,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "viewability",
          "value": 0.77,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "75441834964"
        ],
        "publisher_settings_list_id": [
          "9268043626392948934",
          "2867966915706729060"
        ],
        "allowed_vendor_type": [
          113,
          41423
        ],
        "ampad": 2,
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "allowed_restricted_category": [
          32,
          33
        ],
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "is_app_open_ad": 1,
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "6.46.0",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-7120195540802809",
      "ext": {
        "country": "US"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "userrating": "4.6",
      "livestream": 0,
      "language": "en"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "GHA",
      "type": 2,
      "utcoffset": 0,
      "accuracy": 8865,
      "ext": {
        "geo_criteria_id": 9067654
      }
    },
    "make": "Itel",
    "model": "itel W6502",
    "os": "android",
    "osv": "10",
    "connectiontype": 6,
    "devicetype": 4,
    "lmt": 1,
    "w": 360,
    "h": 722,
    "pxratio": 2.0,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "537",
            "36"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "10"
        ]
      },
      "mobile": 1,
      "model": "itel W6502",
      "source": 3
    }
  },
  "user": {
    "ext": {
      "session": {
        "duration": 660
      }
    }
  },
  "at": 1,
  "tmax": 300,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB19-22",
    "IAB23-1"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "bid_feedback": [
      {
        "request_id": "4004C52Z6Z7Fa39Lf6F2AQ",
        "creative_status_code": 79,
        "buyer_creative_id": "test_creative_id_129669",
        "minimum_bid_to_win": 0.1,
        "feedbacktype": 1
      }
    ],
    "google_query_id": "ANy-zbp8Gw-Mv43u3ni49Ena0i57E0789881P6YVa8jXDHq36B3fNk8me8F20GS6114onx7A",
    "fcap_scope": 4,
    "privacy_treatments": {
      "allow_user_data_collection": 1
    }
  }
}
Yêu cầu tuần tự
id: "\334\225\241N\334P\373p\340\000\300C\327+\215\013\355Q\337\251Z\236g"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "es"
adslot {
  id: 1
  width: 320
  height: 50
  excluded_attribute: 19
  excluded_attribute: 20
  allowed_vendor_type: 42
  allowed_vendor_type: 144
  matching_ad_data {
    billing_id: 58232806131
    billing_id: 71082687953
    minimum_cpm_micros: 1400000
  }
  matching_ad_data {
    billing_id: 82776154517
    billing_id: 59477532962
    minimum_cpm_micros: 78750000
  }
  slot_visibility: ABOVE_THE_FOLD
  ad_block_key: 7742701593
  publisher_settings_list_id: 4723020262350940099
  publisher_settings_list_id: 6354748437627634678
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  viewability: 99
  allowed_ad_types: ALLOWED_AD_TYPE_BANNER
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  session_depth: 300
  api: OMID_1
  api: MRAID_1
  omidpn: "Google"
  omidpv: "afma-sdk-i-v10.14.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: "10.14.0"
}
is_test: false
timezone_offset: -420
mobile {
  app_id: "350328655"
  is_app: true
  is_mobile_web_optimized: true
  encrypted_advertising_id: ",\271\302R\363\232\001NA\001\240D\"\032\001N\251+\271\000\3510\026)\356n\3733\214a\276\321P\202\205\033"
  app_name: "Test App"
  advertising_id: "^\274v\200\002\333u\227Y\304\343u\304\272\312\247"
  skadn {
    sourceapp: "350328655"
    skadnetids: "6sZrk2l9"
    skadnetids: "L60y296B"
    versions: "2.0"
    versions: "2.1"
    supported_fidelity_types: STOREKIT_RENDERED_ADS
    supported_fidelity_types: VIEW_THROUGH_ADS
  }
}
postal_code: "10011"
geo_criteria_id: 9194140
bid_response_feedback {
  request_id: "\177f\245p\252\347p\251\266\326S(\272\335\013\257"
  creative_status_code: 80
  event_notification_token: "token"
  buyer_creative_id: "test_creative_id_923023"
  minimum_bid_to_win: 3750000
  feedback_type: BID_FEEDBACK
}
bid_response_feedback {
  request_id: "6\374\201J\0355\275\014\335\270\202\307\261\253I\247"
  creative_status_code: 80
  event_notification_token: "token"
  buyer_creative_id: "test_creative_id_923023"
  minimum_bid_to_win: 570000
  feedback_type: BID_FEEDBACK
}
publisher_type: PUBLISHER_OWNED_AND_OPERATED
device {
  device_type: HIGHEND_PHONE
  platform: "iphone"
  brand: "Apple"
  model: "iPhone14,5"
  os_version {
    major: 17
    minor: 6
    micro: 1
  }
  carrier_id: 0
  screen_width: 390
  screen_height: 844
  screen_pixel_ratio_millis: 3000
  screen_orientation: PORTRAIT
  hardware_version: "iPhone14,5"
  limit_ad_tracking: false
  app_tracking_authorization_status: AUTHORIZED
  connection_type: WIFI
}
publisher_country: "CA"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 300
google_query_id: "ANy-z73p95-804i3oEddT04Y8kl9v8C0D3k33ZDTAuc547f0v52955w82z36pq70wV1j5xKW"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "USA"
  metro: "807"
  city: "San Mateo"
  zip: "94401"
  utcoffset: -420
  accuracy: 997
}
user_agent_data {
  platform {
    brand: "iPhone"
    version: "17"
    version: "6"
  }
  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
  }
  nodes {
    advertising_system_identifier: "testdomain.com"
    seller_identifier: "pub-1111111111111111"
    handles_payment: true
  }
  version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
  allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
session_duration_seconds: 411

Xây dựng mô hình đặt giá thầu cho phiên đấu giá theo giá đầu tiên

Sau khi đặt giá thầu trong phiên đấu giá theo giá đầu tiên, bạn sẽ nhận được phản hồi theo thời gian thực, bao gồm cả các trường minimum_bid_to_winsampled_mediation_cpm_ahead_of_auction_winner nếu giá thầu không bị lọc khỏi phiên đấu giá. Bạn có thể sử dụng các tín hiệu này để thông báo cho logic đặt giá thầu về mức giá thầu có thể cao hơn hoặc thấp hơn bao nhiêu để giành được lượt hiển thị.

  • minimum_bid_to_win: Giá thầu tối thiểu có thể được đặt để giành chiến thắng trong phiên đấu giá đặt giá thầu theo thời gian thực. Nếu bạn đã thắng phiên đấu giá, thì đây sẽ là giá thầu thấp nhất mà bạn có thể đặt mà vẫn thắng. Nếu bạn thua phiên đấu giá, đây sẽ là giá thầu thắng thầu.
  • sampled_mediation_cpm_ahead_of_auction_winner: Nếu có các mạng khác trong chuỗi dàn xếp, thì giá trị của trường này là giá thể hiện giá thầu mẫu từ một trong các mạng dàn xếp đủ điều kiện cao hơn giá thầu của người chiến thắng trong phiên đấu giá, được tính trọng số theo tỷ lệ đáp ứng dự kiến. Giá trị này sẽ được đặt thành 0 nếu không có mạng nào trong chuỗi dàn xếp dự kiến sẽ đáp ứng hoặc nếu nhà xuất bản không sử dụng tính năng dàn xếp SDK.

Cách hoạt động

Để mô tả các phép tính dùng để xác định các giá trị có thể có cho minimum_bid_to_winsampled_mediation_cpm_ahead_of_auction_winner, trước tiên, chúng ta cần xác định những điều sau:

  • Dưới đây là CPM trong chuỗi dàn xếp theo thứ tự giảm dần:
    C1,C2,,Cn
  • Dưới đây là tỷ lệ đáp ứng tương ứng cho các CPM trong chuỗi dàn xếp:
    f1,f2,,fn
  • Sau đây là hàm dùng để xác định CPM dự kiến và xác suất của CPM đó từ phần tử chuỗi dàn xếp i, dựa trên tỷ lệ đáp ứng đã cho:
    Xi={Ci với xác suất fi; 0 với xác suất 1fi}
  • Chuỗi dàn xếp chiến thắng cuối cùng sẽ là:
    {C1,C2,,CK,W}
    trong đó W là giá thầu chiến thắng và CK>W>=CK+1
  • Giá đặt trước (hoặc giá sàn) được biểu thị là F.
  • Giá thầu của người về nhì được biểu thị là R.
Cách tính cho người chiến thắng trong phiên đấu giá
Trường Cách tính
minimum_bid_to_win
max{F,R,XK+1,,Xn}
sampled_mediation_cpm_ahead_
of_auction_winner
{Ci có xác suất j=1i1(1fj)fi÷j=1K(1fj)}
Đối với 1<=i<=K.

Cách tính cho phiên đấu giá thua
Trường Cách tính
minimum_bid_to_win
max{F,W}
sampled_mediation_cpm_ahead_
of_auction_winner
max{X1,,XK}

Ví dụ về một chuỗi dàn xếp đơn giản

Giả sử một nhà xuất bản sử dụng cả tính năng đặt giá thầu theo thời gian thực và chuỗi dàn xếp SDK như sau:

Chuỗi dàn xếp SDK CPM dự kiến Tỷ lệ đáp ứng
Mạng 1 C1=$3.00 f1=5%
Mạng 2 C2=$2.00 f2=45%
Mạng 3 C3=$0.50 f3=80%
Network 4 C4=$0.10 f4=85%

Giả sử kết quả của phiên đấu giá RTB như sau:

Phiên đấu giá RTB CPM
Người chiến thắng trong phiên đấu giá (W) 1 đô la
Á quân trong phiên đấu giá (R) 0,05 USD
Giá đặt trước / giá sàn (F) $0
Giá thầu thắng phiên đấu giá

Sau đây là ví dụ về cách tính giá trị và xác suất cho minimum_bid_to_winsampled_mediation_cpm_ahead_of_auction_winner cho một giá thầu đã thắng.

minimum_bid_to_win Xác suất
max(F,R,C3)=$0.50 f3=80%
max(F,R,C4)=$0.10 (1f3)f4=17%
max(F,R,0)=$0.05 (1f3)(1f4)=3%
sampled_mediation_cpm_
ahead_of_auction_winner
Xác suất
C1=$3.00 f1÷(1(1f1)(1f2))= 10.5%
C2=$2.00 ((1f1)f2)÷(1(1f1)(1f2))= 89.5%
Giá thầu thua phiên đấu giá

Sau đây là ví dụ về cách tính giá trị và xác suất cho minimum_bid_to_winsampled_mediation_cpm_ahead_of_auction_winner đối với một giá thầu thua cuộc.

minimum_bid_to_win Xác suất
max(F,W)=$1.00 100%
sampled_mediation_cpm_
ahead_of_auction_winner
Xác suất
C1=$3.00 f1=5%
C2=$2.00 (1f1)f2= 42.8%
0 (1f1)(1f2)= 52.2%

Phân tách giá thầu

Tính năng làm phẳng giá thầu mô tả quá trình xử lý một BidRequest phức tạp thành nhiều yêu cầu giá thầu được gửi đến ứng dụng của bạn. Khi một yêu cầu giá thầu được làm phẳng, bạn có thể biết yêu cầu giá thầu nào thuộc yêu cầu ban đầu vì các yêu cầu đó sẽ có giá trị giống hệt nhau trong trường BidRequest.ext.google_query_id.

Tính năng làm phẳng giá thầu được bật theo mặc định, nhưng bạn có thể liên hệ với người quản lý tài khoản nếu muốn tắt tính năng này.

Định dạng quảng cáo

Một số cơ hội quảng cáo có thể chấp nhận nhiều định dạng. Khi áp dụng tính năng làm phẳng giá thầu, mỗi định dạng sẽ được gửi trong một yêu cầu giá thầu riêng biệt, trong đó các thuộc tính như mã thanh toán đủ điều kiện có liên quan đến định dạng được chỉ định trong yêu cầu.

Các yêu cầu giá thầu chứa các định dạng sau sẽ được phân tách thành các yêu cầu giá thầu riêng biệt:

  • Biểu ngữ
  • Video
  • Âm thanh
  • Mã gốc

Ví dụ về việc làm phẳng định dạng quảng cáo

Dưới đây là ví dụ về một yêu cầu giá thầu JSON OpenRTB được đơn giản hoá mà không làm phẳng định dạng quảng cáo so với một nhóm yêu cầu tương đương đã được làm phẳng:

{
  "id": "V5ar1wXqKP58nbsyJ6549D",
  "imp": [
    {
      "id": "1",
      "video": {
        "linearity": 1,
        "w": 300,
        "h": 250,
        "pos": 1,
        "skip": 1,
        "playbackmethod": [
          6
        ],
        "placement": 3,
        "mimes": [
          "video/mp4"
        ],
        "protocols": [
          2,
          3
        ]
      },
      "banner": {
        "format": [
          {
            "w": 300,
            "h": 250
          }
        ],
        "w": 300,
        "h": 250,
        "pos": 1
      },
      "ext": {
        "billing_id": [
          47039494050,
          52030317241
        ]
      }
    }
  ],
  "ext": {
    "google_query_id": "ANy-zdp266-244itJsom3dmXb7SvW1IPg6478g639g0867v1126w630F3M7lAp640H666744"
  }
}
Yêu cầu 1
{
  "id": "B3xr1yZqRL48nbsyJ6367N",
  "imp": [
    {
      "id": "1",
      "video": {
        "linearity": 1,
        "w": 300,
        "h": 250,
        "pos": 1,
        "skip": 1,
        "playbackmethod": [
          6
        ],
        "placement": 3,
        "mimes": [
          "video/mp4"
        ],
        "protocols": [
          2,
          3
        ]
      }
      "ext": {
        "billing_id": [
          47039494050
        ]
      }
  ],
  "ext": {
    "google_query_id": "ANy-zdp266-244itJsom3dmXb7SvW1IPg6478g639g0867v1126w630F3M7lAp640H666744"
  }
}
Yêu cầu 2
{
  "id": "M1dY8qHyNK74bMsjF393Gf",
  "imp": [
    {
      "id": "1",
      "banner": {
        "format": [
          {
            "w": 300,
            "h": 250
          }
        ],
        "w": 300,
        "h": 250,
        "pos": 1
      },
      "ext": {
        "billing_id": [
          52030317241
        ]
      }
    }
  ],
  "ext": {
    "google_query_id": "ANy-zdp266-244itJsom3dmXb7SvW1IPg6478g639g0867v1126w630F3M7lAp640H666744"
  }
}

Ưu đãi

Cơ hội quảng cáo cho một bên đặt giá thầu cụ thể có thể áp dụng cho nhiều loại giao dịch, ngoài phiên đấu giá mở. Khi làm phẳng giá thầu cho giao dịch, hệ thống sẽ gửi một yêu cầu giá thầu cho phiên đấu giá mở và một yêu cầu cho mỗi loại giao dịch giá cố định. Trong thực tế, các quy tắc ràng buộc về quảng cáo có thể khác nhau giữa các loại phiên đấu giá và giao dịch giá cố định. Ví dụ: đối với một cơ hội quảng cáo dạng video nhất định có sẵn cho cả phiên đấu giá công khai và giao dịch giá cố định, người đặt giá thầu sẽ nhận được các yêu cầu giá thầu riêng biệt cho từng loại, trong đó các quy tắc ràng buộc như thời lượng quảng cáo tối đa và liệu có cho phép quảng cáo có thể bỏ qua hay không có thể khác nhau. Do đó, việc làm phẳng áp dụng cho cơ hội quảng cáo giúp bạn dễ dàng phân biệt các quy tắc ràng buộc quảng cáo cho phiên đấu giá mở và giao dịch theo giá cố định.

Thời lượng tối đa của video có thể bỏ qua

Giao thức của Google và cách triển khai OpenRTB hỗ trợ các trường sau đây cho thời lượng video và khả năng bỏ qua:

Thời lượng Thời lượng có thể bỏ qua Khả năng bỏ qua
Giao thức Google max_ad_duration skippable_max_ad_duration video_ad_skippable
OpenRTB maxduration không áp dụng skip

Điều này có nghĩa là mặc dù giao thức của Google có thể có thời lượng chi tiết có thể bỏ qua và không thể bỏ qua, nhưng việc triển khai OpenRTB chỉ có một giá trị thời lượng tối đa.

Trước khi làm phẳng giá thầu, maxduration của OpenRTB sẽ được đặt thành giá trị thấp hơn trong các trường max_ad_durationskippable_max_ad_duration của giao thức Google. Hành vi này hiện đã thay đổi thành việc gửi hai yêu cầu giá thầu riêng biệt khi các giá trị này khác nhau: một yêu cầu đại diện cho maxduration cho cơ hội có thể bỏ qua và yêu cầu còn lại cho cơ hội không thể bỏ qua.

Các ví dụ sau đây cho thấy cách một yêu cầu theo giao thức của Google được chuyển đổi sang OpenRTB trước và sau khi làm phẳng giá thầu. Yêu cầu tương đương về giao thức của Google có max_ad_duration15skippable_max_ad_duration60.

Ví dụ: max_ad_duration skip (true HOẶC false)
Yêu cầu ban đầu không làm phẳng 15 true
Yêu cầu được làm phẳng #1: Không thể bỏ qua 15 false
Yêu cầu được làm phẳng #2: Có thể bỏ qua 60 true

Việc phân tách yêu cầu giá thầu theo thời lượng video có thể bỏ qua sẽ chỉ diễn ra khi đáp ứng các điều kiện sau:

  • Yêu cầu này cho phép video.
  • Cả video có thể bỏ qua và không thể bỏ qua đều được cho phép, đồng thời hai thời lượng tối đa tương ứng sẽ khác nhau.
  • Yêu cầu này đủ điều kiện tham gia Phiên đấu giá kín hoặc Phiên đấu giá mở.
  • Tài khoản bên đặt giá thầu có các điểm cuối OpenRTB đang hoạt động.

Bạn có thể chọn không sử dụng loại làm phẳng này bằng cách liên hệ với người quản lý tài khoản kỹ thuật.

Nhóm video

Các yêu cầu giá thầu cho một nhóm video có nhiều cơ hội quảng cáo sẽ được làm phẳng, tức là mỗi yêu cầu giá thầu là dành cho một cơ hội quảng cáo riêng lẻ trong nhóm đó. Điều này cho phép bạn đặt giá thầu cho nhiều cơ hội quảng cáo cho một nhóm quảng cáo nhất định.

Đo lường mở

Đo lường mở cho phép bạn chỉ định các nhà cung cấp bên thứ ba cung cấp dịch vụ đo lường và xác minh độc lập cho quảng cáo được phân phát đến môi trường ứng dụng di động.

Bạn có thể xác định xem nhà xuất bản có hỗ trợ Đo lường mở trong yêu cầu giá thầu hay không bằng cách kiểm tra xem cơ hội quảng cáo có loại trừ thuộc tính OmsdkType: OMSDK 1.0 có trong Thuộc tính mẫu quảng cáo mà nhà xuất bản có thể loại trừ hay không. Bạn có thể tìm thấy thuộc tính này trong thuộc tính battr cho Biểu ngữ hoặc Video, tuỳ thuộc vào định dạng.

Để biết thêm thông tin về cách diễn giải các yêu cầu giá thầu chứa tín hiệu Đo lường mở, hãy tham khảo bài viết về SDK Đo lường mở trên Trung tâm trợ giúp.

Yêu cầu giá thầu mẫu

Các phần sau đây cho thấy các yêu cầu giá thầu mẫu cho nhiều loại quảng cáo.

Biểu ngữ ứng dụng

Yêu cầu tuần tự
id: "8361O9Ep6E42p52Hu6v18o"
imp {
  id: "1"
  banner {
    w: 300
    h: 50
    pos: ABOVE_THE_FOLD
    api: MRAID_1
    api: MRAID_2
    wmax: 390
    hmax: 61
    wmin: 261
    hmin: 46
    format {
      w: 300
      h: 50
    }
    format {
      w: 390
      h: 61
    }
    [com.google.doubleclick.banner_ext] {
      flexslot {
        wmin: 261
        wmax: 390
        hmin: 46
        hmax: 61
      }
    }
  }
  displaymanager: "GoogleMobileAds-iOS"
  displaymanagerver: "11.2.0"
  tagid: "5609900911"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  exp: 3600
  clickbrowser: true
  metric {
    type: "click_through_rate"
    value: 0.0028797138947993517
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.92
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 70614819650
    publisher_settings_list_id: 3994817494897795207
    publisher_settings_list_id: 8449380548613820850
    allowed_vendor_type: 550
    allowed_vendor_type: 79
    ampad: AMP_AD_NOT_ALLOWED
    skadn {
      sourceapp: "com.google.testapp"
      skadnetids: "Y8HK1z22"
      versions: "2.0"
      versions: "2.1"
      fidelities: STOREKIT_RENDERED_ADS
      fidelities: VIEW_THROUGH_ADS
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    billable_event_rate_bid_adjustment {
      bid_adjustment: 0.9408176
      creative_type: HTML_SNIPPET
    }
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  ver: "4.6.3"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-2905535032168301"
    [com.google.doubleclick.publisher] {
      country: "JP"
    }
  }
  content {
    url: "https://www.google.com"
    livestream: false
    language: "ja"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "JPN"
    region: "JP-13"
    type: IP
    utcoffset: 540
    accuracy: 26487
    [com.google.doubleclick.geo] {
      geo_criteria_id: 20636
    }
  }
  carrier: "70002"
  make: "Apple"
  model: "iPhone13,2"
  os: "iOS"
  osv: "16.1.1"
  connectiontype: CELL_4G
  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: "16"
      version: "1"
    }
    mobile: true
    bitness: "64"
    model: "iPhone"
    source: USER_AGENT_STRING
  }
  [com.google.doubleclick.device] {
    atts: 2
  }
}
user {
  [com.google.doubleclick.user] {
    session {
      duration: 61
    }
  }
}
at: FIRST_PRICE
tmax: 1000
cur: "USD"
bcat: "IAB14-1"
bcat: "IAB7-39"
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-z60259-oh0d8s5Z26f34EZa77T0p62zWhI2939jRL32216xlr9483rnAC6t07lL0ky4q"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_APP
  privacy_treatments {
    allow_user_data_collection: true
  }
}
{
  "id": "8361O9Ep6E42p52Hu6v18o",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 300,
        "h": 50,
        "pos": 1,
        "api": [
          3,
          5
        ],
        "wmax": 390,
        "hmax": 61,
        "wmin": 261,
        "hmin": 46,
        "format": [
          {
            "w": 300,
            "h": 50
          },
          {
            "w": 390,
            "h": 61
          }
        ],
        "ext": {
          "flexslot": {
            "wmin": 261,
            "wmax": 390,
            "hmin": 46,
            "hmax": 61
          }
        }
      },
      "displaymanager": "GoogleMobileAds-iOS",
      "displaymanagerver": "11.2.0",
      "tagid": "5609900911",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 3600,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 0.0028797138947993517,
          "vendor": "EXCHANGE"
        },
        {
          "type": "viewability",
          "value": 0.92,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "70614819650"
        ],
        "publisher_settings_list_id": [
          "3994817494897795207",
          "8449380548613820850"
        ],
        "allowed_vendor_type": [
          550,
          79
        ],
        "ampad": 2,
        "skadn": {
          "sourceapp": "com.google.testapp",
          "skadnetids": [
            "Y8HK1z22"
          ],
          "versions": [
            "2.0",
            "2.1"
          ],
          "fidelities": [
            1,
            0
          ]
        },
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "billable_event_rate_bid_adjustment": [
          {
            "bid_adjustment": 0.9408176,
            "creative_type": 1
          }
        ],
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "4.6.3",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-2905535032168301",
      "ext": {
        "country": "JP"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "livestream": 0,
      "language": "ja"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "JPN",
      "region": "JP-13",
      "type": 2,
      "utcoffset": 540,
      "accuracy": 26487,
      "ext": {
        "geo_criteria_id": 20636
      }
    },
    "carrier": "70002",
    "make": "Apple",
    "model": "iPhone13,2",
    "os": "iOS",
    "osv": "16.1.1",
    "connectiontype": 6,
    "devicetype": 4,
    "lmt": 1,
    "hwv": "iPhone13,2",
    "w": 390,
    "h": 844,
    "pxratio": 3.0,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "605",
            "1"
          ]
        }
      ],
      "platform": {
        "brand": "iPhone",
        "version": [
          "16",
          "1"
        ]
      },
      "mobile": 1,
      "bitness": "64",
      "model": "iPhone",
      "source": 3
    },
    "ext": {
      "atts": 2
    }
  },
  "user": {
    "ext": {
      "session": {
        "duration": 61
      }
    }
  },
  "at": 1,
  "tmax": 1000,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB14-1",
    "IAB7-39"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-i-v11.2.0",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z60259-oh0d8s5Z26f34EZa77T0p62zWhI2939jRL32216xlr9483rnAC6t07lL0ky4q",
    "fcap_scope": 4,
    "privacy_treatments": {
      "allow_user_data_collection": 1
    }
  }
}
Yêu cầu tuần tự
id: "%\360\313c\223\244&\242H\313\345\032T\223^\3325p;e\320\275\333"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "en"
adslot {
  id: 1
  width: 300
  width: 250
  height: 250
  height: 250
  excluded_attribute: 14
  excluded_attribute: 30
  allowed_vendor_type: 566
  allowed_vendor_type: 113
  excluded_sensitive_category: 36
  excluded_sensitive_category: 31
  matching_ad_data {
    billing_id: 99718422589
    minimum_cpm_micros: 40000
  }
  slot_visibility: ABOVE_THE_FOLD
  ad_block_key: 1885999125
  publisher_settings_list_id: 3855970278395809335
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  viewability: 79
  click_through_rate: 0.00562083
  allowed_ad_types: ALLOWED_AD_TYPE_BANNER
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  api: OMID_1
  api: MRAID_1
  omidpn: "Google"
  omidpv: "afma-sdk-i-v11.3.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
  billable_event_rate_bid_adjustment {
    bid_adjustment: 1.0
    creative_type: HTML_SNIPPET
  }
  excluded_app_ids: "1359763701"
  excluded_app_ids: "367003839"
  supported_auction_environment: SERVER_SIDE_AUCTION
  display_manager: "GoogleMobileAds-iOS"
  display_manager_version: "11.3.0"
}
is_test: false
timezone_offset: 330
mobile {
  app_id: "195751234"
  is_app: true
  is_mobile_web_optimized: true
  app_name: "Test App"
  skadn {
    sourceapp: "195751234"
    skadnetids: "DofiF4X5"
    versions: "2.0"
    versions: "2.1"
    supported_fidelity_types: VIEW_THROUGH_ADS
    supported_fidelity_types: STOREKIT_RENDERED_ADS
  }
}
geo_criteria_id: 1007776
publisher_settings_list_id: 8761862033459127079
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 9618759969316406640
device {
  device_type: HIGHEND_PHONE
  platform: "iphone"
  brand: "Apple"
  model: "iPhone15,3"
  os_version {
    major: 18
    minor: 0
  }
  carrier_id: 0
  screen_width: 430
  screen_height: 932
  screen_pixel_ratio_millis: 3000
  screen_orientation: PORTRAIT
  hardware_version: "iPhone15,3"
  limit_ad_tracking: true
  app_tracking_authorization_status: DENIED
  connection_type: CELL_4G
}
publisher_country: "SG"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-z77R39-62EWf097071AiV91giun09eX9bwHu5TL506725r73P656pqL7A344LmT9485F"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "IND"
  region: "IN-KL"
  city: "Cochin"
  utcoffset: 330
  accuracy: 11461
}
user_agent_data {
  platform {
    brand: "iPhone"
    version: "18"
    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_APP
privacy_treatments {
  allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
session_duration_seconds: 660

Quảng cáo xen kẽ trong ứng dụng

Yêu cầu tuần tự
id: "27q8F4ja125b5Ay5Lg5I8Y"
imp {
  id: "1"
  banner {
    w: 368
    h: 740
    pos: AD_POSITION_FULLSCREEN
    api: MRAID_1
    api: MRAID_2
    format {
      w: 368
      h: 740
    }
    format {
      w: 300
      h: 600
    }
  }
  displaymanager: "GoogleMobileAds-Android"
  displaymanagerver: "21.5.0"
  instl: true
  tagid: "7072441745"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  exp: 14400
  clickbrowser: true
  metric {
    type: "click_through_rate"
    value: 0.026930272579193115
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.82
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 14443955188
    publisher_settings_list_id: 7634109184153514733
    publisher_settings_list_id: 4552400977800686866
    allowed_vendor_type: 4374
    allowed_vendor_type: 4651
    ampad: AMP_AD_NOT_ALLOWED
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    is_app_open_ad: true
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  ver: "9.1.6"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-8897222327395144"
    [com.google.doubleclick.publisher] {
      country: "TH"
    }
  }
  content {
    url: "https://www.google.com"
    userrating: "4.7"
    livestream: false
    language: "en"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  geo {
    lat: 0.0
    lon: 0.0
    country: "IND"
    region: "IN-OR"
    zip: "751024"
    type: IP
    utcoffset: 330
    accuracy: 5126
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9149991
    }
  }
  ipv6: "2401:4900:3da4::"
  carrier: "70210"
  make: "Samsung"
  model: "SM-A705GM"
  os: "android"
  osv: "11"
  connectiontype: WIFI
  devicetype: HIGHEND_PHONE
  lmt: true
  w: 384
  h: 812
  pxratio: 2.813
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "537"
      version: "36"
    }
    platform {
      brand: "Android"
      version: "11"
    }
    mobile: true
    model: "SM-A705GM"
    source: USER_AGENT_STRING
  }
  [com.google.doubleclick.device] {
    session_id: "LFcNok-qRI2ea_Z5FPgRiA"
  }
}
user {
  [com.google.doubleclick.user] {
    session {
      duration: 89
    }
  }
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
bcat: "IAB23-3"
bcat: "IAB23-4"
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-a-v243220999.224400000.1"
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-z7C179-E2Rj2VZOiHt5vMyI25Z3W94Lk71Tbz95m005IfNm8OP88j46C27ovLV5yV57m"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_APP
  privacy_treatments {
    allow_user_data_collection: true
  }
}
{
  "id": "27q8F4ja125b5Ay5Lg5I8Y",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 368,
        "h": 740,
        "pos": 7,
        "api": [
          3,
          5
        ],
        "format": [
          {
            "w": 368,
            "h": 740
          },
          {
            "w": 300,
            "h": 600
          }
        ]
      },
      "displaymanager": "GoogleMobileAds-Android",
      "displaymanagerver": "21.5.0",
      "instl": 1,
      "tagid": "7072441745",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 14400,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 0.026930272579193115,
          "vendor": "EXCHANGE"
        },
        {
          "type": "viewability",
          "value": 0.82,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "14443955188"
        ],
        "publisher_settings_list_id": [
          "7634109184153514733",
          "4552400977800686866"
        ],
        "allowed_vendor_type": [
          4374,
          4651
        ],
        "ampad": 2,
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "is_app_open_ad": 1,
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "9.1.6",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-8897222327395144",
      "ext": {
        "country": "TH"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "userrating": "4.7",
      "livestream": 0,
      "language": "en"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "IND",
      "region": "IN-OR",
      "zip": "751024",
      "type": 2,
      "utcoffset": 330,
      "accuracy": 5126,
      "ext": {
        "geo_criteria_id": 9149991
      }
    },
    "ipv6": "2401:4900:3da4::",
    "carrier": "70210",
    "make": "Samsung",
    "model": "SM-A705GM",
    "os": "android",
    "osv": "11",
    "connectiontype": 2,
    "devicetype": 4,
    "lmt": 1,
    "w": 384,
    "h": 812,
    "pxratio": 2.813,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "537",
            "36"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "11"
        ]
      },
      "mobile": 1,
      "model": "SM-A705GM",
      "source": 3
    },
    "ext": {
      "session_id": "LFcNok-qRI2ea_Z5FPgRiA"
    }
  },
  "user": {
    "ext": {
      "session": {
        "duration": 89
      }
    }
  },
  "at": 1,
  "tmax": 300,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB23-3",
    "IAB23-4"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-a-v243220999.224400000.1",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z7C179-E2Rj2VZOiHt5vMyI25Z3W94Lk71Tbz95m005IfNm8OP88j46C27ovLV5yV57m",
    "fcap_scope": 4,
    "privacy_treatments": {
      "allow_user_data_collection": 1
    }
  }
}
Yêu cầu tuần tự
id: "\275\302\334\306\350\275\013\246\272\341\347:\001\261e\316\266A\345-\275KY"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "fa"
adslot {
  id: 1
  width: 756
  width: 336
  height: 384
  height: 280
  excluded_attribute: 27
  excluded_attribute: 18
  allowed_vendor_type: 414
  allowed_vendor_type: 780
  excluded_sensitive_category: 19
  excluded_sensitive_category: 4
  matching_ad_data {
    billing_id: 12608068331
    billing_id: 32735556853
    minimum_cpm_micros: 530000
  }
  matching_ad_data {
    billing_id: 57993817261
    billing_id: 38977320457
    minimum_cpm_micros: 220000
  }
  slot_visibility: ABOVE_THE_FOLD
  excluded_product_category: 10137
  excluded_product_category: 13314
  ad_block_key: 9588004964
  publisher_settings_list_id: 5660377215376132006
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  viewability: 74
  click_through_rate: 0.010888527
  allowed_ad_types: ALLOWED_AD_TYPE_BANNER
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  api: OMID_1
  api: MRAID_1
  omidpn: "Google"
  omidpv: "afma-sdk-a-v243220999.241199000.1"
  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-Android"
  display_manager_version: "23.1.0"
}
is_test: false
timezone_offset: 210
mobile {
  app_id: "com.google.testapp"
  is_app: true
  is_interstitial_request: true
  is_mobile_web_optimized: true
  app_name: "Test App"
  app_rating: 4.392222
}
geo_criteria_id: 2276
publisher_settings_list_id: 12210881757835437691
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 5268591861321003271
device {
  device_type: HIGHEND_PHONE
  platform: "android"
  brand: "Samsung"
  model: "SM-A546E"
  os_version {
    major: 14
  }
  carrier_id: 0
  screen_width: 756
  screen_height: 384
  screen_pixel_ratio_millis: 2813
  screen_orientation: LANDSCAPE
  limit_ad_tracking: false
  connection_type: CELL_4G
}
publisher_country: "GB"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 300
google_query_id: "ANy-zCczd2-28ZNY4j78b8024p1s4MJUg62G4F8H3P1YS544377wezcJVi4h3I9LB3y7yW80"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "DEU"
  utcoffset: 210
  accuracy: 346648
}
user_agent_data {
  platform {
    brand: "Android"
    version: "14"
  }
  mobile: true
  model: "SM-A546E"
  browsers {
    brand: "Mozilla"
    version: "5"
    version: "0"
  }
  browsers {
    brand: "AppleWebKit"
    version: "537"
    version: "36"
  }
  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_DEVICE
privacy_treatments {
  ip: IP_REDACTED
  user_agent: USER_AGENT_COARSE
  non_personalized_ads_reason: PUBLISHER_DECLARED_NPA
  allow_user_data_collection: false
}
inventory_partner_domain: "OMITTED"
navigation_type: NAVIGATION_TYPE_UNKNOWN
session_duration_seconds: 25

Quảng cáo xen kẽ dạng video trong ứng dụng

Yêu cầu tuần tự
id: "Z75GBa308fk6hn20L15573"
imp {
  id: "1"
  video {
    mimes: "video/mp4"
    linearity: LINEAR
    maxduration: 600
    w: 808
    h: 393
    startdelay: 0
    playbackmethod: AUTO_PLAY_SOUND_ON
    pos: AD_POSITION_FULLSCREEN
    api: MRAID_1
    api: MRAID_2
    protocols: VAST_2_0
    protocols: VAST_3_0
    skip: true
    placement: FLOATING_PLACEMENT
    playbackend: COMPLETION_OR_USER
    maxseq: 2
    poddur: 30
    plcmt: PLCMT_INTERSTITIAL
    [com.google.doubleclick.video] {
      inferredplcmt: PLCMT_INTERSTITIAL
    }
  }
  displaymanager: "GoogleMobileAds-iOS"
  displaymanagerver: "11.7.0"
  instl: true
  tagid: "4967856214"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  exp: 3600
  clickbrowser: true
  metric {
    type: "click_through_rate"
    value: 0.1879923790693283
    vendor: "EXCHANGE"
  }
  metric {
    type: "video_completion_rate"
    value: 0.5191752910614014
    vendor: "EXCHANGE"
  }
  rwdd: true
  [com.google.doubleclick.imp] {
    billing_id: 11004606416
    publisher_settings_list_id: 8773808361916105146
    publisher_settings_list_id: 3073503389278955207
    allowed_vendor_type: 39523
    allowed_vendor_type: 237
    is_rewarded_inventory: true
    ampad: AMP_AD_NOT_ALLOWED
    skadn {
      sourceapp: "com.google.testapp"
      skadnetids: "O5O88B57"
      versions: "2.0"
      versions: "2.1"
      fidelities: VIEW_THROUGH_ADS
      fidelities: STOREKIT_RENDERED_ADS
      skoverlay: true
    }
    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"
  ver: "4.90.0"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-7879459471889169"
    [com.google.doubleclick.publisher] {
      country: "TR"
    }
  }
  content {
    url: "https://www.google.com"
    livestream: false
    language: "ar"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  geo {
    lat: 0.0
    lon: 0.0
    country: "SAU"
    region: "SA-02"
    city: "Jiddah"
    type: IP
    utcoffset: 180
    accuracy: 25209
    [com.google.doubleclick.geo] {
      geo_criteria_id: 1012089
    }
  }
  ipv6: "2001:16a4:253::"
  make: "Apple"
  model: "iPhone12,1"
  os: "iOS"
  osv: "17.4.1"
  connectiontype: CELL_4G
  devicetype: HIGHEND_PHONE
  ifa: "cd6a5706-5a73-4ab8-a2bb-cd19244bf295"
  lmt: false
  hwv: "iPhone12,1"
  w: 896
  h: 414
  pxratio: 2.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: 3
  }
}
user {
  id: "19G1O820z9ay0DxfvVm89xd7Gbh"
  [com.google.doubleclick.user] {
    session {
    }
    idage: 2592000
  }
}
at: FIRST_PRICE
tmax: 1500
cur: "USD"
bcat: "IAB7-39"
bcat: "IAB14-1"
bapp: "372513032"
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.7.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-z8zAo9-0x39o5pDG1Y19AT868LK88gvsh49Y6357Sb40978n97j8nn75XXGGp19xFp5E"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
  privacy_treatments {
    allow_user_data_collection: true
  }
}
{
  "id": "Z75GBa308fk6hn20L15573",
  "imp": [
    {
      "id": "1",
      "video": {
        "mimes": [
          "video/mp4"
        ],
        "linearity": 1,
        "maxduration": 600,
        "w": 808,
        "h": 393,
        "startdelay": 0,
        "playbackmethod": [
          1
        ],
        "pos": 7,
        "api": [
          3,
          5
        ],
        "protocols": [
          2,
          3
        ],
        "skip": 1,
        "placement": 5,
        "playbackend": 1,
        "maxseq": 2,
        "poddur": 30,
        "plcmt": 3,
        "ext": {
          "inferredplcmt": 3
        }
      },
      "displaymanager": "GoogleMobileAds-iOS",
      "displaymanagerver": "11.7.0",
      "instl": 1,
      "tagid": "4967856214",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 3600,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 0.1879923790693283,
          "vendor": "EXCHANGE"
        },
        {
          "type": "video_completion_rate",
          "value": 0.5191752910614014,
          "vendor": "EXCHANGE"
        }
      ],
      "rwdd": 1,
      "ext": {
        "billing_id": [
          "11004606416"
        ],
        "publisher_settings_list_id": [
          "8773808361916105146",
          "3073503389278955207"
        ],
        "allowed_vendor_type": [
          39523,
          237
        ],
        "is_rewarded_inventory": 1,
        "ampad": 2,
        "skadn": {
          "sourceapp": "com.google.testapp",
          "skadnetids": [
            "O5O88B57"
          ],
          "versions": [
            "2.0",
            "2.1"
          ],
          "fidelities": [
            0,
            1
          ],
          "skoverlay": 1
        },
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "4.90.0",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-7879459471889169",
      "ext": {
        "country": "TR"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "livestream": 0,
      "language": "ar"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "SAU",
      "region": "SA-02",
      "city": "Jiddah",
      "type": 2,
      "utcoffset": 180,
      "accuracy": 25209,
      "ext": {
        "geo_criteria_id": 1012089
      }
    },
    "ipv6": "2001:16a4:253::",
    "make": "Apple",
    "model": "iPhone12,1",
    "os": "iOS",
    "osv": "17.4.1",
    "connectiontype": 6,
    "devicetype": 4,
    "ifa": "cd6a5706-5a73-4ab8-a2bb-cd19244bf295",
    "lmt": 0,
    "hwv": "iPhone12,1",
    "w": 896,
    "h": 414,
    "pxratio": 2.0,
    "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": "19G1O820z9ay0DxfvVm89xd7Gbh",
    "ext": {
      "idage": 2592000
    }
  },
  "at": 1,
  "tmax": 1500,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB7-39",
    "IAB14-1"
  ],
  "bapp": [
    "372513032"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-i-v11.7.0",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z8zAo9-0x39o5pDG1Y19AT868LK88gvsh49Y6357Sb40978n97j8nn75XXGGp19xFp5E",
    "fcap_scope": 3,
    "privacy_treatments": {
      "allow_user_data_collection": 1
    }
  }
}
Yêu cầu tuần tự
id: "\r[\217Z\313$\317\325\226\261\321\1775\317O7#\003\232\315\322y\242"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "ja"
adslot {
  id: 1
  width: 393
  width: 375
  height: 734
  height: 667
  excluded_attribute: 17
  excluded_attribute: 20
  allowed_vendor_type: 38523
  allowed_vendor_type: 797
  matching_ad_data {
    billing_id: 95400492935
    minimum_cpm_micros: 1610000
  }
  slot_visibility: ABOVE_THE_FOLD
  ad_block_key: 2826108213
  publisher_settings_list_id: 4043976311652409571
  viewability: 87
  click_through_rate: 0.2761753
  video_completion_rate: 0.43977627
  is_rewarded: true
  allowed_ad_types: ALLOWED_AD_TYPE_VIDEO
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  session_depth: 1
  api: OMID_1
  api: MRAID_1
  omidpn: "Google"
  omidpv: "afma-sdk-i-v9.14.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.14.0"
}
is_test: false
cookie_version: 1
google_user_id: "502CF94564uk2a9qWk698927A00"
timezone_offset: 540
mobile {
  app_id: "751592940"
  is_app: true
  is_interstitial_request: true
  is_mobile_web_optimized: true
  encrypted_advertising_id: "\371\014\274[\224\356\250D\210\224\023\2518\230P.\000\325j1\310\341\215i\336\2063\213a\276b\263\236\201\007n"
  app_name: "Test App"
  advertising_id: "}\372\006\246c\347\275s\243|\353\326\272\305\021|"
  skadn {
    sourceapp: "751592940"
    skadnetids: "113tdmXM"
    versions: "2.0"
    versions: "2.1"
    supported_fidelity_types: STOREKIT_RENDERED_ADS
    supported_fidelity_types: VIEW_THROUGH_ADS
  }
}
video {
  videoad_start_delay: 0
  video_ad_skippable: REQUIRE_SKIPPABLE
  skippable_max_ad_duration: 600000
  allowed_video_formats: VIDEO_MP4
  max_ads_in_pod: 2
  end_cap_support: END_CAP_OPTIONAL
  playback_method: AUTO_PLAY_SOUND_ON
  is_clickable: true
  placement: INTERSTITIAL
  protocols: VAST_2_0
  protocols: VAST_3_0
  is_livestream: false
  playback_cessation_mode: COMPLETION_OR_USER
  max_pod_duration_seconds: 30
  plcmt: PLCMT_INTERSTITIAL
  inferred_plcmt: PLCMT_INTERSTITIAL
}
cookie_age_seconds: 1987200
geo_criteria_id: 9198798
publisher_settings_list_id: 11747008975924952385
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 2681496334840881279
device {
  device_type: HIGHEND_PHONE
  platform: "iphone"
  brand: "Apple"
  model: "iPhone17,1"
  os_version {
    major: 18
    minor: 0
    micro: 1
  }
  carrier_id: 0
  screen_width: 393
  screen_height: 852
  screen_pixel_ratio_millis: 3000
  screen_orientation: PORTRAIT
  hardware_version: "iPhone17,1"
  limit_ad_tracking: false
  app_tracking_authorization_status: AUTHORIZED
  connection_type: WIFI
}
publisher_country: "JP"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-zFwQ7x-eW9k8bHJRKvLLM9e761HV19R7ov42ZD0Xgyt270Y690867s819cwM7RA163W7"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "JPN"
  region: "JP-34"
  city: "Hiroshima"
  utcoffset: 540
  accuracy: 6105
}
user_agent_data {
  platform {
    brand: "iPhone"
    version: "18"
    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_DEVICE
privacy_treatments {
  allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
session_duration_seconds: 370

Ứng dụng gốc

Yêu cầu tuần tự
id: "3rF2U7Feg24806GjUY2Lr5"
imp {
  id: "1"
  displaymanager: "GoogleMobileAds-Android"
  displaymanagerver: "22.3.0"
  tagid: "3320317218"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  native {
    ver: "1.2"
    api: MRAID_1
    api: MRAID_2
    request_native {
      ver: "1.2"
      assets {
        id: 1
        required: true
        title {
          len: 25
        }
      }
      assets {
        id: 2
        required: true
        data {
          type: DESC
          len: 90
        }
      }
      assets {
        id: 3
        data {
          type: CTATEXT
          len: 15
        }
      }
      assets {
        id: 4
        required: true
        data {
          type: SPONSORED
          len: 25
        }
      }
      assets {
        id: 5
        required: true
        img {
          type: MAIN
          wmin: 1200
          hmin: 627
        }
      }
      assets {
        id: 6
        img {
          type: LOGO
          wmin: 100
          hmin: 100
        }
      }
      eventtrackers {
        event: IMPRESSION
        methods: IMG
      }
      privacy: true
    }
  }
  exp: 3600
  clickbrowser: true
  metric {
    type: "click_through_rate"
    value: 0.10741956532001495
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.58
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 29846056590
    publisher_settings_list_id: 4793646945897060511
    publisher_settings_list_id: 3704654811398966070
    allowed_vendor_type: 780
    allowed_vendor_type: 237
    ampad: AMP_AD_NOT_ALLOWED
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    billable_event_rate_bid_adjustment {
      bid_adjustment: 1.2858465
      creative_type: NATIVE
    }
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-9497839363952914"
    [com.google.doubleclick.publisher] {
      country: "HK"
    }
  }
  content {
    url: "https://www.google.com"
    userrating: "4.4"
    livestream: false
    language: "ar"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "EGY"
    region: "EG-ALX"
    city: "Alexandria"
    type: IP
    utcoffset: 180
    accuracy: 2052
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9198011
    }
  }
  make: "Xiaomi"
  model: "M2006C3MG"
  os: "android"
  osv: "10"
  connectiontype: CELL_4G
  devicetype: HIGHEND_PHONE
  lmt: false
  w: 360
  h: 725
  pxratio: 2.0
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "537"
      version: "36"
    }
    platform {
      brand: "Android"
      version: "10"
    }
    mobile: true
    model: "M2006C3MG"
    source: USER_AGENT_STRING
  }
}
user {
  [com.google.doubleclick.user] {
    session {
      duration: 14
    }
  }
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
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-a-v243799999.232400000.1"
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-z2g135-A631Sj54M16BCG6dC277E40D9nL3r921i0k2974f1q051601623F0i9232692"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_BROWSER
  privacy_treatments {
    non_personalized_ads_reason: USER_OPT_OUT
    allow_user_data_collection: false
  }
}
{
  "id": "3rF2U7Feg24806GjUY2Lr5",
  "imp": [
    {
      "id": "1",
      "displaymanager": "GoogleMobileAds-Android",
      "displaymanagerver": "22.3.0",
      "tagid": "3320317218",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "native": {
        "ver": "1.2",
        "api": [
          3,
          5
        ],
        "request": "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":25}},{\"id\":2,\"required\":1,\"data\":{\"type\":2,\"len\":90}},{\"id\":3,\"data\":{\"type\":12,\"len\":15}},{\"id\":4,\"required\":1,\"data\":{\"type\":1,\"len\":25}},{\"id\":5,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":6,\"img\":{\"type\":2,\"wmin\":100,\"hmin\":100}}],\"eventtrackers\":[{\"event\":1,\"methods\":[1]}],\"privacy\":1}"
      },
      "exp": 3600,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 0.10741956532001495,
          "vendor": "EXCHANGE"
        },
        {
          "type": "viewability",
          "value": 0.58,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "29846056590"
        ],
        "publisher_settings_list_id": [
          "4793646945897060511",
          "3704654811398966070"
        ],
        "allowed_vendor_type": [
          780,
          237
        ],
        "ampad": 2,
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "billable_event_rate_bid_adjustment": [
          {
            "bid_adjustment": 1.2858465,
            "creative_type": 3
          }
        ],
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-9497839363952914",
      "ext": {
        "country": "HK"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "userrating": "4.4",
      "livestream": 0,
      "language": "ar"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "EGY",
      "region": "EG-ALX",
      "city": "Alexandria",
      "type": 2,
      "utcoffset": 180,
      "accuracy": 2052,
      "ext": {
        "geo_criteria_id": 9198011
      }
    },
    "make": "Xiaomi",
    "model": "M2006C3MG",
    "os": "android",
    "osv": "10",
    "connectiontype": 6,
    "devicetype": 4,
    "lmt": 0,
    "w": 360,
    "h": 725,
    "pxratio": 2.0,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "537",
            "36"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "10"
        ]
      },
      "mobile": 1,
      "model": "M2006C3MG",
      "source": 3
    }
  },
  "user": {
    "ext": {
      "session": {
        "duration": 14
      }
    }
  },
  "at": 1,
  "tmax": 300,
  "cur": [
    "USD"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-a-v243799999.232400000.1",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z2g135-A631Sj54M16BCG6dC277E40D9nL3r921i0k2974f1q051601623F0i9232692",
    "fcap_scope": 2,
    "privacy_treatments": {
      "non_personalized_ads_reason": [
        3
      ],
      "allow_user_data_collection": 0
    }
  }
}
Yêu cầu tuần tự
id: "\\>\313j\000>Rh\321\301\367[\212\'j\204\273/\242\304\231\221\335"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "ja"
adslot {
  id: 1
  excluded_attribute: 25
  excluded_attribute: 34
  allowed_vendor_type: 3
  allowed_vendor_type: 42
  excluded_sensitive_category: 36
  excluded_sensitive_category: 4
  matching_ad_data {
    billing_id: 41106584355
    billing_id: 30773030290
    minimum_cpm_micros: 130000
  }
  slot_visibility: ABOVE_THE_FOLD
  excluded_product_category: 10031
  ad_block_key: 1332130058
  publisher_settings_list_id: 8685019249309350543
  publisher_settings_list_id: 9740837501405857020
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  viewability: 83
  allowed_ad_types: ALLOWED_AD_TYPE_NATIVE
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  api: MRAID_1
  api: MRAID_2
  native_ad_template {
    required_fields: 83
    recommended_fields: 388
    headline_max_safe_length: 25
    body_max_safe_length: 90
    call_to_action_max_safe_length: 15
    image_width: 1200
    image_height: 627
    app_icon_width: 100
    app_icon_height: 100
  }
  omidpn: "Google"
  omidpv: "afma-sdk-i-v11.5.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: 14400
  billable_event_rate_bid_adjustment {
    bid_adjustment: 1.0
    creative_type: NATIVE
  }
  supported_auction_environment: SERVER_SIDE_AUCTION
  display_manager: "GoogleMobileAds-iOS"
  display_manager_version: "11.5.0"
}
is_test: false
timezone_offset: 540
mobile {
  app_id: "627009739"
  is_app: true
  is_mobile_web_optimized: true
  app_name: "Test App"
  skadn {
    sourceapp: "627009739"
    skadnetids: "l6x39K4z"
    versions: "2.0"
    versions: "2.1"
    supported_fidelity_types: STOREKIT_RENDERED_ADS
    supported_fidelity_types: VIEW_THROUGH_ADS
  }
}
postal_code: "10011"
geo_criteria_id: 9161820
publisher_type: PUBLISHER_OWNED_AND_OPERATED
device {
  device_type: HIGHEND_PHONE
  platform: "iphone"
  brand: "Apple"
  model: "iPhone10,3"
  os_version {
    major: 16
    minor: 7
    micro: 10
  }
  carrier_id: 0
  screen_width: 375
  screen_height: 812
  screen_pixel_ratio_millis: 3000
  screen_orientation: PORTRAIT
  hardware_version: "iPhone10,3"
  limit_ad_tracking: true
  app_tracking_authorization_status: RESTRICTED
  connection_type: WIFI
}
publisher_country: "US"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 300
google_query_id: "ANy-zrk77i-KbW4i79W0c018hwPx3aS9rl10TU52SMd7Sv82r01g5O4D20sxKTj53Xrr9VK0"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "JPN"
  region: "JP-36"
  zip: "771-0212"
  utcoffset: 540
  accuracy: 1031
}
user_agent_data {
  platform {
    brand: "iPhone"
    version: "16"
    version: "7"
  }
  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 {
  allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"

Video trên web

Yêu cầu tuần tự
id: "474xe8G3edB9ZG60IaK880"
imp {
  id: "1"
  video {
    mimes: "video/mp4"
    linearity: LINEAR
    w: 300
    h: 250
    playbackmethod: ENTER_SOUND_OFF
    pos: ABOVE_THE_FOLD
    api: OMID_1
    protocols: VAST_2_0
    protocols: VAST_3_0
    skip: true
    placement: IN_ARTICLE_PLACEMENT
    playbackend: LEAVING_OR_USER
    plcmt: PLCMT_NO_CONTENT_STANDALONE
    [com.google.doubleclick.video] {
      inferredplcmt: PLCMT_NO_CONTENT_STANDALONE
      embeddedoffsite: true
    }
  }
  displaymanager: "GOOGLE"
  tagid: "8378930064"
  bidfloor: 0.19
  bidfloorcur: "USD"
  secure: true
  exp: 3600
  metric {
    type: "click_through_rate"
    value: 0.0012572698760777712
    vendor: "EXCHANGE"
  }
  metric {
    type: "viewability"
    value: 0.62
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 47460168025
    publisher_settings_list_id: 5764601004062573461
    publisher_settings_list_id: 9583254202940413383
    allowed_vendor_type: 3
    allowed_vendor_type: 42
    dfp_ad_unit_code: "/3049200/google/test"
    ampad: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
    buyer_generated_request_data {
      data: "Test Data"
    }
    buyer_generated_request_data {
      data: "Test Data"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    open_bidding {
      is_open_bidding: true
    }
    allowed_restricted_category: 33
    allowed_restricted_category: 32
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    ae: SERVER_SIDE_AUCTION
  }
}
site {
  page: "https://www.google.com"
  publisher {
    id: "pub-1111111111111111"
    [com.google.doubleclick.publisher] {
      country: "US"
    }
  }
  content {
    livestream: false
    producer {
    }
    language: "en"
  }
  mobile: true
  [com.google.doubleclick.site] {
    amp: DIALECT_HTML
    page_visibility: VISIBILITY_STATE_VISIBLE
    inventorypartnerdomain: "OMITTED"
    ntype: NAVIGATION_TYPE_NAVIGATE
  }
}
device {
  ua: "OMITTED"
  geo {
    lat: 0.0
    lon: 0.0
    country: "USA"
    region: "TX"
    metro: "618"
    city: "Houston"
    zip: "77032"
    type: IP
    utcoffset: -300
    accuracy: 3682
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9027607
    }
  }
  ipv6: "2600:100d:b045::"
  carrier: "70092"
  make: "Samsung"
  model: "sm-a037u"
  os: "android"
  osv: "13"
  devicetype: HIGHEND_PHONE
  lmt: false
  w: 412
  h: 915
  pxratio: 1.75
  sua {
    browsers {
      brand: "Google Chrome"
      version: "129"
      version: "0"
    }
    browsers {
      brand: "Not=A?Brand"
      version: "8"
      version: "0"
    }
    platform {
      brand: "Android"
      version: "13"
      version: "0"
    }
    mobile: true
    model: "SM-A037U"
    source: CLIENT_HINTS_HIGH_ENTROPY
  }
}
user {
  buyeruid: "8cw7780874mg61q5MBecJyQ8hXIoYQPM"
  customdata: "l7898Ufx682216u9F0WUQsxMFr1956dw76p8ZAdpwA3586Y2"
  data {
    segment {
      id: "OMITTED"
    }
    segment {
      id: "OMITTED"
    }
    [com.google.doubleclick.data] {
      segtax: 601
    }
  }
  [com.google.doubleclick.user] {
    eids {
      source: "OMITTED"
      uids {
        id: "12JD92JD8078S8J29SDOAKC0EF230337"
      }
    }
    eids {
      source: "OMITTED"
      uids {
        id: "12JD92JD8078S8J29SDOAKC0EF230337"
      }
    }
  }
}
at: FIRST_PRICE
tmax: 350
cur: "USD"
regs {
  gpp: "OMITTED"
}
source {
  schain {
    complete: true
    nodes {
      asi: "testssp.com"
      sid: "pub-1111111111111111"
      hp: true
    }
    nodes {
      asi: "testssp.com"
      sid: "pub-1111111111111111"
      hp: true
    }
    ver: "1.0"
  }
  [com.google.doubleclick.source] {
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  bid_feedback {
    request_id: "V68ZT9H20868b1ze4z5rWa"
    creative_status_code: 80
    event_notification_token {
      payload: "token"
    }
    buyer_creative_id: "test_creative_id_175726"
    minimum_bid_to_win: 8.62
    feedbacktype: BID_FEEDBACK
  }
  google_query_id: "ANy-z732H2-9Z57W2Ufp82238m3DQ5T47oEIDlSkITGYWkX1CgL2VPch1wbeQV6kb1631u7h"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_NONE
}
{
  "id": "474xe8G3edB9ZG60IaK880",
  "imp": [
    {
      "id": "1",
      "video": {
        "mimes": [
          "video/mp4"
        ],
        "linearity": 1,
        "w": 300,
        "h": 250,
        "playbackmethod": [
          6
        ],
        "pos": 1,
        "api": [
          7
        ],
        "protocols": [
          2,
          3
        ],
        "skip": 1,
        "placement": 3,
        "playbackend": 2,
        "plcmt": 4,
        "ext": {
          "inferredplcmt": 4,
          "embeddedoffsite": 1
        }
      },
      "displaymanager": "GOOGLE",
      "tagid": "8378930064",
      "bidfloor": 0.19,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 3600,
      "metric": [
        {
          "type": "click_through_rate",
          "value": 0.0012572698760777712,
          "vendor": "EXCHANGE"
        },
        {
          "type": "viewability",
          "value": 0.62,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "47460168025"
        ],
        "publisher_settings_list_id": [
          "5764601004062573461",
          "9583254202940413383"
        ],
        "allowed_vendor_type": [
          3,
          42
        ],
        "dfp_ad_unit_code": "/3049200/google/test",
        "ampad": 3,
        "buyer_generated_request_data": [
          {
            "data": "Test Data"
          },
          {
            "data": "Test Data"
          }
        ],
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "open_bidding": {
          "is_open_bidding": 1
        },
        "allowed_restricted_category": [
          33,
          32
        ],
        "creative_enforcement_settings": {
          "policy_enforcement": 1,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "ae": 0
      }
    }
  ],
  "site": {
    "page": "https://www.google.com",
    "publisher": {
      "id": "pub-1111111111111111",
      "ext": {
        "country": "US"
      }
    },
    "content": {
      "livestream": 0,
      "language": "en"
    },
    "mobile": 1,
    "ext": {
      "amp": 0,
      "page_visibility": 1,
      "inventorypartnerdomain": "OMITTED",
      "ntype": 1
    }
  },
  "device": {
    "ua": "OMITTED",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "USA",
      "region": "TX",
      "metro": "618",
      "city": "Houston",
      "zip": "77032",
      "type": 2,
      "utcoffset": -300,
      "accuracy": 3682,
      "ext": {
        "geo_criteria_id": 9027607
      }
    },
    "ipv6": "2600:100d:b045::",
    "carrier": "70092",
    "make": "Samsung",
    "model": "sm-a037u",
    "os": "android",
    "osv": "13",
    "devicetype": 4,
    "lmt": 0,
    "w": 412,
    "h": 915,
    "pxratio": 1.75,
    "sua": {
      "browsers": [
        {
          "brand": "Google Chrome",
          "version": [
            "129",
            "0"
          ]
        },
        {
          "brand": "Not=A?Brand",
          "version": [
            "8",
            "0"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "13",
          "0"
        ]
      },
      "mobile": 1,
      "model": "SM-A037U",
      "source": 2
    }
  },
  "user": {
    "buyeruid": "8cw7780874mg61q5MBecJyQ8hXIoYQPM",
    "customdata": "l7898Ufx682216u9F0WUQsxMFr1956dw76p8ZAdpwA3586Y2",
    "data": [
      {
        "segment": [
          {
            "id": "OMITTED"
          },
          {
            "id": "OMITTED"
          }
        ],
        "ext": {
          "segtax": 601
        }
      }
    ],
    "ext": {
      "eids": [
        {
          "source": "OMITTED",
          "uids": [
            {
              "id": "12JD92JD8078S8J29SDOAKC0EF230337"
            }
          ]
        },
        {
          "source": "OMITTED",
          "uids": [
            {
              "id": "12JD92JD8078S8J29SDOAKC0EF230337"
            }
          ]
        }
      ]
    }
  },
  "at": 1,
  "tmax": 350,
  "cur": [
    "USD"
  ],
  "regs": {
    "gpp": "OMITTED"
  },
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        },
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          },
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "bid_feedback": [
      {
        "request_id": "V68ZT9H20868b1ze4z5rWa",
        "creative_status_code": 80,
        "event_notification_token": {
          "payload": "token"
        },
        "buyer_creative_id": "test_creative_id_175726",
        "minimum_bid_to_win": 8.62,
        "feedbacktype": 1
      }
    ],
    "google_query_id": "ANy-z732H2-9Z57W2Ufp82238m3DQ5T47oEIDlSkITGYWkX1CgL2VPch1wbeQV6kb1631u7h",
    "fcap_scope": 1
  }
}
Yêu cầu tuần tự
id: "J#\010\024\351\000\207\247\265\033\315\nA\251\257}\216\313\206\214\323\312\215"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "ja"
adslot {
  id: 1
  width: 1176
  width: 480
  height: 1046
  height: 800
  excluded_attribute: 7
  excluded_attribute: 16
  allowed_vendor_type: 4513
  allowed_vendor_type: 485
  excluded_sensitive_category: 36
  excluded_sensitive_category: 31
  matching_ad_data {
    billing_id: 75752641104
    billing_id: 20395399239
    minimum_cpm_micros: 40000
  }
  matching_ad_data {
    billing_id: 97958384088
    billing_id: 56530052009
    minimum_cpm_micros: 530000
  }
  slot_visibility: ABOVE_THE_FOLD
  ad_block_key: 5888439717
  publisher_settings_list_id: 4545709109957121468
  allowed_restricted_category: 32
  allowed_restricted_category: 33
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  iframing_state: UNKNOWN_IFRAME_STATE
  viewability: 86
  allowed_restricted_category_for_deals: 32
  allowed_restricted_category_for_deals: 33
  renderer: GOOGLE
  is_rewarded: true
  allowed_ad_types: ALLOWED_AD_TYPE_VIDEO
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
  session_depth: 1
  api: OMID_1
  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
}
is_test: false
cookie_version: 1
google_user_id: "0bQri772Ba4h145n2m5dRK2e7IM"
timezone_offset: 540
mobile {
  is_interstitial_request: true
}
video {
  max_ad_duration: 30000
  video_ad_skippable: BLOCK_SKIPPABLE
  allowed_video_formats: VIDEO_MP4
  end_cap_support: END_CAP_OPTIONAL
  playback_method: CLICK_TO_PLAY
  is_clickable: true
  placement: INTERSTITIAL
  protocols: VAST_2_0
  protocols: VAST_3_0
  playback_cessation_mode: COMPLETION_OR_USER
  plcmt: PLCMT_INTERSTITIAL
  inferred_plcmt: PLCMT_INTERSTITIAL
}
cookie_age_seconds: 57024000
hosted_match_data: "\207r9\204\322\022\324Ezf\263\305\373\3153\311\271i\305"
geo_criteria_id: 1009341
publisher_settings_list_id: 6038657471597087436
bid_response_feedback {
  request_id: "\373\263!2t;\224C\363\372\224\220\376red"
  creative_status_code: 79
  event_notification_token: "token"
  buyer_creative_id: "test_creative_id_378410"
  minimum_bid_to_win: 114000000
  feedback_type: BID_FEEDBACK
}
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 3153428956954513893
device {
  device_type: PERSONAL_COMPUTER
  platform: "Windows"
  limit_ad_tracking: false
}
publisher_country: "JP"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 350
google_query_id: "ANy-zz9y8d-2p0141lC5k418ht4e0FOF2M06a40So6pmPJim2U4LWw2hERI5310mnf649802"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "JPN"
  region: "JP-14"
  city: "Saiwai"
  utcoffset: 540
  accuracy: 1785
}
user_agent_data {
  platform {
    brand: "Windows"
    version: "10"
    version: "0"
  }
  mobile: false
  architecture: "x86"
  browsers {
    brand: "Google Chrome"
    version: "129"
    version: "0"
  }
  browsers {
    brand: "Not=A?Brand"
    version: "8"
    version: "0"
  }
  bitness: "64"
  source: CLIENT_HINTS_HIGH_ENTROPY
}
page_visibility: VISIBILITY_STATE_VISIBLE
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_BROWSER
privacy_treatments {
  allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"

Biểu ngữ trên web dành cho thiết bị di động cho bên đặt giá thầu trên Ad Exchange

Yêu cầu tuần tự
id: "W5rO389B0p836803G6tI3T"
imp {
  id: "1"
  banner {
    w: 320
    h: 50
    pos: ABOVE_THE_FOLD
    expdir: LEFT
    expdir: RIGHT
    expdir: UP
    expdir: DOWN
    api: MRAID_1
    api: MRAID_2
    format {
      w: 320
      h: 50
    }
    format {
      w: 320
      h: 100
    }
  }
  displaymanager: "GoogleMobileAds-Android"
  displaymanagerver: "23.1.0"
  tagid: "3758755668"
  bidfloor: 0.11
  bidfloorcur: "USD"
  secure: true
  exp: 3600
  clickbrowser: true
  metric {
    type: "viewability"
    value: 0.71
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 50962964480
    dfp_ad_unit_code: "/5025729/google/test"
    ampad: AMP_AD_NOT_ALLOWED
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    excluded_creatives {
      buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
    }
    open_bidding {
      is_open_bidding: true
    }
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_OVERRIDDEN
    }
    auction_environment: SERVER_SIDE_AUCTION
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  ver: "6.8.1"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-6120362493380457"
    [com.google.doubleclick.publisher] {
      country: "PL"
    }
  }
  content {
    url: "https://www.google.com"
    userrating: "4.5"
    livestream: false
    language: "pl"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "POL"
    region: "PL-MZ"
    city: "Warsaw"
    zip: "04"
    type: IP
    utcoffset: 120
    accuracy: 2263
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9061066
    }
  }
  carrier: "70872"
  make: "Samsung"
  model: "SM-A346B"
  os: "android"
  osv: "14"
  connectiontype: CELL_4G
  devicetype: HIGHEND_PHONE
  ifa: "1f3ed9c7-e8d8-4cec-9167-2811375e2cbe"
  lmt: false
  w: 384
  h: 758
  pxratio: 2.813
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "537"
      version: "36"
    }
    platform {
      brand: "Android"
      version: "14"
    }
    mobile: true
    bitness: "64"
    model: "SM-A346B"
    source: USER_AGENT_STRING
  }
}
user {
  id: "a9S5d7s7r38o1q8ifv4U80GBxKA"
  [com.google.doubleclick.user] {
    consented_providers_settings {
      consented_providers: 1215
      consented_providers: 2567
      additional_consent: "OMITTED"
    }
    consent: "OMITTED"
    session {
      duration: 464
    }
    idage: 25920000
  }
}
at: FIRST_PRICE
tmax: 1000
cur: "USD"
regs {
  gpp: "OMITTED"
  [com.google.doubleclick.regs] {
    gdpr: true
  }
}
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-a-v243799999.241199000.1"
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-z4luKF-u274F3WU34uUUoQ7E82k3L42z23v2K4T1k0eA7Rw8Xb6JeXDG6K703e88p491"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
}
{
  "id": "W5rO389B0p836803G6tI3T",
  "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-Android",
      "displaymanagerver": "23.1.0",
      "tagid": "3758755668",
      "bidfloor": 0.11,
      "bidfloorcur": "USD",
      "secure": 1,
      "exp": 3600,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "viewability",
          "value": 0.71,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "50962964480"
        ],
        "dfp_ad_unit_code": "/5025729/google/test",
        "ampad": 2,
        "excluded_creatives": [
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          },
          {
            "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
          }
        ],
        "open_bidding": {
          "is_open_bidding": 1
        },
        "creative_enforcement_settings": {
          "policy_enforcement": 1,
          "publisher_blocks_enforcement": 2
        },
        "auction_environment": 0,
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "6.8.1",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-6120362493380457",
      "ext": {
        "country": "PL"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "userrating": "4.5",
      "livestream": 0,
      "language": "pl"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "POL",
      "region": "PL-MZ",
      "city": "Warsaw",
      "zip": "04",
      "type": 2,
      "utcoffset": 120,
      "accuracy": 2263,
      "ext": {
        "geo_criteria_id": 9061066
      }
    },
    "carrier": "70872",
    "make": "Samsung",
    "model": "SM-A346B",
    "os": "android",
    "osv": "14",
    "connectiontype": 6,
    "devicetype": 4,
    "ifa": "1f3ed9c7-e8d8-4cec-9167-2811375e2cbe",
    "lmt": 0,
    "w": 384,
    "h": 758,
    "pxratio": 2.813,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "537",
            "36"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "14"
        ]
      },
      "mobile": 1,
      "bitness": "64",
      "model": "SM-A346B",
      "source": 3
    }
  },
  "user": {
    "id": "a9S5d7s7r38o1q8ifv4U80GBxKA",
    "ext": {
      "consented_providers_settings": {
        "consented_providers": [
          "1215",
          "2567"
        ],
        "additional_consent": "OMITTED"
      },
      "consent": "OMITTED",
      "session": {
        "duration": 464
      },
      "idage": 25920000
    }
  },
  "at": 1,
  "tmax": 1000,
  "cur": [
    "USD"
  ],
  "regs": {
    "gpp": "OMITTED",
    "ext": {
      "gdpr": 1
    }
  },
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-a-v243799999.241199000.1",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-z4luKF-u274F3WU34uUUoQ7E82k3L42z23v2K4T1k0eA7Rw8Xb6JeXDG6K703e88p491",
    "fcap_scope": 3
  }
}

Quảng cáo gốc và video nhiều định dạng

Yêu cầu tuần tự
id: "o9j8MO3eW468670y7CVv1A"
imp {
  id: "1"
  banner {
    w: 300
    h: 250
    pos: ABOVE_THE_FOLD
    battr: VIDEO_IN_BANNER_AUTO_PLAY
    battr: VIDEO_IN_BANNER_USER_INITIATED
    api: MRAID_1
    api: MRAID_2
    format {
      w: 300
      h: 250
    }
    format {
      w: 320
      h: 50
    }
  }
  video {
    mimes: "video/mp4"
    linearity: LINEAR
    w: 300
    h: 250
    battr: VIDEO_IN_BANNER_AUTO_PLAY
    battr: VIDEO_IN_BANNER_USER_INITIATED
    playbackmethod: ENTER_SOUND_OFF
    pos: ABOVE_THE_FOLD
    api: MRAID_1
    api: MRAID_2
    protocols: VAST_2_0
    protocols: VAST_3_0
    skip: true
    placement: IN_FEED_PLACEMENT
    playbackend: LEAVING_OR_USER
    plcmt: PLCMT_NO_CONTENT_STANDALONE
    [com.google.doubleclick.video] {
      inferredplcmt: PLCMT_NO_CONTENT_STANDALONE
      embeddedoffsite: true
    }
  }
  displaymanager: "GoogleMobileAds-Android"
  displaymanagerver: "22.3.0"
  tagid: "6247365183"
  bidfloor: 0.01
  bidfloorcur: "USD"
  secure: true
  native {
    ver: "1.2"
    api: MRAID_1
    api: MRAID_2
    battr: VIDEO_IN_BANNER_AUTO_PLAY
    battr: VIDEO_IN_BANNER_USER_INITIATED
    request_native {
      ver: "1.2"
      assets {
        id: 1
        required: true
        title {
          len: 25
        }
      }
      assets {
        id: 2
        required: true
        data {
          type: DESC
          len: 90
        }
      }
      assets {
        id: 3
        data {
          type: CTATEXT
          len: 15
        }
      }
      assets {
        id: 4
        required: true
        img {
          type: MAIN
          wmin: 1200
          hmin: 627
        }
      }
      assets {
        id: 5
        required: true
        img {
          type: ICON
          wmin: 100
          hmin: 100
        }
      }
      assets {
        id: 6
        data {
          type: RATING
          len: 5
        }
      }
      assets {
        id: 7
        data {
          type: PRICE
          len: 15
        }
      }
      eventtrackers {
        event: IMPRESSION
        methods: IMG
      }
      privacy: true
    }
  }
  exp: 3600
  clickbrowser: true
  metric {
    type: "viewability"
    value: 0.64
    vendor: "EXCHANGE"
  }
  metric {
    type: "session_depth"
    value: 7.0
    vendor: "EXCHANGE"
  }
  [com.google.doubleclick.imp] {
    billing_id: 21221902373
    billing_id: 53569531917
    publisher_settings_list_id: 7651048085774412615
    publisher_settings_list_id: 3305930710629093223
    allowed_vendor_type: 3
    allowed_vendor_type: 42
    ampad: AMP_AD_NOT_ALLOWED
    creative_enforcement_settings {
      policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
      publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
    }
    auction_environment: SERVER_SIDE_AUCTION
    billable_event_rate_bid_adjustment {
      bid_adjustment: 1.1452553
      creative_type: HTML_SNIPPET
    }
    ae: SERVER_SIDE_AUCTION
  }
}
app {
  name: "Test App"
  ver: "14.27.7"
  bundle: "com.google.testapp"
  publisher {
    id: "pub-8822142511593237"
    [com.google.doubleclick.publisher] {
      country: "SE"
    }
  }
  content {
    url: "https://www.google.com"
    userrating: "4.5"
    livestream: false
    producer {
    }
    language: "en"
  }
  storeurl: "https://www.google.com"
  [com.google.doubleclick.app] {
    inventorypartnerdomain: "OMITTED"
  }
}
device {
  ua: "OMITTED"
  ip: "192.168.1.0"
  geo {
    lat: 0.0
    lon: 0.0
    country: "NGA"
    region: "NG-LA"
    city: "Lagos"
    zip: "106104"
    type: IP
    utcoffset: 60
    accuracy: 1559
    [com.google.doubleclick.geo] {
      geo_criteria_id: 9198908
    }
  }
  make: "Xiaomi"
  model: "23129RAA4G"
  os: "android"
  osv: "14"
  connectiontype: WIFI
  devicetype: HIGHEND_PHONE
  ifa: "94b6ef8c-99d8-4997-98d2-c2377bd7abd1"
  lmt: false
  w: 393
  h: 792
  pxratio: 2.75
  sua {
    browsers {
      brand: "Mozilla"
      version: "5"
      version: "0"
    }
    browsers {
      brand: "AppleWebKit"
      version: "537"
      version: "36"
    }
    platform {
      brand: "Android"
      version: "14"
    }
    mobile: true
    bitness: "64"
    model: "23129RAA4G"
    source: USER_AGENT_STRING
  }
}
user {
  id: "04X9BE2175274aL0C296l24WI68"
  [com.google.doubleclick.user] {
    session {
      duration: 439
    }
    idage: 7776000
  }
}
at: FIRST_PRICE
tmax: 1500
cur: "USD"
cur: "EUR"
bcat: "IAB23-9"
bcat: "IAB14-1"
bapp: "com.ayoba.ayoba"
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-a-v243799999.232400000.1"
    schain {
      complete: 1
      nodes {
        asi: "testssp.com"
        sid: "pub-1111111111111111"
        hp: 1
      }
      ver: "1.0"
    }
  }
}
[com.google.doubleclick.bid_request] {
  google_query_id: "ANy-zM284h-2Q24Y9v315v54F50lLaqQ3hq549685jR3ack28k6J6Ko65F1aS73r197eM8zX"
  fcap_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
  privacy_treatments {
    allow_user_data_collection: false
  }
}
{
  "id": "o9j8MO3eW468670y7CVv1A",
  "imp": [
    {
      "id": "1",
      "banner": {
        "w": 300,
        "h": 250,
        "pos": 1,
        "battr": [
          6,
          7
        ],
        "api": [
          3,
          5
        ],
        "format": [
          {
            "w": 300,
            "h": 250
          },
          {
            "w": 320,
            "h": 50
          }
        ]
      },
      "video": {
        "mimes": [
          "video/mp4"
        ],
        "linearity": 1,
        "w": 300,
        "h": 250,
        "battr": [
          6,
          7
        ],
        "playbackmethod": [
          6
        ],
        "pos": 1,
        "api": [
          3,
          5
        ],
        "protocols": [
          2,
          3
        ],
        "skip": 1,
        "placement": 4,
        "playbackend": 2,
        "plcmt": 4,
        "ext": {
          "inferredplcmt": 4,
          "embeddedoffsite": 1
        }
      },
      "displaymanager": "GoogleMobileAds-Android",
      "displaymanagerver": "22.3.0",
      "tagid": "6247365183",
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "secure": 1,
      "native": {
        "ver": "1.2",
        "api": [
          3,
          5
        ],
        "battr": [
          6,
          7
        ],
        "request": "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":25}},{\"id\":2,\"required\":1,\"data\":{\"type\":2,\"len\":90}},{\"id\":3,\"data\":{\"type\":12,\"len\":15}},{\"id\":4,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":5,\"required\":1,\"img\":{\"type\":1,\"wmin\":100,\"hmin\":100}},{\"id\":6,\"data\":{\"type\":3,\"len\":5}},{\"id\":7,\"data\":{\"type\":6,\"len\":15}}],\"eventtrackers\":[{\"event\":1,\"methods\":[1]}],\"privacy\":1}"
      },
      "exp": 3600,
      "clickbrowser": 1,
      "metric": [
        {
          "type": "viewability",
          "value": 0.64,
          "vendor": "EXCHANGE"
        },
        {
          "type": "session_depth",
          "value": 7.0,
          "vendor": "EXCHANGE"
        }
      ],
      "ext": {
        "billing_id": [
          "21221902373",
          "53569531917"
        ],
        "publisher_settings_list_id": [
          "7651048085774412615",
          "3305930710629093223"
        ],
        "allowed_vendor_type": [
          3,
          42
        ],
        "ampad": 2,
        "creative_enforcement_settings": {
          "policy_enforcement": 2,
          "publisher_blocks_enforcement": 1
        },
        "auction_environment": 0,
        "billable_event_rate_bid_adjustment": [
          {
            "bid_adjustment": 1.1452553,
            "creative_type": 1
          }
        ],
        "ae": 0
      }
    }
  ],
  "app": {
    "name": "Test App",
    "ver": "14.27.7",
    "bundle": "com.google.testapp",
    "publisher": {
      "id": "pub-8822142511593237",
      "ext": {
        "country": "SE"
      }
    },
    "content": {
      "url": "https://www.google.com",
      "userrating": "4.5",
      "livestream": 0,
      "language": "en"
    },
    "storeurl": "https://www.google.com",
    "ext": {
      "inventorypartnerdomain": "OMITTED"
    }
  },
  "device": {
    "ua": "OMITTED",
    "ip": "192.168.1.0",
    "geo": {
      "lat": 0.0,
      "lon": 0.0,
      "country": "NGA",
      "region": "NG-LA",
      "city": "Lagos",
      "zip": "106104",
      "type": 2,
      "utcoffset": 60,
      "accuracy": 1559,
      "ext": {
        "geo_criteria_id": 9198908
      }
    },
    "make": "Xiaomi",
    "model": "23129RAA4G",
    "os": "android",
    "osv": "14",
    "connectiontype": 2,
    "devicetype": 4,
    "ifa": "94b6ef8c-99d8-4997-98d2-c2377bd7abd1",
    "lmt": 0,
    "w": 393,
    "h": 792,
    "pxratio": 2.75,
    "sua": {
      "browsers": [
        {
          "brand": "Mozilla",
          "version": [
            "5",
            "0"
          ]
        },
        {
          "brand": "AppleWebKit",
          "version": [
            "537",
            "36"
          ]
        }
      ],
      "platform": {
        "brand": "Android",
        "version": [
          "14"
        ]
      },
      "mobile": 1,
      "bitness": "64",
      "model": "23129RAA4G",
      "source": 3
    }
  },
  "user": {
    "id": "04X9BE2175274aL0C296l24WI68",
    "ext": {
      "session": {
        "duration": 439
      },
      "idage": 7776000
    }
  },
  "at": 1,
  "tmax": 1500,
  "cur": [
    "USD",
    "EUR"
  ],
  "bcat": [
    "IAB23-9",
    "IAB14-1"
  ],
  "bapp": [
    "com.ayoba.ayoba"
  ],
  "source": {
    "schain": {
      "complete": 1,
      "nodes": [
        {
          "asi": "testssp.com",
          "sid": "pub-1111111111111111",
          "hp": 1
        }
      ],
      "ver": "1.0"
    },
    "ext": {
      "omidpn": "Google",
      "omidpv": "afma-sdk-a-v243799999.232400000.1",
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "testssp.com",
            "sid": "pub-1111111111111111",
            "hp": 1
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "ext": {
    "google_query_id": "ANy-zM284h-2Q24Y9v315v54F50lLaqQ3hq549685jR3ack28k6J6Ko65F1aS73r197eM8zX",
    "fcap_scope": 3,
    "privacy_treatments": {
      "allow_user_data_collection": 0
    }
  }
}
Yêu cầu tuần tự
id: "\3213\327N\305\205|\363P-\002\271\321\255\2422a\336\344w\032\315\364"
ip: "\300\250"
user_agent: "OMITTED"
url: "https://www.google.com"
detected_language: "ko"
adslot {
  id: 1
  width: 336
  width: 300
  height: 280
  height: 250
  excluded_attribute: 16
  excluded_attribute: 34
  allowed_vendor_type: 3
  allowed_vendor_type: 42
  excluded_sensitive_category: 36
  excluded_sensitive_category: 27
  matching_ad_data {
    billing_id: 46229095026
    minimum_cpm_micros: 6000000
    direct_deal {
      direct_deal_id: 41020803
      fixed_cpm_micros: 6000000
      deal_type: AUCTION_PACKAGE
    }
    direct_deal {
      direct_deal_id: 83063356
      fixed_cpm_micros: 6000000
      deal_type: AUCTION_PACKAGE
    }
  }
  matching_ad_data {
    billing_id: 97161713426
    billing_id: 54565593373
    minimum_cpm_micros: 60000
  }
  slot_visibility: BELOW_THE_FOLD
  excluded_product_category: 10031
  excluded_product_category: 10080
  ad_block_key: 1676780364
  publisher_settings_list_id: 4302366834898588447
  publisher_settings_list_id: 5535773595467535705
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  excluded_creatives {
    buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
  }
  iframing_state: UNKNOWN_IFRAME_STATE
  viewability: 3
  click_through_rate: 0.00045286646
  renderer: GOOGLE
  allowed_ad_types: ALLOWED_AD_TYPE_NATIVE
  allowed_ad_types: ALLOWED_AD_TYPE_BANNER
  is_amp_page: DIALECT_HTML
  amp_ad_requirement_type: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
  session_depth: 1
  api: OMID_1
  flexible_adslot_settings {
    max_width: 412
    max_height: 371
    min_width: 300
    min_height: 250
  }
  native_ad_template {
    required_fields: 81
    recommended_fields: 132
    headline_max_safe_length: 25
    body_max_safe_length: 90
    call_to_action_max_safe_length: 15
    image_width: 1200
    image_height: 627
    app_icon_width: 100
    app_icon_height: 100
    style_id: 188124
    style_height: 250
    style_width: 300
  }
  native_ad_template {
    required_fields: 25
    recommended_fields: 36
    headline_max_safe_length: 90
    body_max_safe_length: 90
    call_to_action_max_safe_length: 15
    advertiser_max_safe_length: 25
    image_width: 1200
    image_height: 627
    logo_width: 100
    logo_height: 100
    style_id: 192343
    style_height: 250
    style_width: 300
  }
  creative_enforcement_settings {
    policy_enforcement: POLICY_ENFORCEMENT_PLATFORM_POLICY
    publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
  }
  auction_environment: SERVER_SIDE_AUCTION
  impression_expiration_seconds: 3600
  supported_auction_environment: SERVER_SIDE_AUCTION
}
is_test: false
cookie_version: 1
google_user_id: "s13Tq1N7711701GoYey29S07G4O"
timezone_offset: 540
mobile {
  app_id: "com.google.testapp"
  is_app: false
  is_mobile_web_optimized: true
  app_name: "Test App"
  app_rating: 4.0387864
}
video {
  video_ad_skippable: ALLOW_SKIPPABLE
  allowed_video_formats: VIDEO_MP4
  playback_method: INITIATE_ON_ENTERING_VIEWPORT_SOUND_OFF
  is_clickable: true
  placement: IN_ARTICLE
  protocols: VAST_2_0
  protocols: VAST_3_0
  playback_cessation_mode: LEAVING_OR_USER
  plcmt: PLCMT_NO_CONTENT_STANDALONE
  inferred_plcmt: PLCMT_NO_CONTENT_STANDALONE
}
cookie_age_seconds: 28512000
hosted_match_data: "\017\345\237\340\225\030\327\003\332\303-\t\267\244E\365*K\367"
geo_criteria_id: 9207704
publisher_type: PUBLISHER_OWNED_AND_OPERATED
device {
  device_type: HIGHEND_PHONE
  platform: "android"
  brand: "Samsung"
  model: "sm-n981n"
  os_version {
    major: 13
  }
  carrier_id: 0
  screen_width: 412
  screen_height: 915
  screen_pixel_ratio_millis: 2625
  screen_orientation: PORTRAIT
  limit_ad_tracking: false
}
publisher_country: "KR"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 350
google_query_id: "ANy-zPlGA9-Bn8zO1n4y6DiyW32gF8LE7901694954EJXoV4WF7nMGDL3Ao08pJ88w463SK6"
auction_type: FIRST_PRICE
geo {
  lat: 0.0
  lon: 0.0
  country: "KOR"
  region: "KR-29"
  city: "Gwangju"
  utcoffset: 540
  accuracy: 3889
}
user_agent_data {
  platform {
    brand: "Android"
    version: "13"
    version: "0"
  }
  mobile: true
  model: "SM-N981N"
  browsers {
    brand: "Chromium"
    version: "130"
    version: "0"
  }
  browsers {
    brand: "Android WebView"
    version: "130"
    version: "0"
  }
  source: CLIENT_HINTS_HIGH_ENTROPY
}
page_visibility: VISIBILITY_STATE_VISIBLE
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_BROWSER
privacy_treatments {
  allow_user_data_collection: false
}
inventory_partner_domain: "OMITTED"
navigation_type: NAVIGATION_TYPE_NAVIGATE