Создание новой задачи для уникализации одного фото

Асинхронный метод. Создает задачу по уникализации и ставит ее в очередь. В ответе вам вернется ID задачи по которому вы сможете получить прямые ссылки на скачивание изображений (без архивов)

POST https://pixflow.ru/api/v1/task-create/single

HEADER Content-Type: multipart/form-data

HEADER Authorization: Bearer {ваш токен}

Параметр Описание
image
file
Изображение
copies_amount
int
Количество копий изображения
По умолчанию: 1
Максимальное значение: 500
image_names
int
Имена файлов
Возможные значения:
  • 1 - Исходные
  • 2 - По порядку
  • 3 - Случайные
prefix
string
Префикс добавляется к названию файлов и папок (зависит от настройки расположения файлов). Может содержать только буквы, цифры, пробелы и следующие символы: «_», «-», «.»
Например: «new_»
По умолчанию пустая строка (не используется)
converting_format
int
Конвертация
Возможные значения:
  • 0 - Без конвертации
  • 1 - jpg
exif_mode
int
Exif данные
Возможные значения:
  • 0 - Без изменений
  • 1 - Случайные
  • 2 - Схожие
  • 3 - Удалены
  • 4 - Свои

Важно! EXIF данные поддерживают только JPEG изображения

exif_template_id
int
ID EXIF шаблона из этого справочника
Нужно указывать только при значении параметра exif_mode = 4
По умолчанию: 0
rotate
json
Поворот изображения
Значения от 0 до 10
Наилучший результат: от 1 до 2 градусов
По умолчанию: {"enable": false, "from": 1, "to": 2}
resize
json
Ресайз изображения
Значения от 0 до 20
Наилучший результат: от 5 до 10
По умолчанию: {"enable": true, "mode": 1, "from": 5, "to": 10}
Возможные значения mode:
  • 1 - Случайно
  • 2 - Уменьшить изображение
  • 3 - Увеличить изображение
crop
json
Обрезка изображения
Значения от 0 до 49
Наилучший результат: от 1 до 3
По умолчанию: {"enable": false, "mode": 1, "from": 1, "to": 3}
Возможные значения mode:
  • 1 - Случайно
  • 2 - С одной случайной стороны
  • 3 - С двух случайных сторон
  • 4 - С трёх случайных сторон
  • 5 - Со всех сторон
sharpen
json
Резкость
Значения от 0 до 10
Наилучший результат: от 1 до 5
По умолчанию: {"enable": true, "from": 1, "to": 5}
brightness
json
Яркость
Значения от -100 до 100
Наилучший результат: от -5 до 5
По умолчанию: {"enable": true, "from": -5, "to": 5}
saturation
json
Насыщенность
Значения от -100 до 100
Наилучший результат: от -20 до 20
По умолчанию: {"enable": true, "from": -20, "to": 20}
hue
json
Оттенок
Значения от -100 до 100
Наилучший результат: от -5 до 5
По умолчанию: {"enable": false, "from": -5, "to": 5}
noise
json
Шум
По умолчанию: {"enable": true, "mode": 1, "intensity": 10}
Возможные значения параметра mode:
  • 1 - Случайно
  • 2 - Равномерный шум
  • 3 - Импульсный шум
  • 4 - Шум Гаусса
  • 5 - Шум Лапласа
Параметр intensity может принимать значения от 1 до 100
reflection_mode
int
Отражение
Возможные значения:
  • 0 - Без изменений
  • 1 - По горизонтали
  • 2 - По вертикали
  • 3 - И по горизонтали и по вертикали
auto_tune
int
Система будет автоматически корректировать некоторые настройки исходя из параметров изображения: размер, вес, формат, цвет и т.д. Благодаря этой настройке можно получить лучшее соотношение уникальности и качества
Возможные значения:
  • 0 - Отключена
  • 1 - Включена
auto_start
int
Автоматический запуск задачи сразу после создания. Если значение = 0, то задача не будет запущена автоматически и это позволит сначала запрость информацию о ней, включая стоимость, при помощи метода /tasks. Если параметр = 0, то задачу надо запускать вручную, используя метод /task/run
Возможные значения:
  • 0 - Нет
  • 1 - Да
