Перейти к основному содержимому

Создать новый тред с сообщением из рассылки с пересылкой клиенту

Метод предназначен для передачи массовых коммуникаций в edna Chat Center. С его помощью внешняя система может создавать рассылочные треды с клиентами, сохранять сообщения с поддержкой Markdown, передавать вложения и задавать параметры роутинга для маршрутизации треда при ответе клиента на рассылку.

    ----
Permissions:INTEGRATION
----

Пример curl

$ curl 'http://localhost:8080/api/v1/distributions-relay' -i -X POST \
-H 'Content-Type: application/json' \
-H 'X-Tenant-Name: local' \
  -d '{
"messages" : [
{
"client" : {
"extId" : "client-uuid-12345"
},
"routing" : {
"skillId" : 42,
"priority" : 1,
"expiredAt" : "2026-02-03T12:00:00Z"
},
"text" : "Здравствуйте!",
"formattedText" : "**Здравствуйте!**",
"campaignName" : "campaign-name",
"chatMessageId" : "msg-unique-122",
"channel" : {
"channelType" : "MOBILE",
"appMarker" : "appMarker"
},
"attributes" : {
"botNotificationExpiredAt" : "2026-02-02T12:00:00Z"
},
"attachments" : [
{
"url" : "https://example.com/receipt.pdf",
"name" : "receipt.pdf"
}
]
},
{
"client" : {
"extId" : "client-uuid-54321"
},
"routing" : {
"skillId" : 42,
"priority" : 1,
"expiredAt" : "2026-02-03T12:00:00Z"
},
"text" : "Здравствуйте!",
"formattedText" : "**Здравствуйте!**",
"campaignName" : "campaign-name",
"chatMessageId" : "msg-unique-221",
"channel" : { 
"channelType" : "MOBILE",
"appMarker" : "appMarker"
},
"attributes" : {
"botNotificationExpiredAt" : "2026-02-02T12:00:00Z"
}
}
]
}'

Параметры тела запроса

Путь к полюТипХарактерОписание
messageslist of objectsОбязательныйСписок сообщений для рассылки.
messages.client.extIdstringОбязательныйВнешний ID клиента .
messages.routingobjectОбязательныйНастройки роутинга.
messages.routing.skillIdnumberОбязательныйID навыка.
messages.routing.prioritynumberОбязательныйПриоритетность в очереди распределения относительно других тредов. Значение по умолчанию: 100.
messages.routing.expiredAtdateОбязательныйДата истечения срока действия параметров маршрутизации.
messages.textstringОбязательныйТекст сообщения.
messages.formattedTextstringНеобязательныйФорматированный текст.
messages.campaignNamestringОбязательныйНазвание кампании.
messages.chatMessageIdstringОбязательныйУникальный внешний ID сообщения.
messages.channelobjectНеобязательныйНастройки канала.
messages.channel.channelTypestringОбязательный при наличии messages.channelТип канала.
messages.channel.appMarkerstringНеобязательныйМаркер приложения.
messages.attributesobjectНеобязательныйДополнительные атрибуты.
messages.attributes.​botNotificationExpiredAtdateНеобязательныйТайм-аут откладывания приветствия ботом.
messages.attachmentslist of objectsНеобязательныйСписок вложений.
messages.attachments.urlstringОбязательный при наличии messages.attachmentsСсылка на вложение.
messages.attachments.namestringОбязательный при наличии messages.attachmentsИмя файла.

Пример HTTP запроса

POST /api/v1/distributions-relay HTTP/1.1
Content-Type: application/json
X-Tenant-Name: local
Content-Length: 1188
Host: localhost:8080

{
"messages" : [
{
"client" : {
"extId" : "client-uuid-12345"
},
"routing" : {
"skillId" : 42,
"priority" : 1,
"expiredAt" : "2026-02-03T12:00:00Z"
},
"text" : "Здравствуйте!",
"formattedText" : "**Здравствуйте!**",
"campaignName" : "campaign-name",
"chatMessageId" : "msg-unique-122",
"channel" : {
"channelType" : "MOBILE",
"appMarker" : "appMarker"
},
"attributes" : {
"botNotificationExpiredAt" : "2026-02-02T12:00:00Z"
},
"attachments" : [
{
"url" : "https://example.com/receipt.pdf",
"name" : "receipt.pdf"
}
]
},
{
"client" : {
"extId" : "client-uuid-54321"
},
"routing" : {
"skillId" : 42,
"priority" : 1,
"expiredAt" : "2026-02-03T12:00:00Z"
},
"text" : "Здравствуйте!",
"formattedText" : "**Здравствуйте!**",
"campaignName" : "campaign-name",
"chatMessageId" : "msg-unique-221",
"channel" : {
"channelType" : "MOBILE",
"appMarker" : "appMarker"
},
"attributes" : {
"botNotificationExpiredAt" : "2026-02-02T12:00:00Z"
}
}
]
}

Пример HTTP ответа

HTTP/1.1 202 Accepted
X-Request-Id: 156fb33b-5b46-43fc-a21a-9d9ca49b19d9
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 111
[
{
"id" : "msg-unique-122",
"status" : "ACCEPTED"
},
{
"id" : "msg-unique-221",
"status" : "ERROR"
}
]