{
  "aboutHtml": "<p>Seedance 1.0 Lite Image-to-Video — селектор doubao-seedance-1-0-lite-i2v-250428 для создания видео по изображению. Используйте его для анимации предоставленной сцены, вида продукта или изображения персонажа. Опишите, что движется, как развивается движение и чем должен закончиться кадр. Для сцены с продуктом практическое задание может предусматривать небольшое движение объекта и медленное приближение камеры с сохранением расположения, видимого на исходном изображении.</p><p>Используйте POST /v1/videos с model, равным doubao-seedance-1-0-lite-i2v-250428, и массивом content. Поместите инструкцию по движению в элемент text, используя type:text и text, а изображение передайте в элементе image_url с image_url.url. URL изображения должен быть доступен, либо можно передать представление data:image/&lt;format&gt;;base64,.... Документированные форматы изображений — jpeg, png, webp, bmp, tiff и gif. Изображение должно быть меньше 30 MB, ширина и высота — больше 300 и меньше 6000 пикселей, а соотношение сторон — больше 0,4 и меньше 2,5. Проверьте фактический исходный файл перед отправкой.</p><p>Рекомендации модели для ввода изображения используют ratio:adaptive. Для генерации по изображению документированы варианты разрешения 480p и 720p; 1080p для этого режима исключено. Поле duration — целое число от 2 до 12 секунд, по умолчанию 5. Документация указывает 24 кадра в секунду. Подбирайте сложность сцены под запрошенную длительность: укажите начальную позу, одно главное действие и финальное кадрирование, не требуя от ролика несвязанной последовательности событий.</p><p>Настроенный запрос требует seed, camerafixed, watermark и execution_expires_after наряду с model и content. seed принимает значения от -1 до 4294967295, документированное значение по умолчанию — -1. watermark — логический параметр, по умолчанию false. execution_expires_after измеряется в секундах с момента создания задания, принимает значения от 3600 до 259200 и по умолчанию равен 172800. Документация исключает управление фиксированной камерой в режиме референсного изображения; передайте camerafixed:false для этого профиля. Генерация синхронизированного звука документирована для другой редакции Seedance и не является параметром этого профиля Lite для создания видео по изображению.</p><p>Отправка возвращает id Ailoot до готовности видео. Сохраните именно этот id и используйте возвращённый polling_url для проверки того же исходного задания, пока результат не будет готов. Успешный ответ содержит подписанную ссылку Ailoot в content.video_url после того, как Ailoot сохранил готовый файл как принадлежащий вам медиаресурс. Сохраните видео вместе с исходным изображением, запросом и настройками и проверьте его внешний вид, движение и кадрирование по всему ролику. Найдите ресурс через GET /v1/media/assets?family=video, проходя по всем next_cursor, и прочитайте GET /v1/media/assets/{asset_id} с фактическим asset_id, чтобы получить content_url. Если подписанная ссылка возвращает link_expired, повторно прочитайте тот же ресурс для обновлённого content_url. Если исходное задание истекло, завершилось ошибкой или остаётся в неопределённом состоянии, сохраните подробности ответа и изучите его перед созданием новой генерации.</p>",
  "aboutText": "Seedance 1.0 Lite Image-to-Video — селектор doubao-seedance-1-0-lite-i2v-250428 для создания видео по изображению. Используйте его для анимации предоставленной сцены, вида продукта или изображения персонажа. Опишите, что движется, как развивается движение и чем должен закончиться кадр. Для сцены с продуктом практическое задание может предусматривать небольшое движение объекта и медленное приближение камеры с сохранением расположения, видимого на исходном изображении.\n\nИспользуйте POST /v1/videos с model, равным doubao-seedance-1-0-lite-i2v-250428, и массивом content. Поместите инструкцию по движению в элемент text, используя type:text и text, а изображение передайте в элементе image_url с image_url.url. URL изображения должен быть доступен, либо можно передать представление data:image/<format>;base64,.... Документированные форматы изображений — jpeg, png, webp, bmp, tiff и gif. Изображение должно быть меньше 30 MB, ширина и высота — больше 300 и меньше 6000 пикселей, а соотношение сторон — больше 0,4 и меньше 2,5. Проверьте фактический исходный файл перед отправкой.\n\nРекомендации модели для ввода изображения используют ratio:adaptive. Для генерации по изображению документированы варианты разрешения 480p и 720p; 1080p для этого режима исключено. Поле duration — целое число от 2 до 12 секунд, по умолчанию 5. Документация указывает 24 кадра в секунду. Подбирайте сложность сцены под запрошенную длительность: укажите начальную позу, одно главное действие и финальное кадрирование, не требуя от ролика несвязанной последовательности событий.\n\nНастроенный запрос требует seed, camerafixed, watermark и execution_expires_after наряду с model и content. seed принимает значения от -1 до 4294967295, документированное значение по умолчанию — -1. watermark — логический параметр, по умолчанию false. execution_expires_after измеряется в секундах с момента создания задания, принимает значения от 3600 до 259200 и по умолчанию равен 172800. Документация исключает управление фиксированной камерой в режиме референсного изображения; передайте camerafixed:false для этого профиля. Генерация синхронизированного звука документирована для другой редакции Seedance и не является параметром этого профиля Lite для создания видео по изображению.\n\nОтправка возвращает id Ailoot до готовности видео. Сохраните именно этот id и используйте возвращённый polling_url для проверки того же исходного задания, пока результат не будет готов. Успешный ответ содержит подписанную ссылку Ailoot в content.video_url после того, как Ailoot сохранил готовый файл как принадлежащий вам медиаресурс. Сохраните видео вместе с исходным изображением, запросом и настройками и проверьте его внешний вид, движение и кадрирование по всему ролику. Найдите ресурс через GET /v1/media/assets?family=video, проходя по всем next_cursor, и прочитайте GET /v1/media/assets/{asset_id} с фактическим asset_id, чтобы получить content_url. Если подписанная ссылка возвращает link_expired, повторно прочитайте тот же ресурс для обновлённого content_url. Если исходное задание истекло, завершилось ошибкой или остаётся в неопределённом состоянии, сохраните подробности ответа и изучите его перед созданием новой генерации.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "487a680e341510ac3c01274fc5c449e846a5c52c02a53a893173c8db9c9f4bab",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "ru",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Seedance 1.0 Lite Image-to-Video</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Закрыть\">×</button></div><div class=\"idline\"><span>ByteDance /</span><code>doubao-seedance-1-0-lite-i2v-250428</code><button type=\"button\" id=\"copy-id\">Скопировать ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Разделы карточки модели\"><button type=\"button\" data-card-jump=\"overview\">Начало</button><button type=\"button\" data-card-jump=\"methods\">Входные данные и методы</button><button type=\"button\" data-card-jump=\"pricing\">Тарифы</button><button type=\"button\" data-card-jump=\"examples\">Примеры</button><button type=\"button\" data-card-jump=\"results\">Результаты</button><button type=\"button\" data-card-jump=\"aliases\">Псевдонимы</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Методы API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|videos|/v1/videos|doubao-seedance-1-0-lite-i2v-250428\">Видео</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Начало</h3><p class=\"mdesc-full\">Seedance 1.0 Lite Image-to-Video превращает изображение и инструкции по движению в видео. Выберите doubao-seedance-1-0-lite-i2v-250428 для этой конкретной редакции с изображением на входе. Предоставьте исходное изображение и опишите движение объекта, поведение камеры и желаемый финальный вид. Отправка запускает асинхронное задание; сохраните его ID и получите готовое видео из того же задания.</p><dl class=\"card-io\" data-card-io><div><dt>Допустимые входные данные</dt><dd>Текст · Картинки</dd></div><div><dt>Результаты</dt><dd>Видео</dd></div></dl><details class=\"card-about\"><summary>О модели</summary><p class=\"note-s\" data-model-method-boundary>Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.</p><div class=\"mabout\" id=\"m-about\"><p>Seedance 1.0 Lite Image-to-Video — селектор doubao-seedance-1-0-lite-i2v-250428 для создания видео по изображению. Используйте его для анимации предоставленной сцены, вида продукта или изображения персонажа. Опишите, что движется, как развивается движение и чем должен закончиться кадр. Для сцены с продуктом практическое задание может предусматривать небольшое движение объекта и медленное приближение камеры с сохранением расположения, видимого на исходном изображении.</p><p>Используйте POST /v1/videos с model, равным doubao-seedance-1-0-lite-i2v-250428, и массивом content. Поместите инструкцию по движению в элемент text, используя type:text и text, а изображение передайте в элементе image_url с image_url.url. URL изображения должен быть доступен, либо можно передать представление data:image/&lt;format&gt;;base64,.... Документированные форматы изображений — jpeg, png, webp, bmp, tiff и gif. Изображение должно быть меньше 30 MB, ширина и высота — больше 300 и меньше 6000 пикселей, а соотношение сторон — больше 0,4 и меньше 2,5. Проверьте фактический исходный файл перед отправкой.</p><p>Рекомендации модели для ввода изображения используют ratio:adaptive. Для генерации по изображению документированы варианты разрешения 480p и 720p; 1080p для этого режима исключено. Поле duration — целое число от 2 до 12 секунд, по умолчанию 5. Документация указывает 24 кадра в секунду. Подбирайте сложность сцены под запрошенную длительность: укажите начальную позу, одно главное действие и финальное кадрирование, не требуя от ролика несвязанной последовательности событий.</p><p>Настроенный запрос требует seed, camerafixed, watermark и execution_expires_after наряду с model и content. seed принимает значения от -1 до 4294967295, документированное значение по умолчанию — -1. watermark — логический параметр, по умолчанию false. execution_expires_after измеряется в секундах с момента создания задания, принимает значения от 3600 до 259200 и по умолчанию равен 172800. Документация исключает управление фиксированной камерой в режиме референсного изображения; передайте camerafixed:false для этого профиля. Генерация синхронизированного звука документирована для другой редакции Seedance и не является параметром этого профиля Lite для создания видео по изображению.</p><p>Отправка возвращает id Ailoot до готовности видео. Сохраните именно этот id и используйте возвращённый polling_url для проверки того же исходного задания, пока результат не будет готов. Успешный ответ содержит подписанную ссылку Ailoot в content.video_url после того, как Ailoot сохранил готовый файл как принадлежащий вам медиаресурс. Сохраните видео вместе с исходным изображением, запросом и настройками и проверьте его внешний вид, движение и кадрирование по всему ролику. Найдите ресурс через GET /v1/media/assets?family=video, проходя по всем next_cursor, и прочитайте GET /v1/media/assets/{asset_id} с фактическим asset_id, чтобы получить content_url. Если подписанная ссылка возвращает link_expired, повторно прочитайте тот же ресурс для обновлённого content_url. Если исходное задание истекло, завершилось ошибкой или остаётся в неопределённом состоянии, сохраните подробности ответа и изучите его перед созданием новой генерации.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Доступно в Ailoot · входные данные и методы</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Video</b> <code>POST /v1/videos</code></summary><dl class=\"method-capabilities\"><div><dt>Входные данные</dt><dd><code>text</code>, <code>image</code></dd></div><div><dt>Результат</dt><dd><code>video</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Поле</th><th>Тип</th><th>Требование</th><th>Значения и ограничения</th><th>По умолчанию</th></tr></thead><tbody><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>string</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Обязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>doubao-seedance-1-0-lite-i2v-250428</div></td><td data-cell-label=\"По умолчанию\" data-default=\"unspecified\"><span class=\"card-cell-label\">По умолчанию</span>—</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">content</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>array</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Обязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span></td><td data-cell-label=\"По умолчанию\" data-default=\"unspecified\"><span class=\"card-cell-label\">По умолчанию</span>—</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">duration</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>integer</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Необязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>Минимум: 2</div><div>Максимум: 12</div></td><td data-cell-label=\"По умолчанию\" data-default=\"known\"><span class=\"card-cell-label\">По умолчанию</span>5</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">resolution</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>string</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Необязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>480p, 720p</div></td><td data-cell-label=\"По умолчанию\" data-default=\"unspecified\"><span class=\"card-cell-label\">По умолчанию</span>—</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">ratio</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>string</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Необязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>adaptive</div></td><td data-cell-label=\"По умолчанию\" data-default=\"unspecified\"><span class=\"card-cell-label\">По умолчанию</span>—</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">service_tier</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>string</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Необязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>default, flex</div></td><td data-cell-label=\"По умолчанию\" data-default=\"unspecified\"><span class=\"card-cell-label\">По умолчанию</span>—</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">seed</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>integer</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Обязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>Минимум: -1</div><div>Максимум: 4 294 967 295</div></td><td data-cell-label=\"По умолчанию\" data-default=\"known\"><span class=\"card-cell-label\">По умолчанию</span>-1</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">camerafixed</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>boolean</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Обязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>false</div></td><td data-cell-label=\"По умолчанию\" data-default=\"unspecified\"><span class=\"card-cell-label\">По умолчанию</span>—</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">watermark</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>boolean</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Обязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span></td><td data-cell-label=\"По умолчанию\" data-default=\"known\"><span class=\"card-cell-label\">По умолчанию</span>false</td></tr><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">execution_expires_after</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span><code>integer</code></td><td data-cell-label=\"Требование\"><span class=\"card-cell-label\">Требование</span>Обязательно</td><td data-cell-label=\"Значения и ограничения\"><span class=\"card-cell-label\">Значения и ограничения</span><div>Минимум: 3 600</div><div>Максимум: 259 200</div></td><td data-cell-label=\"По умолчанию\" data-default=\"known\"><span class=\"card-cell-label\">По умолчанию</span>172 800</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Параметры и жизненный цикл метода</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Параметр</th><th>Контракт</th></tr></thead><tbody><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>content_type</code></th><td data-cell-label=\"Контракт\"><span class=\"card-cell-label\">Контракт</span>application/json</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>required</code></th><td data-cell-label=\"Контракт\"><span class=\"card-cell-label\">Контракт</span>camerafixed, content, execution_expires_after, model, seed, watermark</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>optional</code></th><td data-cell-label=\"Контракт\"><span class=\"card-cell-label\">Контракт</span>duration, resolution, ratio, service_tier</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>material_types</code></th><td data-cell-label=\"Контракт\"><span class=\"card-cell-label\">Контракт</span>text, image</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>conditions</code></th><td data-cell-label=\"Контракт\"><span class=\"card-cell-label\">Контракт</span>Use the listed content text/image_url items and all six required fields. Retain image roles and order.</td></tr></tbody></table></div><p>Псевдонимы метода: <code>/v1/videos/generations</code></p><p>Жизненный цикл: <code>submit_once_poll_original</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}/content</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}/content</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Тарифы</h3><div class=\"card-result-process\" data-billing-basis><h5>Как рассчитывается итоговая плата</h5><p class=\"note-s\">Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.</p><dl data-price-conditions><dt>Быстрый режим</dt><dd>Не указано <span class=\"note-s\">При выборе быстрого режима</span></dd><dt>Режим flex</dt><dd>Не указано <span class=\"note-s\">При выборе режима flex</span></dd><dt>Максимальная интенсивность рассуждений</dt><dd>Не указано <span class=\"note-s\">При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Оценочные ставки для сравнения</h4><h4>Цены по конфигурациям</h4><p class=\"note-s\">Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Конфигурация</th><th>Шкала ставок</th><th>Прогноз количества</th><th>Расчётная единица</th><th>Плата</th></tr></thead><tbody><tr><th data-cell-label=\"Конфигурация\" scope=\"row\"><span class=\"card-cell-label\">Конфигурация</span>Базовые тарифы на токены</th><td data-cell-label=\"Шкала ставок\"><span class=\"card-cell-label\">Шкала ставок</span>Базовая ставка</td><td data-cell-label=\"Прогноз количества\"><span class=\"card-cell-label\">Прогноз количества</span>—</td><td data-cell-label=\"Расчётная единица\"><span class=\"card-cell-label\">Расчётная единица</span>—</td><td data-cell-label=\"Плата\"><span class=\"card-cell-label\">Плата</span><div><span>Вход · Входные токены · Оценка только для сравнения</span> <b>—</b> <span class=\"price-unit\">/ 1K токенов</span></div><div><span>Выход · Выходные токены · Оценка только для сравнения</span> <b>—</b> <span class=\"price-unit\">/ 1K токенов</span></div><div><span>Вход · Чтение кэша · Оценка только для сравнения</span> <b>—</b> <span class=\"price-unit\">/ 1K токенов</span></div><div><span>Вход · Запись в кэш · Оценка только для сравнения</span> <b>—</b> <span class=\"price-unit\">/ 1K токенов</span></div><div><span>Вход · Запись в кэш, 1 час · Оценка только для сравнения</span> <b>—</b> <span class=\"price-unit\">/ 1K токенов</span></div></td></tr><tr><th data-cell-label=\"Конфигурация\" scope=\"row\"><span class=\"card-cell-label\">Конфигурация</span>Output video tokens</th><td data-cell-label=\"Шкала ставок\"><span class=\"card-cell-label\">Шкала ставок</span>—</td><td data-cell-label=\"Прогноз количества\"><span class=\"card-cell-label\">Прогноз количества</span>—</td><td data-cell-label=\"Расчётная единица\"><span class=\"card-cell-label\">Расчётная единица</span>per output video token</td><td data-cell-label=\"Плата\"><span class=\"card-cell-label\">Плата</span><div><span>Выход · video output token · Оценка только для сравнения</span> <b>$0.000003</b> <span class=\"price-unit\">per output video token</span></div></td></tr><tr><th data-cell-label=\"Конфигурация\" scope=\"row\"><span class=\"card-cell-label\">Конфигурация</span>Estimated generation cost</th><td data-cell-label=\"Шкала ставок\"><span class=\"card-cell-label\">Шкала ставок</span>—</td><td data-cell-label=\"Прогноз количества\"><span class=\"card-cell-label\">Прогноз количества</span>Оценка для одной генерации</td><td data-cell-label=\"Расчётная единица\"><span class=\"card-cell-label\">Расчётная единица</span>—</td><td data-cell-label=\"Плата\"><span class=\"card-cell-label\">Плата</span><div><span>Вход · Оценочная стоимость генерации · Оценка только для сравнения</span> <b>$0.2112</b> <span class=\"price-unit\">оценка до генерации</span></div><p class=\"note-s\">This estimate is not an additional charge or a fixed rate for the completed generation.</p></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. <a href=\"/docs/ru/billing/reserve/\">Как работают резервирование и расчёт →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Примеры запросов</h3><h4>Ailoot Ultra · Video</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Варианты кода\"><button class=\"cg-tab\" id=\"model-code-9-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-9-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · создать один раз и сохранить полный результат</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Скопировать код\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-9-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-9-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\n: &quot;${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}&quot;\nexport AILOOT_IMAGE_URL\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;doubao-seedance-1-0-lite-i2v-250428&quot;, &quot;content&quot;: [{&quot;type&quot;: &quot;text&quot;, &quot;text&quot;: &quot;The camera slowly approaches the supplied scene while a small object moves.&quot;}, {&quot;type&quot;: &quot;image_url&quot;, &quot;image_url&quot;: {&quot;url&quot;: &quot;YOUR_ACCESSIBLE_IMAGE_URL&quot;}}], &quot;resolution&quot;: &quot;480p&quot;, &quot;ratio&quot;: &quot;adaptive&quot;, &quot;duration&quot;: 5, &quot;service_tier&quot;: &quot;default&quot;, &quot;seed&quot;: -1, &quot;camerafixed&quot;: false, &quot;watermark&quot;: false, &quot;execution_expires_after&quot;: 172800}&#39;)\np[&#39;content&#39;][1][&#39;image_url&#39;][&#39;url&#39;]=os.environ[&#39;AILOOT_IMAGE_URL&#39;]\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Получить и сохранить результаты</h3><h4>Ailoot Ultra · Video</h4><ul class=\"card-result-paths\"><li><code>GET /v1/videos/{request_id}</code></li><li><code>GET /v1/videos/generations/{request_id}</code></li><li><code>GET /v1/videos/{request_id}/content</code></li><li><code>GET /v1/videos/generations/{request_id}/content</code></li></ul><div class=\"card-result-process\" data-all-results><h5>Сохраняйте все готовые результаты</h5><p class=\"note-s\">Сохраните каждое готовое видео или полученный файл; загрузите содержимое по каждому фактически полученному URL материала.</p><p class=\"note-s\">Retain the complete response, all actual results, original identifiers, usage and response headers.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Если нужно проверить исходный ответ</h5><p class=\"note-s\">Preserve original response/headers/id and poll that operation; never resubmit unknown creation.</p></div><details class=\"card-about\" data-output-fields><summary>Поля ответа</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Поле</th><th>Тип</th></tr></thead><tbody><tr><th data-cell-label=\"Поле\" scope=\"row\"><span class=\"card-cell-label\">Поле</span><code class=\"card-field-name\">content.video_url</code></th><td data-cell-label=\"Тип\" data-field-type><span class=\"card-cell-label\">Тип</span>string or array, as returned</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Псевдонимы</h3><h4>Псевдонимы моделей</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=doubao-seedance-1-0-lite-i2v-250428&amp;route=Ultra&amp;caller=doubao-seedance-1-0-lite-i2v-250428&amp;fmt=videos\"><code>doubao-seedance-1-0-lite-i2v-250428</code></a></span></p><h4>Псевдонимы путей метода</h4><p class=\"note-s\"><code>/v1/videos/generations</code></p><h4>Связанные ID для вызова</h4><p class=\"note-s\"><a href=\"#m=doubao-seedance-1-0-lite-i2v-250428&amp;route=Ultra&amp;caller=doubao-seedance-1-0-lite-i2v-250428&amp;fmt=videos\"><code>doubao-seedance-1-0-lite-i2v-250428</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "doubao-seedance-1-0-lite-i2v-250428",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "doubao-seedance-1-0-lite-i2v-250428",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|doubao-seedance-1-0-lite-i2v-250428",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "The displayed rates estimate the cost before generation. The final charge is calculated from the cost recorded for the original generation. Measured output duration and forecast quantities are not the final billable quantity.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "authentication": {
              "api_key_source": "AILOOT_API_KEY",
              "header": "Authorization: Bearer"
            },
            "example_body": {
              "camerafixed": false,
              "content": [
                {
                  "text": "The camera slowly approaches the supplied scene while a small object moves.",
                  "type": "text"
                },
                {
                  "image_url": {
                    "url": "YOUR_ACCESSIBLE_IMAGE_URL"
                  },
                  "type": "image_url"
                }
              ],
              "duration": 5,
              "execution_expires_after": 172800,
              "model": "doubao-seedance-1-0-lite-i2v-250428",
              "ratio": "adaptive",
              "resolution": "480p",
              "seed": -1,
              "service_tier": "default",
              "watermark": false
            },
            "lifecycle": {
              "cancel_endpoint": null,
              "completed_states": [
                "succeeded"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "content_pending": "Original status JSON until publication.",
              "content_ready": {
                "http_status": 303,
                "location": "actual signed Ailoot-owned asset URL"
              },
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "failed",
                "expired"
              ],
              "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
              "mode": "submit_once_poll_original",
              "owned_result": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              },
              "pending_states": [
                "queued",
                "running"
              ],
              "signed_asset_lifetime_seconds": 86400,
              "state_field": "status",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "submit_status": 200,
              "unknown": "Preserve original response/headers/id and poll that operation; never resubmit unknown creation.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
              "family": "video",
              "fields": [
                {
                  "name": "content.video_url",
                  "type": "string or array, as returned"
                }
              ],
              "ownership": "Every returned selected video URL is an owned signed result after completion."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "doubao-seedance-1-0-lite-i2v-250428"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "type": "object"
                },
                "minItems": 1,
                "name": "content",
                "required": true,
                "type": "array"
              },
              {
                "default": 5,
                "default_known": true,
                "enum_known": false,
                "maximum": 12,
                "minimum": 2,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum": [
                  "480p",
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "default_known": false,
                "enum": [
                  "adaptive"
                ],
                "enum_known": true,
                "name": "ratio",
                "required": false,
                "type": "string"
              },
              {
                "default_known": false,
                "enum": [
                  "default",
                  "flex"
                ],
                "enum_known": true,
                "name": "service_tier",
                "required": false,
                "type": "string"
              },
              {
                "default": -1,
                "default_known": true,
                "enum_known": false,
                "maximum": 4294967295,
                "minimum": -1,
                "name": "seed",
                "required": true,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum": [
                  false
                ],
                "enum_known": true,
                "name": "camerafixed",
                "required": true,
                "type": "boolean"
              },
              {
                "default": false,
                "default_known": true,
                "enum_known": false,
                "name": "watermark",
                "required": true,
                "type": "boolean"
              },
              {
                "default": 172800,
                "default_known": true,
                "enum_known": false,
                "maximum": 259200,
                "minimum": 3600,
                "name": "execution_expires_after",
                "required": true,
                "type": "integer"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "camerafixed": {
                  "enum": [
                    false
                  ],
                  "type": "boolean"
                },
                "content": {
                  "items": {
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "duration": {
                  "default": 5,
                  "maximum": 12,
                  "minimum": 2,
                  "type": "integer"
                },
                "execution_expires_after": {
                  "default": 172800,
                  "maximum": 259200,
                  "minimum": 3600,
                  "type": "integer"
                },
                "model": {
                  "enum": [
                    "doubao-seedance-1-0-lite-i2v-250428"
                  ],
                  "type": "string"
                },
                "ratio": {
                  "enum": [
                    "adaptive"
                  ],
                  "type": "string"
                },
                "resolution": {
                  "enum": [
                    "480p",
                    "720p"
                  ],
                  "type": "string"
                },
                "seed": {
                  "default": -1,
                  "maximum": 4294967295,
                  "minimum": -1,
                  "type": "integer"
                },
                "service_tier": {
                  "enum": [
                    "default",
                    "flex"
                  ],
                  "type": "string"
                },
                "watermark": {
                  "default": false,
                  "type": "boolean"
                }
              },
              "required": [
                "camerafixed",
                "content",
                "execution_expires_after",
                "model",
                "seed",
                "watermark"
              ],
              "type": "object"
            },
            "schema_template": {
              "body": {
                "camerafixed": false,
                "content": [
                  {
                    "text": "The camera slowly approaches the supplied scene while a small object moves.",
                    "type": "text"
                  },
                  {
                    "image_url": {
                      "url": "YOUR_ACCESSIBLE_IMAGE_URL"
                    },
                    "type": "image_url"
                  }
                ],
                "duration": 5,
                "execution_expires_after": 172800,
                "model": "doubao-seedance-1-0-lite-i2v-250428",
                "ratio": "adaptive",
                "resolution": "480p",
                "seed": -1,
                "service_tier": "default",
                "watermark": false
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Use the listed content text/image_url items and all six required fields. Retain image roles and order."
            ],
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "optional": [
              "duration",
              "resolution",
              "ratio",
              "service_tier"
            ],
            "required": [
              "camerafixed",
              "content",
              "execution_expires_after",
              "model",
              "seed",
              "watermark"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "completed_states": [
              "succeeded"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "content_pending": "Original status JSON until publication.",
            "content_ready": {
              "http_status": 303,
              "location": "actual signed Ailoot-owned asset URL"
            },
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "failed",
              "expired"
            ],
            "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
            "mode": "submit_once_poll_original",
            "owned_result": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}"
            },
            "pending_states": [
              "queued",
              "running"
            ],
            "signed_asset_lifetime_seconds": 86400,
            "state_field": "status",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "submit_status": 200,
            "unknown": "Preserve original response/headers/id and poll that operation; never resubmit unknown creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "output": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "family": "video",
            "fields": [
              {
                "name": "content.video_url",
                "type": "string or array, as returned"
              }
            ],
            "ownership": "Every returned selected video URL is an owned signed result after completion."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per output video token"
            },
            "label": "Output video tokens",
            "units": [
              {
                "amount": "0.000003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "video output token",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per output video token",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output video token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.2112",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.2112",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\n: \"${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}\"\nexport AILOOT_IMAGE_URL\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"doubao-seedance-1-0-lite-i2v-250428\", \"content\": [{\"type\": \"text\", \"text\": \"The camera slowly approaches the supplied scene while a small object moves.\"}, {\"type\": \"image_url\", \"image_url\": {\"url\": \"YOUR_ACCESSIBLE_IMAGE_URL\"}}], \"resolution\": \"480p\", \"ratio\": \"adaptive\", \"duration\": 5, \"service_tier\": \"default\", \"seed\": -1, \"camerafixed\": false, \"watermark\": false, \"execution_expires_after\": 172800}')\np['content'][1]['image_url']['url']=os.environ['AILOOT_IMAGE_URL']\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n",
            "label": "curl · create once and retain the complete result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "Video",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "cache_read_price": null,
          "cache_write_1h_price": null,
          "cache_write_price": null,
          "fast_multiplier": null,
          "flex_multiplier": null,
          "image_input_price": null,
          "image_output_price": null,
          "input_price": null,
          "intervals": null,
          "max_reasoning_effort_multiplier": null,
          "output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per output video token"
            },
            "label": "Output video tokens",
            "units": [
              {
                "amount": "0.000003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "video output token",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per output video token",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output video token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.2112",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.2112",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "doubao-seedance-1-0-lite-i2v-250428",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}"
        ],
        "tiers": [],
        "unit": "video",
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.000003",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token",
            "label": "video output token",
            "native_amount_usd_per_unit": "0.000003",
            "native_quantity": 1,
            "public_unit_label": "per output video token",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output video token"
          },
          {
            "amount": "0.2112",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.2112",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "request_estimate"
          }
        ]
      }
    }
  ],
  "model_id": "doubao-seedance-1-0-lite-i2v-250428",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "82c2b59d906a04e704d22458b9bbb076f47f5f5a17c2b3dc884b5e7f88926d7d",
    "input_html_sha256": "8d3b15b9f960b59f8b58511ec077c63bbe435c99f995da53026eec4252d63b2d",
    "private_audit_sha256": "adfd8ba1ff01ecb03a94680299e44b96373bc53d412ccba7025b9278353e16f4",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/ru/doubao-seedance-1-0-lite-i2v-250428/",
    "description": "Seedance 1.0 Lite Image-to-Video превращает изображение и инструкции по движению в видео. Выберите doubao-seedance-1-0-lite-i2v-250428 для этой конкретной редакции с изображением на входе. Предоставьте исходное изображение и опишите движение объекта, поведение камеры и желаемый финальный вид. Отправка запускает асинхронное задание; сохраните его ID и получите готовое видео из того же задания.",
    "locale": "ru",
    "md_url": "https://ailoot.ai/models/ru/doubao-seedance-1-0-lite-i2v-250428/index.md",
    "title": "Seedance 1.0 Lite Image-to-Video — Ailoot",
    "url": "https://ailoot.ai/models/ru/doubao-seedance-1-0-lite-i2v-250428/"
  },
  "rawModel": {
    "about": "Seedance 1.0 Lite Image-to-Video — селектор doubao-seedance-1-0-lite-i2v-250428 для создания видео по изображению. Используйте его для анимации предоставленной сцены, вида продукта или изображения персонажа. Опишите, что движется, как развивается движение и чем должен закончиться кадр. Для сцены с продуктом практическое задание может предусматривать небольшое движение объекта и медленное приближение камеры с сохранением расположения, видимого на исходном изображении.\n\nИспользуйте POST /v1/videos с model, равным doubao-seedance-1-0-lite-i2v-250428, и массивом content. Поместите инструкцию по движению в элемент text, используя type:text и text, а изображение передайте в элементе image_url с image_url.url. URL изображения должен быть доступен, либо можно передать представление data:image/<format>;base64,.... Документированные форматы изображений — jpeg, png, webp, bmp, tiff и gif. Изображение должно быть меньше 30 MB, ширина и высота — больше 300 и меньше 6000 пикселей, а соотношение сторон — больше 0,4 и меньше 2,5. Проверьте фактический исходный файл перед отправкой.\n\nРекомендации модели для ввода изображения используют ratio:adaptive. Для генерации по изображению документированы варианты разрешения 480p и 720p; 1080p для этого режима исключено. Поле duration — целое число от 2 до 12 секунд, по умолчанию 5. Документация указывает 24 кадра в секунду. Подбирайте сложность сцены под запрошенную длительность: укажите начальную позу, одно главное действие и финальное кадрирование, не требуя от ролика несвязанной последовательности событий.\n\nНастроенный запрос требует seed, camerafixed, watermark и execution_expires_after наряду с model и content. seed принимает значения от -1 до 4294967295, документированное значение по умолчанию — -1. watermark — логический параметр, по умолчанию false. execution_expires_after измеряется в секундах с момента создания задания, принимает значения от 3600 до 259200 и по умолчанию равен 172800. Документация исключает управление фиксированной камерой в режиме референсного изображения; передайте camerafixed:false для этого профиля. Генерация синхронизированного звука документирована для другой редакции Seedance и не является параметром этого профиля Lite для создания видео по изображению.\n\nОтправка возвращает id Ailoot до готовности видео. Сохраните именно этот id и используйте возвращённый polling_url для проверки того же исходного задания, пока результат не будет готов. Успешный ответ содержит подписанную ссылку Ailoot в content.video_url после того, как Ailoot сохранил готовый файл как принадлежащий вам медиаресурс. Сохраните видео вместе с исходным изображением, запросом и настройками и проверьте его внешний вид, движение и кадрирование по всему ролику. Найдите ресурс через GET /v1/media/assets?family=video, проходя по всем next_cursor, и прочитайте GET /v1/media/assets/{asset_id} с фактическим asset_id, чтобы получить content_url. Если подписанная ссылка возвращает link_expired, повторно прочитайте тот же ресурс для обновлённого content_url. Если исходное задание истекло, завершилось ошибкой или остаётся в неопределённом состоянии, сохраните подробности ответа и изучите его перед созданием новой генерации.",
    "alias_of": null,
    "aliases": [],
    "author": "ByteDance",
    "ctx": null,
    "formats": [
      "videos"
    ],
    "id": "doubao-seedance-1-0-lite-i2v-250428",
    "input": [
      "image",
      "text"
    ],
    "kind": "video",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "The displayed rates estimate the cost before generation. The final charge is calculated from the cost recorded for the original generation. Measured output duration and forecast quantities are not the final billable quantity.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "authentication": {
              "api_key_source": "AILOOT_API_KEY",
              "header": "Authorization: Bearer"
            },
            "example_body": {
              "camerafixed": false,
              "content": [
                {
                  "text": "The camera slowly approaches the supplied scene while a small object moves.",
                  "type": "text"
                },
                {
                  "image_url": {
                    "url": "YOUR_ACCESSIBLE_IMAGE_URL"
                  },
                  "type": "image_url"
                }
              ],
              "duration": 5,
              "execution_expires_after": 172800,
              "model": "doubao-seedance-1-0-lite-i2v-250428",
              "ratio": "adaptive",
              "resolution": "480p",
              "seed": -1,
              "service_tier": "default",
              "watermark": false
            },
            "lifecycle": {
              "cancel_endpoint": null,
              "completed_states": [
                "succeeded"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "content_pending": "Original status JSON until publication.",
              "content_ready": {
                "http_status": 303,
                "location": "actual signed Ailoot-owned asset URL"
              },
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "failed",
                "expired"
              ],
              "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
              "mode": "submit_once_poll_original",
              "owned_result": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              },
              "pending_states": [
                "queued",
                "running"
              ],
              "signed_asset_lifetime_seconds": 86400,
              "state_field": "status",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "submit_status": 200,
              "unknown": "Preserve original response/headers/id and poll that operation; never resubmit unknown creation.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
              "family": "video",
              "fields": [
                {
                  "name": "content.video_url",
                  "type": "string or array, as returned"
                }
              ],
              "ownership": "Every returned selected video URL is an owned signed result after completion."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "doubao-seedance-1-0-lite-i2v-250428"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "items": {
                  "type": "object"
                },
                "minItems": 1,
                "name": "content",
                "required": true,
                "type": "array"
              },
              {
                "default": 5,
                "default_known": true,
                "enum_known": false,
                "maximum": 12,
                "minimum": 2,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum": [
                  "480p",
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "default_known": false,
                "enum": [
                  "adaptive"
                ],
                "enum_known": true,
                "name": "ratio",
                "required": false,
                "type": "string"
              },
              {
                "default_known": false,
                "enum": [
                  "default",
                  "flex"
                ],
                "enum_known": true,
                "name": "service_tier",
                "required": false,
                "type": "string"
              },
              {
                "default": -1,
                "default_known": true,
                "enum_known": false,
                "maximum": 4294967295,
                "minimum": -1,
                "name": "seed",
                "required": true,
                "type": "integer"
              },
              {
                "default_known": false,
                "enum": [
                  false
                ],
                "enum_known": true,
                "name": "camerafixed",
                "required": true,
                "type": "boolean"
              },
              {
                "default": false,
                "default_known": true,
                "enum_known": false,
                "name": "watermark",
                "required": true,
                "type": "boolean"
              },
              {
                "default": 172800,
                "default_known": true,
                "enum_known": false,
                "maximum": 259200,
                "minimum": 3600,
                "name": "execution_expires_after",
                "required": true,
                "type": "integer"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "camerafixed": {
                  "enum": [
                    false
                  ],
                  "type": "boolean"
                },
                "content": {
                  "items": {
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "duration": {
                  "default": 5,
                  "maximum": 12,
                  "minimum": 2,
                  "type": "integer"
                },
                "execution_expires_after": {
                  "default": 172800,
                  "maximum": 259200,
                  "minimum": 3600,
                  "type": "integer"
                },
                "model": {
                  "enum": [
                    "doubao-seedance-1-0-lite-i2v-250428"
                  ],
                  "type": "string"
                },
                "ratio": {
                  "enum": [
                    "adaptive"
                  ],
                  "type": "string"
                },
                "resolution": {
                  "enum": [
                    "480p",
                    "720p"
                  ],
                  "type": "string"
                },
                "seed": {
                  "default": -1,
                  "maximum": 4294967295,
                  "minimum": -1,
                  "type": "integer"
                },
                "service_tier": {
                  "enum": [
                    "default",
                    "flex"
                  ],
                  "type": "string"
                },
                "watermark": {
                  "default": false,
                  "type": "boolean"
                }
              },
              "required": [
                "camerafixed",
                "content",
                "execution_expires_after",
                "model",
                "seed",
                "watermark"
              ],
              "type": "object"
            },
            "schema_template": {
              "body": {
                "camerafixed": false,
                "content": [
                  {
                    "text": "The camera slowly approaches the supplied scene while a small object moves.",
                    "type": "text"
                  },
                  {
                    "image_url": {
                      "url": "YOUR_ACCESSIBLE_IMAGE_URL"
                    },
                    "type": "image_url"
                  }
                ],
                "duration": 5,
                "execution_expires_after": 172800,
                "model": "doubao-seedance-1-0-lite-i2v-250428",
                "ratio": "adaptive",
                "resolution": "480p",
                "seed": -1,
                "service_tier": "default",
                "watermark": false
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Use the listed content text/image_url items and all six required fields. Retain image roles and order."
            ],
            "content_type": "application/json",
            "material_types": [
              "text",
              "image"
            ],
            "optional": [
              "duration",
              "resolution",
              "ratio",
              "service_tier"
            ],
            "required": [
              "camerafixed",
              "content",
              "execution_expires_after",
              "model",
              "seed",
              "watermark"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "completed_states": [
              "succeeded"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "content_pending": "Original status JSON until publication.",
            "content_ready": {
              "http_status": 303,
              "location": "actual signed Ailoot-owned asset URL"
            },
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "failed",
              "expired"
            ],
            "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
            "mode": "submit_once_poll_original",
            "owned_result": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}"
            },
            "pending_states": [
              "queued",
              "running"
            ],
            "signed_asset_lifetime_seconds": 86400,
            "state_field": "status",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "submit_status": 200,
            "unknown": "Preserve original response/headers/id and poll that operation; never resubmit unknown creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "output": {
            "all_results": "Retain the complete response, all actual results, original identifiers, usage and response headers.",
            "family": "video",
            "fields": [
              {
                "name": "content.video_url",
                "type": "string or array, as returned"
              }
            ],
            "ownership": "Every returned selected video URL is an owned signed result after completion."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per output video token"
            },
            "label": "Output video tokens",
            "units": [
              {
                "amount": "0.000003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "video output token",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per output video token",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output video token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.2112",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.2112",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\n: \"${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}\"\nexport AILOOT_IMAGE_URL\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"doubao-seedance-1-0-lite-i2v-250428\", \"content\": [{\"type\": \"text\", \"text\": \"The camera slowly approaches the supplied scene while a small object moves.\"}, {\"type\": \"image_url\", \"image_url\": {\"url\": \"YOUR_ACCESSIBLE_IMAGE_URL\"}}], \"resolution\": \"480p\", \"ratio\": \"adaptive\", \"duration\": 5, \"service_tier\": \"default\", \"seed\": -1, \"camerafixed\": false, \"watermark\": false, \"execution_expires_after\": 172800}')\np['content'][1]['image_url']['url']=os.environ['AILOOT_IMAGE_URL']\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n# Submit once. Retain the complete result, original identifiers and every response header.\n",
            "label": "curl · create once and retain the complete result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "http": "POST",
        "img_in": null,
        "img_out": null,
        "in": null,
        "input": [
          "text",
          "image"
        ],
        "label": "Video",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "cache_read_price": null,
          "cache_write_1h_price": null,
          "cache_write_price": null,
          "fast_multiplier": null,
          "flex_multiplier": null,
          "image_input_price": null,
          "image_output_price": null,
          "input_price": null,
          "intervals": null,
          "max_reasoning_effort_multiplier": null,
          "output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per output video token"
            },
            "label": "Output video tokens",
            "units": [
              {
                "amount": "0.000003",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "video output token",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per output video token",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output video token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.2112",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.2112",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "doubao-seedance-1-0-lite-i2v-250428",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}"
        ],
        "tiers": [],
        "unit": "video",
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.000003",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token",
            "label": "video output token",
            "native_amount_usd_per_unit": "0.000003",
            "native_quantity": 1,
            "public_unit_label": "per output video token",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output video token"
          },
          {
            "amount": "0.2112",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.2112",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "request_estimate"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "doubao-seedance-1-0-lite-i2v-250428",
        "request_model_id": "doubao-seedance-1-0-lite-i2v-250428",
        "route_label": "Ultra"
      }
    ],
    "name": "Seedance 1.0 Lite Image-to-Video",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Seedance 1.0 Lite Image-to-Video превращает изображение и инструкции по движению в видео. Выберите doubao-seedance-1-0-lite-i2v-250428 для этой конкретной редакции с изображением на входе. Предоставьте исходное изображение и опишите движение объекта, поведение камеры и желаемый финальный вид. Отправка запускает асинхронное задание; сохраните его ID и получите готовое видео из того же задания."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Seedance 1.0 Lite Image-to-Video превращает изображение и инструкции по движению в видео. Выберите doubao-seedance-1-0-lite-i2v-250428 для этой конкретной редакции с изображением на входе. Предоставьте исходное изображение и опишите движение объекта, поведение камеры и желаемый финальный вид. Отправка запускает асинхронное задание; сохраните его ID и получите готовое видео из того же задания.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "78b2352c7d0f84e704d8d0d11b30bdf7a33ea7290642fe4fc8ffc8462821c96a",
    "renderer_sha256": "aa692ffec412026bdeaf316df24a58e6c5083045e5246f6033f898d132afa5ff"
  },
  "sourceRevision": "2ec2ea9bee499a9a6a16fdef98a00d6e82fb62333e788c103a8e06e9c975344e"
}
