Перейти к содержимому
Anycon ReelsУникализатор графики
Профиль
ВойтиСоздать аккаунт
Профиль
ОбработатьМои файлыВозможностиТарифПригласить другаСтатьиAPIКонтакты

API / автоматизация

Интеграции Anycon Reels

Подключение и запросы бесплатны

Бесплатно — подключение по API, ключи, любые запросы и действия агентов (загрузка, статус, баланс, скачивание) на сайте, в приложении и через API; тариф и баланс за них не расходуются. Платно — только генерации (обработка файлов): сначала расходуется квота тарифа, затем общий баланс.

Пример: агент проверил статус 100 раз — 0 ₽; агент запустил 1 генерацию на 5 копий — списана 1 генерация из квоты.

Исключение: при «Бесплатном доступе» (гранте) генерации тоже бесплатны.

Подключите обработку фото и видео к агенту, сценарию автоматизации или собственному коду. Базовый адрес API:

https://anycon.online/api/public/v1

Отдельный баланс API не создаётся. Платная генерация сначала использует квоту тарифа, затем общий баланс; при «Бесплатном доступе» (гранте) генерации бесплатны.

  1. Перед подключением
  2. Архив инструментов
  3. MCP для Claude Code и Codex
  4. Командная строка
  5. n8n
  6. Make и Zapier
  7. curl, PowerShell и Python
  8. Надёжность и вебхуки

Перед подключением

  1. В кабинете выпустите отдельный ключ для интеграции. Храните его в переменной окружения или хранилище секретов, не в коде, чате или аргументах команды.
  2. Ключ даёт полный доступ к публичному API: отдельных прав чтения и записи сейчас нет. Для MCP-процесса можно задать локальный ANYCON_MAX_SPEND_MINOR — потолок суммы в копейках, проверяемый перед созданием заказа. Счётчик действует только внутри процесса и сбрасывается при его перезапуске; это не серверный лимит ключа. Серверный ключ отзывается в кабинете.
  3. На ключ действует предел 60 запросов в минуту. Одновременно допускаются две загрузки; активных заказов — до пяти при оплате с баланса, а по тарифу — зависит от тарифа (Старт и Про — 3, Студия — 5).

Архив инструментов

MCP-сервер, командная строка, клиент для Node.js и примеры собраны в один архив без внешних зависимостей: npm install не нужен. Скачайте архив: anycon-tools-0.1.0.zip (144 КБ). SHA-256: e9cc3344469688babadde9ab91bc94633d1c8ccd85d794f39b0eec0bfe8ea0ce

  1. Нужен Node.js 22.12 или новее.
  2. Распакуйте архив в постоянную папку, например C:/anycon-tools или ~/anycon-tools (tar -xf anycon-tools-<версия>.zip -C <папка>; папка должна существовать). Папки anycon-client, anycon-cli и anycon-mcp должны остаться рядом.
  3. Проверьте: node anycon-cli/bin/anycon.cjs --help. Сверьте SHA-256 скачанного файла с указанным выше: Windows — certutil -hashfile anycon-tools-<версия>.zip SHA256, Linux — sha256sum anycon-tools-<версия>.zip, macOS — shasum -a 256 anycon-tools-<версия>.zip.

Публикация в npm планируется; сейчас инструменты распространяются только этим архивом. В нём же есть README.md с краткой инструкцией.

MCP для Claude Code и Codex

MCP (протокол контекста модели) позволяет агенту загрузить файл, оценить заказ, дождаться результата и скачать его. Нужны Node.js 22.12 или новее и распакованный архив инструментов: сервер запускается файлом anycon-mcp/bin/anycon-mcp.cjs из архива.

Задайте ANYCON_API_KEY и ANYCON_BASE_URL=https://anycon.online/api/public/v1 в окружении. SDK, CLI и MCP также поддерживают прежние имена переменных для совместимости; при одновременной настройке приоритет имеют ANYCON_*.

