# Запрос к API

## Получение массива статусов

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

#### Headers

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

#### Request Body

| Name  | Type    | Description                                                                                                                              |
| ----- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| count | integer | <p>Количество сообщений, которые будут включены в ответ.<br>Максимальное количество запрашиваемых сообщений не должно превышать 100.</p> |

::::{tab-set}

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

```
{
   
    "timestamp": 1632217478097,
    "code": 200,
    "messages": [
    {
      "@type": "inbound",
      "properties": {},
      "creationDate": 1570439178438,
      "requestDelivery": false,
      "addresses": {
        "source": "Test",
        "destination": "79000000000"
      },
      "body": {
        "bodyType": "text",
        "content": "текст сообщения"
      },
      "expirationDate": "timestamp",
      "msid": "MSID сообщения"
    }
  ]   
}
```
:::


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

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

::::


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

::::{tab-set}

:::{tab-item} Curl

```
curl --location --request POST 'https://external-api.i-dgtl.ru/receiveinbound' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic MzE5Mzc6RGFlZ2g3cmk=' \
--data-raw '10'
```
:::

::::


### **Параметры ответа**

| Параметр  | Тип       | Значение                                                    |
| --------- | --------- | ----------------------------------------------------------- |
| timestamp | timestamp | время отправки сообщения в формате Unix Timestamp           |
| code      | integer   | код ответа (в случае успешного выполнения запроса - 200 OK) |
| messages  | object    | объект, cодержащий принятые сообщения                       |

### **Параметры сообщения в массиве**

| Параметр        | Тип       | Значение                                                                                                                                                               |
| --------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| @type           | string    | Тип сообщения (входящее или исходящее); в данном случае имеет значение inbound                                                                                         |
| properties      | string    | Служебный параметр                                                                                                                                                     |
| сreationDate    | timestamp | время создания сообщения                                                                                                                                               |
| requestDelivery | boolean   | Указывает, был ли запрошен для сообщения отчёт о доставке                                                                                                              |
| addresses       | object    | Объект, содержащий адреса отправителя и получателя                                                                                                                     |
| source          | string    | Имя или адрес отправителя                                                                                                                                              |
| destination     | string    | Адрес или номер телефона получателя                                                                                                                                    |
| body            | object    | Объект, который содержит параметры bodyType и content                                                                                                                  |
| bodyType        | string    | Тип сообщения (SMS, e-mail, ВКонтакте, Viber, push)                                                                                                                    |
| content         | string    | Содержимое сообщения (подробнее см. в примерах выше)                                                                                                                   |
| expirationDate  | timestamp | Срок (дата и время), до которого будут повторяться попытки доставить сообщение. Указывается в формате в формате unixtime или ISO-8601 (например, 2017-01-01T00:00:00Z) |
| msid            | string    | UUID сообщения                                                                                                                                                         |
