Документация API
Ссылка
https://mrpopular.net/api/v2.php
Запросы
POST / GET / JSON
Ответы
JSON
Авторизация
username
password
Узнать баланс
action = balance
currency = USD
{"balance":123.456}
Узнать статус заказа
action = status
order = (номер заказа)
{"order":{"status":"2","completed":"0","quantity":"250","date":"2018-09-27 17:34:49"}}
Получить список услуг
action = service
{"service":{"1":{"social_network":"Facebook","service":"page likes","quality":"medium quality","id":"1","price":0.0149,"currency":"USD","min":"100"},...}}
Статусы заказа
0 : выполняется, нет статистики
1 : выполняется, есть статистика
2 : выполнен
3 : ошибка
4 : в очереди
5 : возвращен
Новый заказ
action = order
service = (ID услуги)
quantity = количество
option = вариант (в опросе и т.п.)
comment
link = ссылка
{"order":"142058"}
Ошибки
{"errorcode":1} USERNAME или PASSWORD не отправлен
{"errorcode":2} ACTION не отправлен
{"errorcode":3} Выбранная валюта недоступна
{"errorcode":4} Не отправлен номер заказа
{"errorcode":5} Неверный номер заказа
{"errorcode":6} SERVICE не отправлен
{"errorcode":7} Не отправлено количество
{"errorcode":8} Не отправлена ссылка
{"errorcode":9} Не хватает средств на балансе
{"errorcode":10} Количество меньше минимального
Пример кода php
class Api { //настройки public $api_url = 'https://mrpopular.net/api/v2.php'; // ссылка для API public $username = ''; //ваш username public $password = ''; //ваш password public $currency = 'USD'; public function order($data) { // добавить заказ $post = array_merge(array( 'username' => $this->username, 'password' => $this->password, 'action' => 'order' ), $data); return json_decode($this->connect($post)); } public function status($order) { // получить статус заказа return json_decode($this->connect(array( 'username' => $this->username, 'password' => $this->password, 'action' => 'status', 'order' => $order ))); } public function service() { // получить список услуг return json_decode($this->connect(array( 'username' => $this->username, 'password' => $this->password, 'action' => 'service', ))); } public function balance() { // получить баланс return json_decode($this->connect(array( 'username' => $this->username, 'password' => $this->password, 'action' => 'balance', ))); } function connect($post) { $_post = Array(); if (is_array($post)) { foreach ($post as $name => $value) { $_post[] = $name.'='.urlencode($value); } } $ch = curl_init($this->api_url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); if (is_array($post)) { curl_setopt($ch, CURLOPT_POSTFIELDS, join('&', $_post)); } curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)'); $result = curl_exec($ch); if (curl_errno($ch) != 0 && empty($result)) { $result = false; } curl_close($ch); return $result; } } //запускаем API $api = new Api(); //проверить баланс /*$balance = $api->balance(); print_r($balance);*/ //новый заказ /*$order = $api->order(array( 'service' => 462, 'quantity' => $qnty, 'link' => $src )); print_r($order);*/ //статус заказа /*$status = $api->status(12232); print_r($status);*/ //service list /*$service = $api->service(); print_r($service);*/