Адрес и транспорт
Используйте официальный адрес Luffy SMS. Домен своего приложения сюда подставлять не нужно. Не добавляйте /api/v1 дважды и не используйте завершающий слеш в переменной. Внешние интеграции работают server-to-server по HTTPS; браузер обращается к вашему backend.
LUFFY_BASE_URL=https://luffysms.com/api/v1
LUFFY_API_KEY=<server-secret>Соглашения о данных
| Значение | Формат и правило |
|---|---|
| Деньги | JSON number в RUB. maxPrice — не более двух знаков после запятой. Валюта отображения кабинета не меняет API. |
| Время | createdAt и cancelAfter — Unix timestamp в миллисекундах. |
| Телефон и SMS | Строки. Сохраняйте + у телефона и начальные нули у кода. |
| Отсутствующие значения | code и iso могут быть null. Это не пустая строка. |
| Идентификаторы | service — строка; country и order.id — целые числа. |
Тела запросов
GET не требует тела. POST передаёт Content-Type: application/json. Для отмены отправляйте {}. Максимальный размер JSON-тела — 8192 байта. Не передавайте секреты в query string.
Что не входит в v1
В опубликованном контракте нет webhooks, WebSocket-подписок, массовых покупок, пополнения баланса и управления API-ключами. Для SMS используйте опрос статуса. Playground выполняет реальные операции, отдельной тестовой среды здесь нет.