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

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

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

Возвращает чаты с покупателями.

Подключите API-уведомления

Маркет отправит вам запрос POST notification, когда появится новый чат или сообщение.

Как работать с уведомлениями

Ограничение для параметра limit

Не передавайте значение больше 20.

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

Request

POST

https://api.partner.market.yandex.ru/v2/businesses/{businessId}/chats

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
{
  "orderIds": [
    0
  ],
  "contexts": [
    {
      "type": "ORDER",
      "id": 1
    }
  ],
  "contextTypes": [
    "ORDER"
  ],
  "types": [
    "CHAT"
  ],
  "statuses": [
    "NEW"
  ]
}

Name

Description

contexts

Type: ChatContextDTO[] | null

Фильтр по контексту чата.

Min items: 1

Unique items: true

Example
[
  {
    "type": "ORDER",
    "id": 1
  }
]

contextTypes

Type: ChatContextType[] | null

Фильтр по типу контекста чата.

Min items: 1

Unique items: true

Example
[
  "ORDER"
]

orderIds

Type: integer[] | null

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

Min items: 1

Unique items: true

Example
[
  0
]

statuses

Type: ChatStatusType[] | null

Фильтр по статусам чатов.

Min items: 1

Unique items: true

Example
[
  "NEW"
]

types

Type: ChatType[] | null

Фильтр по типам чатов.

Min items: 1

Unique items: true

Example
[
  "CHAT"
]

ChatContextIdentifiableType

Тип чата:

  • ORDER — по заказам.
  • RETURN — по возвратам (FBY, FBS и Экспресс).

Подробнее о чатах по заказам и возвратам читайте в Справке Маркета для продавцов.

Type: string

Enum: ORDER, RETURN

ChatContextDTO

Информация о заказе или возврате, по которому начат чат.

Name

Description

id

Type: integer

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

Min value: 1

type

Type: ChatContextIdentifiableType

Тип чата:

  • ORDER — по заказам.
  • RETURN — по возвратам (FBY, FBS и Экспресс).

Подробнее о чатах по заказам и возвратам читайте в Справке Маркета для продавцов.

Enum: ORDER, RETURN

Example
{
  "type": "ORDER",
  "id": 1
}

ChatContextType

Тип контекста:

Type: string

Enum: ORDER, RETURN, DIRECT

ChatType

Тип чата:

  • CHAT — чат с покупателем.
  • ARBITRAGE — спор.

Type: string

Enum: CHAT, ARBITRAGE

ChatStatusType

Статус чата:

  • NEW — новый чат.
  • WAITING_FOR_CUSTOMER — нужен ответ покупателя.
  • WAITING_FOR_PARTNER — нужен ответ магазина.
  • WAITING_FOR_ARBITER — нужен ответ арбитра.
  • WAITING_FOR_MARKET — нужен ответ Маркета.
  • FINISHED — чат завершен.

Type: string

Enum: NEW, WAITING_FOR_CUSTOMER, WAITING_FOR_PARTNER, WAITING_FOR_ARBITER, WAITING_FOR_MARKET, FINISHED

Responses

200 OK

Список чатов.

Body

application/json
{
  "status": "OK",
  "result": {
    "chats": [
      {
        "chatId": 1,
        "orderId": 1,
        "context": {},
        "type": "CHAT",
        "status": "NEW",
        "createdAt": "2017-11-21T00:00:00+03:00",
        "updatedAt": "2017-11-21T00:00:00+03:00"
      }
    ],
    "paging": {
      "nextPageToken": "example"
    }
  }
}

Type: object

