Skip to Content
API и интеграцииAI-помощники

AI-помощники

AI-помощники генерируют маркетинговые тексты и сценарии для видео на основе фотографий товара. В отличие от генерации изображений, эти эндпоинты работают синхронно — результат возвращается сразу в ответе.

Стоимость

AI-помощники имеют дневной лимит бесплатных обращений:

Обращений в деньСтоимость
1–100Бесплатно
101+1 искра за каждые 20 обращений

Учитываются все вызовы помощников: /wishes/suggest, /video/suggest-scenario.

Текущее использование можно проверить через GET /helpers/usage.


Генерация маркетингового текста

POST /wishes/suggest

Генерация текста описания/пожелания по фотографиям товара.

Запрос:

{ "images": [ {"data": "BASE64_ФОТО", "media_type": "image/jpeg"} ], "category_id": "cosmetics", "concept_id": "cosmetics_catalog", "product_name": "Крем для лица" }
ПараметрТипОбязательноеОписание
imagesBase64Image[]да1–5 фото товара
category_idstringдаКатегория товара
concept_idstringдаКонцепт
product_namestringнетНазвание товара (до 200 символов)

Ответ:

{ "text": "Крем для лица — ваш секрет сияющей кожи. Натуральный состав бережно увлажняет и защищает кожу в течение всего дня..." }

Ошибки:

  • 503 — AI-провайдер не настроен
  • 500 — ошибка генерации текста

Сценарий для видео

POST /video/suggest-scenario

AI-генерация сценария движения для видео на основе фотографии товара. Результат можно использовать в поле scenario при генерации видео.

Запрос:

{ "image": {"data": "BASE64_ФОТО", "media_type": "image/jpeg"}, "product_name": "Крем для лица", "category_id": "cosmetics" }
ПараметрТипОбязательноеОписание
imageBase64ImageдаФото товара
product_namestringнетНазвание товара
category_idstringнетКатегория

Ответ:

{ "scenario": "Камера плавно приближается к баночке крема. Нежные капли росы скатываются по стеклянной поверхности. На заднем плане появляются свежие зелёные листья." }

Использование

GET /helpers/usage

Текущее использование AI-помощников за сегодня.

resp = requests.get(f"{BASE}/helpers/usage", headers=headers) usage = resp.json() print(f"Использовано: {usage['used_today']}/{usage['free_limit']}") print(f"Бесплатных осталось: {usage['free_remaining']}")

Ответ:

{ "used_today": 85, "free_limit": 100, "free_remaining": 15, "paid_rate": "1 spark per 20 requests after free limit" }

Ошибки при превышении лимита:

Когда бесплатный лимит исчерпан и на балансе недостаточно искр:

{ "error": "insufficient_tokens", "message": "Free daily limit (100) exceeded. 1 spark per 20 requests required.", "details": {"used_today": 120, "free_limit": 100} }