Thay đổi và kiểm tra đối tượng

Như đã thảo luận trong hướng dẫn về cấu trúc API, mỗi tài nguyên cấp cao nhất trong API Google Ads có một dịch vụ tương ứng dành riêng cho từng loại tài nguyên hỗ trợ:

  • Sửa đổi các bản sao của tài nguyên
  • Truy xuất một thực thể duy nhất của tài nguyên để kiểm tra

Hướng dẫn này sẽ sử dụng CampaignService để minh hoạ việc sửa đổi và kiểm tra các đối tượng Campaign, nhưng các khái niệm tương tự cũng áp dụng cho tất cả các dịch vụ khác dành riêng cho từng loại tài nguyên.

Thay đổi đối tượng

Mỗi dịch vụ dành riêng cho từng loại tài nguyên sẽ có một phương thức mutate chấp nhận yêu cầu thay đổi. Yêu cầu này bao gồm:

  • Một customerId
  • Tập hợp các phép toán
  • Chế độ cài đặt loại nội dung phản hồi xác định xem tài nguyên có thể thay đổi hay chỉ tên tài nguyên được trả về sau khi biến đổi.

Ví dụ: phương thức MutateCampaigns của CampaignService chấp nhận một MutateCampaignsRequest bao gồm:

  • Một customerId
  • Một tập hợp các đối tượng CampaignOperation
  • Trường response_content_type cho biết loại phản hồi ưu tiên.

Hoạt động tính toán

Đối tượng hoạt động như CampaignOperation cho phép bạn chỉ định hành động mà bạn muốn thực hiện trên một tài nguyên đơn lẻ bằng cách đặt trường operation của tài nguyên đó. Trường này là trường một trong số bao gồm các thuộc tính sau đây, trong đó có kiểu là tài nguyên:

create
Tạo một thực thể mới của tài nguyên.
update
Cập nhật tài nguyên để khớp với các thuộc tính của tài nguyên update. Khi đặt trường này, bạn cũng phải đặt update_mask của thao tác. Thao tác này sẽ cho API Google Ads biết cần sửa đổi thuộc tính nào trong thao tác cập nhật. Mỗi thư viện ứng dụng có một tiện ích hoặc phương thức trợ giúp để tạo update_mask cho bạn, như được minh hoạ trong thư viện ứng dụng của chúng tôi.
remove
Xoá tài nguyên.

Vì trường operation là trường oneof, nên bạn không thể sử dụng một thao tác duy nhất để sửa đổi nhiều đối tượng. Ví dụ: nếu bạn muốn tạo một chiến dịch và xóa một chiến dịch khác, hãy thêm hai phiên bản của CampaignOperation vào yêu cầu của bạn: một phiên bản có create được đặt và phiên bản còn lại có remove được đặt.

Thao tác theo lô

Mặc dù một thao tác đơn lẻ chỉ có thể tạo, cập nhật hoặc xoá một tài nguyên, nhưng một yêu cầu thay đổi duy nhất có thể chứa nhiều thao tác. Bạn nên kết hợp các hoạt động của mình thành một yêu cầu thay đổi duy nhất thay vì gửi nhiều yêu cầu thay đổi mà mỗi yêu cầu chứa một thao tác duy nhất.

Ví dụ: nếu muốn tạo 10 chiến dịch, bạn nên gửi một MutateCampaignsRequest duy nhất có 10 đối tượng CampaignOperation.

Thay đổi phản hồi

Nội dung được trả về trong phản hồi tuỳ thuộc vào nội dung được gửi trong response_content_type của yêu cầu thay đổi. Ví dụ: nếu bạn chỉ định MUTABLE_RESOURCE, thì phản hồi sẽ chỉ chứa các trường có thể thay đổi trong chiến dịch. Sau đó, bạn có thể thực hiện các thay đổi tiếp theo trên đối tượng tài nguyên đó mà không cần phải tạo lại.

Lỗi thay đổi

Các thao tác trong một yêu cầu thay đổi nhất định sẽ chỉ được áp dụng cho tài khoản Google Ads của bạn nếu mọi thao tác trong yêu cầu đều thành công. Hãy xem hướng dẫn về các lỗi thường gặp để biết danh sách lỗi phổ biến và cách giải quyết.

Kiểm tra đối tượng bằng get (Không dùng nữa)

Ngoài việc thay đổi đối tượng, mỗi dịch vụ dành riêng cho từng kiểu tài nguyên còn có một phương thức get để truy xuất tất cả thuộc tính của một tài nguyên duy nhất. Phương thức này chấp nhận yêu cầu get có thuộc tính duy nhất là resource_name.

Phương thức get là một tiện ích do API Google Ads cung cấp để giúp bạn dễ dàng truy xuất tất cả thuộc tính của một đối tượng duy nhất. Mặc dù đây là một công cụ hữu hiệu để tìm hiểu API hoặc kiểm tra từng đối tượng nhằm mục đích gỡ lỗi hoặc giáo dục, nhưng bạn không nên dùng phương thức get để truy xuất các đối tượng nhằm xử lý hoặc báo cáo. Thay vào đó, hãy sử dụng GoogleAdsService, vì phương thức này chỉ cho phép bạn truy xuất các thuộc tính cụ thể của đối tượng, hỗ trợ truy xuất các chỉ số hiệu suất và cho phép truyền trực tuyến thông qua các tập hợp kết quả lớn. Nếu ứng dụng của bạn gửi một số lượng lớn yêu cầu nhận, thì bạn có thể gặp phải giới hạn số lượng yêu cầu.