Об API
Документация для подключение виртуальных портов (esim и другие) к смс-сервису активаций smsak.org
Авторизация запросов осуществляется методом передачи GET
параметра (password) ко всем URL
запросам
Параметр | Описание |
---|---|
password | API_KEY выданный при создании менеджерской панели |
Для получения API_KEY
пройдите авторизацию или регистрацию
на смс сервисе smsak.org
и сообщите о желании продавать смс сообщения через виртуальные порты.
После выдачи партнерской панели управления ваш API_KEY
будет действительным и можно будет использовать данный интерфейс.
// Для работы понадобится клиентская библиотека для работы с URL
// В текущей документации примеры реализованы с использованием cUrl
// https://www.php.net/manual/ru/book.curl.php
# Для работы достаточно shell curl
curl -X POST [URL]
-H "Content-Type: application/json"
-d "[JSON data]"
Методы
Сообщить о работе портов
Для информирования нашего сервера о доступности (В СЕТИ) ваших портов, необходимо отправлять
keepalive запрос со списком живых
сим-портов каждые 30-60 секунд.
При невозможности определения статуса и сети ваших сим карт, отправляйте пустой массив,
в таком случае все сим-порты будут выставлены как доступные в данный момент.
$url = 'https://smsak.org/api-gateway/set-signals?password=API_KEY';
$data = ['port1', 'port2']; // Список портов, которые в сети
$postdata = json_encode($data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
$result = curl_exec($ch);
curl -X POST "https://smsak.org/api-gateway/set-signals?password=API_KEY" \
-H "Content-Type: application/json" \
-d '["port1","port2"]'
В ответ будет отправлен JSON:
true
Обязательный URL
Параметр | Описание |
---|---|
password | API_KEY выданный при создании менеджерской панели |
Отправка СМС сообщения от порта
Сообщения приходящие на сим карту перенаправляйте на наш эндпоинт
https://smsak.org/api-gateway/send-sms
Возможны 2 варианта передачи сообщений
С указанием порта
Параметр | Описание |
---|---|
port | Порт на который пришло СМС |
sender | Информация об отправителе (От кого) |
text | Содержимое сообщения |
С указанием номера телефона
Параметр | Описание |
---|---|
phone | Номер телефона, на который пришло сообщение |
sender | Информация об отправителе (От кого) |
text | Содержимое сообщения |
$url = 'https://smsak.org/api-gateway/send-sms?password=API_KEY';
$data = ['port' => 'port1', 'sender' => 'Имя отправителя смс', 'text' => 'Текст СМС'];
// Второй возможный вариант передачи (phone - номер телефона привязанного порта)
// $data = ['phone' => '+79990123456', 'sender' => 'Имя отправителя смс', 'text' => 'Текст СМС'];
$postdata = json_encode($data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
$result = curl_exec($ch);
curl -X POST "https://smsak.org/api-gateway/send-sms?password=API_KEY" \
-H "Content-Type: application/json" \
-d '{"port":"port1","sender":"Имя отправителя смс","text":"Текст СМС"}'
# Второй возможный вариант передачи (phone - номер телефона привязанного порта)
curl -X POST "https://smsak.org/api-gateway/send-sms?password=API_KEY" \
-H "Content-Type: application/json" \
-d '{"phone":"+79990123456","sender":"Имя отправителя смс","text":"Текст СМС"}'
В ответ будет отправлен JSON
true
Обязательный URL
Параметр | Описание |
---|---|
password | API_KEY выданный при создании менеджерской панели |
Выставление номеров телефонов для каждого порта
Для выставления (привязки) номеров телефонов к виртуальным портам - передайте словарь, где ключем необходимо указать наименование порта, а значением - номер телефона.
$url = 'https://smsak.org/api-gateway/set-port-numbers?password=API_KEY';
// Номер телефона должен всегда начинаться с символа "+",
// после должен идти код страны, которую вы выставили в панели управления для своих портов
$data = ['port1' => '+79990123456', 'port2' => 'Номер телефона'];
$postdata = json_encode($data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
$result = curl_exec($ch);
curl -X POST "https://smsak.org/api-gateway/set-port-numbers?password=API_KEY" \
-H "Content-Type: application/json" \
-d '{"port1":"+79990123456","port2":"Номер телефона"}'
В ответ будет отправлен JSON
true
Обязательный URL
Параметр | Описание |
---|---|
password | API_KEY выданный при создании менеджерской панели |
Сброс всех номеров телефонов на виртуальных портах
При необходимости замены номеров телефонов на виртуальных портах возможно произвести полную очистку. Также в случае временного простоя или недоступности виртуальных портов вы можете очистить привязку номеров на всех портах. Для этого используйте следующий метод.
$url = 'https://smsak.org/api-gateway/clear-ports?password=API_KEY';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl "https://smsak.org/api-gateway/clear-ports?password=API_KEY"
В ответ будет отправлен JSON
true
Обязательный URL
Параметр | Описание |
---|---|
password | API_KEY выданный при создании менеджерской панели |
Запрос заработка по номеру
$url = 'https://smsak.org/api-gateway/phones-stat?password=API_KEY';
// Номер телефона должен всегда начинаться с символа "+",
// после должен идти код страны, которую вы выставили в панели управления для своих портов
$data = ['+79990123456', '+79990123458'];
$postdata = json_encode($data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
$result = curl_exec($ch);
curl -X POST "https://smsak.org/api-gateway/phones-stat?password=API_KEY" \
-H "Content-Type: application/json" \
-d '["+79990123456","+79990123458"]'
В ответ будет отправлен JSON
{"+79990123456": 128.9, "+79990123458": 0}
Обязательный URL
Параметр | Описание |
---|---|
password | API_KEY выданный при создании менеджерской панели |