---
description: >-
  С помощью API можно отправлять не только одиночные сообщения, но и группы
  (пакеты) сообщений.
---

# Пакетная отправка сообщений

## Отправка SMS-сообщения

<mark style="color:green;">`POST`</mark> `https://external-api.i-dgtl.ru/pack`

Тело запроса представляет собой массив из одиночных сообщений.\
Описание и предназначение полей эквивалентны полям при отправке одиночного сообщения.

#### Headers

| Name          | Type   | Description                 |
| ------------- | ------ | --------------------------- |
| Content-Type  | string | application/json            |
| Authorization | string | 'nodeID:password' \| base64 |

#### Request Body

| Name            | Type    | Description                                                                                                                                                                                                                                      |
| --------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| @type           | string  | Тип сообщения, имеет постоянное значение оutbound (исходящее).                                                                                                                                                                                   |
| addresses       | object  | Объект, содержащий адреса отправителя и получателя.                                                                                                                                                                                              |
| source          | string  | Имя или адрес отправителя.                                                                                                                                                                                                                       |
| destination     | string  | <p>Адрес или номер телефона получателя.<br>Указывается в международном формате MSISDN, состоящем из кода страны, DEF-кода оператора и номера абонента.<br>Например, российский номер выглядит так: 79001234567, где 7 - код страны (Россия).</p> |
| body            | object  | Объект, в котором передаётся содержимое сообщения.                                                                                                                                                                                               |
| bodyType        | string  | <p>Тип сообщения:<br>- <code>sms</code><br>- <code>viber</code><br>- <code>email</code><br>- <code>vk</code><br>- <code>push</code><br>- <code>whatsapp</code><br>- <code>voicecall</code></p>                                                   |
| content         | string  | <p>Текст сообщения.<br>Строка.*</p>                                                                                                                                                                                                              |
| nodeId          | integer | Номер ноды                                                                                                                                                                                                                                       |
| requestDelivery | boolean | Указывает, cледует ли предоставлять отчёт о доставке после отправки сообщения (`true`\|`false`).                                                                                                                                                 |
| expirationDate  | integer | <p>Время, до которого будет ожидаться получение статуса от оператора.<br>Тип значения - <strong>timestamp</strong> в миллисекундах или в формате ISO 8601.<br>По умолчанию составляет 24 часа с момента отправки сообщения.</p>                  |

::::{tab-set}

:::{tab-item} 200 В случае успешного запроса возвращается ответ, в котором указан идентификатор сообщения и время отправки сообщения в формате Unix Timestamp.

```
{
    "timestamp": 1632213633318,
    "code": 200,
    "responses": [
        {
            "id": "41937aa1-6322-1363-3298-aa0003434990",
            "timestamp": 1632213633323,
            "code": 200
        },
        {
            "id": "41937aa1-6322-1363-3298-aa0003434991",
            "timestamp": 1632213633328,
            "code": 200
        }
    ]
}
```
:::


:::{tab-item} 400 Некорректный синтаксис запроса

```
{
    "timestamp": 1632213678404,
    "code": 400,
    "description": "incorrect request body"
}
```
:::

::::


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

```
POST https://external-api.i-dgtl.ru/pack
Authorization: Basic Mzk5OTk6MTIzNjU0
Content-Type: application/json
[
  {
    "@type": "outbound",
    "addresses": {
      "source": "Test1",
      "destination": "79500197493"
    },
    "body": {
      "bodyType": "text",
      "content": "Have a nice day!"
    },
    "nodeId": 31937,
    "requestDelivery": false
  },
  {
    "@type": "outbound",
    "addresses": {
      "source": "Test2",
      "destination": "79215779124"
    },
    "body": {
      "bodyType": "text",
      "content": "Have a nice day!"
    },
    "nodeId": 31937,
    "requestDelivery": true
  }
]
```

{% hint style="warning" %}
Максимальное количество сообщений в пакете составляет 100.
{% endhint %}
