В марте 2019 года мы выпустили версию 2.1 Content API for Shopping, а в апреле 2021 года объявили , что поддержка версии 2 прекратится 30 сентября 2021 года. Версия 2 уже недоступна. Пожалуйста, немедленно перейдите на версию 2.1.
Перенесите свое приложение
Переход с версии 2 на версию 2.1 подразумевает обновление URL-адресов конечных точек для вызова новых версий v2.1 и изменение приложений с учетом критических изменений, внесенных в v2.1.
Обновите вызовы API для использования конечных точек версии 2.1.
Чтобы совершать вызовы к v2.1, обновите свои запросы для использования новых конечных точек v2.1.
Например, чтобы вызвать метод products.get с помощью v2, вы должны использовать:
GET https://shoppingcontent.googleapis.com/content/v2/merchantId/products/productId
Для версии 2.1 обновите URL-адрес на:
GET https://shoppingcontent.googleapis.com/content/v2.1/merchantId/products/productId
Полную информацию о службах и конечных точках v2.1 см. в Справочнике API .
Внесите необходимые изменения
Помимо обновления URL-адресов для вызовов API, вам также необходимо обновить приложение с учётом нескольких критических изменений, внесённых в версии 2.1. Ознакомьтесь со следующими разделами и при необходимости обновите приложение.
1. Обновление интеграции со службой inventory
Служба inventory v2 была удалена, и эквивалентная функциональность доступна в следующих функциях v2.1:
Используйте новые дополнительные фиды или
products.updateдля частичных обновлений товаров. Обновления возможны для всех изменяемых полей товаров, включая все поля, ранее обновленные с помощьюinventory.set(за исключением полей, эксклюзивных дляlocalinventory). Подробнее см. в разделе «Миграция на дополнительные фиды» .Используйте новую службу
localinventoryдля получения локальных обновлений продуктов.
2. Обновление звонков в службу accounts
Вызовы метода
accounts.updateв версии 2.1 полностью перезаписывают ресурсaccounts, а не только обновляют поля, включённые в запрос. Чтобы избежать удаления полей в ресурсеaccounts, обновите запросы на вызовы, включив в них все поля.URL
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
-
Параметр
includeAttributesверсии 2 устарел. Вместо этого используйте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иReturnRefundLineItemamountPretaxиamountTaxбыли заменены наpriceAmountиtaxAmountсоответственно.priceAmountможет быть указана до вычета налога или после вычета налога в зависимости от места заказа.Поля
ShipLineItemcarrier,shipmentIdиtrackingIdв запросе были перенесены вshipmentInfos.billingAddressиpredefinedBillingAddressтеперь являются полями верхнего уровня вordersиTestOrderсоответственно.customer.explicitMarketingPreferenceбыл заменен наcustomer.marketingRightsInfo.Поле
netAmountразделено наnetPriceAmountиnetTaxAmount.shippingOptionбыл заменен наlineItems[].shippingDetails.Поля
CancelLineItemamount,amountPretaxиamountTaxиз запроса удалены. Сумма возврата теперь рассчитывается автоматически.CustomBatchбыл удален.Refundудалён. Вместо него используйтеrefundOrderилиrefundItem.Поле
paymentMethodбыло удалено.Методы v2
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. Удалить функциональность, не включенную в версию 2.1.
В версии 2.1 из Content API было удалено несколько других функций. Ознакомьтесь со следующим списком и при необходимости обновите приложение:
XML больше не поддерживается. Подробнее о переходе на JSON см. в статье «Прекращение поддержки XML в Content API for Shopping» .
Параметр
dryRunбыл удалён. Это изменение применяется ко всем вызовам API.Все методы
HTTP BATCHудалены. Вместо них используйтеcustomBatch.Метод
patchбыл удален из следующих сервисов:-
accounts -
accounttax -
datafeeds -
liasettings -
shippingsettings
-
Служба
orderpaymentsбыла удалена.
Проверьте свою миграцию
Дополнительную информацию о тестировании изменений в приложениях после перехода на версию 2.1 см. в статье «Тестирование использования Content API для покупок» . Если у вас возникнут проблемы при тестировании обновлений, свяжитесь с нами .
Дополнительные изменения в версии 2.1
Помимо изменений, требующих обновлений, версия 2.1 также вносит несколько новых функций и некритических изменений:
Новые услуги:
Новая служба
localinventoryпозволяет вам выполнять локальные обновления продуктов (вместо службыinventoryв v2).Новая служба
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. Необходимо задать только одно из полей.