En esta guía, se incluyen algunas prácticas recomendadas que puedes implementar para optimizar la eficiencia y el rendimiento de tus apps.
Mantenimiento de tu app
Para asegurarte de que tu app se ejecute sin interrupciones, haz lo siguiente:
Asegúrate de que la lista de propietarios y editores de tu proyecto de Google Cloud esté actualizada. Nos comunicaremos con estos usuarios en caso de emergencias o temas relacionados con el cumplimiento de los Términos y Condiciones de la API. Si no podemos comunicarnos contigo en relación con el cumplimiento de los Términos y Condiciones de las APIs, es posible que se reduzca o revoque tu acceso a las APIs.
Para mantenerte al tanto de los problemas, como los cambios en los productos, el tiempo de inactividad por mantenimiento y las fechas de baja, suscríbete a nuestro blog de la API y al blog de productos.
Mantén tu aplicación en cumplimiento con las Condiciones (CyC) de la API de Google Ads. Si es necesario, el equipo de cumplimiento de la API se comunicará con los propietarios y editores de tu proyecto de Google Cloud con acceso a la API. Si tienes preguntas o inquietudes sobre las C&C, puedes comunicarte con el equipo de cumplimiento respondiendo el correo electrónico que te envió cuando revisó tu solicitud de acceso a la API.
Optimización
Puedes optimizar tu app ejecutando operaciones por lotes y, si corresponde, enviando objetos dispersos.
Operaciones por lotes
Realizar una solicitud a la API implica una serie de costos fijos, como la latencia de red de ida y vuelta, el procesamiento de serialización y deserialización, y las llamadas a los sistemas de backend. Para reducir el impacto de estos costos fijos y aumentar el rendimiento general, la mayoría de los métodos de mutación de la API están diseñados para aceptar un array de operaciones. Si agrupas varias operaciones en cada solicitud, puedes reducir la cantidad de solicitudes que realizas y los costos fijos asociados. Si es posible, evita realizar solicitudes con una sola operación.
Por ejemplo, supongamos que agregas 50,000 palabras clave a una campaña en varios grupos de anuncios. En lugar de realizar 50,000 solicitudes con 1 palabra clave cada una, realiza 100 solicitudes con 500 palabras clave cada una o, incluso, 10 solicitudes con 5,000 palabras clave cada una. Existen límites en la cantidad de operaciones permitidas en una solicitud, por lo que es posible que debas ajustar el tamaño del lote para lograr un rendimiento óptimo.
Envía objetos dispersos
Cuando se envían objetos a la API, los campos deben deserializarse, validarse y almacenarse en la base de datos. Si pasas objetos completos cuando solo deseas actualizar algunos campos, se puede generar un tiempo de procesamiento adicional y un rendimiento reducido. Para mitigar este problema, la API de Google Ads admite actualizaciones dispersas, lo que te permite completar solo los campos de un objeto que necesitas cambiar o que son obligatorios.
Las actualizaciones dispersas se procesan más rápido y es menos probable que produzcan errores. Los campos que no están en update_mask (también conocido como FieldMask) no se modifican.
Por ejemplo, una app que actualiza las ofertas a nivel de la palabra clave puede beneficiarse del uso de actualizaciones dispersas, ya que solo se deberían completar los campos de ID del grupo de anuncios, ID del criterio y ofertas.
Manejo y administración de errores
Durante el desarrollo, es probable que encuentres errores. En esta sección, se describen las consideraciones y estrategias para incorporar la administración de errores en tu app. Además de esta sección, consulta la Guía de solución de problemas para obtener más información sobre la administración de errores.
Distingue las fuentes de solicitudes
Algunas apps son principalmente interactivas y emiten llamadas a la API directamente en respuesta a las acciones iniciadas por el usuario en una IU. Otros funcionan principalmente sin conexión y emiten llamadas a la API como parte de un proceso de backend periódico. Muchas apps combinan ambos enfoques. Cuando se piensa en la administración de errores, puede ser útil distinguir estos diferentes tipos de solicitudes.
En el caso de las solicitudes iniciadas por el usuario, tu principal preocupación debe ser brindar una buena experiencia a los usuarios. Usa el error específico que se produjo para proporcionar al usuario la mayor cantidad de contexto posible en la IU. Ofrece pasos claros que puedan seguir para resolver el error (consulta las siguientes sugerencias).
Para las solicitudes iniciadas en el backend, implementa controladores para los diferentes tipos de errores que puede encontrar tu app. Siempre incluye un controlador predeterminado para abordar errores poco comunes o que no se hayan encontrado antes. Un buen enfoque para un controlador predeterminado es agregar la operación fallida y el error a una cola para que un operador humano los revise y determine una resolución adecuada.
Distingue los tipos de errores
Conocer las diferencias entre los tipos de errores en la API de Google Ads es fundamental para crear un manejo de errores sólido. Estos son algunos de los tipos de errores más comunes:
- Errores de autenticación
- Errores que se pueden volver a intentar
- Errores de validación
- Errores relacionados con la sincronización
Consulta Tipos de errores y Errores comunes para obtener más detalles.
Back-ends de sincronización
Si los usuarios de tu app tienen acceso manual a las cuentas de Google Ads, es posible que realicen cambios que tu app no detecte, lo que provocará que la base de datos local de tu app deje de estar sincronizada. Como se indica en nuestra guía sobre tipos de errores, puedes abordar los errores relacionados con la sincronización de forma reactiva cuando ocurren, pero también puedes intentar prevenirlos de forma proactiva. Una estrategia proactiva consiste en ejecutar un trabajo de sincronización periódico para conciliar tu base de datos local con los objetos de Google Ads en tus cuentas. En el caso de las jerarquías de cuentas grandes, evita extraer todos los objetos de cada cuenta todas las noches para no agotar las cuotas diarias. En cambio, consulta ChangeStatus o filtra las entidades modificadas recientemente para sincronizar los cambios de forma incremental.
Errores de registro
Todos los errores se deben registrar para facilitar la depuración y la supervisión. Como mínimo, registra el ID de la solicitud, las operaciones que causaron el error y el error en sí. Otra información que se debe registrar incluye el ID del cliente, el servicio de API, la latencia de la solicitud de ida y vuelta, la cantidad de reintentos y la solicitud y respuesta sin procesar saneadas (asegúrate de ocultar las credenciales sensibles, como los tokens de OAuth, los tokens de desarrollador si aún se incluyen en los encabezados de solicitudes heredadas y cualquier PII).
Supervisa las tendencias
Asegúrate de supervisar las tendencias en los errores de la API para que puedas detectar y abordar los problemas de tu app. Considera crear tu propia solución o emplear una de las muchas herramientas comerciales disponibles que pueden usar tus registros para generar paneles interactivos y enviar alertas automatizadas.
Desarrollo
Usa cuentas de prueba durante el desarrollo.
Usa cuentas de prueba.
Las cuentas de prueba son cuentas de Google Ads que no publican anuncios. Puedes usar una cuenta de prueba para experimentar con la API de Google Ads y verificar que la conectividad, la lógica de administración de campañas o cualquier otro procesamiento de tu aplicación funcionen según lo previsto. Tu proyecto de Google Cloud solo necesita acceso de prueba para usarse en una cuenta de prueba, por lo que puedes comenzar a desarrollar con la API de Google Ads de inmediato mientras esperas a que Google revise tu aplicación para obtener niveles de acceso a la API más altos.