Переход с Content API v2 на v2.1

В марте 2019 года мы выпустили версию 2.1 Content API для покупок, а в апреле 2021 года объявили , что поддержка версии 2 прекратится 30 сентября 2021 года. Поддержка версии 2 прекращена. Пожалуйста, немедленно перейдите на версию 2.1.

Перенесите свое приложение

Миграция с версии 2 на версию 2.1 включает обновление URL-адресов конечных точек для вызова новых версий версии 2.1 и изменение ваших приложений с учетом критических изменений, представленных в версии 2.1.

Обновите вызовы API, чтобы использовать конечные точки версии 2.1.

Чтобы совершать вызовы в версию 2.1, обновите свои запросы, чтобы использовать новые конечные точки версии 2.1.

Например, чтобы вызвать метод products.get с помощью версии 2, вы должны использовать:

GET https://shoppingcontent.googleapis.com/content/v2/merchantId/products/productId

Для версии 2.1 обновите URL-адрес следующим образом:

GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId

Полную информацию о службах и конечных точках версии 2.1 см. в Справочнике по API .

Внесите необходимые изменения

Помимо обновления URL-адресов для вызовов API, вам также необходимо обновить приложение, чтобы учесть несколько критических изменений, представленных в версии 2.1. Просмотрите следующие разделы и при необходимости обновите свое приложение.

1. Обновите интеграцию со службой inventory .

Служба inventory версии 2 была удалена, и эквивалентная функциональность доступна со следующими функциями версии 2.1:

  • Используйте новые дополнительные фиды или products.update для частичных обновлений продуктов. Обновления возможны для всех изменяемых полей продукта, включая все поля, ранее обновленные с помощью inventory.set (за исключением тех, которые являются эксклюзивными для localinventory ). Дополнительные сведения см. в разделе Переход на дополнительные фиды .

  • Используйте новую службу localinventory для локальных обновлений продуктов.

2. Обновление обращений в службу accounts

  • Вызовы метода accounts.update в версии 2.1 полностью перезаписывают ресурс accounts , а не только обновляют поля, включенные в запрос. Чтобы избежать удаления полей в ресурсе accounts , обновите свои запросы на вызов, включив в них все поля.

  • reviewsUrl был удален.

  • inactive статус ссылки был удален для adsLinks , googleMyBusinessLink и youtubeChannelLinks .

3. Обновление обращений в службу products

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

  • Повторяющееся поле productTypes заменило productType и additionalProductTypes .

  • Повторяющиеся поля includedDestinations и excludedDestinations заменили повторяющиеся поля destinations .

  • Следующие поля, связанные с AdWords, были переименованы:

    • adwordsGrouping -> adsGrouping
    • adwordsLabels -> adsLabels
    • adwordsRedirect -> adsRedirect
  • Следующие поля были удалены:

    • aspects
    • destinations
    • onlineOnly
    • validatedDestinations
    • warnings
  • Параметр includeInvalidInsertedItems был удален. В версии 2.1 все товары возвращаются по умолчанию.

  • Теперь существует задержка в несколько минут, прежде чем вставленный продукт можно будет получить через products.get или products.list .

  • Возвращаемый offerId больше не обязательно будет таким же, как входной offerId . Версия 2.1 обрезает начальные и конечные пробелы в offerId и объединяет несколько пробельных символов в один. Это изменение не влияет на значения offerId , соответствующие рекомендуемому синтаксису offerId .

  • Цены теперь проверяются перед добавлением продукта. В строке значения разрешены только следующие символы: + , - , . и цифры (т. 9 . 0 ). Запятые больше не принимаются.

  • Ответы на вызов products.insert или products.update содержат только следующие атрибуты:

    • channel
    • contentLanguage
    • id
    • offerId
    • feedLabel
  • Опция v2 includeAttributes устарела. Вместо этого используйте products.get с ProductId для просмотра полной информации о продукте.

4. Обновление вызовов службы productstatuses .

  • Атрибут product был удален вместе с параметром includeAttributes . Чтобы получить атрибуты продукта, соответствующие статусу, используйте сервис products и передайте значение нового поля productId .

  • Параметр includeInvalidInsertedItems был удален. productId каждого продукта теперь возвращается независимо от того, действителен ли продукт.

  • Поля intention , approvalStatus и approvalPending в destinationStatuses были заменены status , который представляет собой строку, которая может быть одной из approved , disapproved или pending .

  • dataQualityIssues заменен на itemLevelIssues .

5. Обновление вызовов службы datafeeds

  • Были заменены следующие целевые поля:

    • contentLanguage -> language
    • targetCountry -> country
    • intendedDestinations -> includedDestinations и excludedDestinations
  • Фиды данных с contentType = "product inventory update" были удалены.

