บันทึกประจำรุ่น

หน้านี้มีบันทึกประจำรุ่นสำหรับ Google Bid Manager API

เวอร์ชัน 2

ทำการเปลี่ยนแปลงเชิงโครงสร้างกับ API รวมถึงอัปเดตปลายทางของบริการและเปลี่ยนชื่อบริการและเมธอดต่างๆ

ทรัพยากรของคำค้นหาและรายงานที่อัปเดตอย่างมากด้วยการนำช่องที่ไม่จำเป็นออก จัดระเบียบช่องที่มีอยู่ใหม่ และเปลี่ยนประเภทช่อง ซึ่งรวมถึงการเปลี่ยนประเภทช่องเพื่อใช้ออบเจ็กต์ที่มีชื่อแทนคำจำกัดความทั่วไปของ "ออบเจ็กต์ที่ซ้อนกัน"

ต้องเรียกใช้การค้นหาเฉพาะกิจโดยใช้เมธอด queries.run แทนที่จะให้การค้นหาทำงานโดยอัตโนมัติหลังจากสร้าง

แทนที่พารามิเตอร์การค้นหา queries.run asynchronous ด้วย synchronous

การเรียกดูรายงานอย่างง่ายผ่านการเปลี่ยนแปลงต่อไปนี้:

  • การเพิ่มเมธอด queries.reports.get
  • การเพิ่มพารามิเตอร์การค้นหา orderBy ลงใน queries.reports.list
  • การอัปเดตเนื้อหาการตอบสนอง queries.run จากออบเจ็กต์ว่างเป็นอินสแตนซ์ของทรัพยากร Report ที่สร้างขึ้น

อัปเดตข้อความแสดงข้อผิดพลาดจาก API ให้เจาะจงมากขึ้นและช่วยแก้ปัญหาตามแพทย์สั่ง

ทำตามวิธีการที่แสดงในคู่มือการย้ายข้อมูล v2 เพื่อย้ายข้อมูลจาก v1.1 ไปยัง v2

ฟีเจอร์ใหม่

ปัญหาที่ทราบ

ไม่มี

เวอร์ชัน 1.1

ตัวกรองแบบหนึ่งต่อหนึ่งสำหรับรายงานการแมปคอลัมน์

ตอนนี้ตัวกรองที่แมปกับคอลัมน์รายงานหลายคอลัมน์จะแมปกับคอลัมน์เดียวแล้ว

เช่น ใน v1 การรวมตัวกรอง FILTER_ADVERTISER จะทำให้ได้รายงานที่มีคอลัมน์ "ผู้ลงโฆษณา" เพิ่มเติมจาก "รหัสผู้ลงโฆษณา" ใน V1.1 คอลัมน์รายงานทั้งหมด มีตัวกรองของตัวเอง เช่น ตัวกรองใหม่ FILTER_ADVERTISER_NAME จะจับคู่กับ "ผู้ลงโฆษณา" หากต้องการให้ทั้งคอลัมน์ "รหัสผู้ลงโฆษณา" และ "ผู้ลงโฆษณา" ในรายงาน ทั้งตัวกรอง FILTER_ADVERTISER และ FILTER_ADVERTISER_NAME จะต้องรวมอยู่ในคำขอ Queries.createquery ตามลำดับ

กล่าวให้ชัดเจนยิ่งขึ้นคือ คำขอ createquery มีลักษณะดังนี้

{
...
"params": {
  ...
  "groupBys": ["FILTER_ADVERTISER"],
  "metrics": ["METRIC_IMPRESSIONS"],
  ...
}
...
}

สร้างไฟล์รายงานที่มีส่วนหัวต่อไปนี้ใน v1:

Advertiser,Advertiser ID,Advertiser Status,Advertiser Integration Code,Impressions

และส่วนหัวต่อไปนี้ใน v1.1:

Advertiser,Impressions

โค้ด v1 ต่อไปนี้ใช้เพื่อรับคอลัมน์รายงานในตัวอย่างข้างต้น

List<String> groupBys = new ArrayList<>();
groupBys.add("FILTER_ADVERTISER");
List<String> metrics = new ArrayList<>();
metrics.add("METRIC_IMPRESSIONS");
com.google.api.services.doubleclickbidmanager.model.Parameters createQueryParameters =
    new com.google.api.services.doubleclickbidmanager.model.Parameters()
        .setGroupBys(groupBys)
        .setMetrics(metrics);

จะต้องถูกแก้ไขให้คล้ายกับตัวอย่างต่อไปนี้ใน v1.1 (ลำดับตัวกรองหมายเหตุ)

