Изменился способ получения информации о проблемах на уровне аккаунта, которые могут повлиять на ваши товары и репутацию аккаунта. В отличие от ресурса accountstatuses в Content API for Shopping, в Merchant API есть специальный ресурс AccountIssue, который предоставляет более структурированную и подробную информацию.
Подробную информацию о том, как использовать новую функцию, вы найдете в руководстве по просмотру проблем с аккаунтом.
Примечание. В Merchant API проблемы на уровне аккаунта и агрегированные статусы товаров разделены. Также ознакомьтесь с руководством по переходу с accountstatuses на агрегированные статусы товаров.
Основные различия
Вот основные улучшения и отличия ресурса AccountIssue в Merchant API:
- Специальный ресурс. Проблемы с аккаунтом – это отдельный ресурс. В Content API for Shopping проблемы на уровне аккаунта были вложенным полем в общем ресурсе
AccountStatus. С помощью Merchant API вы можете размещать их напрямую, используя методaccounts.issues.list. - Структурированные данные о влиянии. Ресурс
AccountIssueсодержит подробное полеimpactedDestinations. В этом поле вы найдете подробную информацию о том, на что влияет проблема, в том числе о целевом сервисе (например, товарной рекламе), регионе и серьезности проблемы в этом регионе. - Перечисление для степени серьезности. Поле
severityтеперь является перечислением (со значениямиCRITICAL,ERROR,SUGGESTION), что упрощает программную обработку по сравнению со строковыми значениями в Content API for Shopping. - Стандартизированные идентификаторы. У каждой проблемы с аккаунтом есть уникальный полный ресурс
nameв форматеaccounts/{ACCOUNT_ID}/issues/{ISSUE_ID}. Этот стандартизированный подход заменяет строкуidиз Content API for Shopping. - Поддержка локализации. Метод
accounts.issues.listпозволяет указатьlanguage_code, чтобы получать сведения о проблемах, например название и описание, на предпочитаемом языке. В Content API for Shopping это было невозможно. - Особенности расширенных аккаунтов. Если вы вызовете метод
accounts.issues.listдля расширенного аккаунта, то получите только проблемы, которые относятся непосредственно к нему. Проблемы в дочерних аккаунтах не возвращаются. В Content API for Shopping методaccountstatuses.listвозвращает статусы всех дочерних аккаунтов. Чтобы получить информацию о проблемах во всех дочерних аккаунтах в Merchant API, нужно вызватьaccounts.listSubaccounts, а затемaccounts.issues.listдля каждого дочернего аккаунта.
Запросы
В Merchant API можно посмотреть список проблем с определенным аккаунтом Merchant Center.
GET https://merchantapi.googleapis.com/accounts/v1/accounts/ACCOUNT_ID/issues
Сравнение URL запросов
| Описание запроса | Content API for Shopping | Merchant API |
|---|---|---|
| Как получить список проблем на уровне аккаунта для одного аккаунта | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/accountstatuses/{ACCOUNT_ID} |
GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/issues |
| Как получить список проблем на уровне аккаунта для всех дочерних аккаунтов расширенного аккаунта | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/accountstatuses |
Недоступно. Вам нужно перебрать дочерние аккаунты. |
Идентификаторы
В Merchant API изменились идентификаторы аккаунтов и проблем.
Сравнение идентификаторов
| Описание идентификатора | Content API for Shopping | Merchant API |
|---|---|---|
| Идентификатор аккаунта | {MERCHANT_ID} и {ACCOUNT_ID} в качестве параметров пути. |
{ACCOUNT_ID} в качестве параметра пути в формате accounts/{ACCOUNT_ID}. |
| Идентификатор проблемы | Поле id в теле ответа (например, "products-that-enable-dishonest-behavior-hacking-policy"). |
name в теле ответа, которое является полным названием ресурса (например, accounts/12345/issues/example-issue-id). |
Методы
В Merchant API методы получения проблем с аккаунтом были объединены и упрощены.
Сравнение способов
| Content API for Shopping | Merchant API | Доступность и примечания |
|---|---|---|
accountstatuses.get |
accounts.issues.list |
Доступно. Чтобы получить проблемы для одного аккаунта, используйте accounts.issues.list и укажите идентификатор аккаунта. В Merchant API нет метода get для отдельных проблем. |
accountstatuses.list |
Прямого эквивалента нет. | Недоступно. Метод accounts.issues.list в Merchant API возвращает только проблемы для указанного аккаунта, а не для его дочерних аккаунтов. Чтобы получить проблемы для всех дочерних аккаунтов, сначала вызовите accounts.listSubaccounts, а затем accounts.issues.list для каждого дочернего аккаунта. |
accountstatuses.custombatch |
Прямого эквивалента нет. | Недоступно. Пакетная обработка проблем с аккаунтом не поддерживается в Merchant API. Для каждого аккаунта необходимо выполнить отдельный вызов list. |
Подробные изменения полей
Поля в ресурсе account issue были обновлены, чтобы сделать его более структурированным и понятным.
Сравнение полей
| Content API for Shopping | Merchant API | Описание |
|---|---|---|
accountLevelIssues (массив в AccountStatus) |
accountIssues (массив в ListAccountIssuesResponse) |
Проблемы теперь являются отдельным ресурсом верхнего уровня, а не вложенным полем. |
id (строка) |
name (строка) |
Идентификатор проблемы теперь является полным названием ресурса, например accounts/{ACCOUNT_ID}/issues/{ISSUE_ID}. |
title (строка) |
title (строка) |
Без изменений. |
detail (строка) |
detail (строка) |
Без изменений. |
documentation (строка) |
documentationUri (строка) |
Поле переименовано, чтобы было понятно, что это URL. |
severity (строка) |
severity (перечисление) |
Теперь степень серьезности – это структурированное перечисление (CRITICAL, ERROR, SUGGESTION), а не строка. |
country (строка), destination (строка) |
impactedDestinations (повторяющееся сообщение) |
Теперь влияние представлено в виде списка, в котором для каждой затронутой области указаны целевой сервис, регион и уровень серьезности. Поле country заменено полем regionCode в сообщении Impact. |
| (Недоступно) | language_code, time_zone (параметры запроса) |
Новые параметры в запросе list позволяют локализовать человекочитаемые поля, такие как title и detail. |