Массовые мутации

Если вам нужно работать с разными типами объектов одновременно или вы предпочитаете писать с использованием одной конечной точки, а не использовать отдельную конечную точку для каждого типа ресурса, вы можете использовать конечную точку GoogleAdsService.Mutate для всех поддерживаемых операций изменения.

Мутационные операции

Каждый MutateGoogleAdsRequest принимает повторяющуюся MutateOperation , каждая из которых может включать одну операцию для одного типа ресурса. Чтобы создать одну кампанию и одну группу объявлений за один вызов GoogleAdsService.Mutate , вам потребуется создать две сущности MutateOperation (одну для CampaignOperation , другую для AdGroupOperation ), а затем передать обе в GoogleAdsService .

Рубин

mutate_operation1 = client.operation(:Mutate)
mutate_operation2 = client.operation(:Mutate)

campaign_operation = client.operation(:Campaign)
ad_group_operation = client.operation(:AdGroup)

# Do some setup here to get campaign_operation and ad_group_operation into the
# state you would want them for a regular mutate call to their respective
# services.

mutate_operation1.campaign_operation = campaign_operation
mutate_operation2.ad_group_operation = ad_group_operation

google_ads_service.mutate(customer_id, [mutate_operation1, mutate_operation2])

Как и другие службы, эта конечная точка поддерживает частичный сбой и только проверку.