> For the complete documentation index, see [llms.txt](https://legacy-docs.seven.tech/v1/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://legacy-docs.seven.tech/v1/http/send.md).

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

## Запуск сервиса

Для запуска сервиса отправки сообщений в рамках протокола HTTP партнеру необходимо получить реквизиты доступа к API:

* **serviceId** – уникальный идентификатор сервиса;
* **pass** – пароль.

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

<mark style="color:blue;">`GET`</mark> `https://api.seven.tech/send`

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

#### Path Parameters

| Name          | Type    | Description                                                                                                                                                                                               |
| ------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| clientId      | integer | Номер абонента в международном формате. Пример **79031234567**                                                                                                                                            |
| message       | string  | Сообщение для отправки абоненту в кодировке **UTF-8 (urlencoded)**                                                                                                                                        |
| serviceId     | integer | Идентификатор сервиса от которого происходит отправка сообщений                                                                                                                                           |
| pass          | string  | Пароль для отправки сообщений. Пароль заводится при подключении сервиса и передается партнеру                                                                                                             |
| source        | string  | Имя отправителя. Сообщение абоненту будет отправлено с номера, указанного в данном параметре. Допустимая длина **2-11 символов**. Допустимые символы: **0...9a...zA...Z!@#$%^&\*()/{}';:,+-\_** и пробел. |
| ptag          | string  | Признак сообщения в системе партнера. Максимальная длина: **50 символов**; допустимые символы: **0...9a...zA...Z-**                                                                                       |
| sending\_time | string  | Локальное время отправки сообщения абоненту. Задается в формате **HH\_HH**                                                                                                                                |
| time\_zone    | string  | Часовой пояс абонента. Задается в формате ±hh:mm                                                                                                                                                          |
| flash         | integer | Признак отправки Flash-SMS. При **flash=1** абоненту будет оправлено Flash-SMS                                                                                                                            |
| ttl           | integer | <p>Время жизни сообщения (TTL) между элементами каскада. (значение в секундах)<br>Допустимые интервалы от 100 до 86400.</p>                                                                               |

{% tabs %}
{% tab title="200 Успешная обработка запроса. В теле ответа передаётся идентификатор принимающей стороны.
Действий не требуется" %}

```
OK
12345678
```

{% endtab %}

{% tab title="400 Отсутствуют обязательные параметры или заданы некорректного значения параметров. Например, параметр message не задан или значение параметра serviceId содержит буквы.
Необходимо исключить возможные ошибки и повторить запрос. При невозможности разрешить проблему своими силами, обратиться в техническую поддержку" %}

```
Message body required
```

{% endtab %}

{% tab title="401 Передано неверное сочетание параметров serviceId/pass.
Можно повторить запрос с правильным сочетанием serviceId/pass." %}

```
wrong password passme123 for service with id=65535
```

{% endtab %}

{% tab title="402 Исчерпан остаток оплаченных сообщений (для партнеров, работающих по предоплате).
Не следует повторять запрос. Необходимо внести предоплату и обратиться к аккаунт-менеджеру." %}

```
Exceeded limit MT
```

{% endtab %}

{% tab title="403 Выполнен запрос с IP-адреса не добавленого в список разрешенных. Частный случай данной ошибки — сервис с переданным serviceId отсутствует или не активен.
Не повторять запрос. Обратиться в техническую поддержку." %}

```
Forbidden
```

{% endtab %}

{% tab title="406 Невозможно отправить сообщение абоненту с переданным clientId.
Как правило, ошибка указывает на невалидный номер абонента." %}

```
wrong clientId '79031234567' for pattern '^7[34589]\d{9}$(?<!(7940\d{7}))'
```

{% endtab %}

{% tab title="408 Превышение допустимой скорости отправки сообщений.
Повторить запрос, не превышая допустимой скорости." %}

```
speed exceed for serviceId=65535 max request speed is 300/sec
```

{% endtab %}

{% tab title="409 Признак срабатывания функционала Защиты от дубликатов.
При необходимости, обратиться в техническую поддержку за дополнительными разъяснениями." %}

```
such message already has been sent
```

{% endtab %}

{% tab title="414 Превышение допустимой длины (1000 символов) текста сообщения, переданного в параметре message.
Необходимо сократить длину отправляемого сообщений не превышая лимит в 1000 символов и повторить отправку." %}

```
so long message
```

{% endtab %}

{% tab title="423 Отправка сообщений абоненту с переданным clientId отключена за фрод.
Выдержать паузу минимум 1 час и повторить запрос." %}

```
```

{% endtab %}

{% tab title="500 Внутренняя ошибка сервера.Технические проблемы платформы.
Выдержать паузу минимум 1 минуту и повторить запрос. При повторении ошибки более 10 раз прекратить передачу запроса. Сообщить о проблеме в техническую поддержку." %}

```
System error
```

{% endtab %}

{% tab title="503 Запрос в обработке.
Выдержать паузу и подождать ответ на первый запрос с переданным значением partnerMsgId. Допускается повторить запрос, если не получен ответ на первый." %}

```
Request processing is unavailable
```

{% endtab %}
{% endtabs %}

## Примеры вызова

#### **Отправка сообщения в латинице**

```
https://api.seven.tech/send?serviceId=65535&pass=passme123&clientId=79031234567&source=North&message=With+such+love+as+this+now
```

Абоненту 79031234567 на мобильное устройcтво от имени North поступит сообщение с текстом:

> With such love as this now

**Отправка сообщения в кириллице**

```
https://api.seven.tech/send?serviceId=65535&pass=passme123&clientId=79031234567&source=South&message=%d0%92+%d1%87%d0%b0%d1%89%d0%b0%d1%85+%d1%8e%d0%b3%d0%b0+%d0%b6%d0%b8%d0%bb+%d0%b1%d1%8b+%d1%86%d0%b8%d1%82%d1%80%d1%83%d1%81%3f+%d0%94%d0%b0%2c+%d0%bd%d0%be+%d1%84%d0%b0%d0%bb%d1%8c%d1%88%d0%b8%d0%b2%d1%8b%d0%b9+%d1%8d%d0%ba%d0%b7%d0%b5%d0%bc%d0%bf%d0%bb%d1%8f%d1%80%d1%8a!  
```

Абоненту 79031234567 на мобильное устройcтво от имени South поступит сообщение с текстом:

> В чащах юга жил бы цитрус? Да, но фальшивый экземпляръ!

## **Дополнительная информация параметрам**

| Параметр      | Пояснение                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| message       | Если длина сообщения для отправки абоненту превышает 160 символов в кодировке 8859-1 или 140 байт, то сообщение должно быть передано целиком, в склеенном (полном) виде. При отправке абоненту будет происходить нарезка на несколько сообщений.                                                                                                                                                                                                                                                                                                                                                         |
| source        | <p>Как правило, на подключении выделяется согласованный набор имен отправителей с которых разрешена отправка сообщений. Возможность активация динамической подписи необходимо согласовать с аккаунт-менеджером. <br><br>Возможно изменение настройки сервиса, когда партнер не передает в запросе данный параметр и при отправке сообщений будет использовано имя отправителя по-умолчанию. Эта опция может быть интересна для партнеров использующих фиксированное имя отправителя.</p>                                                                                                                 |
| ptag          | <p>Значением может быть любой идентификатор в системе партнера. Например, уникальный идентификатор сообщения или идентификатор подразделения, инициирующего запрос на отправку.<br><br>Принимающая сторона не контролирует значения, переданные в данном параметре (проверяет только на соответствие формату). В отличие от параметра partnerMsgId (описание параметра см. ниже), который нужен для контроля повторных отправок и дублирования.<br><br>Опционально возможно получения параметра ptag в рамках функционала возврата отчетов о доставке сообщений (описание функционала доступен ниже)</p> |
| sending\_time | <p>Например, при значении параметра sending\_time=10\_20 сообщение будет отправлено в период с 10:00 до 20:00 по местному времени в часовом поясе абонента.<br>Часовой пояс абонента определяется не по фактическому местоположению абонента.<br>Если Контент-провайдер не передает параметр time\_zone, то часовой пояс абонента определяется по номеру телефона.<br>Если Контент-провайдер передает в параметре time\_zone часовой пояс, то сообщение будет отправлено абоненту по местному времени этого часового пояса.</p>                                                                          |
| time\_zone    | [Подробнее о формате](http://en.wikipedia.org/wiki/ISO_8601#Time_offsets_from_UTC)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| partnerMsgId  | <p>Данный параметр нужен для контроля повторных отправок и дублирований.<br>Партнер может выполнить запрос на отправку сообщения с одним и тем же partnerMsgId несколько раз. При этом:</p><ul><li>Отправка сообщения абоненту будет выполнена только один раз (по первому запросу);</li><li>В ответах на запросы Агрегатор вернет Контент-провайдеру один тот же идентификатор сообщения в системе Агрегатора (тот же, что на первый запрос).</li></ul>                                                                                                                                                 |
