Получение вопросов о товарах продавца

Метод доступен для всех моделей.

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

Возвращает вопросы о товарах продавца по указанным фильтрам.

Результаты возвращаются постранично, одна страница содержит не более 50 вопросов.

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

Request

POST

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

Path parameters

Name

Description

businessId

Type: integer

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

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

Min value: 1

Query parameters

Name

Description

limit

Type: integer

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

Min value: 1

page_token

Type: string

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

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

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

Если задан page_token и в запросе есть параметры page и pageSize, они игнорируются.

Example: eyBuZXh0SWQ6IDIzNDIgfQ==

Body

application/json
{
  "offerId": "example",
  "categoryIds": [
    0
  ],
  "questionIds": [
    1
  ],
  "dateFrom": "2020-02-02",
  "dateTo": "2020-02-02",
  "updatedDateFrom": "2020-02-02T14:30:30+03:00",
  "updatedDateTo": "2020-02-02T14:30:30+03:00",
  "needAnswer": false,
  "sort": "CREATED_AT_DESC"
}

Name

Description

categoryIds

Type: integer[] | null

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

Min items: 1

Unique items: true

Example
[
  0
]

dateFrom

Type: string<date>

Дата начала периода создания вопроса.

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

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

Example: 2020-02-02

dateTo

Type: string<date>

Дата окончания периода создания вопроса.

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

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

Example: 2020-02-02

needAnswer

Type: boolean

Нужен ли ответ на вопрос.

  • true — только вопросы, которые ждут ответа.
  • false — все вопросы.

Default: false

sort

Type: QuestionSortOrderType

Порядок сортировки вопросов.

  • CREATED_AT_DESC — по дате создания вопроса по убыванию;
  • CREATED_AT_ASC — по дате создания вопроса по возрастанию.

Enum: CREATED_AT_DESC, CREATED_AT_ASC

QuestionSortOrderType

Порядок сортировки вопросов.

  • CREATED_AT_DESC — по дате создания вопроса по убыванию;
  • CREATED_AT_ASC — по дате создания вопроса по возрастанию.

Type: string

Enum: CREATED_AT_DESC, CREATED_AT_ASC

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

QuestionId

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

Type: integer

Min value: 1

Responses

200 OK

Список вопросов.

Body

application/json
{
  "status": "OK",
  "result": {
    "questions": [
      {
        "questionIdentifiers": {},
        "businessId": 1,
        "text": "example",
        "createdAt": "2025-01-01T00:00:00Z",
        "votes": {},
        "author": {}
      }
    ],
    "paging": {
      "nextPageToken": "example"
    },
    "totalCount": 0
  }
}

Type: object

All of 2 types
  • Type: ApiResponse

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

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

    result

    Type: QuestionListDTO

    Список вопросов.

    Example
    {
      "questions": [
        {
          "questionIdentifiers": {
            "id": 1,
            "categoryId": 0,
            "offerId": "example"
          },
          "businessId": 1,
          "text": "example",
          "createdAt": "2025-01-01T00:00:00Z",
          "votes": {
            "likes": 0,
            "dislikes": 0
          },
          "author": {
            "type": "USER",
            "name": "example"
          }
        }
      ],
      "paging": {
        "nextPageToken": "example"
      },
      "totalCount": 0
    }
    
    Example
    {
      "result": {
        "questions": [
          {
            "questionIdentifiers": {
              "id": 1,
              "categoryId": 0,
              "offerId": "example"
            },
            "businessId": 1,
            "text": "example",
            "createdAt": "2025-01-01T00:00:00Z",
            "votes": {
              "likes": 0,
              "dislikes": 0
            },
            "author": {
              "type": "USER",
              "name": "example"
            }
          }
        ],
        "paging": {
          "nextPageToken": "example"
        },
        "totalCount": 0
      }
    }
    

ApiResponseStatusType

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

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

Type: string

Enum: OK, ERROR

ApiResponse

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

Name

Description

status

Type: ApiResponseStatusType

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

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

Enum: OK, ERROR

Example
{
  "status": "OK"
}

QuestionIdentifiersDTO

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

Name

Description

id

Type: QuestionId

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

Min value: 1

Example: 1

offerId

Type: ShopSku

Ваш SKU — идентификатор товара в вашей системе.

Правила использования SKU:

  • У каждого товара SKU должен быть свой.

  • Уже заданный SKU нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.

