# SMS API

import { Badge } from '@astrojs/starlight/components';

<Aside type="caution" title="/createSMSMessage устарел">
В новых интеграциях следует использовать [Messaging API v2](/ru/developer/api-reference/messaging-api-v2/) — передайте `platforms: ["SMS"]` в `Notify`. См. [руководство по миграции](/ru/developer/api-reference/messaging-api-v2/migration-from-v1/#from-createsmsmessage).
</Aside>

<Aside type="note">
Перед отправкой SMS-сообщений подключите вашего SMS-провайдера в Панели управления. [Узнать больше](/ru/developer/first-steps/connect-messaging-services/sms-configuration/)
</Aside>

## createSMSMessage <Badge text="Устарел" variant="caution" size="small" />

Используется для отправки SMS-уведомлений пользователям

POST `https://api.pushwoosh.com/json/1.3/createSMSMessage`

### Тело запроса

| Имя                            | Обязательный | Тип     | Описание                                                                                                     |
|--------------------------------|--------------|---------|--------------------------------------------------------------------------------------------------------------|
| **auth***                      | Да           | string  | [Токен доступа API](/ru/developer/api-reference/api-identifiers/#api-access-token) из Панели управления Pushwoosh.                                                               |
| **application***               | Да           | string  | [Код приложения Pushwoosh](/ru/developer/api-reference/api-identifiers/#application-code)                                                                                 |
| **notifications***             | Да           | array   | Настройки контента. JSON-массив параметров сообщения. Подробности см. ниже.                                       |

**Параметры уведомления**

| Имя                              | Обязательный | Тип     | Описание                                                                                                                                                                                      |
|----------------------------------|--------------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **send_date***                   | Да           | string  | Дата и время отправки уведомления. Используйте формат `YYYY-MM-DD HH:mm` или `now` для немедленной отправки.                                                                                           |
| **content***                     | Да           | string  | Текстовое содержимое SMS-сообщения.                                                                                                                                                              |
| **devices***                     | Да           | array   | Номер телефона клиента (должен быть связан с UserId с помощью `/registerDevice` и указан в параметре `hwid` или используйте `use_auto_registration`). Здесь можно указать только один номер. |
| **use_auto_registration**        | Нет          | boolean | Если установлено значение `true`, номер телефона, указанный в параметре `devices`, будет зарегистрирован автоматически.                                                                                      |
| **dynamic_content_placeholders** | Нет          | object  | Плейсхолдеры динамического контента для кастомизации содержимого сообщения. Каждый плейсхолдер будет заменен соответствующими динамическими значениями.                                                           |
| **preset**                       | Нет          | string  | [Код пресета](/ru/developer/api-reference/api-identifiers/#preset-code) для SMS из вашей Панели управления.                                                                                                                                                      |

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

```json
{
  "request": {
    "application": "12345-67891",    // обязательно. Код приложения Pushwoosh.
    "auth": "yxoPUlwqm…………pIyEX4H",  // обязательно. Токен доступа API из Панели управления Pushwoosh.
    "notifications": [{
      "send_date": "now",            // обязательно. YYYY-MM-DD HH:mm ИЛИ "now".
      "content": "Hello!",           // обязательно. Текст SMS (строка).
      "devices": ["+1234567890"],    // обязательно. Номер телефона клиента (должен быть связан с
                                     //           UserId с помощью /registerDevice и указан в
                                     //           параметре "hwid" или используйте "use_auto_registration").
                                     //           Здесь можно указать только один номер.
      "preset": "XXXXX-XXXXX",       // опционально. Код пресета для SMS из вашей Панели управления.
      "use_auto_registration": true  // опционально. Автоматически регистрировать номер телефона, указанный
                                     //           в параметре "devices".
    }]
  }
}
```

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

```json
{
  "status_code": 200,
  "status_message": "OK",
  "response": {
    "Messages": [
      "9648-0B10ECB6-0D9F214D"
    ]
  }
}
```

### Ответ с ошибкой
```json
{
  "status_code": 210,
  "status_message": "Invalid devices list. \"devices\" must be an array.",
  "response": {
    "Messages": []
  }
}
```

<Aside type="note">
 В настоящее время каждое SMS-сообщение для каждого клиента должно отправляться отдельным запросом.
</Aside>

Чтобы получить статистику по SMS, используйте метод [totalsByIntervals](/ru/developer/api-reference/statistics-api/message-statistics-api/#totalsbyintervals).

Вы также можете просмотреть статистику по каждому сообщению в разделе [История сообщений](/ru/product/statistics-and-analytics/message-history/).

<Aside type="caution">
Обратите внимание, что некоторые мобильные операторы не передают данные о статусе доставки, поэтому статистика может быть неточной. Вы можете уточнить детали у мобильных операторов, которые предоставляют номера вашим клиентам.
</Aside>