Автоматизируйте уведомления о бизнес-процессах - доставка еды, регистрация на сайте, посещение салона, отправка скидочных купонов и пр. Доступные протоколы - http, smpp.

Подключение по протоколу SMPP возможно только по запросу, по HTTP - самостоятельно, api-ключ можно узнать в личном кабинете.

Ваш api-ключ: [xxxxxxxxxxxxxxxxxxxxxx]

Все запросы и ответы обрабатываются в кодировке utf-8.

HTTP-запросы могут быть как GET, так и POST.

Ответ на запросы в формате json.


Все запросы формируются по следующему правилу:

https://10sms.ru/api/<команда>?api_key=[xxxxxxxxxxxxxxxxxxxxxx][&<параметр1>=<значение1>[&<параметр2>=<значение2>]]

Значения параметров должны быть экранированы (urlencode) для корректного их разбора на стороне сервера.

Пример класса для работы с нашим api (скопируйте код ниже и сохраните его в файл XSMS.php):

<?php

class XSMS {

    const 
api_url "https://10sms.ru/api/";
    public static 
$api_key '[xxxxxxxxxxxxxxxxxxxxxx]';

    private static function 
post($cmd$params = []) {

        if (empty(
$params) || ! is_array($params)) {

            
$params = [];
        }

        
$params['api_key'] = self::$api_key;

        
$url self::api_url $cmd;

        
$ch curl_init($url);

        
curl_setopt($chCURLOPT_HEADERfalse);
        
curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
curl_setopt($chCURLOPT_POST1);
        
curl_setopt($chCURLOPT_POSTFIELDShttp_build_query($params));
        
curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);
        
curl_setopt($chCURLOPT_TIMEOUT10);
        
curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);

        
$response curl_exec($ch);

        
curl_close($ch);

        return 
json_decode($responsetrue);
    }

    public static function 
send($to$message$name '') {

        
$params = [
            
'name' => (empty($name)? 'ZEBRA'$name),
            
'to' => $to,
            
'message' => (empty($message)? 'Test'$message),
        ];

        return 
self::post('send'$params);
    }

    public static function 
balance() {

        return 
self::post('balance');
    }
}

// examples

// var_dump(XSMS::balance());
// var_dump(XSMS::send('79001234567', 'Test', 'ZEBRA'));


Подключение файла класса

PHP code: include "XSMS.php";


Запрос баланса

https://10sms.ru/api/balance?api_key=[xxxxxxxxxxxxxxxxxxxxxx]

PHP code: XSMS::balance();

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

{"error":0,"action":"balance","balance":"313.82","error_desc":"Ошибок нет"}


Отправка сообщения (sms)

https://10sms.ru/api/send?api_key=[xxxxxxxxxxxxxxxxxxxxxx]&to=79001234567&message=Test&name=ZEBRA

PHP code: XSMS::send('79001234567', 'Test', 'ZEBRA');

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

{"error":0,"action":"send","task_id":53966,"messages":{"79614904945":{"id":54199,"status":0,"cost":2.15,"parts":1}},"error_desc":"Ошибок нет"}