6. Обновление вызовов orders и сервисов TestOrders .

  • В версии 2.1 вызовы не должны включать налоговые данные, поскольку налоговые данные рассчитываются автоматически. Если заказ выполняется в штате, где действует Закон о честности рынка (MFA) или аналогичный, вызовы, включающие налоговые данные, завершаются неудачей. Если заказ выполнен в состоянии, отличном от MFA, налог рассчитывается на основе настроек, настроенных в Merchant Center. Если не настроено, рассчитанный налог равен 0.

  • Поля InStoreRefundLineItem и ReturnRefundLineItem amountPretax и amountTax заменены на priceAmount и taxAmount соответственно. priceAmount может указываться до или после налогов, в зависимости от местоположения заказа.

  • Поля ShipLineItem carrier », shipmentId и trackingId в запросе были перемещены в shipmentInfos .

  • billingAddress и predefinedBillingAddress теперь являются полями верхнего уровня в orders и TestOrder соответственно.

  • customer.explicitMarketingPreference заменен на customer.marketingRightsInfo .

  • Поле netAmount было разделено на netPriceAmount и netTaxAmount .

  • shippingOption заменен на lineItems[].shippingDetails .

  • Поля CancelLineItem amount , amountPretax и amountTax в запросе были удалены. Сумма возврата теперь рассчитывается автоматически.

  • CustomBatch удален.

  • Refund удален. Вместо этого refundOrder refundItem .

  • Поле paymentMethod было удалено.

  • Методы orders.returnlineitem orders.refund заменены на orderreturns.creatOrderReturn и orderreturns.process .

  • Поля customer.email , channelType и lineItem.product.channel были удалены.

  • Поле promotions было удалено из сервиса TestOrder , а его формат изменен в Order .

7. Обновление вызовов службы orderinvoice .

  • Поля amountPretax и amountTax были заменены на priceAmount и taxAmount соответственно. Поле priceAmount может быть указано до или после налогов, в зависимости от местоположения заказа.

  • Удалены балансы (продавец, клиент, Google) в полях invoiceSummary и сборов за продвижение.

8. Удалить функциональность, не включенную в v2.1.

Несколько других функций были удалены из Content API в версии 2.1. Просмотрите следующий список и при необходимости обновите свое приложение:

  • XML больше не поддерживается. Дополнительные сведения о переходе на JSON см. в разделе Прекращение поддержки XML в Content API for Shopping .

  • Параметр dryRun удален. Это изменение применяется ко всем вызовам API.

  • Все методы HTTP BATCH были удалены. Вместо этого используйте customBatch .

  • Метод patch был удален из следующих сервисов:

    • accounts
    • accounttax
    • datafeeds
    • liasettings
    • shippingsettings
  • Сервис orderpayments удален.

Проверьте свою миграцию

Дополнительную информацию о тестировании изменений в ваших приложениях после перехода на версию 2.1 см. в разделе Тестирование использования Content API для покупок . Если при тестировании обновлений у вас возникнут проблемы, вы можете опубликовать свою проблему на форуме Content API .

Дополнительные изменения в версии 2.1

Помимо изменений, требующих обновлений, версия 2.1 также содержит несколько новых функций и некритических изменений:

  • Новые услуги:

    • Новая служба localinventory позволяет выполнять локальные обновления продуктов (вместо службы inventory в версии 2).

    • Новая служба orderreturns упрощает управление программой «Купить через Google» (ранее известной как «Shopping Actions»), позволяя обрабатывать возвраты без использования службы orders .

  • Дополнительные фиды позволяют частично обновлять продукты.

  • Дополнительные изменения в сервисе products :

    • Запросы products.insert больше не сообщают о нефатальных предупреждениях или ошибках. Это позволяет добавлять товары и вносить последующие обновления для решения проблем с помощью правил фидов в Merchant Center, как и в случае с фидами, управляемыми вне Content API.

    • products.update был добавлен, чтобы позволить вам обновлять выбранный набор полей продукта. Более подробную информацию о возможном использовании смотрите в руководстве .

    • Недопустимые значения следующих атрибутов больше не вызывают ошибки вставки и возвращаются как часть itemLevelIssues службой productstatus :

      • ageGroup
      • availability
      • condition
      • energyEfficiencyClass
      • gender
      • maxEnergyEfficiencyClass
      • minEnergyEfficiencyClass
      • sizeSystem
      • sizeType
    • Пользовательские атрибуты теперь являются рекурсивными, что устраняет необходимость в пользовательских группах.

    • Пользовательские атрибуты теперь имеют поле groupValues ​​в дополнение к исходному полю value . Должно быть задано ровно одно из полей.