Получение отзывов о товарах продавца
Метод доступен для всех моделей.
Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке
- communication — Общение с покупателями
- all-methods — Полное управление кабинетом
- all-methods:read-only — Просмотр всех данных
Возвращает отзывы о товарах продавца по указанным фильтрам. Исключение: отзывы, которые удалили покупатели или Маркет.
Вы также можете настроить API-уведомления
Маркет отправит вам запрос, когда появится новый отзыв. А полную информацию о нем можно получить с помощью этого метода.
Результаты возвращаются постранично, одна страница содержит не более 50 отзывов.
Отзывы расположены в порядке публикации, поэтому вы можете передавать определенный идентификатор страницы в page_token, если вы получали его ранее.
| ⚙️ Лимит: 1 000 запросов в час |
|---|
Request
POST
https://api.partner.market.yandex.ru/v2/businesses/{businessId}/goods-feedback
Path parameters
|
Name |
Description |
|
businessId |
Type: integer Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns. ℹ️ Что такое кабинет и магазин на Маркете Min value: |
Query parameters
|
Name |
Description |
|
limit |
Type: integer Количество значений на одной странице. Min value: |
|
page_token |
Type: string Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра Если задан Example: |
Body
application/json
{
"feedbackIds": [
0
],
"dateTimeFrom": "2020-02-02T14:30:30+03:00",
"dateTimeTo": "2020-02-02T14:30:30+03:00",
"updatedDateFrom": "2020-02-02T14:30:30+03:00",
"updatedDateTo": "2020-02-02T14:30:30+03:00",
"reactionStatus": "ALL",
"ratingValues": [
0
],
"modelIds": [
0
],
"offerIds": [
"example"
],
"paid": true
}
|
Name |
Description |
|
dateTimeFrom |
Type: string<date-time> Начало периода. Не включительно. Если параметр не указан, возвращается информация за 6 месяцев до указанной в Максимальный интервал 6 месяцев. Example: |
|
dateTimeTo |
Type: string<date-time> Конец периода. Не включительно. Если параметр не указан, используется текущая дата. Максимальный интервал 6 месяцев. Example: |
|
feedbackIds |
Type: GoodsFeedbackId[] | null Идентификаторы отзывов. ⚠️ Не используйте это поле одновременно с другими фильтрами. Если вы хотите воспользоваться ими, оставьте поле пустым. Min items: Max items: Unique items: Example
|
|
offerIds |
Type: ShopSku[] | null Фильтр по идентификатору товара. Min items: Max items: Unique items: Example
|
|
paid |
Type: boolean Фильтр отзывов за баллы Плюса. |
|
ratingValues |
Type: integer[] | null Оценка товара. Min items: Max items: Unique items: Example
|
|
reactionStatus |
Type: FeedbackReactionStatusType Нужно ли вернуть только непрочитанные отзывы. Для этого передайте значение По умолчанию возвращаются все отзывы. Статус реакции на отзыв:
Enum: |
GoodsFeedbackId
Идентификатор отзыва.
Type: integer
FeedbackReactionStatusType
Статус реакции на отзыв:
-
ALL— все отзывы. -
NEED_REACTION— отзывы, на которые нужно ответить.
Type: string
Enum: ALL, NEED_REACTION
ShopSku
Ваш SKU — идентификатор товара в вашей системе.
Правила использования SKU:
-
У каждого товара SKU должен быть свой.
-
Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов.
Важно
Пробельные символы в начале и конце значения автоматически удаляются. Например, " SKU123 " и "SKU123" будут обработаны как одинаковые значения.
Что такое SKU и как его назначать
Type: string
Min length: 1
Max length: 255
Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$
Example: example
Responses
200 OK
Список отзывов.
Body
application/json
{
"status": "OK",
"result": {
"feedbacks": [
{
"feedbackId": 0,
"createdAt": "2025-01-01T00:00:00Z",
"needReaction": true,
"identifiers": {},
"author": "example",
"description": {},
"media": {},
"statistics": {}
}
],
"paging": {
"nextPageToken": "example"
}
}
}
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
result
Type: GoodsFeedbackListDTO
Список отзывов о товарах.
Example
{ "feedbacks": [ { "feedbackId": 0, "createdAt": "2025-01-01T00:00:00Z", "needReaction": true, "identifiers": { "orderId": 0, "modelId": 0, "offerId": "example" }, "author": "example", "description": { "advantages": "example", "disadvantages": "example", "comment": "example" }, "media": { "photos": [ "example" ], "videos": [ "example" ] }, "statistics": { "rating": 1, "commentsCount": 0, "recommended": true, "paidAmount": 0 } } ], "paging": { "nextPageToken": "example" } }Example
{ "result": { "feedbacks": [ { "feedbackId": 0, "createdAt": "2025-01-01T00:00:00Z", "needReaction": true, "identifiers": { "orderId": 0, "modelId": 0, "offerId": "example" }, "author": "example", "description": { "advantages": "example", "disadvantages": "example", "comment": "example" }, "media": { "photos": [ null ], "videos": [ null ] }, "statistics": { "rating": 1, "commentsCount": 0, "recommended": true, "paidAmount": 0 } } ], "paging": { "nextPageToken": "example" } } }
ApiResponseStatusType
Тип ответа. Возможные значения:
OK— ошибок нет.ERROR— при обработке запроса произошла ошибка.
Type: string
Enum: OK, ERROR
ApiResponse
Стандартная обертка для ответов сервера.
|
Name |
Description |
|
status |
Type: ApiResponseStatusType Тип ответа. Возможные значения:
Enum: |
Example
{
"status": "OK"
}
GoodsFeedbackIdentifiersDTO
Идентификаторы, которые связаны с отзывом.
|
Name |
Description |
|
offerId |
Type: ShopSku Идентификатор товара. Ваш SKU — идентификатор товара в вашей системе. Правила использования SKU:
SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов. Важно Пробельные символы в начале и конце значения автоматически удаляются. Например, Что такое SKU и как его назначать Min length: Max length: Pattern: Example: |
|
orderId |
Type: integer Идентификатор заказа на Маркете. |
Example
{
"orderId": 0,
"offerId": "example"
}
GoodsFeedbackDescriptionDTO
Текстовая часть отзыва.
|
Name |
Description |
|
advantages |
Type: string Описание плюсов товара в отзыве. Example: |
|
comment |
Type: string Комментарий в отзыве. Example: |
|
disadvantages |
Type: string Описание минусов товара в отзыве. Example: |
Example
{
"advantages": "example",
"disadvantages": "example",
"comment": "example"
}
GoodsFeedbackMediaDTO
Фотографии и видео.
|
Name |
Description |
|
photos |
Type: string[] | null Ссылки на фотографии. Min items: Unique items: Example
|
|
videos |
Type: string[] | null Ссылки на видео. Min items: Unique items: Example
|
Example
{
"photos": [
"example"
],
"videos": [
"example"
]
}
GoodsFeedbackStatisticsDTO
Статистическая информация по отзыву.
|
Name |
Description |
|
commentsCount |
Type: integer Количество комментариев к отзыву. Учитываются только ответы на отзывы, а не дочерние комментарии. |
|
rating |
Type: integer Оценка товара. Min value: Max value: |
|
paidAmount |
Type: integer Количество баллов Плюса, которое автор получил за отзыв. |
|
recommended |
Type: boolean Рекомендуют ли этот товар. |
Example
{
"rating": 1,
"commentsCount": 0,
"recommended": true,
"paidAmount": 0
}
GoodsFeedbackDTO
Отзыв о товаре.
|
Name |
Description |
|
createdAt |
Type: string<date-time> Дата и время создания отзыва. Example: |
|
feedbackId |
Type: GoodsFeedbackId Идентификатор отзыва. Example: |
|
identifiers |
Type: GoodsFeedbackIdentifiersDTO Идентификаторы, которые связаны с отзывом. Example
|
|
needReaction |
Type: boolean Прочитан ли отзыв. Принимает значение
|
|
statistics |
Type: GoodsFeedbackStatisticsDTO Статистическая информация по отзыву. Example
|
|
author |
Type: string Имя автора отзыва. Example: |
|
description |
Type: GoodsFeedbackDescriptionDTO Текстовая часть отзыва. Example
|
|
media |
Type: GoodsFeedbackMediaDTO Фотографии и видео. Example
|
Example
{
"feedbackId": 0,
"createdAt": "2025-01-01T00:00:00Z",
"needReaction": true,
"identifiers": {
"orderId": 0,
"modelId": 0,
"offerId": "example"
},
"author": "example",
"description": {
"advantages": "example",
"disadvantages": "example",
"comment": "example"
},
"media": {
"photos": [
"example"
],
"videos": [
"example"
]
},
"statistics": {
"rating": 1,
"commentsCount": 0,
"recommended": true,
"paidAmount": 0
}
}
ForwardScrollingPagerDTO
Идентификатор следующей страницы.
|
Name |
Description |
|
nextPageToken |
Type: string Идентификатор следующей страницы результатов. Example: |
Example
{
"nextPageToken": "example"
}
GoodsFeedbackListDTO
Список отзывов о товарах.
|
Name |
Description |
|
feedbacks |
Type: GoodsFeedbackDTO[] Список отзывов. Example
|
|
paging |
Type: ForwardScrollingPagerDTO Идентификатор следующей страницы. Example
|
Example
{
"feedbacks": [
{
"feedbackId": 0,
"createdAt": "2025-01-01T00:00:00Z",
"needReaction": true,
"identifiers": {
"orderId": 0,
"modelId": 0,
"offerId": "example"
},
"author": "example",
"description": {
"advantages": "example",
"disadvantages": "example",
"comment": "example"
},
"media": {
"photos": [
"example"
],
"videos": [
"example"
]
},
"statistics": {
"rating": 1,
"commentsCount": 0,
"recommended": true,
"paidAmount": 0
}
}
],
"paging": {
"nextPageToken": "example"
}
}
400 Bad Request
Запрос содержит неправильные данные. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
ApiErrorDTO
Общий формат ошибки.
|
Name |
Description |
|
code |
Type: string Код ошибки. Example: |
|
message |
Type: string Описание ошибки. Example: |
Example
{
"code": "example",
"message": "example"
}
ApiErrorResponse
Стандартная обертка для ошибок сервера.
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
errors
Type: ApiErrorDTO[] | null
Список ошибок.
Min items:
1Example
[ { "code": "example", "message": "example" } ]Example
{ "errors": [ { "code": "example", "message": "example" } ] }
Example
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
401 Unauthorized
В запросе не указаны данные для авторизации. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
404 Not Found
Запрашиваемый ресурс не найден. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
420 Method Failure
Превышено ограничение на доступ к ресурсу. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
500 Internal Server Error
Внутренняя ошибка Маркета. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
No longer supported, please use an alternative and newer version.