List<String> groupBys = new ArrayList<>();
groupBys.add("FILTER_ADVERTISER_NAME");
groupBys.add("FILTER_ADVERTISER");
groupBys.add("FILTER_ADVERTISER_INTEGRATION_STATUS");
groupBys.add("FILTER_ADVERTISER_INTEGRATION_CODE");
List<String> metrics = new ArrayList<>();
metrics.add("METRIC_IMPRESSIONS");
com.google.api.services.doubleclickbidmanager.model.Parameters createQueryParameters =
    new com.google.api.services.doubleclickbidmanager.model.Parameters()
        .setGroupBys(groupBys)
        .setMetrics(metrics);
ฟิลเตอร์เดิม เพิ่มตัวกรองแล้ว
FILTER_ADVERTISER FILTER_ADVERTISER_NAME
FILTER_ADVERTISER_INTEGRATION_CODE
FILTER_ADVERTISER_INTEGRATION_STATUS
FILTER_AD_POSITION FILTER_AD_POSITION_NAME
FILTER_CARRIER FILTER_CARRIER_NAME
FILTER_CHANNEL_ID FILTER_CHANNEL_NAME
FILTER_CITY FILTER_CITY_NAME
FILTER_COMPANION_CREATIVE_ID FILTER_COMPANION_CREATIVE_NAME
FILTER_DMA FILTER_DMA_NAME
FILTER_INSERTION_ORDER FILTER_INSERTION_ORDER_NAME
FILTER_PARTNER FILTER_PARTNER_NAME
FILTER_PARTNER_STATUS
FILTER_REGION FILTER_REGION_NAME
FILTER_TRUEVIEW_DMA FILTER_TRUEVIEW_DMA_NAME
FILTER_TRUEVIEW_IAR_REGION FILTER_TRUEVIEW_IAR_REGION_NAME
FILTER_USER_LIST_FIRST_PARTY FILTER_USER_LIST_FIRST_PARTY_NAME
FILTER_USER_LIST_THIRD_PARTY FILTER_USER_LIST_THIRD_PARTY_NAME

การใส่เลขหน้า

v1.1 เพิ่มการใส่เลขหน้าให้กับเมธอด Queries.listqueries และ Reports.listreports

ใน v1.1 จำนวนผลลัพธ์ที่วิธีเหล่านี้แสดงผลจะเท่ากับพารามิเตอร์ที่เพิ่มใหม่ pageSize (ค่าเริ่มต้นจะเป็น 100 หากไม่ได้ระบุไว้) คำตอบจะมีช่อง nextPageToken ที่เพิ่มเข้ามาใหม่ซึ่งใช้เพื่อเรียกข้อมูลผลลัพธ์ชุดถัดไปได้ ช่องนี้จะว่างเปล่า หากผลลัพธ์นั้นหมดแล้ว

โค้ด v1 ต่อไปนี้เพื่อดึงรายงานทั้งหมดที่เป็นของข้อความค้นหาหนึ่งๆ

public class GetReports {
  public List<Report> getReports(DoubleClickBidManager service, long queryId) throws IOException {
    ListReportsResponse reportListResponse = service.reports().listreports(queryId).execute();

    return reportListResponse.getReports();
  }
}

จะต้องได้รับการแก้ไขให้เหมือนกับเวอร์ชัน 1.1 ต่อไปนี้ เพื่อ เรียกข้อมูลรายงานทั้งหมดต่อไป

public class GetReports {
  public List<Report> getReports(DoubleClickBidManager service, long queryId) throws IOException {
    ListReportsResponse reportListResponse = service.reports().listreports(queryId).execute();

    List<Report> reports = new ArrayList<>(reportListResponse.getReports());
    while (reportListResponse.getNextPageToken() != null
        && reportListResponse.getNextPageToken().length() > 0) {
      // Get next set of results, aka page.
      reportListResponse =
          service
              .reports()
              .listreports(queryId)
              .setPageToken(reportListResponse.getNextPageToken())
              .execute();
      reports.addAll(reportListResponse.getReports());
    }

    return reports;
  }
}

โปรดดูรายละเอียดเพิ่มเติมในเอกสารประกอบเกี่ยวกับเมธอด Queries.listqueries และ Reports.listreports

ปัญหาที่ทราบ

ไม่มี

เวอร์ชัน 1

นี่คือ API เวอร์ชันเริ่มต้นของ

ปัญหาที่ทราบ

ไม่มี