Muta los recursos

La API de Google Ads proporciona varias formas de mutar recursos según tu caso de uso:

  • Mutaciones del servicio de recursos: Cada recurso mutable tiene un servicio dedicado que ejecuta operaciones para ese tipo de recurso específico. Por ejemplo, el recurso Campaign usa el extremo CampaignService.MutateCampaigns para crear, actualizar o quitar campañas.
  • Mutaciones masivas: El extremo GoogleAdsService.Mutate une una secuencia de operaciones de mutación en varios tipos de recursos (y operaciones de acción admitidas, como reservar o cotizar campañas) en una sola solicitud síncrona.
  • Trabajos por lotes asíncronos: Para mutaciones a gran escala o cargas de trabajo de larga duración, BatchJobService ejecuta operaciones de forma asíncrona sin arriesgarse a que se agote el tiempo de espera de las solicitudes síncronas. A diferencia de GoogleAdsService.Mutate, BatchJobService siempre se ejecuta con la semántica de falla parcial y no admite el modo validate_only ni las operaciones de acción (book_campaigns_operation, quote_campaigns_operation). Debido a que la falla parcial siempre está activa, BatchJobService rechaza las operaciones de recursos cuyos servicios subyacentes no admiten la falla parcial (como CustomerOperation, CampaignConversionGoalOperation, ConversionGoalCampaignConfigOperation, CustomConversionGoalOperation y CustomerConversionGoalOperation) con MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE.

Beneficios de las mutaciones masivas

El uso de GoogleAdsService.Mutate proporciona los siguientes beneficios (consulta las prácticas recomendadas para Mutate para obtener orientación sobre la implementación):

  • Acciones agrupadas en diferentes servicios de recursos: Mientras que las llamadas individuales a servicios de recursos solo aceptan operaciones para un único tipo de recurso, GoogleAdsService.Mutate te permite mutar varios tipos de recursos en una sola llamada.
  • Nombres de recursos temporales: Puedes asignar IDs de números enteros negativos (como customers/CUSTOMER_ID/campaigns/-1) a las entidades principales recién creadas y hacer referencia a esos IDs temporales en las operaciones secundarias dentro de la misma solicitud.

Con estas funciones, puedes usar GoogleAdsService.Mutate para crear una jerarquía de campaña completa de forma atómica, de modo que todas las operaciones se realicen correctamente o fallen juntas, o bien establecer partial_failure en true para confirmar las operaciones válidas de forma independiente.