...
Для редактирования операции по расписанию через API используется метод getScheduleOperation()
из Personal API.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<?php $userToken = Intellectmoney::GetUserToken([ // Параметры метода 'login' => 'myLogin', 'password' => 'myPassword', // Данные для авторизации API запросов и расчета подписей 'token' => 'Bearer myToken', 'signSecretKey' => 'mySignSecretKey', ]); Intellectmoney::GetScheduledOperationData([ // Параметры метода 'userToken' => $userToken, 'skip' => null, 'take' => 10, 'operation' => null, 'objectId' => null, 'objectTypeVal' => null, 'paramsJson' => null, 'repeatPlan' => null, 'retryOnFailPlan' => null, 'retryOnFailCount' => null, 'isSingle' => null, 'fireOnSkip' => null, 'state' => null, 'dateFrom' => null, 'dateTo' => null, // Данные для авторизации API запросов и расчета подписей 'token' => 'Bearer myToken', 'signSecretKey' => 'signSecretKey', ]); class IntellectMoney { // Аутентификация клиента API public static function GetUserToken($params) { // URL запроса $url = 'https://api.intellectmoney.ru/personal/user/getUserToken'; // Расчет подписи для заголовка авторизации API запросов, sign (SHA256) $signSignature = [ '', $params['login'], $params['password'], '', $params['signSecretKey'], ]; $signHash = hash('sha256', implode('::', $signSignature)); // Заголовки запроса $headers = [ 'Authorization: '.$params['token'], 'Sign: '.$signHash, ]; // Данные (тело) запроса $data = [ 'login' => $params['login'], 'password' => $params['password'], ]; // Выполняем запрос $response = Intellectmoney::CurlRequest($url, $headers, $data); $responseXml = simplexml_load_string($response); $userToken = $responseXml->Result->UserToken; return (string)$userToken; } // Получение операций по расписанию public static function GetScheduledOperationData($params) { // URL запроса $url = 'https://api.intellectmoney.ru/personal/scheduler/getscheduledoperationdata'; // Расчет подписи для заголовка авторизации API запросов, sign (SHA256) $signSignature = [ $params['userToken'], $params['skip'], $params['take'], $params['operation'], $params['objectId'], $params['objectTypeVal'], $params['paramsJson'], $params['repeatPlan'], $params['retryOnFailPlan'], $params['retryOnFailCount'], $params['isSingle'], $params['fireOnSkip'], $params['state'], $params['dateFrom'], $params['dateTo'], '', $params['signSecretKey'], ]; $signHash = hash('sha256', implode('::', $signSignature)); // Заголовки запроса $headers = [ 'Authorization: '.$params['token'], 'Sign: '.$signHash, ]; // Данные (тело) запроса $data = [ 'userToken' => $params['userToken'], 'skip' => $params['skip'], 'take' => $params['take'], 'operation' => $params['operation'], 'objectId' => $params['objectId'], 'objectTypeVal' => $params['objectTypeVal'], 'paramsJson' => $params['paramsJson'], 'repeatPlan' => $params['repeatPlan'], 'retryOnFailPlan' => $params['retryOnFailPlan'], 'retryOnFailCount' => $params['retryOnFailCount'], 'isSingle' => $params['isSingle'], 'fireOnSkip' => $params['fireOnSkip'], 'state' => $params['state'], 'dateFrom' => $params['dateFrom'], 'dateTo' => $params['dateTo'], ]; // Выполняем запрос $response = Intellectmoney::CurlRequest($url, $headers, $data); print_r((string)$response); } private static function CurlRequest($url, $headers, $data) { $queryString = http_build_query($data); $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $queryString); curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); $response = curl_exec($ch); curl_close($ch); return $response; } } ?> |
...