Рекомендации

В этом документе содержатся рекомендации по лучшим практикам. Для получения дополнительной информации см. Советы по производительности .

Когда использовать API

Для отправки запросов программным способом

Независимо от того, предпочитаете ли вы автоматизировать каждую часть своего рабочего процесса или создать связь с вашей системой ERP (планирование ресурсов предприятия), API контента позволяет вам отправлять обновления сразу же по мере изменения ваших запасов.

Чтобы получить немедленную обратную связь

В Content API вы получаете ответ на каждый запрос мгновенно, а не через сводку по электронной почте после обработки каналов данных. Ожидается задержка в пять-десять секунд для больших пакетных запросов.

Часто менять данные о продукте

С помощью Content API вы можете вносить пошаговые обновления в ваш быстро меняющийся инвентарь продуктов много раз в день, тогда как отправлять весь ваш поток данных каждый раз нецелесообразно. Если обновления становятся доступны по отдельности, отправляйте их по отдельности, не ждите, пока появится несколько обновлений, чтобы вы могли объединить их. Аналогично, если обновления доступны в пакетах, отправляйте их пакетами, не разбивайте их на отдельные запросы.

Для управления несколькими субсчетами

Недавно созданные учетные записи Merchant Center представляют собой отдельные учетные записи, содержащие собственный набор данных о продуктах. В большинстве случаев это работает хорошо, но по мере роста вашей учетной записи вы можете обнаружить, что вам нужна более сложная система управления для ваших продуктов. Если это ваш случай, рассмотрите возможность использования многопользовательской учетной записи или MCA. Управление учетной записью MCA на уровне API может осуществляться через службу Accounts и позволяет программно добавлять и управлять субсчетами. Более подробную информацию о том, как получить учетную запись MCA, можно найти здесь .

Как использовать API

Не используйте API так, как вы бы использовали каналы данных.

Избегайте ежедневных обновлений всего фида продуктов при использовании ресурса products . Вместо этого специально обновляйте только те продукты, данные о которых действительно изменились. Отправка всего фида данных через ресурс products потребляет больше времени и ресурсов как для Google, так и для вас.

Не используйте API для регулярного получения загруженной вами информации о продукте.

Если вы отвечаете за поддержание информации о продукте в определенной учетной записи Merchant Center, избегайте регулярного запроса информации о продукте из Content API с помощью методов products.get или products.list . Для клиентов, которые загружают информацию, эти методы могут помочь вам отладить проблемы при разработке решений, использующих Content API. Однако они не предназначены для регулярного извлечения информации о продукте такими клиентами. У вас должен быть другой источник информации о продукте, например локальная база данных продуктов, и продукты в Merchant Center должны отражать содержимое этого источника.

Не используйте одновременно каналы данных и API контента для отправки информации о продуктах.

Если вы рассматриваете возможность перехода на API для отправки товаров, убедитесь, что вы больше не используете каналы данных для отправки товаров. Если вы продолжите отправлять товары на обоих носителях, могут возникнуть неожиданные результаты.

Есть ли способ безопасно использовать API и каналы данных одновременно?

Вы можете управлять своими каналами данных с помощью API Datafeed Service. Хотя это значительно упростит управление каналами данных в масштабе, помните, что не следует вставлять или обновлять продукты с помощью API одновременно с каналами, поскольку могут возникнуть непредвиденные результаты.

Вот еще несколько примеров приемлемых способов совместного использования каналов и API:

  • Выполнение запросов только для чтения (get или list) из API: некоторые торговцы хотят использовать API для получения информации и обновлений статуса своих продуктов. Это приемлемо, поскольку информация о продуктах обновляется только через фиды.

  • Использование API для управления вашими субсчетами ( Accounts Service ) и/или настройками налогов и доставки на уровне счета ( Accounttax Service и Shippingsettings Service ). Это не те функции, которые Datafeeds может предоставить, поэтому нет конфликта с использованием API для управления этими функциями.

Как перейти от использования каналов данных к использованию только API или наоборот?

Если вы в настоящее время используете каналы данных и хотите перейти только на использование API для обновления продуктов, вам необходимо повторно загрузить данные о продуктах с помощью API. Когда вы используете службу продуктов для обновления определенного продукта, API берет на себя управление информацией о продукте, и удаление продукта из канала данных или удаление самого канала данных больше не приведет к удалению информации о продукте из вашей учетной записи Merchant Center. Убедитесь, что нет обновлений канала данных, если вы хотите удалить продукт из канала данных или сам канал данных, в противном случае канал данных снова станет владельцем, и удаление продукта из канала данных приведет к удалению продукта.