Ответы
Код Ответ
200

{
    "type":"success",
    "task_uid":"jtcilv9xsl"
}
200

{
    "type":"error", 
    "errors":[
        "Поле image обязательно для заполнения"
    ]
}

//Ссылка
$url = 'https://pixflow.ru/api/v1/task-create/single';

//Заголовки
$headers = [
    'Content-Type: multipart/form-data',
    'Authorization: Bearer HIrz33hTnWpxJYUBNVNrOuln2OUTHoro3OZhRcgOABiyalqgVu'
];

//Параметры запроса (минимально необходимый вариант)
$data = [
    'copies_amount'     => 1,
    'image'             => curl_file_create('/path/to/image.jpg'),
];

//Параметры запроса (расширенный вариант)
$data = [
    'copies_amount'     => 1,
    'image_names'       => 1,
    'prefix'            => '',
    'converting_format' => 1,
    'exif_mode'         => 1,
    'exif_template_id'  => 0,
    'image'             => curl_file_create('/path/to/image.jpg'),
    'rotate'            => json_encode(['enable' => false, 'from' => 1, 'to' => 2]),
    'resize'            => json_encode(['enable' => true, 'mode' => 1, 'from' => 1, 'to' => 2]),
    'crop'              => json_encode(['enable' => true, 'mode' => 1, 'from' => 1, 'to' => 3]),
    'sharpen'           => json_encode(['enable' => true, 'from' => 1, 'to' => 5]),
    'brightness'        => json_encode(['enable' => true, 'from' => -10, 'to' => 10]),
    'saturation'        => json_encode(['enable' => true, 'from' => -20, 'to' => 20]),
    'hue'               => json_encode(['enable' => true, 'from' => -5, 'to' => 5]),
    'noise'             => json_encode(['enable' => true, 'mode' => 1, 'intensity' => 10]),
    'reflection_mode'   => 0,
    'auto_tune'         => 1,
];

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$response   = curl_exec($curl);
$http_code  = curl_getinfo($curl, CURLINFO_HTTP_CODE);

curl_close($curl);

if($http_code !== 200)
    exit('['.$http_code.'] Ошибка запроса');

if(!$json = json_decode($response))
    exit('Ошибка декодирования данных');

if($json->type == 'error'){

    foreach($json->errors as $error)
        echo $error.PHP_EOL;

    exit;

}

echo 'Задача успешно создана. Её UID: '.$json->task_uid;


#Минимальный вариант с настройками по умолчанию
curl -k -X POST 'https://pixflow.ru/api/v1/task-create/single' \
-H 'Content-Type: multipart/form-data' \
-H 'Authorization: Bearer JlymmR5kh3SxHHKSc8S1Q2pU80Yte1xUtJYmt8Yn3pwrZ3nUkL' \
-F 'copies_amount=1' \
-F 'image=@/path/to/image.jpg'

#Расширенный вариант
curl -k -X POST 'https://pixflow.ru/api/v1/task-create/single' \
-H 'Content-Type: multipart/form-data' \
-H 'Authorization: Bearer JlymmR5kh3SxHHKSc8S1Q2pU80Yte1xUtJYmt8Yn3pwrZ3nUkL' \
-F 'copies_amount=1' \
-F 'image_names=1' \
-F 'converting_format=1' \
-F 'exif_mode=1' \
-F 'exif_template_id=0' \
-F 'image=@/path/to/image.jpg' \
-F 'rotate={"enable":false,"from":1,"to":2}' \
-F 'resize={"enable":true,"mode":1,"from":1,"to":2}' \
-F 'crop={"enable":true,"mode":1,"from":1,"to":3}' \
-F 'sharpen={"enable":true,"from":1,"to":5}' \
-F 'brightness={"enable":true,"from":-10,"to":10}' \
-F 'saturation={"enable":true,"from":-20,"to":20}' \
-F 'hue={"enable":true,"from":-5,"to":5}' \
-F 'noise={"enable":true,"mode":1,"intensity":10}' \
-F 'reflection_mode=0' \
-F 'auto_tune=1'

Наверх