All of 2 types
  • Type: ApiResponse

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

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

    result

    Type: GetChatsInfoDTO

    Список чатов.

    Example
    {
      "chats": [
        {
          "chatId": 1,
          "orderId": 1,
          "context": {
            "type": "ORDER",
            "customer": {
              "name": "example",
              "publicId": "example"
            },
            "campaignId": 1,
            "orderId": 1,
            "returnId": 1
          },
          "type": "CHAT",
          "status": "NEW",
          "createdAt": "2017-11-21T00:00:00+03:00",
          "updatedAt": "2017-11-21T00:00:00+03:00"
        }
      ],
      "paging": {
        "nextPageToken": "example"
      }
    }
    
    Example
    {
      "result": {
        "chats": [
          {
            "chatId": 1,
            "orderId": 1,
            "context": {
              "type": "ORDER",
              "customer": {},
              "campaignId": 1,
              "orderId": 1,
              "returnId": 1
            },
            "type": "CHAT",
            "status": "NEW",
            "createdAt": "2017-11-21T00:00:00+03:00",
            "updatedAt": "2017-11-21T00:00:00+03:00"
          }
        ],
        "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"
}

ChatCustomerDTO

Информация о покупателе в чате.

Name

Description

name

Type: string

Публичное имя покупателя в Яндекс Паспорте, которое отображается в сервисах Яндекса.

Min length: 1

Example: example

publicId

Type: string

Публичный идентификатор пользователя в Яндекс Паспорте.

Примеры, где используется
  • Маркет: https://market.yandex.ru/user/{public-id}/reviews
  • Дзен: https://zen.yandex.ru/user/{public-id}
  • Отзывы: https://yandex.ru/user/{public-id}

Подробнее о публичных данных читайте в документации Яндекс ID.

Min length: 1

Example: example

Example
{
  "name": "example",
  "publicId": "example"
}

CampaignId

Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия.

Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:

  • блок Идентификатор кампании;
  • вкладка Лог запросов → выпадающий список в блоке Показывать логи.

⚠️ Не путайте его с:

  • идентификатором магазина, который отображается в личном кабинете продавца;
  • рекламными кампаниями.

Type: integer

Min value: 1

ChatFullContextDTO

Информация о заказе или возврате, по которому начат чат.

Name

Description

type

Type: ChatContextType

Тип контекста:

Enum: ORDER, RETURN, DIRECT

campaignId

Type: CampaignId

Возвращается для заказов и возвратов.

Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия.

Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:

  • блок Идентификатор кампании;
  • вкладка Лог запросов → выпадающий список в блоке Показывать логи.

⚠️ Не путайте его с:

  • идентификатором магазина, который отображается в личном кабинете продавца;
  • рекламными кампаниями.

Min value: 1

Example: 1

customer

Type: ChatCustomerDTO

Информация о покупателе.

Информация о покупателе в чате.

Example
{
  "name": "example",
  "publicId": "example"
}

orderId

Type: integer

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

Возвращается для заказов и возвратов.

Min value: 1

returnId

Type: integer

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

Возвращается только для возвратов.

Min value: 1

Example
{
  "type": "ORDER",
  "customer": {
    "name": "example",
    "publicId": "example"
  },
  "campaignId": 1,
  "orderId": 1,
  "returnId": 1
}

GetChatInfoDTO

Информация о чате.

Name

Description

chatId

Type: integer

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

Min value: 1

context

Type: ChatFullContextDTO

Информация о заказе или возврате, по которому начат чат.

Example
{
  "type": "ORDER",
  "customer": {
    "name": "example",
    "publicId": "example"
  },
  "campaignId": 1,
  "orderId": 1,
  "returnId": 1
}

createdAt

Type: string<date-time>

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

Формат даты: ISO 8601 со смещением относительно UTC.

Example: 2017-11-21T00:00:00+03:00

status

Type: ChatStatusType

Статус чата:

  • NEW — новый чат.
  • WAITING_FOR_CUSTOMER — нужен ответ покупателя.
  • WAITING_FOR_PARTNER — нужен ответ магазина.
  • WAITING_FOR_ARBITER — нужен ответ арбитра.
  • WAITING_FOR_MARKET — нужен ответ Маркета.
  • FINISHED — чат завершен.

Enum: NEW, WAITING_FOR_CUSTOMER, WAITING_FOR_PARTNER, WAITING_FOR_ARBITER, WAITING_FOR_MARKET, FINISHED

type

Type: ChatType

Тип чата:

  • CHAT — чат с покупателем.
  • ARBITRAGE — спор.

Enum: CHAT, ARBITRAGE

updatedAt

Type: string<date-time>

Дата и время последнего сообщения в чате.

Формат даты: ISO 8601 со смещением относительно UTC.

Example: 2017-11-21T00:00:00+03:00

orderId

Type: integer

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

Min value: 1

Example
{
  "chatId": 1,
  "orderId": 1,
  "context": {
    "type": "ORDER",
    "customer": {
      "name": "example",
      "publicId": "example"
    },
    "campaignId": 1,
    "orderId": 1,
    "returnId": 1
  },
  "type": "CHAT",
  "status": "NEW",
  "createdAt": "2017-11-21T00:00:00+03:00",
  "updatedAt": "2017-11-21T00:00:00+03:00"
}

ForwardScrollingPagerDTO

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

Name

Description

nextPageToken

Type: string

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

Example: example

Example
{
  "nextPageToken": "example"
}

GetChatsInfoDTO

Список чатов.

Name

Description

chats

Type: GetChatInfoDTO[]

Информация о чатах.

Example
[
  {
    "chatId": 1,
    "orderId": 1,
    "context": {
      "type": "ORDER",
      "customer": {
        "name": "example",
        "publicId": "example"
      },
      "campaignId": 1,
      "orderId": 1,
      "returnId": 1
    },
    "type": "CHAT",
    "status": "NEW",
    "createdAt": "2017-11-21T00:00:00+03:00",
    "updatedAt": "2017-11-21T00:00:00+03:00"
  }
]

paging

Type: ForwardScrollingPagerDTO

Информация о страницах с результатами.

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

Example
{
  "nextPageToken": "example"
}
Example
{
  "chats": [
    {
      "chatId": 1,
      "orderId": 1,
      "context": {
        "type": "ORDER",
        "customer": {
          "name": "example",
          "publicId": "example"
        },
        "campaignId": 1,
        "orderId": 1,
        "returnId": 1
      },
      "type": "CHAT",
      "status": "NEW",
      "createdAt": "2017-11-21T00:00:00+03:00",
      "updatedAt": "2017-11-21T00:00:00+03:00"
    }
  ],
  "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"
        }
      ]
    }
    

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