Если вы в настоящее время используете только API для информации о продуктах и ​​хотите использовать каналы данных в качестве основного источника информации о продуктах, то вы можете просто добавить новый канал данных в свою учетную запись Merchant Center, и они станут владельцами своих перечисленных продуктов. Если есть продукты, которые вы хотите удалить до истечения срока их действия, которые были загружены исключительно из API, вы должны удалить их либо через Merchant Center, либо через API.

Как настроить таргетинг продуктов на несколько стран с помощью Content API for Shopping?

Чтобы охватить несколько стран рекламой и бесплатными листингами товаров, отправленных через Content API, настройте дополнительные страны в основном фиде Content API в Merchant Center или добавьте эти дополнительные страны через поле shipping в ресурсе products .

Ниже приведен пример изменения настроек основного фида Content API.

Для получения дополнительной информации см. раздел Таргетинг рекламных объявлений и бесплатных объявлений в нескольких странах .

Убедитесь, что ваши клиентские библиотеки обновлены

Если вы используете клиентскую библиотеку Google для взаимодействия с Content API, обязательно используйте менеджер пакетов для выбранного вами языка программирования и убедитесь, что версия библиотеки актуальна. Для получения дополнительной информации см. руководство разработчика для выбранного вами языка в разделе Примеры и библиотеки .

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

Content API автоматически принимает настройки по умолчанию для вашего канала Content API, как он был настроен в Merchant Center. Вы можете использовать атрибуты продукта includedDestinations или excludedDestinations для управления участием в программе на уровне продукта в канале или через Content API.

Если ваш API-канал был включен в программу, например, Buy on Google (ранее известный как Shopping Actions), но вы хотите исключить определенные продукты, используйте атрибут excludedDestinations и укажите Shopping Actions в качестве значения. При условии отсутствия ошибок это перезапишет настройки канала по умолчанию в Merchant Center, и этот конкретный элемент не будет отображаться в Buy on Google (ранее известный как Shopping Actions). И наоборот, если ваш канал не был включен в программу, например, Shopping, вы можете включить отдельные элементы, используя атрибут includedDestinations и Shopping_ads в качестве значения, и элемент будет отображаться в Shopping ads.

Дополнительную информацию об атрибутах продукта includedDestinations и excludedDestinations см. в Справочном центре .

Обязательно обновите товары до истечения срока их действия.

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

Не удаляйте канал Content API, иначе ваши продукты могут исчезнуть.

При первой загрузке продукта с channel:online через Content API в Merchant Center появится новый фид под названием Content API . При первой загрузке продукта с channel:local через Content API в Merchant Center появится новый фид под названием Content API с подзаголовком Local Products . Убедитесь, что вы случайно не удалили онлайн- или локальный фид Content API. В зависимости от удаляемого фида, онлайн- или локальные продукты, добавленные вами в Merchant Center через Content API, будут удалены.

Пакетная обработка нескольких запросов к одной и той же службе с использованием метода custombatch

Вместо того, чтобы делать много последовательных или параллельных запросов к одной и той же службе, сделайте один запрос custombatch, который содержит все нужные запросы. Таким образом, задержка при выполнении запросов к конечной точке API происходит только один раз для вызова custombatch, а не для каждого отдельного запроса, что особенно важно, если вы делаете последовательные запросы.

Не отправляйте несколько обновлений для одного элемента в одном пакете.

Это приведет к неожиданным результатам из-за неопределенности последовательности обновлений и может вызвать ошибку конфликта .

Не отправлять обновления для неизмененных элементов

Обязательно отправляйте запросы только на новые, измененные или удаленные позиции товаров, если только срок действия позиций не истечет.

Используйте дополнительные каналы, если цены и/или доступность быстро меняются

Если у вас возникли проблемы с обновлением информации о цене, наличии или продаже продукта, рассмотрите возможность использования дополнительных каналов в ресурсе products для отправки обновлений только для этих атрибутов. Поскольку обновления дополнительных каналов небольшие, вы можете сделать гораздо больше дополнительных обновлений каналов за определенный период, чем полных обновлений продуктов, что поможет поддерживать цены и наличие ваших продуктов в соответствии с вашими целевыми страницами.

Другой способ обновления цены и доступности продукта — использовать автоматическое обновление товара . Это можно использовать в дополнение к обновлениям API, чтобы избежать несоответствий между информацией в Merchant Center и информацией на целевых страницах продукта. Однако имейте в виду, что это предназначено для устранения небольших проблем с точностью цены и доступности продукта, поэтому автоматическое обновление товара не является заменой предоставления корректной информации через API.

Когда использовать токен обновления

Токен обновления возвращается в заголовке HTTP запросов на авторизацию. Он содержит много другой информации, связанной с аутентификацией, но токен обновления часто является той частью, которую разработчики хотят получить, поскольку он устраняет необходимость многократно запрашивать у пользователя аутентификацию, поскольку токены доступа действуют всего 60 минут до истечения срока действия.