Pro API: создание персонажей для Multi-Ref Видео
Персонаж — это набор из пяти ракурсов одного человека (или существа), созданный из одной фотографии
и хранящийся под character_id. Именно его использует Multi-Ref Видео, чтобы
распознать человека в клипе: пять ракурсов передают сходство без какого-либо обучения.
Персонажи, созданные в приложении, уже здесь: та же лицензия, тот же список (см. Персонажи из приложения).
Пять ракурсов
| Роль | Ракурс |
|---|---|
| 1 | Бюст анфас, нейтральное выражение |
| 2 | Бюст ¾, персонаж смотрит вправо относительно изображения, лёгкая улыбка |
| 3 | Бюст ¾, персонаж смотрит влево относительно изображения, нейтральное выражение |
| 4 | В полный рост анфас |
| 5 | В полный рост, со спины |
Каждый ракурс генерируется отдельно: ни один не получается зеркальным отражением другого.
Создание персонажа
POST /characters (разрешение images). Операция выполняется асинхронно.
{ "name": "Lea", "kind": "woman", "image_b64": "<the photo>", "photo_role": "bust" }| Поле | Тип | Назначение |
|---|---|---|
name | строка от 1 до 40 символов | Имя персонажа |
kind | строка | woman, man или описание существа на английском (baby dragon). Определяет местоимения в инструкциях, но не "they". |
image_b64 | base64 | Фотография: чёткая, один человек, не менее 1024 px по длинной стороне, не более 12 МБ, JPEG, PNG или WebP |
photo_role | bust (по умолчанию) или full_body | Фото является бюстом (становится ракурсом 1) или снимком в полный рост (ракурс 4) |
outfit | текст на английском, необязательно | Одежда для персонажа (a red leather jacket and black jeans) |
В ответ, 202, приходит персонаж со статусом pending и полем cost_estimate. Фото становится ракурсом своей роли,
а сервер генерирует оставшиеся четыре за 1-3 минуты.
Цена: один кредит за каждый сгенерированный ракурс, итого 4 кредита, плюс 1 при использовании outfit (одежда применяется отдельным шагом). Неудачный ракурс не тарифицируется. POST /characters/quote позволяет узнать цену заранее (поле outfit необязательно).
Отслеживание, проверка и повтор
GET /characters/{id} возвращает текущее состояние:
status | Значение |
|---|---|
pending | Ракурсы генерируются |
ready | Все пять ракурсов готовы |
partial | Некоторые ракурсы отсутствуют или не удались |
failed, empty | Нет ни одного пригодного ракурса |
{
"character_id": "chr_8f3a...",
"name": "Lea",
"kind": "woman",
"origin": "api",
"status": "ready",
"progress": { "ready": 5, "total": 5 },
"views": [
{ "role": 1, "name": "bust_front", "status": "ready", "file_url": "https://api.tendre.ai/pro/v1/characters/chr_8f3a.../views/1/file" }
],
"expires_at": "2026-10-19T18:02:11.000Z"
}- Проверяй ракурсы перед первым рендером.
GET /characters/{id}/views/{role}/fileвозвращает изображение. Неудачный ракурс или ракурс с неправильным направлением взгляда испортит сходство в каждом видео. - Повтор ракурса:
POST /characters/{id}/views/{role}/redo, 1 кредит. Ракурс, полученный из исходной фотографии, повторить нельзя (vue_photo). - Список:
GET /charactersвозвращает твоих персонажей, включая созданных в приложении, и максимальный лимитmax. - Удаление:
DELETE /characters/{id}удаляет персонажа и все его ракурсы.
Персонажи из приложения
Персонаж, созданный на экране Мои персонажи в приложении, отображается в GET /characters с origin
app и участвует в Multi-Ref Видео как любой другой. В приложении у персонажа может быть несколько
character sheet (наряды, настроения): sheet_id указывает, какой из них используется (по умолчанию самый последний), sheets
перечисляет их все, а ?sheet=<id> позволяет запросить другой при чтении, при получении файла ракурса и при повторе ракурса.
В клипе Multi-Ref characters[].sheet_id выбирает нужный character sheet. Чтобы повторить ракурс персонажа из приложения,
укажи его kind в теле запроса.
Хранение
Ракурсы зашифрованы (отдельный ключ для каждого файла) и привязаны к твоей лицензии. При Pro-лицензии доступно не более 50 персонажей,
включая созданных в приложении. Персонаж, не использовавшийся 15 дней, удаляется
(expires_at): каждый рендер Multi-Ref и каждое чтение ракурса откладывает эту дату. Отправленная тобой фотография хранится как ракурс своей роли в зашифрованном виде, как и сгенерированные ракурсы.
Через агента (MCP)
С помощью MCP-сервера достаточно написать: "создай персонажа из этой фотографии". Агент
использует tendre_character_create (фото передаётся через ссылку для загрузки, файл, прикреплённый в ChatGPT,
изображение, сгенерированное в диалоге, или публичный адрес), показывает тебе пять ракурсов и повторяет
неудачный с помощью tendre_character_redo_view. tendre_character_get, tendre_character_list и
tendre_character_delete покрывают остальные действия, а tendre_quote позволяет узнать цену заранее.
Затем добавь персонажа в клип: см. Multi-Ref Видео.