Cambia e inspecciona objetos

Como se explica en la Guía de estructura de API, cada recurso de nivel superior de la API de Google Ads tiene un servicio específico de tipo de recurso correspondiente que admite las siguientes funciones:

  • Modifica instancias del recurso
  • Recupera una sola instancia del recurso para su inspección

En esta guía, se usará CampaignService para demostrar la modificación e inspección de objetos Campaign, pero los mismos conceptos se aplican a todos los demás servicios específicos de tipos de recursos.

Cambiar objetos

Cada servicio específico de un tipo de recurso tendrá un método mutate que acepta una solicitud de mutación. Esta solicitud consta de los siguientes elementos:

  • A customerId
  • Un conjunto de operaciones
  • Una configuración de tipo de contenido de respuesta que determina si se debe mostrar el recurso mutable o solo el nombre del recurso después de la mutación.

Por ejemplo, el método MutateCampaigns de CampaignService acepta una MutateCampaignsRequest que consiste en lo siguiente:

  • A customerId
  • Una colección de objetos CampaignOperation
  • El campo response_content_type, que indica el tipo de respuesta preferido.

Operaciones

Un objeto de operación, como CampaignOperation, te permite especificar la acción que deseas realizar en un solo recurso mediante la configuración de su campo operation. Este es un campo one que consta de los siguientes atributos cuyo tipo es el tipo de recurso:

create
Crea una instancia nueva del recurso.
update
Actualiza el recurso para que coincida con los atributos del recurso update. Cuando se configura este campo, también debes configurar el update_mask de la operación, que le indica a la API de Google Ads qué atributos debe modificar durante la operación de actualización. Cada biblioteca cliente tiene una utilidad o un método auxiliar que generará update_mask por ti, como se muestra en nuestras bibliotecas cliente.
remove
Quita el recurso.

Dado que el campo operation es oneof, no puedes usar una sola operación para modificar varios objetos. Por ejemplo, si deseas crear una campaña y quitar otra, agrega dos instancias de CampaignOperation a tu solicitud: una con create establecido y otra con remove establecido.

Operaciones de lotes

Aunque una sola operación solo puede crear, actualizar o quitar un recurso único, una sola solicitud de mutación puede contener varias operaciones. Debes combinar tus operaciones en una sola solicitud de mutación en lugar de enviar varias solicitudes de mutación, cada una con una sola operación.

Por ejemplo, si deseas crear diez campañas, debes enviar un solo MutateCampaignsRequest que tenga diez objetos CampaignOperation.

Silenciar respuestas

Lo que se muestra en la respuesta depende de lo que se envió en el response_content_type de la solicitud de mutación. Por ejemplo, si se especificó MUTABLE_RESOURCE, la respuesta contendrá solo los campos mutables de la campaña. Luego, puedes realizar mutaciones de seguimiento en ese objeto de recurso sin tener que reconstruirlo.

Silenciar errores

Las operaciones de una solicitud de mutación específica solo se aplicarán a su cuenta de Google Ads si todas las operaciones de la solicitud se realizan correctamente. Consulta la guía de errores comunes para ver una lista de los errores más comunes y cómo solucionarlos.

Inspecciona objetos con get (obsoleto)

Además de cambiar objetos, cada servicio específico del tipo de recurso también cuenta con un método get para recuperar todos los atributos de un recurso single. Este método acepta una solicitud get cuyo único atributo es resource_name.

Los métodos get son una conveniencia que ofrece la API de Google Ads para facilitar la recuperación de todos los atributos de un solo objeto. Aunque esta es una herramienta excelente a fin de aprender la API o inspeccionar un objeto individual para fines de depuración o educación, tu app no debe usar métodos de recuperación a fin de recuperar objetos a fin de procesarlos o generar informes. En su lugar, usa GoogleAdsService, ya que te permite recuperar solo atributos específicos de objetos, admite la recuperación de métricas de rendimiento y permite la transmisión a través de conjuntos de resultados grandes. Si tu app envía una gran cantidad de solicitudes de obtención, es posible que se alcancen los límites de frecuencia.