Получение отзывов о товарах для рекламодателей

Метод доступен для моделей: FBY, FBS, Экспресс и DBS.

Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке

Возвращает отзывы о товарах бренда по указанным фильтрам. Исключение: отзывы, которые удалили покупатели или Маркет.

Результаты возвращаются постранично.

Отзывы расположены в порядке публикации, поэтому вы можете передавать определенный идентификатор страницы в pageToken, если вы получали его ранее.

⚙️ Лимит: 10 000 запросов в час

Request

POST

https://api.partner.market.yandex.ru/v1/businesses/{businessId}/goods-feedback-advertiser

Path parameters

Name

Description

businessId

Type: integer

Идентификатор кабинета.

Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns.

ℹ️ Что такое кабинет и магазин на Маркете

Min value: 1

Query parameters

Name

Description

limit

Type: integer

Количество значений на одной странице.

Default: 25

Min value: 1

Max value: 50

pageToken

Type: string

Идентификатор страницы c результатами.

Если параметр не указан, возвращается первая страница.

Передавайте значение выходного параметра nextPageToken, полученное при последнем запросе.

Example: ``

sourceType

Type: SourceType

Признак типа кабинета, от имени которого вызывается метод:

  • SELLER — продавец.

  • ADVERTISER — рекламодатель.

Тип кабинета:

  • SELLER — продавец.
  • ADVERTISER — рекламодатель.

Default: SELLER

Enum: SELLER, ADVERTISER

SourceType

Тип кабинета:

  • SELLER — продавец.
  • ADVERTISER — рекламодатель.

Type: string

Enum: SELLER, ADVERTISER

Body

application/json
{
  "feedbackIds": [
    0
  ],
  "dateTimeFrom": "2020-02-02T14:30:30+03:00",
  "dateTimeTo": "2020-02-02T14:30:30+03:00",
  "reactionStatus": "ALL",
  "ratingValues": [
    0
  ],
  "paid": true
}

Name

Description

dateTimeFrom

Type: string<date-time>

Начало периода. Не включительно.

Если параметр не указан, возвращается информация за 6 месяцев до указанной в dateTimeTo даты.

Максимальный интервал 6 месяцев.

Example: 2020-02-02T14:30:30+03:00

dateTimeTo

Type: string<date-time>

Конец периода. Не включительно.

Если параметр не указан, используется текущая дата.

Максимальный интервал 6 месяцев.

Example: 2020-02-02T14:30:30+03:00

feedbackIds

Type: GoodsFeedbackId[] | null

Идентификаторы отзывов.

⚠️ Не используйте это поле одновременно с другими фильтрами. Если вы хотите воспользоваться ими, оставьте поле пустым.

Min items: 1

Max items: 50

Unique items: true

Example
[
  0
]

paid

Type: boolean

Фильтр отзывов за баллы Плюса.

ratingValues

Type: integer[] | null

Оценка товара.

Min items: 1

Max items: 5

Unique items: true

Example
[
  0
]

reactionStatus

Type: FeedbackReactionStatusType

Нужно ли вернуть только непрочитанные отзывы. Для этого передайте значение NEED_REACTION.

По умолчанию возвращаются все отзывы.

Статус реакции на отзыв:

  • ALL — все отзывы.

  • NEED_REACTION — отзывы, на которые нужно ответить.

Enum: ALL, NEED_REACTION

GoodsFeedbackId

Идентификатор отзыва.

Type: integer

FeedbackReactionStatusType

Статус реакции на отзыв:

  • ALL — все отзывы.

  • NEED_REACTION — отзывы, на которые нужно ответить.

Type: string

Enum: ALL, NEED_REACTION

Responses

200 OK

Список отзывов.

Body

application/json
{
  "status": "OK",
  "result": {
    "feedbacks": [
      {
        "feedbackId": 0,
        "createdAt": "2025-01-01T00:00:00Z",
        "needReaction": true,
        "context": {},
        "author": "example",
        "description": {},
        "media": {},
        "statistics": {}
      }
    ],
    "paging": {
      "nextPageToken": "example"
    }
  }
}

Type: object

