Вы находитесь на странице: 1из 4

0.

Чтобы выполнять большинство запросов нужно получить токен через запрос

https://office-api.utip.org/ru/#operation/POST_login

(данные для авторизации выдаются администратором CRM)

1. Создание записи Client (токен не нужен)

https://office-api.utip.org/ru/#operation/GET_createLead

2. Создание записи Trader для Client (нужен токен пользователя CRM)

Метод: POST

Обязательные параметры:
clientId – идентификатор клиента в CRM, у которого будет создан пользователь.
Возвращаемые параметры:
Результат выполнения функции (success or failed).

Пример:

$rand_param = rand(1000000, 99999999);


$key = md5('APIkey ' . $rand_param);

$data = http_build_query(array(
'key' => $key,
'rand_param' => $rand_param,
'auth_token' => 'qwe',
'clientId' => 1,
));
if( $curl = curl_init() ) {
curl_setopt($curl, CURLOPT_URL, 'http://mysite.com/api/v_2/crm/CreateTrader');
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$out = json_decode(curl_exec($curl), true);
curl_close($curl);
}

3. Получение статуса Client в CRM (нужен токен пользователя CRM)

 Вариант 1. Получение статуса одного клиента:

Метод: GET

Обязательные параметры:
client_id – порядковый номер клиента в системе CRM.

Пример:
$rand_param = rand(1000000, 99999999);
$key = md5('APIkey ' . $rand_param);
$api = json_decode(file_get_contents('http://mysite.com/api/v_2/crm/GetClientInfo?key=' . $key .
'&rand_param='. $rand_param . '&auth_token=0be85be44a8bcdf5192da7416fcd4c46&client_id=70'),
true);

 Вариант 2. Получение статуса нескольких клиентов:

Метод: GET

Дополнительные параметры:
use_pattern - по умолчанию false, если отправляется false, то паттерн не используется и
возвращается полный список клиентов;
admin_pattern_id – порядковый номер администраторского паттерна в системе CRM;
user_pattern_id – порядковый номер паттерна пользователя в системе CRM;
keyword – ключевое слово, по которому можно отфильтровать записи клиентов;
offset – запись в таблице результатов, с которой присылается список пользователей;
limit – количество возвращаемых записей;
pattern_check – быстрый паттерн (моментальная фильтрация);
sorting_field – объект вида {"creation_date":1}. Указывается наименование столбца для
сортировки, а также направление сортировки: 1 - по убыванию, 0 - по возрастанию;
ignoreClientIds – массив идентификаторов клиентов, которых необходимо исключить из выборки;
also_total – параметр отвечает за необходимость раздельного выполнения запросов на получение
данных и общего количества данных (см. описание ниже).

Возвращаемые параметры:
Список клиентов (в зависимости от паттерна) и общее количество записей если параметр
also_total не задан. При установленном параметре also_total = 1 выводит только количество, а при
also_total = 0 выводит только данные.

Пример:

$pattern = json_encode([
'name' => '',
'fields' => ['id', 'status_id'],
'filters' => [
[
['field_name' => 'email', 'default_value' => 'test@utip.ru', 'filter_type' => '='],
['field_name' => 'email', 'default_value' => 'test1@utip.ru', 'filter_type' => '='],
['field_name' => 'email', 'default_value' => 'test3@utip.ru', 'filter_type' => '='],
['field_name' => 'email', 'default_value' => 'test4@utip.ru', 'filter_type' => '='],
'operation' => 'AND', 'operationBlock' => 'OR'
],
[
['field_name' => 'client_type_id', 'default_value' => 1, 'filter_type' => '!='],
'operation' => 'AND', 'operationBlock' => 'AND'
]
],
'sorting' => []], JSON_FORCE_OBJECT);
$rand_param = rand(1000000, 99999999);
$key = md5('APIKEY' . $rand_param);
$data = http_build_query(array(
'key' => $key,
'rand_param' => $rand_param,
'auth_token' => '6e8be856bec3cdb1d065c8360b86253e',
'pattern_check' => $pattern,
'use_pattern' => 'true',
'also_total' => 0,
));
$out = [];
if ($curl = curl_init()) {
curl_setopt($curl, CURLOPT_URL, 'http://sity.com/api/v_2/crm/GetClientsList'? . $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$out = json_decode(curl_exec($curl), true);
curl_close($curl);
}
var_dump($out);

В итоге должен получиться такой запрос:


https://mysite.com/api/v_2/crm/GetClientsList?
key=6c938938cd8f471935bc08798bbbb005&rand_param=43435871&auth_token=72c6ac082c05145f5
b27c610c84bff7c&pattern_check={"name":"","fields":{"0":"id","1":"status_id"},"filters":{"0":{"0":
{"field_name":"affiliate_id","default_value":"Your+brand","filter_type":"="},"operation":"AND","operati
onBlock":"AND"}},"sorting":{}}&use_pattern=true&also_total=0&limit=100&offset=0

где limit – это ограничение на получение 100 клиентов за 1 запрос, а offset – это количество
записей, которое надо пропустить для получения следующей сотни клиентов.
"field_name":"affiliate_id" – отвечает за получение информации только по своему трафику.
"default_value" надо запросить у администратора CRM.

4. Получение депозитов клиента в CRM (нужен токен пользователя CRM)

Метод: GET

Обязательные параметры:
client_id – идентификатор клиента в системе CRM.

Пример:

$rand_param = rand(1000000, 99999999);


$key = md5('APIkey' . $rand_param);
$api = json_decode(file_get_contents('http://mysite.com/api/v_2/crm/GetDepositsByClient?key=' .
$key . '&rand_param='.$rand_param .
'&auth_token=4276cb27b3d9d001b784f5548d752118&client_id=1'), true);

5. Автологин
 Чтобы получить авторизационный токен трейдера необходимо выполнить запрос:

https://office-api.utip.org/ru/#operation/POST_login

 Чтобы произвести автологин используйте URL:

tradersroom.my/preloading/token/email/lang/page/param1/param2

где:
tradersroom.my - URL личного кабинета трейдера;

обязательные параметры:
token - авторизационный токен трейдера,
email - email трейдера;

необязательные параметры:
lang (язык приложения, по умолчанию en),
page - имя страницы (accountscreate - создание счета, accountdepositing - пополнение счета),
param1 и param2 - параметры страницы (для accountdepositing параметры param1 - номер счета,
param2 - id сервера).

Вам также может понравиться