Перейти к содержанию

Получение операции по расписанию


Описание

Используется для получения операции по расписанию.

POST (Уровень доступа: Базовый)

https://api.intellectmoney.ru/personal/scheduler/getScheduledOperationData

Заголовки запроса

Параметр Свойства Описание
Accept STRING OPTIONAL application/json Заголовок, указывающий формат данных, которые клиент хочет получить от сервера.
Content-Type STRING OPTIONAL application/json application/xml Заголовок, указывающий формат данных в теле запроса.
Authorization STRING REQUIRED Bearer {token} Заголовок, используемый для аутентификации клиента с помощью Bearer токена.
Подробнее об использование Bearer токена.
Sign STRING REQUIRED Заголовок с подписью для аутентификации запроса.

Сигнатура подписи:
UserToken::Skip::Take::Operation::ObjectId::ObjectTypeVal::ParamsJson::RepeatPlan::RetryOnFailPlan::RetryOnFailCount::IsSingle::FireOnSkip::State::DateFrom::DateTo::::SignSecretKey

Тело запроса

Параметр Свойства Описание
UserToken STRING REQUIRED Токен пользователя.
Для получения использовать метод GetUserToken.
Skip STRING OPTIONAL number Количество пропускаемых объектов.
Для значения 10, пропустит первые 10 записей и начнет вывод с 11-й записи (нумерация начинается с 0).
Take STRING REQUIRED number Количество возвращаемых объектов.
Для значения 10, пропустит первые Skip записей и выведет 10 элементов.
Operation STRING OPTIONAL guid Номер операции по расписанию.
ObjectId STRING OPTIONAL 3xxxxxxxxx Номер исходного СКО.
Для получения использовать:
  • Метод CreateInvoice.
  • Параметр PaymentId из Вебхука.
  • Параметр SourceInvoiceId из Вебхука - доступен только для СКО, созданных операцией по расписанию.
ObjectTypeVal STRING OPTIONAL 1 Тип операции по расписанию.
Всегда единица.
ParamsJson OBJECT OPTIONAL Параметры СКО.
Параметры необходимые операции по расписанию для создания СКО.
RepeatPlan STRING OPTIONAL План выполнения.
Задается в одном из двух форматов:
  1. Cron-выражение позволяет задавать сложные периоды выполнения операции.
    Пример запуска операции каждый день в 12:00 часов: 0 0 12 1/1 * ? *
    Для создания можно использовать онлайн-инструмент CronMaker.
  2. JSON поддерживает указание даты начала и периодов выполнения операции в удобочитаемом формате.
    Пример первого списания в 18:50 22 ноября 2023 года, последующие списания раз в 30 дней: { "StartAt": "2023-11-22T18:50:00+03:00", "PeriodLength": 30, "PeriodType": "Day" }
    Допустимые значения: Day, Week, Month.
RetryOnFailPlan STRING OPTIONAL План выполнения при ошибке.
Определяет, с какой частотой система будет автоматически повторять операцию в случае её неудачного выполнения.
Например, если указать значение 5 минут, система будет пытаться повторить операцию каждые 5 минут до тех пор, пока она не завершится успешно или не достигнет лимита параметра RetryOnFailCount.
Форматы:
  • Cron-выражение: 0 0/5 * 1/1 * ? *
  • JSON: { "PeriodLength": 5, "PeriodType": "Minute" }
    Допустимые значения: Minute, Hour, Day, Week, Month.
RetryOnFailCount STRING OPTIONAL number Количество повторов выполнения при ошибке.
IsSingle STRING OPTIONAL 0-1 Флаг, указывающий возможность параллельного выполнения операции.
Допустимые значения:
  • 0 - новая запланированная операция не будет запущена, пока не закончена предыдущая.
  • 1 - запланированная операция запускается независимо от статуса предыдущей.
FireOnSkip STRING OPTIONAL 0-1 Флаг, указывающий необходимость создания всех запланированных операций, в случае непредвиденного пропуска операции.
Допустимые значения:
  • 0 - не создавать пропущенные, ранее запланированные операции.
  • 1 - создать пропущенные, ранее запланированные операции.
State STRING OPTIONAL 0-1 Флаг, указывающий статус активности операции.
Допустимые значения:
  • 0 - операция выполняется.
  • 1 - операция не выполняется.
    Ранее запланированные операции будут выполнены.
DateFrom STRING OPTIONAL yyyy-MM-dd HH:mm:ss Дата начала выборки.
DateTo STRING OPTIONAL yyyy-MM-dd HH:mm:ss Дата окончания выборки.

Тело ответа

Поле Тип Описание
OperationState OperationState Статус выполнения операции.
OperationId GUID Идентификатор операции.
EshopId INT Номер магазина.
Result GetScheduledOperationData Результат выполнения запроса.
Примеры кода
C#
var client = new HttpClient();

var request = new HttpRequestMessage(HttpMethod.Post, "https://api.intellectmoney.ru/personal/scheduler/getScheduledOperationData");

request.Headers.Add("Accept", "application/json");
request.Headers.Add("Content-Type", "application/json");
request.Headers.Add("Authorization", "Bearer 9d97820c61424eb6ac0db414ccb7ac60");
request.Headers.Add("Sign", "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855");

var collection = new List<KeyValuePair<string, string>>();
collection.Add(new("UserToken", "YdUlqkFcVo62XmY6B9VLJXCoAeA/0fJPxD4/kUUGmwHf5kgBa12MrKUyJd8uO0za"));
collection.Add(new("Skip", "10"));
collection.Add(new("Take", "5"));
collection.Add(new("Operation", "aaaaaaaa-bbbb-4ccc-8ddd-eeeeeeeeeeee"));
var content = new FormUrlEncodedContent(collection);
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
PHP
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.intellectmoney.ru/personal/scheduler/getScheduledOperationData',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POSTFIELDS => 'UserToken=YdUlqkFcVo62XmY6B9VLJXCoAeA/0fJPxD4/kUUGmwHf5kgBa12MrKUyJd8uO0za&Skip=10&Take=5&Operation=aaaaaaaa-bbbb-4ccc-8ddd-eeeeeeeeeeee',
    CURLOPT_HTTPHEADER => array(
        'Accept: application/json',
        'Content-Type: application/json',
        'Authorization: Bearer 9d97820c61424eb6ac0db414ccb7ac60',
        'Sign: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855',
   ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Пример ответов
JSON
{
    "OperationState": {
        "Code": 0,
        "Desc": "Успешно обработан"
    },
    "Result": {
        "State": {
            "Code": 0,
            "Desc": "Успешно обработан"
        },
        "ScheduledOperationList": [
            {
                "CronOperationId": "5c99fd4f-02e6-42aa-a555-31243e5824bc",
                "ObjectId": 3866316842,
                "CronOperationType": "Recurring",
                "Params": "{\"Amount\":10}",
                "CreationDate": "2021-03-26T10:59:31.9608792+03:00",
                "ChangeDate": "2021-03-29T14:29:19.1040771+03:00",
                "LastExecDate": "2021-03-29T14:29:20.269814+03:00",
                "FireOnSkip": false,
                "IsSingle": false,
                "CronOperationState": "Disable"
            }
        ]
    }
}
JSON
{
    "OperationState": {
        "Code": 2,
        "Desc": "Ошибка"
    },
    "Result": {
        "State": {
            "Code": 3,
            "Desc": "State: Неверное значение параметра State."
        }
    }
}