All of 2 types
  • Type: ApiResponse

    Стандартная обертка для ответов сервера.

    Example
    {
      "status": "OK"
    }
    
  • Type: object

    result

    Type: GoodsFeedbackUrbanadsListDTO

    Список отзывов о товарах.

    Example
    {
      "feedbacks": [
        {
          "feedbackId": 0,
          "createdAt": "2025-01-01T00:00:00Z",
          "needReaction": true,
          "context": {
            "offerName": "example",
            "pictureUrl": "example",
            "businessId": 1,
            "businessName": "example",
            "brandId": "example",
            "brandName": "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,
            "context": {
              "offerName": "example",
              "pictureUrl": "example",
              "businessId": 1,
              "businessName": "example",
              "brandId": "example",
              "brandName": "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

Тип ответа. Возможные значения:

  • OK — ошибок нет.
  • ERROR — при обработке запроса произошла ошибка.

Enum: OK, ERROR

Example
{
  "status": "OK"
}

Url

Type: string

Min length: 1

Max length: 2000

Example: example

BusinessId

Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns.

ℹ️ Что такое кабинет и магазин на Маркете

Type: integer

Min value: 1

GoodsFeedbackContextUrbanadsDTO

Информация о товаре, бизнесе и бренде, которые связаны с отзывом.

Name

Description

brandId

Type: string

Идентификатор бренда товара.

Example: example

brandName

Type: string

Название бренда товара.

Example: example

businessId

Type: BusinessId

Идентификатор бизнеса, под товаром которого оставлен отзыв.

Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом GET v2/campaigns.

ℹ️ Что такое кабинет и магазин на Маркете

Min value: 1

Example: 1

businessName

Type: string

Название бизнеса, под товаром которого оставлен отзыв.

Example: example

offerName

Type: string

Название товара, под которым оставлен отзыв.

Example: example

pictureUrl

Type: Url

Ссылка на фотографию товара.

Min length: 1

Max length: 2000

Example: example

Example
{
  "offerName": "example",
  "pictureUrl": "example",
  "businessId": 1,
  "businessName": "example",
  "brandId": "example",
  "brandName": "example"
}

GoodsFeedbackDescriptionDTO

Текстовая часть отзыва.

Name

Description

advantages

Type: string

Описание плюсов товара в отзыве.

Example: example

comment

Type: string

Комментарий в отзыве.

Example: example

disadvantages

Type: string

Описание минусов товара в отзыве.

Example: example

Example
{
  "advantages": "example",
  "disadvantages": "example",
  "comment": "example"
}

GoodsFeedbackMediaDTO

Фотографии и видео.

Name

Description

photos

Type: string[] | null

Ссылки на фотографии.

Min items: 1

Unique items: true

Example
[
  "example"
]

videos

Type: string[] | null

Ссылки на видео.

Min items: 1

Unique items: true

Example
[
  "example"
]
Example
{
  "photos": [
    "example"
  ],
  "videos": [
    "example"
  ]
}

GoodsFeedbackStatisticsDTO

Статистическая информация по отзыву.

Name

Description

commentsCount

Type: integer

Количество комментариев к отзыву.

Учитываются только ответы на отзывы, а не дочерние комментарии.

rating

Type: integer

Оценка товара.

Min value: 1

Max value: 5

paidAmount

Type: integer

Количество баллов Плюса, которое автор получил за отзыв.

recommended

Type: boolean

Рекомендуют ли этот товар.

Example
{
  "rating": 1,
  "commentsCount": 0,
  "recommended": true,
  "paidAmount": 0
}

GoodsFeedbackUrbanadsDTO

Отзыв о товаре.

Name

Description

context

Type: GoodsFeedbackContextUrbanadsDTO

Информация о товаре, бизнесе и бренде, которые связаны с отзывом.

Example
{
  "offerName": "example",
  "pictureUrl": "example",
  "businessId": 1,
  "businessName": "example",
  "brandId": "example",
  "brandName": "example"
}

createdAt

Type: string<date-time>

Дата и время создания отзыва.

Example: 2025-01-01T00:00:00Z

feedbackId

Type: GoodsFeedbackId

Идентификатор отзыва.

Example: 0

needReaction

Type: boolean

Прочитан ли отзыв.

Принимает значение false, если рекламодатель:

statistics

Type: GoodsFeedbackStatisticsDTO

Статистическая информация по отзыву.

Example
{
  "rating": 1,
  "commentsCount": 0,
  "recommended": true,
  "paidAmount": 0
}

author

Type: string

Имя автора отзыва.

Example: example

description

Type: GoodsFeedbackDescriptionDTO

Текстовая часть отзыва.

Example
{
  "advantages": "example",
  "disadvantages": "example",
  "comment": "example"
}

media

Type: GoodsFeedbackMediaDTO

Фотографии и видео.

Example
{
  "photos": [
    "example"
  ],
  "videos": [
    "example"
  ]
}
Example
{
  "feedbackId": 0,
  "createdAt": "2025-01-01T00:00:00Z",
  "needReaction": true,
  "context": {
    "offerName": "example",
    "pictureUrl": "example",
    "businessId": 1,
    "businessName": "example",
    "brandId": "example",
    "brandName": "example"
  },
  "author": "example",
  "description": {
    "advantages": "example",
    "disadvantages": "example",
    "comment": "example"
  },
  "media": {
    "photos": [
      "example"
    ],
    "videos": [
      "example"
    ]
  },
  "statistics": {
    "rating": 1,
    "commentsCount": 0,
    "recommended": true,
    "paidAmount": 0
  }
}

PackagingForwardScrollingPagerDTO

Идентификатор следующей страницы.

Name

Description

nextPageToken

Type: string

Идентификатор следующей страницы результатов.

Example: example

Example
{
  "nextPageToken": "example"
}

GoodsFeedbackUrbanadsListDTO

Список отзывов о товарах.

Name

Description

feedbacks

Type: GoodsFeedbackUrbanadsDTO[]

Список отзывов.

Example
[
  {
    "feedbackId": 0,
    "createdAt": "2025-01-01T00:00:00Z",
    "needReaction": true,
    "context": {
      "offerName": "example",
      "pictureUrl": "example",
      "businessId": 1,
      "businessName": "example",
      "brandId": "example",
      "brandName": "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

Type: PackagingForwardScrollingPagerDTO

Идентификатор следующей страницы.

Example
{
  "nextPageToken": "example"
}
Example
{
  "feedbacks": [
    {
      "feedbackId": 0,
      "createdAt": "2025-01-01T00:00:00Z",
      "needReaction": true,
      "context": {
        "offerName": "example",
        "pictureUrl": "example",
        "businessId": 1,
        "businessName": "example",
        "brandId": "example",
        "brandName": "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: example

message

Type: string

Описание ошибки.

Example: 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: 1

    Example
    [
      {
        "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"
        }
      ]
    }