Claude Code

  1. Задайте ANYCON_API_KEY и ANYCON_BASE_URL в окружении терминала.
  2. Скопируйте пример .mcp.json в проект и замените только путь к anycon-mcp.cjs на папку, куда вы распаковали архив.
  3. Ограничьте доступ к файлам через ANYCON_ALLOWED_DIRS. Ключ подставляется из окружения как ${ANYCON_API_KEY}, а не записывается в конфигурацию.
{
  "mcpServers": {
    "anycon": {
      "type": "stdio",
      "command": "node",
      "args": ["C:/путь/к/anycon-tools/anycon-mcp/bin/anycon-mcp.cjs"],
      "env": {
        "ANYCON_API_KEY": "${ANYCON_API_KEY}",
        "ANYCON_BASE_URL": "https://anycon.online/api/public/v1",
        "ANYCON_ALLOWED_DIRS": "${ANYCON_ALLOWED_DIRS:-.}",
        "ANYCON_OUTPUT_DIR": "./anycon-output"
      }
    }
  }
}

Codex

  1. Задайте ключ в окружении процесса Codex.
  2. Перенесите раздел из примера config.toml в конфигурацию и укажите путь к распакованному архиву.
  3. Оставьте tool_timeout_sec = 300 для ожидания заказа. Для коротких вызовов задавайте меньший timeout_seconds и повторяйте wait_order.
[mcp_servers.anycon]
command = "node"
args = ["C:/путь/к/anycon-tools/anycon-mcp/bin/anycon-mcp.cjs"]
env_vars = ["ANYCON_API_KEY"]
startup_timeout_sec = 20
tool_timeout_sec = 300

[mcp_servers.anycon.env]
ANYCON_BASE_URL = "https://anycon.online/api/public/v1"
ANYCON_ALLOWED_DIRS = "C:/Users/me/photos"
ANYCON_OUTPUT_DIR = "C:/Users/me/photos/anycon-output"

Инструмент process_file выполняет полный цикл. Сервер MCP маскирует ключ, проверяет разрешённые реальные пути и возвращает локальные пути скачанных файлов вместо временных ссылок.

Командная строка (CLI)

CLI anycon входит в архив инструментов и запускается из распакованной папки: anycon-cli/bin/anycon.cjs. Ключ читает из ANYCON_API_KEY.

node anycon-cli/bin/anycon.cjs account
node anycon-cli/bin/anycon.cjs process photo.jpg --copies 3 --mode clean --out ./result
node anycon-cli/bin/anycon.cjs order wait <order_id> --json

Для сценариев используйте --json. Команда process поддерживает несколько файлов и ограничение параллельности; ключ в вывод не попадает.

n8n: три готовых шаблона

Импортируйте JSON и создайте учётные данные Header Auth (авторизация заголовком): имя заголовка Authorization, значение Bearer <ключ из кабинета>. В сам workflow (рабочий процесс) ключ не вставляйте. Шаблоны проверены статически, но живой импорт в n8n не выполнялся; после импорта проверьте связи узлов и одну тестовую обработку.

  1. Обработка с опросом — один файл, первый запрос статуса через 5 секунд, затем через 15 секунд.
  2. Обработка с уведомлением — ждёт подписанный вебхук до 30 минут, затем безопасно переходит к опросу.
  3. Папка пакетами — запускает шаблон опроса по два файла; не запускайте несколько таких потоков одновременно на одном ключе.

После импорта откройте узел Config (настройки): проверьте baseUrl, clientRef, число копий и режим. Выберите созданные учётные данные в каждом HTTP Request (HTTP-запрос) к API Anycon Reels. Для шаблона 03 сначала импортируйте 01 и замените REPLACE_WITH_WORKFLOW_01_ID в узле «Подпроцесс 01» его настоящим идентификатором.

В узле чтения файла задайте путь, доступный внутри контейнера n8n; при включённом ограничении добавьте каталог в N8N_RESTRICT_FILE_ACCESS_TO. Для проверки SHA-256 разрешите встроенный модуль: NODE_FUNCTION_ALLOW_BUILTIN=crypto. Шаблону с вебхуком нужен секрет в ANYCON_WEBHOOK_SECRET; если N8N_BLOCK_ENV_ACCESS_IN_NODE=true, Code-узел не увидит переменную — разрешите доступ к окружению или настройте эквивалентное защищённое хранилище.

Учётные данные Header Auth назначаются API-запросам к Anycon Reels. Узел скачивания обращается к временной download_url без Authorization: сама ссылка даёт доступ на 15 минут, поэтому не записывайте её в журналы и чаты.

В каждом создании заказа есть устойчивый Idempotency-Key (ключ идемпотентности) и предохранители maxPolls = 480/maxPollSeconds = 7200. Остановка опроса не отменяет заказ: проверьте его позже по order_id. Повторный запуск не должен менять деловой ключ. При сетевой ошибке, 429 или 5xx узлы статуса повторяют запрос до пяти раз с паузой 5 секунд.

