GoogleAdsService là dịch vụ báo cáo và truy xuất đối tượng hợp nhất của Google Ads API. Dịch vụ này có các phương thức:
- Truy xuất các thuộc tính cụ thể của đối tượng.
- Truy xuất các chỉ số hiệu suất cho các đối tượng dựa trên một phạm vi ngày.
- Sắp xếp các đối tượng dựa trên thuộc tính của chúng.
- Sử dụng các điều kiện để cho biết những đối tượng bạn muốn được trả về trong phản hồi.
- Giới hạn số lượng đối tượng được trả về.
GoogleAdsService có thể trả về kết quả theo hai cách:
GoogleAdsService.SearchStreamtrả về tất cả các hàng trong một phản hồi truyền phát trực tiếp duy nhất, hiệu quả hơn đối với các tập kết quả lớn (lớn hơn 10.000 hàng). Bạn nên dùng cách này nếu ứng dụng của bạn tải toàn bộ tập kết quả xuống hoặc xử lý các hàng dưới dạng một luồng.GoogleAdsService.Searchchia các câu trả lời dài thành các trang kết quả dễ quản lý. Điều này sẽ hữu ích nếu ứng dụng tương tác của bạn hiển thị một trang kết quả tại một thời điểm.
Tìm hiểu thêm về phân trang so với truyền trực tuyến.
Tạo yêu cầu
GoogleAdsService.SearchStream dự kiến có SearchGoogleAdsStreamRequest và GoogleAdsService.Search dự kiến có SearchGoogleAdsRequest. Cả hai loại yêu cầu đều bao gồm:
customer_id- Một Ngôn ngữ truy vấn Google Ads
querycho biết tài nguyên cần truy vấn, các thuộc tính, phân đoạn và chỉ số cần truy xuất, cũng như các điều kiện cần sử dụng để hạn chế những đối tượng được trả về
Tuỳ thuộc vào phương thức, yêu cầu cũng hỗ trợ các trường dành riêng cho phương thức:
SearchGoogleAdsStreamRequest(chỉSearchStream):summary_row_settingkhông bắt buộc để yêu cầu một hàng tóm tắt chứa các chỉ số tổng hợp
SearchGoogleAdsRequest(chỉSearch):page_tokenkhông bắt buộc để truy xuất lô kết quả tiếp theo khi sử dụng phân trang (page_sizeđược cố định ở 10.000 hàng; việc đặtpage_sizetrong yêu cầu sẽ gây ra lỗiRequestError.PAGE_SIZE_NOT_SUPPORTED)- Thông báo
search_settingskhông bắt buộc để định cấu hìnhreturn_summary_row,return_total_results_countvàomit_results - Một giá trị boolean
validate_onlykhông bắt buộc để xác thực truy vấn mà không cần thực thi truy vấn đó
Để biết thêm thông tin về Ngôn ngữ truy vấn Google Ads, hãy xem hướng dẫn về Ngôn ngữ truy vấn Google Ads.
Xử lý câu trả lời
GoogleAdsService trả về một danh sách các đối tượng GoogleAdsRow (trong các lô SearchGoogleAdsStreamResponse được truyền trực tuyến hoặc trong SearchGoogleAdsResponse được phân trang).
Mỗi GoogleAdsRow đại diện cho một đối tượng do truy vấn trả về và bao gồm một tập hợp các thuộc tính được điền sẵn dựa trên các trường được yêu cầu trong mệnh đề SELECT. Các thuộc tính không có trong mệnh đề SELECT sẽ không được điền sẵn trên các đối tượng GoogleAdsRow trong phản hồi.
Ví dụ: mặc dù ad_group_criterion có thuộc tính status, nhưng trường status của thuộc tính ad_group_criterion trong hàng không được điền sẵn trong phản hồi cho một truy vấn mà mệnh đề SELECT không bao gồm ad_group_criterion.status. Tương tự, thuộc tính campaign của hàng sẽ không được điền sẵn nếu mệnh đề SELECT không bao gồm bất kỳ trường nào trong tài nguyên campaign.
Mỗi GoogleAdsRow có thể có các thuộc tính và chỉ số khác với một hàng khác trong cùng một tập kết quả; do đó, bạn nên xem các hàng dưới dạng đối tượng thay vì các hàng cố định của một bảng.
Các loại enum UNKNOWN và UNSPECIFIED
Những tài nguyên được trả về với giá trị enum là UNKNOWN không được hỗ trợ đầy đủ trong phiên bản API đó, trong khi UNSPECIFIED cho biết một trường enum chưa được đặt hoặc không được yêu cầu trong mệnh đề SELECT. Các tài nguyên có giá trị enum UNKNOWN có thể đã được tạo thông qua các giao diện khác, chẳng hạn như giao diện người dùng Google Ads. Bạn có thể chọn các chỉ số khi một tài nguyên có loại UNKNOWN, nhưng bạn không thể thay đổi tài nguyên thông qua API. Ví dụ: một chiến dịch hoặc loại quảng cáo có trong giao diện người dùng nhưng không được hỗ trợ trong phiên bản API mà bạn đang truy vấn.
Sau đây là một số điều cần lưu ý:
- Một tài nguyên có loại
UNKNOWNcó thể được hỗ trợ trong phiên bản API sau này hoặc vẫn làUNKNOWNvô thời hạn. - Các đối tượng mới có loại
UNKNOWNcó thể xuất hiện bất cứ lúc nào. Các đối tượng này tương thích ngược vì giá trị enumUNKNOWNcó trên mọi enum trong API. Các tài nguyên được trả về bằngUNKNOWNđể bạn có thể xem chính xác các chỉ số hiệu suất tổng thể của tài khoản. - Bạn có thể đính kèm các chỉ số chi tiết có thể truy vấn vào
UNKNOWNtài nguyên. UNKNOWNthường hiển thị đầy đủ trong giao diện người dùng Google Ads.- Thông thường, bạn không thể thay đổi tài nguyên
UNKNOWNthông qua API.
Phân đoạn
Phản hồi chứa một GoogleAdsRow cho mỗi tổ hợp sau:
- Phiên bản của tài nguyên chính được chỉ định trong mệnh đề
FROM - Giá trị của từng trường
segmentsđược chọn
Ví dụ: phản hồi cho một truy vấn chọn FROM campaign và có segments.ad_network_type và segments.date trong mệnh đề SELECT chứa một hàng cho mỗi tổ hợp sau đây:
campaignsegments.ad_network_typesegments.date
Kết quả được phân đoạn ngầm theo từng phiên bản của tài nguyên chính, chứ không phải theo giá trị của các trường riêng lẻ được chọn. Ví dụ:
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
kết quả là một hàng cho mỗi chiến dịch, chứ không phải một hàng cho mỗi giá trị riêng biệt của trường campaign.status.