SKU товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте в Справке Маркета для продавцов.

Важно

Пробельные символы в начале и конце значения автоматически удаляются. Например, " SKU123 " и "SKU123" будут обработаны как одинаковые значения.

Что такое SKU и как его назначать

Min length: 1

Max length: 255

Pattern: ^(?=.*\S.*)[^\x00-\x08\x0A-\x1f\x7f]{1,255}$

Example: example

categoryId

Type: integer

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

Min value: 0

Example
{
  "id": 1,
  "categoryId": 0,
  "offerId": "example"
}

BusinessId

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

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

Type: integer

Min value: 1

QuestionsTextContent

Текстовое содержимое.

Type: string

Min length: 1

Max length: 5000

Example: example

VotesDTO

Количество лайков и дизлайков на вопросе, ответе или комментарии.

Name

Description

dislikes

Type: integer

Количество дизлайков.

likes

Type: integer

Количество лайков.

Example
{
  "likes": 0,
  "dislikes": 0
}

QuestionsTextContentAuthorType

Тип автора:

  • USER — пользователь.
  • BUSINESS — кабинет.
  • VENDOR — производитель.
  • BRAND — бренд.

Type: string

Enum: USER, BUSINESS, VENDOR, BRAND

QuestionsTextContentAuthorDTO

Информация об авторе комментария.

Name

Description

name

Type: string

Имя автора или название кабинета.

Example: example

type

Type: QuestionsTextContentAuthorType

Тип автора:

  • USER — пользователь.
  • BUSINESS — кабинет.
  • VENDOR — производитель.
  • BRAND — бренд.

Enum: USER, BUSINESS, VENDOR, BRAND

Example
{
  "type": "USER",
  "name": "example"
}

QuestionDTO

Вопрос.

Name

Description

author

Type: QuestionsTextContentAuthorDTO

Информация об авторе комментария.

Example
{
  "type": "USER",
  "name": "example"
}

businessId

Type: BusinessId

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

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

Min value: 1

Example: 1

createdAt

Type: string<date-time>

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

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

questionIdentifiers

Type: QuestionIdentifiersDTO

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

Example
{
  "id": 1,
  "categoryId": 0,
  "offerId": "example"
}

text

Type: QuestionsTextContent

Текстовое содержимое.

Min length: 1

Max length: 5000

Example: example

votes

Type: VotesDTO

Количество лайков и дизлайков на вопросе, ответе или комментарии.

Example
{
  "likes": 0,
  "dislikes": 0
}
Example
{
  "questionIdentifiers": {
    "id": 1,
    "categoryId": 0,
    "offerId": "example"
  },
  "businessId": 1,
  "text": "example",
  "createdAt": "2025-01-01T00:00:00Z",
  "votes": {
    "likes": 0,
    "dislikes": 0
  },
  "author": {
    "type": "USER",
    "name": "example"
  }
}

ForwardScrollingPagerDTO

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

Name

Description

nextPageToken

Type: string

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

Example: example

Example
{
  "nextPageToken": "example"
}

QuestionListDTO

Список вопросов.

Name

Description

questions

Type: QuestionDTO[]

Список вопросов.

Example
[
  {
    "questionIdentifiers": {
      "id": 1,
      "categoryId": 0,
      "offerId": "example"
    },
    "businessId": 1,
    "text": "example",
    "createdAt": "2025-01-01T00:00:00Z",
    "votes": {
      "likes": 0,
      "dislikes": 0
    },
    "author": {
      "type": "USER",
      "name": "example"
    }
  }
]

totalCount

Type: integer

Общее количество вопросов, которые попадают под фильтр.

paging

Type: ForwardScrollingPagerDTO

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

Example
{
  "nextPageToken": "example"
}
Example
{
  "questions": [
    {
      "questionIdentifiers": {
        "id": 1,
        "categoryId": 0,
        "offerId": "example"
      },
      "businessId": 1,
      "text": "example",
      "createdAt": "2025-01-01T00:00:00Z",
      "votes": {
        "likes": 0,
        "dislikes": 0
      },
      "author": {
        "type": "USER",
        "name": "example"
      }
    }
  ],
  "paging": {
    "nextPageToken": "example"
  },
  "totalCount": 0
}

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"
        }
      ]
    }
    

No longer supported, please use an alternative and newer version.