Make и Zapier

Make

Сценарий собирается из HTTP-модулей: получить бинарный файл → POST /uploads с сырым телом → POST /orders → опрос или вебхук → результаты. Храните ключ в Connections/Keychain (подключения/хранилище ключей). Для заказа используйте первые 40 символов SHA-256, copies до 3 символов, mode до 20 и clientRef до 40: anycon-{sha40}-c{copies}-{mode}-{clientRef}. Замените прочие символы на дефис; итог должен быть не длиннее 128 символов. Не включайте номер запуска, время или случайное значение. Инструкция собрана по документации, но живой сценарий Make не проверялся; сначала выполните один тестовый файл.

Zapier

Можно использовать HTTP и Webhooks by Zapier (вебхуки Zapier) для запросов к API и приёма уведомлений. Полноценная загрузка по ссылке пока не поддерживается: API принимает сырое тело файла, а не URL. Если шаг Zapier не может отправить бинарное тело с точным Content-Length, загрузите файл своим сервером или используйте CLI, n8n либо MCP.

curl, PowerShell и Python

После безопасной настройки ANYCON_API_KEY в окружении проверьте аккаунт коротким запросом:

# Bash / curl
curl "https://anycon.online/api/public/v1/account" -H "Authorization: Bearer $ANYCON_API_KEY"

# PowerShell
Invoke-RestMethod "https://anycon.online/api/public/v1/account" -Headers @{ Authorization = "Bearer $env:ANYCON_API_KEY" }

# Python 3, стандартная библиотека
import os, urllib.request
request = urllib.request.Request("https://anycon.online/api/public/v1/account",
    headers={"Authorization": "Bearer " + os.environ["ANYCON_API_KEY"]})
print(urllib.request.urlopen(request).read().decode())

Полные примеры цикла лежат в папке examples архива инструментов: examples/curl/process.sh, examples/curl/process.ps1 и examples/python/process.py. Они загружают файл, создают заказ, ждут и скачивают результат с проверкой SHA-256.

Для Node.js в архиве есть клиент без внешних зависимостей (anycon-client/src/index.cjs): new Anycon({ apiKey: process.env.ANYCON_API_KEY, baseUrl: "https://anycon.online/api/public/v1" }). Он повторяет 429/5xx с учётом Retry-After, ожидает заказ и проверяет хэш результата.

Надёжность, повторная оплата и вебхуки

Idempotency-Key

Для каждого POST /orders обязателен ключ из 8–128 символов A–Z a–z 0–9 _ . : -. Стройте его из SHA-256 содержимого файла, числа копий, всех options (параметров) и вашей устойчивой метки задания. Один ключ с тем же телом в течение 7 дней возвращает тот же заказ с Idempotent-Replay: true без второго списания. Тот же ключ с другим телом даёт 409; новый upload_id тоже меняет тело. Чтобы сознательно повторить заказ, измените метку. После 7 дней ключ может создать новый платный заказ.

Опрос и повторы

Первый статус запрашивайте через 5 секунд, последующие — не чаще одного раза в 15 секунд. На 429, 409 в процессе создания и временные 5xx соблюдайте Retry-After и повторяйте создание только с тем же ключом и телом.

Подписанные уведомления

Anycon Reels подписывает точные сырые байты тела: X-Anycon-Signature: t=<unix>,v1=<hex>, где подпись равна HMAC-SHA256(secret, "<t>.<raw body>"). Проверяйте подпись за постоянное время и окно ±5 минут. Отсекайте повторы по X-Anycon-Delivery. События order.completed, order.failed, order.cancelled и order.review могут прийти повторно и не обязаны приходить в порядке создания заказов; состояние заказа сверяйте по его данным. Повторы доставки идут через 1 минуту, 5 минут, 30 минут, 2 часа и 6 часов.

webhook_url не входит в хэш идемпотентности. При повторе того же заказа допустимый новый адрес становится последним адресом для ещё не доставленных событий. Уже доставленное событие на новый адрес повторно не отправляется; его состояние получите через GET /orders/{id}.

Полный контракт методов и ошибок: документация API; машиночитаемая схема: OpenAPI 3.1.

ОбработатьФайлыТарифПригласить
Ещё
ВозможностиСтатьиAPIКонтакты