Список соответствий товаров (`offer_id` ↔ `product_id`)

POST /v1/product/mapping/list

POST/v1/product/mapping/list

Возвращает соответствие между идентификатором карточки товара на витрине (product_id) и идентификатором карточки продавца (offer_id).

Метод предназначен для случаев, когда витрина оперирует собственными product_id и не поддерживает идентификацию товаров исключительно по offer_id.

Если одному offer_id соответствует несколько карточек на витрине, в ответе будет возвращён массив. Такая ситуация возникает, когда структура товара допускает множественное представление и это предусмотрено как настройками загрузки мерчанта, так и возможностями самой витрины.

Тело запроса

filter
object
required

Фильтр. Если поле фильтра не передано, равно null или передан пустой массив [], фильтрация по этому полю не применяется. При одновременном указании нескольких фильтров условия объединяются по AND. Заполняется либо offer_id, либо product_id. Если заполнены оба идентификатора, то используется только product_id. Витрина может потребовать передавать оба параметра offer_id и product_id.

Показать свойства
is_archived
boolean

Фильтр по архиву: true — только архивные, false — только неархивные.

offer_id
array

Фильтр по артикулам продавца.

product_id
array

Фильтр по идентификаторам товара.

cursor
string

Курсор начала отсчёта.

limit
integer
required

Размер страницы. min = 1; max = 300; default = 100.

Успешный ответ

200A successful response.
application/json
object
mappings
array
required

Элементы списка.

Если вернулись оба поля product_id и offer_id, приоритетным считается product_id.

Показать свойства
product_id
string
required

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

offer_id
string
required

Артикул продавца.

is_archived
boolean
required

Признак архива. true — товар архивный и скрыт из выдачи; false — товар в выдаче.

next_cursor
string

Курсор начала отсчёта.

total
integer

Общее количество записей.

Ошибки

400Некорректный запрос
application/json
object
error_type
string

Класс транспортной ошибки запроса (HTTP 4xx/5xx).

Поэлементные и бизнес-ошибки сущности приходят в HTTP 200 в errors/failed, не в этом поле.

  • ERROR_TYPE_UNSPECIFIED: не используется
  • ERROR_TYPE_UNAUTHORIZED: HTTP 401
  • ERROR_TYPE_RATE_LIMIT: HTTP 429
  • ERROR_TYPE_INTERNAL: HTTP 500
  • ERROR_TYPE_BAD_REQUEST: HTTP 400 (уровень запроса)
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string

Машинный код ошибки. Уточняет error_type.

message
string

Человекочитаемое сообщение об ошибке.

details
object
401Ошибка авторизации
application/json
object
error_type
string

Класс транспортной ошибки запроса (HTTP 4xx/5xx).

Поэлементные и бизнес-ошибки сущности приходят в HTTP 200 в errors/failed, не в этом поле.

  • ERROR_TYPE_UNSPECIFIED: не используется
  • ERROR_TYPE_UNAUTHORIZED: HTTP 401
  • ERROR_TYPE_RATE_LIMIT: HTTP 429
  • ERROR_TYPE_INTERNAL: HTTP 500
  • ERROR_TYPE_BAD_REQUEST: HTTP 400 (уровень запроса)
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string

Машинный код ошибки. Уточняет error_type.

message
string

Человекочитаемое сообщение об ошибке.

details
object
429Превышен лимит запросов
application/json
object
error_type
string

Класс транспортной ошибки запроса (HTTP 4xx/5xx).

Поэлементные и бизнес-ошибки сущности приходят в HTTP 200 в errors/failed, не в этом поле.

  • ERROR_TYPE_UNSPECIFIED: не используется
  • ERROR_TYPE_UNAUTHORIZED: HTTP 401
  • ERROR_TYPE_RATE_LIMIT: HTTP 429
  • ERROR_TYPE_INTERNAL: HTTP 500
  • ERROR_TYPE_BAD_REQUEST: HTTP 400 (уровень запроса)
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string

Машинный код ошибки. Уточняет error_type.

message
string

Человекочитаемое сообщение об ошибке.

details
object
500Внутренняя ошибка сервера
application/json
object
error_type
string

Класс транспортной ошибки запроса (HTTP 4xx/5xx).

Поэлементные и бизнес-ошибки сущности приходят в HTTP 200 в errors/failed, не в этом поле.

  • ERROR_TYPE_UNSPECIFIED: не используется
  • ERROR_TYPE_UNAUTHORIZED: HTTP 401
  • ERROR_TYPE_RATE_LIMIT: HTTP 429
  • ERROR_TYPE_INTERNAL: HTTP 500
  • ERROR_TYPE_BAD_REQUEST: HTTP 400 (уровень запроса)
Допустимые значения
ERROR_TYPE_UNSPECIFIEDERROR_TYPE_UNAUTHORIZEDERROR_TYPE_RATE_LIMITERROR_TYPE_INTERNALERROR_TYPE_BAD_REQUEST
code
string

Машинный код ошибки. Уточняет error_type.

message
string

Человекочитаемое сообщение об ошибке.

details
object
POST/v1/product/mapping/list
1curl https://api.omninet.ru/v1/product/mapping/list \2  --request POST \3  --header 'Content-Type: application/json' \4  --data '{5  "filter": {6    "is_archived": true,7    "offer_id": [8      "string"9    ],10    "product_id": [11      "string"12    ]13  },14  "cursor": "string",15  "limit": 016}'
{
  "mappings": [
    {
      "product_id": "string",
      "offer_id": "string",
      "is_archived": true
    }
  ],
  "next_cursor": "string",
  "total": 0
}

A successful response.