Чтобы получить общие сведения о статусе товаров в аккаунте Merchant Center, используйте метод aggregateProductStatuses.list. Это полезно для мониторинга общего состояния данных о товарах без необходимости получать информацию о каждом отдельном товаре. Этот метод позволяет узнать общее количество товаров, разбитых по статусу (одобрено, на рассмотрении, отклонено), а также список проблем, влияющих на ваши товары.
Важные замечания
При использовании метода aggregateProductStatuses.list необходимо учитывать некоторые особенности.
- Доступность данных. Между добавлением или обновлением товара и отражением его статуса в ответе
aggregateProductStatusesможет пройти более 30 минут. - Согласованность проблем. Названия и описания проблем, возвращаемые методом
aggregateProductStatuses.list, должны соответствовать проблемам, возвращаемым Products API. Однако они могут отличаться от описаний проблем, которые показываются в пользовательском интерфейсе Merchant Center.
Общие сведения о статусах всех товаров
В этом примере показано, как получить список ресурсов AggregateProductStatus.
Каждый ресурс представляет статус товаров для определенного сочетания целевого сервиса и страны. Вызов aggregateProductStatuses.list без параметров возвращает все доступные статусы для вашего аккаунта.
GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/aggregateProductStatuses
Ниже приведен пример ответа на успешный вызов.
{
"aggregateProductStatuses": [
{
"name": "accounts/{ACCOUNT_ID}/aggregateProductStatuses/SHOPPING_ADS~US",
"reportingContext": "SHOPPING_ADS",
"countryCode": "US",
"statistics": {
"approvedCount": "1500",
"pendingCount": "50",
"disapprovedCount": "25"
},
"issues": [
{
"issueType": "missing_image",
"severity": "ERROR",
"numProducts": "15",
"sampleProducts": [
"accounts/{ACCOUNT_ID}/products/en~US~SKU001",
"accounts/{ACCOUNT_ID}/products/en~US~SKU002"
]
},
{
"issueType": "invalid_price",
"severity": "CRITICAL",
"numProducts": "10",
"sampleProducts": [
"accounts/{ACCOUNT_ID}/products/en~US~SKU003"
]
}
]
},
{
"name": "accounts/{ACCOUNT_ID}/aggregateProductStatuses/FREE_LISTINGS~US",
"reportingContext": "FREE_LISTINGS",
"countryCode": "US",
"statistics": {
"approvedCount": "1510",
"pendingCount": "50",
"disapprovedCount": "15"
},
"issues": [
{
"issueType": "missing_image",
"severity": "ERROR",
"numProducts": "15",
"sampleProducts": [
"accounts/{ACCOUNT_ID}/products/en~US~SKU001",
"accounts/{ACCOUNT_ID}/products/en~US~SKU002"
]
}
]
}
]
}
Как получить статусы товаров для определенной страны и целевого сервиса
Чтобы отфильтровать результаты по стране и целевому сервису, используйте параметр запроса filter с методом aggregateProductStatuses.list. Пример:
country = "US" AND reportingContext = "SHOPPING_ADS".
Подробную информацию о синтаксисе фильтров можно найти в разделе Синтаксис фильтров.
GET https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/aggregateProductStatuses?filter=countryCode%3D"US"%20AND%20reportingContext%3D"SHOPPING_ADS"
Ниже приведен пример ответа на успешный вызов.
{
"aggregateProductStatuses": [
{
"name": "accounts/{ACCOUNT_ID}/aggregateProductStatuses/SHOPPING_ADS~US",
"reportingContext": "SHOPPING_ADS",
"countryCode": "US",
"statistics": {
"approvedCount": "1500",
"pendingCount": "50",
"disapprovedCount": "25"
},
"issues": [
{
"issueType": "missing_image",
"severity": "ERROR",
"numProducts": "15",
"sampleProducts": [
"accounts/{ACCOUNT_ID}/products/en~US~SKU001",
"accounts/{ACCOUNT_ID}/products/en~US~SKU002"
]
},
{
"issueType": "invalid_price",
"severity": "CRITICAL",
"numProducts": "10",
"sampleProducts": [
"accounts/{ACCOUNT_ID}/products/en~US~SKU003"
]
}
]
}
]
}