Google Ads API cung cấp nhiều công cụ mạnh mẽ để bạn quản lý và tối ưu hóa chiến dịch quảng cáo. Một trong những thao tác quan trọng trong Google Ads là cách xử lý các thay đổi đối với thực thể trong chiến dịch. Khi bạn cần thực hiện nhiều thay đổi cùng lúc, việc sử dụng yêu cầu thay đổi duy nhất sẽ giúp giảm độ phức tạp và đảm bảo các thực thể phụ thuộc không gặp sự cố. Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo và gửi yêu cầu thay đổi thực thể bằng Google Ads API, bao gồm cách sắp xếp các thao tác để tránh lỗi và tối ưu hóa quy trình làm việc.
Hiện tại, chúng ta đã nắm được cách thực hiện các thao tác thay đổi đối với từng thực thể riêng lẻ nhằm thiết lập một chiến dịch thông minh mới. Chúng ta có thể tối ưu hóa quy trình bằng cách kết hợp tất cả các thao tác này thành một yêu cầu thay đổi duy nhất, giúp xử lý nhiều tệp cùng lúc một cách hiệu quả.
Việc sử dụng một yêu cầu thay đổi duy nhất mang lại những lợi ích quan trọng sau:
- Giảm thiểu độ phức tạp vì các thực thể trong chiến dịch không chia sẻ dữ liệu chung và có sự phụ thuộc lẫn nhau rất cao.
- Tránh tình trạng các thực thể bị mất hoặc không thể khôi phục nếu bất kỳ thao tác nào gặp lỗi trong quá trình thực hiện.
Lưu ý: Khi sử dụng tên tài nguyên tạm thời để tạo các thực thể trong một yêu cầu thay đổi, bạn cần sắp xếp các thao tác một cách hợp lý để các thực thể phụ thuộc được tạo ra trước, đảm bảo tính toàn vẹn của dữ liệu.
/**
* Gửi yêu cầu thay đổi với nhóm các thao tác thay đổi.
*
* {@link GoogleAdsServiceClient} cho phép gom nhóm nhiều thao tác thay đổi lại cùng lúc.
* Những thao tác này sẽ được thực hiện tuần tự, các thao tác sau có thể tham chiếu đến thao tác trước
* thông qua ID tạm thời. Để biết thêm chi tiết, vui lòng xem tại:
* https://developers.google.com/google-ads/api/docs/batch-processing/temporary-ids.
*/
private void sendMutateRequest(
GoogleAdsClient googleAdsClient, long customerId, List<MutateOperation> operations) {try (GoogleAdsServiceClient client =googleAdsClient.getLatestVersion().createGoogleAdsServiceClient()) {
// Gửi yêu cầu thay đổi với danh sách các thao tácMutateGoogleAdsResponse outerResponse = client.mutate(String.valueOf(customerId), operations);
// Xử lý phản hồi từ Google Ads API cho từng thao tác thay đổi
for (MutateOperationResponse innerResponse : outerResponse.getMutateOperationResponsesList()) {
// Lấy thông tin về thực thể mới được tạo ra thông qua ID tạm thời
OneofDescriptor oneofDescriptor =
innerResponse.getDescriptorForType().getOneofs().stream()
.filter(o -> o.getName().equals(“response”))
.findFirst()
.get();
// Tạo thực thể mới dựa trên thao tác thay đổi
Message createdEntity =
(Message) innerResponse.getField(innerResponse.getOneofFieldDescriptor(oneofDescriptor));
// Lấy tên tài nguyên (resource name) của thực thể mới được tạo
String resourceName =
(String) createdEntity.getField(
createdEntity.getDescriptorForType().findFieldByName(“resource_name”));
// Hiển thị tên tài nguyên của thực thể mới được tạo
System.out.printf(
“Đã tạo một thực thể %s với tên tài nguyên: ‘%s’.%n”,
createdEntity.getClass().getSimpleName(), resourceName);
}
}
}
Sử dụng Google Ads API để thực hiện các thao tác thay đổi thực thể là một phương pháp hiệu quả để giảm thiểu lỗi và tối ưu hóa quy trình làm việc. Việc tạo và gửi yêu cầu thay đổi duy nhất không chỉ giúp giảm độ phức tạp mà còn đảm bảo rằng các thực thể phụ thuộc được xử lý đúng cách. Hy vọng qua bài viết này, bạn đã nắm được cách tối ưu hóa việc sử dụng Google Ads API để quản lý chiến dịch quảng cáo một cách hiệu quả và thành công.
