> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apimart.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# MiniMax-H3 Context-IR улучшение промпта

>  - Мультимодальное понимание контекста, выдаёт улучшенный структурированный промпт (только текст, без видео)
- Те же медиа-поля и правила взаимного исключения, что и у генерации видео H3
- Побиллинг по токенам; обычно 20~40 секунд
- Можно использовать отдельно или как шаг 1 workflow: 768P-превью → 2K-регенерация 

<Info>
  **Full 2K Workflow** (опционально): ① Context-IR усиливает промпт → ② [MiniMax-H3](/ru/api-reference/videos/minimax-h3/generation) с `768P` для превью → ③ [Regeneration](/ru/api-reference/videos/minimax-h3/regeneration) повышает до 2K. Сумма unit-price равна прямому 2K, при более дешёвых итерациях. Эндпоинт можно вызывать и отдельно.
</Info>

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.apimart.ai/v1/videos/generations \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --data '{
      "model": "MiniMax-H3-Context-IR",
      "prompt": "Epic space-opera trailer: a female captain alone before a huge viewport as the last fleet gathers and jumps away.",
      "duration": 5,
      "aspect_ratio": "16:9"
    }'
  ```

  ```python Python theme={null}
  import requests

  url = "https://api.apimart.ai/v1/videos/generations"

  payload = {
      "model": "MiniMax-H3-Context-IR",
      "prompt": "Epic space-opera trailer: a female captain alone before a huge viewport as the last fleet gathers and jumps away.",
      "duration": 5,
      "aspect_ratio": "16:9",
  }

  headers = {
      "Authorization": "Bearer <token>",
      "Content-Type": "application/json",
  }

  response = requests.post(url, json=payload, headers=headers)

  print(response.json())
  ```

  ```javascript JavaScript theme={null}
  const url = "https://api.apimart.ai/v1/videos/generations";

  const payload = {
    model: "MiniMax-H3-Context-IR",
    prompt: "Epic space-opera trailer: a female captain alone before a huge viewport as the last fleet gathers and jumps away.",
    duration: 5,
    aspect_ratio: "16:9",
  };

  const headers = {
    Authorization: "Bearer <token>",
    "Content-Type": "application/json",
  };

  fetch(url, {
    method: "POST",
    headers: headers,
    body: JSON.stringify(payload),
  })
    .then((response) => response.json())
    .then((data) => console.log(data))
    .catch((error) => console.error("Error:", error));
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "code": 200,
    "data": [
      {
        "status": "submitted",
        "task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
      }
    ]
  }
  ```

  ```json 400 theme={null}
  {
    "error": {
      "code": 400,
      "message": "Invalid request parameters",
      "type": "invalid_request_error"
    }
  }
  ```

  ```json 401 theme={null}
  {
    "error": {
      "code": 401,
      "message": "Authentication failed, please check your API key",
      "type": "authentication_error"
    }
  }
  ```

  ```json 402 theme={null}
  {
    "error": {
      "code": 402,
      "message": "Insufficient account balance, please top up and try again",
      "type": "payment_required"
    }
  }
  ```
</ResponseExample>

## Авторизация

<ParamField header="Authorization" type="string" required>
  Аутентификация Bearer Token. Получите ключ на [странице управления API Key](https://apimart.ai/keys).

  ```
  Authorization: Bearer YOUR_API_KEY
  ```
</ParamField>

## Обзор

Отправьте идею и при необходимости медиа для мультимодального понимания; получите **структурированный, более богатый промпт**.

* **Видео не создаётся.** Результат в `result.prompt` (не в `result.videos`)
* Медиа-поля используют **те же правила валидации**, что и [генерация видео](/ru/api-reference/videos/minimax-h3/generation) (взаимное исключение кадров и референсов; аудио нельзя одно). Те же входы можно затем передать в генерацию

Пример ответа при завершённой задаче:

```json theme={null}
{
  "code": 200,
  "data": {
    "actual_time": 28,
    "completed": 1700000128,
    "cost": 0.011204,
    "created": 1700000100,
    "credits_cost": 0.11204,
    "estimated_time": 100,
    "id": "task_01J9HA7J*************",
    "progress": 100,
    "result": {
      "prompt": "integrated_multimodal_description: [Shot 1] Cinematic, close-up shot. The camera slowly pushes in on a lone adult astronaut standing in a dimly lit, metallic corridor. The astronaut wears a weathered, white and silver extravehicular spacesuit heavily scuffed with grey dust, featuring a completely opaque, gold-tinted helmet visor. The astronaut slowly pushes open a rusted, thick steel airlock door on the right side of the frame. As the heavy metal door shifts, a sudden, intense beam of vibrant green light spills across the dark frame, illuminating the intricate fabric folds of the suit. The curved golden visor vividly reflects a dense, tangled mass of luminescent green leaves and vines. [Shot 2] At 00:02.500, the camera cuts to a wide shot from directly behind the astronaut from Shot 1, smoothly pedestaling up to reveal the interior of the abandoned orbital station. The vast, hexagonal titanium room is completely overrun by a lush, zero-gravity living garden. Giant, emerald-green vines spiral tightly around cracked, grey ceiling support beams, while thick patches of bioluminescent cyan moss emit a soft glow from the rusted floor grid. Several large, perfectly spherical water droplets float weightlessly in the midground, refracting the ambient green light. The astronaut lowers their heavy, white-gloved hands to their sides, standing perfectly motionless before the massive canopy of overgrown flora.\noverall_soundscape: A loud, grinding metallic creak dominates the foreground as the heavy steel door shifts, instantly followed by a pronounced, high-pitched hiss of escaping pressurized air. A continuous, low-frequency mechanical hum rumbles in the background, establishing the station's deadened room tone. As the space opens, the distinct, crisp rustle of thick foliage is clearly heard, accompanied by soft, resonant liquid plops as unseen water drops collide in the metallic chamber.\nnon_diegetic_music: Ambient electronic score, slow tempo, featuring a deep, sustained synthesizer drone heavily overlaid with delicate, shimmering glockenspiel notes and a solitary, reverberating cello."
    },
    "status": "completed",
    "usage": {
      "input_tokens": 5512,
      "output_tokens": 2388,
      "total_tokens": 7900
    }
  }
}
```

Передайте `result.prompt` **как есть** в `MiniMax-H3` как `prompt`.

## Параметры запроса

<ParamField body="model" type="string" required>
  Фиксированное значение: `MiniMax-H3-Context-IR`
</ParamField>

<ParamField body="prompt" type="string" required>
  Исходный текст идеи, **≤ 7000 символов**
</ParamField>

<ParamField body="duration" type="integer" default="5">
  Целевая длительность видео (секунды), **4\~15**, по умолчанию `5`. Влияет на описание темпа в усиленном промпте.
</ParamField>

<ParamField body="aspect_ratio" type="string">
  Целевое соотношение сторон. **Обязательно при только текстовом вводе**, значение `adaptive` недопустимо.

  Частые значения: `16:9`, `9:16`, `1:1`, `4:3`, `3:4`, `21:9` и т.д.
</ParamField>

<ParamField body="first_frame_image" type="string">
  URL изображения первого кадра
</ParamField>

<ParamField body="last_frame_image" type="string">
  URL изображения последнего кадра
</ParamField>

<ParamField body="image_urls" type="string[]">
  Опорные изображения (всегда как референсы), ≤ **9**
</ParamField>

<ParamField body="image_with_roles" type="object[]">
  Изображения с ролями: `first_frame` / `last_frame` / `reference_image`
</ParamField>

<ParamField body="video_urls" type="string[]">
  Опорные видео, ≤ **3**; каждое 2\~15 с, суммарно ≤ 15 с
</ParamField>

<ParamField body="audio_urls" type="string[]">
  Опорное аудио, ≤ **3**; нельзя использовать одно — только вместе с изображением или видео
</ParamField>

## Биллинг

**По токенам** (единственная модель семейства H3 с биллингом по токенам):

| Позиция         | Цена                 |
| --------------- | -------------------- |
| Входные tokens  | **\$0.87 / миллион** |
| Выходные tokens | **\$3.45 / миллион** |

Типичный вызов (\~5.6k вход + \~3.4k выход tokens) — около **\$0.0167**.

При submit списывается фиксированный депозит, затем расчёт по реальным `prompt_tokens` / `completion_tokens` (излишек возвращается / недостаток доначисляется). Мультимодальный ввод заметно увеличивает входные tokens.

## Примечания

1. Обычно **20\~40 секунд**; опрашивайте [статус задачи](/ru/api-reference/tasks/status) каждые **3\~5 секунд**.
2. Неверные параметры → синхронный **400** (без задачи и списания); runtime-сбои → `failed` с автовозвратом.
3. Полное описание workflow — на странице [Regeneration](/ru/api-reference/videos/minimax-h3/regeneration).

## Response

<ResponseField name="code" type="integer">
  Код статуса; 200 при успехе
</ResponseField>

<ResponseField name="data" type="array">
  При submit: `status` / `task_id`

  <Expandable title="Элементы массива">
    <ResponseField name="status" type="string">
      Изначально `submitted`
    </ResponseField>

    <ResponseField name="task_id" type="string">
      ID задачи
    </ResponseField>
  </Expandable>
</ResponseField>
