Получение истории сообщений в чате

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

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

Возвращает историю сообщений в чате с покупателем.

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

Request

POST

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

Path parameters

Name

Description

businessId

Type: integer

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

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

Min value: 1

Query parameters

Name

Description

chatId

Type: integer

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

Min value: 1

limit

Type: integer

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

Min value: 1

page_token

Type: string

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

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

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

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

Example: eyBuZXh0SWQ6IDIzNDIgfQ==

Body

application/json
{
  "messageIdFrom": 1
}

Name

Description

messageIdFrom

Type: integer

Идентификатор сообщения, начиная с которого нужно получить все последующие сообщения.

Min value: 1

Responses

200 OK

История сообщений.

Body

application/json
{
  "status": "OK"
}

Type: object

ApiResponseStatusType

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

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

Type: string

Enum: OK, ERROR

ApiResponse

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

Name

Description

status

Type: ApiResponseStatusType

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

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

Enum: OK, ERROR

Example
{
  "status": "OK"
}

ChatContextType

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

Type: string

Enum: ORDER, RETURN, DIRECT

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
}

ChatMessageSenderType

Кто отправил сообщение:

  • PARTNER — магазин.
  • CUSTOMER — покупатель.
  • MARKET — Маркет (автоматическое сообщение).
  • SUPPORT — сотрудник службы поддержки Маркета.

Type: string

Enum: PARTNER, CUSTOMER, MARKET, SUPPORT

Url

Type: string

Min length: 1

Max length: 2000

Example: example

ChatMessagePayloadDTO

Информация о приложенных к сообщению файлах.

Name

Description

name

Type: string

Название файла.

Example: example

size

Type: integer

Размер файла в байтах.

url

Type: Url

Ссылка для скачивания файла.

Min length: 1

Max length: 2000

Example: example

Example
{
  "name": "example",
  "url": "example",
  "size": 0
}

ChatMessageDTO

Информация о сообщении.

Name

Description

createdAt

Type: string<date-time>

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

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

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

messageId

Type: integer

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

Min value: 1

sender

Type: ChatMessageSenderType

Отправитель.

Кто отправил сообщение:

  • PARTNER — магазин.
  • CUSTOMER — покупатель.
  • MARKET — Маркет (автоматическое сообщение).
  • SUPPORT — сотрудник службы поддержки Маркета.

Enum: PARTNER, CUSTOMER, MARKET, SUPPORT

message

Type: string

Текст сообщения.

Необязательный параметр, если возвращается параметр payload.

Example: example

payload

Type: ChatMessagePayloadDTO[] | null

Информация о приложенных к сообщению файлах.

Необязательный параметр, если возвращается параметр message.

Min items: 1

Example
[
  {
    "name": "example",
    "url": "example",
    "size": 0
  }
]
Example
{
  "messageId": 1,
  "createdAt": "2017-11-21T00:00:00+03:00",
  "sender": "PARTNER",
  "message": "example",
  "payload": [
    {
      "name": "example",
      "url": "example",
      "size": 0
    }
  ]
}

ForwardScrollingPagerDTO

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

Name

Description

nextPageToken

Type: string

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

Example: example

Example
{
  "nextPageToken": "example"
}

ChatMessagesResultDTO

Информация о сообщениях.

Name

Description

context

Type: ChatFullContextDTO

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

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

messages

Type: ChatMessageDTO[]

Информация о сообщениях.

Example
[
  {
    "messageId": 1,
    "createdAt": "2017-11-21T00:00:00+03:00",
    "sender": "PARTNER",
    "message": "example",
    "payload": [
      {
        "name": "example",
        "url": "example",
        "size": 0
      }
    ]
  }
]

orderId

Type: integer

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

paging

Type: ForwardScrollingPagerDTO

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

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

Example
{
  "nextPageToken": "example"
}
Example
{
  "orderId": 0,
  "context": {
    "type": "ORDER",
    "customer": {
      "name": "example",
      "publicId": "example"
    },
    "campaignId": 1,
    "orderId": 1,
    "returnId": 1
  },
  "messages": [
    {
      "messageId": 1,
      "createdAt": "2017-11-21T00:00:00+03:00",
      "sender": "PARTNER",
      "message": "example",
      "payload": [
        {
          "name": "example",
          "url": "example",
          "size": 0
        }
      ]
    }
  ],
  "paging": {
    "nextPageToken": "example"
  }
}

400 Bad Request

Запрос содержит неправильные данные. Подробнее об ошибке

Body

application/json
{
  "status": "OK"
}

Type: object

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

401 Unauthorized

В запросе не указаны данные для авторизации. Подробнее об ошибке

Body

application/json
{
  "status": "OK"
}

Type: object

403 Forbidden

Данные для авторизации неверны или доступ к ресурсу запрещен. Подробнее об ошибке

Body

application/json
{
  "status": "OK"
}

Type: object

404 Not Found

Запрашиваемый ресурс не найден. Подробнее об ошибке

Body

application/json
{
  "status": "OK"
}

Type: object

420 Method Failure

Превышено ограничение на доступ к ресурсу. Подробнее об ошибке

Body

application/json
{
  "status": "OK"
}

Type: object

500 Internal Server Error

Внутренняя ошибка Маркета. Подробнее об ошибке

Body

application/json
{
  "status": "OK"
}

Type: object

pathParams:
  - description: "Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [GET\_v2/campaigns](../../reference/campaigns/getCampaigns.md).\n\nℹ️ [Что такое кабинет и магазин на Маркете](https://yandex.ru/support/marketplace/account/introduction.html)\n"
    name: businessId
    in: path
    required: true
    schema:
      type: integer
      format: int64
      minimum: 1
searchParams:
  - description: Идентификатор чата.
    name: chatId
    in: query
    required: true
    schema:
      type: integer
      format: int64
      minimum: 1
  - name: page_token
    description: >
      Идентификатор страницы c результатами.


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


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


      Если задан `page_token` и в запросе есть параметры `page` и `pageSize`,
      они игнорируются.
    in: query
    required: false
    example: eyBuZXh0SWQ6IDIzNDIgfQ==
    schema:
      type: string
  - name: limit
    description: |
      Количество значений на одной странице.
    in: query
    required: false
    example: 20
    schema:
      type: integer
      format: int32
      minimum: 1
headers: []
body: |-
  {
    "messageIdFrom": 1
  }
schema:
  description: |
    Историю какого чата нужно получить — и начиная с какого сообщения.
  type: object
  properties:
    messageIdFrom:
      description: >-
        Идентификатор сообщения, начиная с которого нужно получить все
        последующие сообщения.
      type: integer
      format: int64
      minimum: 1
bodyType: application/json
method: post
security:
  - type: apiKey
    name: Api-Key
    in: header
  - type: oauth2
    x-inline: true
    flows:
      implicit:
        authorizationUrl: https://oauth.yandex.ru/authorize
        scopes:
          market:partner-api: API Яндекс.Маркета / Поиска по товарам для партнеров
path: v2/businesses/{businessId}/chats/history
host: https://api.partner.market.yandex.ru

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

Например, Пожалуйста, не запрашивайте у покупателей контакты, не присылайте ссылки на другие сайты. Мы видим переписку и скрываем товары с витрины, когда правила общения в чатах нарушаются.