Source: https://ailoot.ai/models/es-mx/minimax-hailuo-3-max/
Canonical: https://ailoot.ai/models/es-mx/minimax-hailuo-3-max/
Language: es-mx

# MiniMax: H3 Max

[Markdown](https://ailoot.ai/models/es-mx/minimax-hailuo-3-max/index.md) · [JSON](https://ailoot.ai/models/es-mx/minimax-hailuo-3-max/facts.json)

## [MiniMax: H3 Max](https://ailoot.ai/models/es-mx/minimax-hailuo-3-max/)

MiniMax H3 Max es una variante rápida de H3 con posentrenamiento para video corto con audio sincronizado. El flujo documentado de MiniMax admite texto, imágenes de fotogramas y referencias multimodales, con salida 480P o 768P, duración de 5–15 segundos y opciones propias de expansión de instrucciones.

- [**Ailoot Ultra · Video** `POST /v1/videos` `minimax/hailuo-3-max`](https://ailoot.ai/models/es-mx/minimax-hailuo-3-max/#method-0)

Sobre el modelo

Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.

Una variante rápida de H3 con posentrenamiento

MiniMax H3 Max es una variante del modelo base MiniMax H3 con posentrenamiento, optimizada para generación más rápida, seguimiento de instrucciones y calidad audiovisual. fal Research desarrolló la variante mediante posentrenamiento. Conserva contexto multimodal unificado e imagen y sonido sincronizados nativamente. La velocidad es una prioridad de diseño, no un tiempo fijo de finalización para cualquier instrucción, duración o aplicación.

Distingue Max del sistema H3 original y de la variante separada Max Turbo. La interfaz actual de MiniMax enumera Max a 480P o 768P, con 768P por defecto, 24 fotogramas por segundo y duración entera de 5 a 15 segundos. Su flujo documentado no ofrece el ajuste 2K del H3 original ni salida de cuatro segundos.

De una instrucción a una toma

Toda generación incluye un encargo textual no vacío, de hasta 7,000 caracteres por elemento de texto. Describe sujeto, composición inicial, acción y resultado; aclara después cámara y sonido. Para revelar brevemente un objeto, identifica qué se ve primero, cómo entra el objeto y cómo termina la toma.

Un encargo útil de cinco segundos podría describir una taza de cerámica sobre mesa de madera, una mano que coloca un platillo a su lado, un pequeño acercamiento de cámara y el sonido de cerámica contra madera. Mantén la acción lo bastante pequeña para caber en la duración y revisa si movimiento y sonido devueltos siguen el mismo evento.

Creación guiada por fotogramas

El fabricante documenta fotograma inicial, final o ambos. La primera imagen establece dónde empieza el clip y la última el estado visual final. Explica el movimiento que los conecta, incluidos cambios de pose, posición, cámara o luz. Para una transición de dos fotogramas, evita introducir una escena incompatible entre los extremos.

La salida guiada por fotogramas toma el aspecto de la imagen de entrada. Para trabajo solo con texto, elige una relación concreta entre 21:9, 16:9, 4:3, 1:1, 3:4 o 9:16. Con referencias se puede usar relación adaptativa o una explícita documentada. Compón la referencia o escena escrita para el cuadro de destino en vez de suponer que una disposición funciona igual en vertical y horizontal.

Referencias multimodales

El esquema actual de Max también documenta imágenes, video y audio de referencia. Indica en qué influye cada uno: identidad, entorno, patrón de movimiento, trayectoria de cámara, timbre de voz o característica sonora. Las funciones de primer/último fotograma y medios de referencia son mutuamente excluyentes en esa interfaz.

Para una toma de personaje, identifica por separado referencia de apariencia y de movimiento y aporta acción y línea deseadas. Referenciar la interpretación de una voz difiere de copiar su señal completa de audio. Explicita los rasgos a conservar y cambios a hacer y revisa el clip frente a cada función de referencia.

Expansión de instrucciones

El ajuste específico de Max ofrece disabled, balanced y quality, con balanced por defecto. Elige disabled para pasar el encargo sin expansión; usa un modo documentado si deseas interpretación adicional. Conserva el original para distinguir un cambio introducido al expandir del contenido solicitado.

Describe sonido como parte de la escena. Identifica sonidos físicos, ambiente y palabras y sepáralos de música de fondo destinada solo al público. Aporta línea exacta y hablante en vez de pedir diálogo indefinido. Escucha además de mirar; una imagen convincente no demuestra que palabras o tiempos sean correctos.

Preparación de entradas y límites

El esquema actual acepta imágenes JPG, JPEG, PNG, WebP, HEIC o HEIF, hasta 30 MB cada una, lados de 256 a 5,760 píxeles y relaciones de 0.4 a 2.5. Las funciones inicial y final permiten una imagen cada una; el modo referencia, hasta nueve. Conserva una vista clara del sujeto y de los detalles identificables necesarios.

El video de referencia permite hasta tres MP4 o MOV, de 2–15 segundos cada uno y máximo 15 segundos juntos, con límite de 50 MB por archivo. Documenta video H.264 o H.265, audio AAC o MP3, lados de 256 a 5,760 píxeles, relaciones de 0.4 a 2.5 y frecuencia de fotogramas de 23.976 a 60 fps. El audio permite hasta tres WAV o MP3 de hasta 15 MB y 2–15 segundos cada uno, máximo 15 segundos juntos. El cuerpo de solicitud tiene un límite separado de 64 MB.

Usa solo referencias que aporten a la toma e identifica cada contribución en el texto. Un clip de movimiento breve y pertinente orienta mejor que una colección larga de eventos inconexos. Explicita duración y resolución de salida para comparar el resultado con el mismo encargo.

El resultado terminado

El flujo asíncrono devuelve identidad de tarea antes de que esté disponible el video completo. La consulta recupera tareas de los siete días anteriores. Guarda el clip devuelto y su especificación para editar o revisar; un identificador no es el recurso audiovisual. Las direcciones de descarga son temporales, así que conserva el archivo de un resultado seleccionado.

Revisa continuidad, movimiento, texto visible, diálogo y tiempos sonoros al tamaño de uso. Da comentarios concretos para otro encargo: gesto cambiado, línea omitida o encuadre que ajustar. El resultado útil es una toma audiovisual corta vinculada al contenido y a sus relaciones explícitas de referencia.

**Ailoot Ultra · Video** `POST /v1/videos` `minimax/hailuo-3-max`

[`minimax/hailuo-3-max`](https://ailoot.ai/models/es-mx/#m=minimax%2Fhailuo-3-max&route=Ultra&caller=minimax%2Fhailuo-3-max&fmt=videos)

MiniMax /`minimax/hailuo-3-max`

### Inicio

MiniMax H3 Max es una variante rápida de H3 con posentrenamiento para video corto con audio sincronizado. El flujo documentado de MiniMax admite texto, imágenes de fotogramas y referencias multimodales, con salida 480P o 768P, duración de 5–15 segundos y opciones propias de expansión de instrucciones.

Entradas aceptadas

Texto · Imágenes

Resultados

Video

### Disponible en Ailoot · entradas y métodos

**Ailoot Ultra · Video** `POST /v1/videos`

Entrada

`text`, `image`

Salida

`video`

Formato de salida

bytes MP4 originales; sin normalización ni transcodificación

| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
| --- | --- | --- | --- | --- |
| Campo`model` | Tipo`string` | RequisitoObligatorio | Valores y límites minimax/hailuo-3-max | Predeterminado— |
| Campo`prompt` | Tipo`string` | RequisitoObligatorio | Valores y límites | Predeterminado— |
| Campo`duration` | Tipo`integer` | RequisitoObligatorio | Valores y límites 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 Mínimo: 1 Máximo: 600 | Predeterminado— |
| Campo`resolution` | Tipo`string` | RequisitoOpcional | Valores y límites 768p, 480p | Predeterminado— |
| Campo`aspect_ratio` | Tipo`string` | RequisitoOpcional | Valores y límites 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | Predeterminado— |
| Campo`generate_audio` | Tipo`boolean` | RequisitoOpcional | Valores y límites false | Predeterminado— |
| Campo`frame_images` | Tipo`array` | RequisitoOpcional | Valores y límites Número mínimo de elementos: 1 Número máximo de elementos: 2 Contenido de entrada: Arreglo de objetos de fotograma. Cada objeto tiene type=image\_url, image\_url que contiene url y frame\_type. Usa una URL HTTPS de imagen y establece frame\_type en first\_frame o last\_frame. Cada función de fotograma puede aparecer como máximo una vez. Claves exactas: type, image\_url, frame\_type Condiciones: Estas claves describen cada objeto de fotograma; image\_url contiene únicamente url. Omite frame\_images para una solicitud de solo texto. | Predeterminado— |
| Campo`input_references` | Tipo`array` | RequisitoOpcional | Valores y límites | Predeterminado— |
| Campo`callback_url` | Tipo`string` | RequisitoOpcional | Valores y límites Patrón: ^https:// | Predeterminado— |
| Campo`session_id` | Tipo`string` | RequisitoOpcional | Valores y límites | Predeterminado— |
| Campo`trace` | Tipo`object` | RequisitoOpcional | Valores y límites | Predeterminado— |
| Campo`user` | Tipo`string` | RequisitoOpcional | Valores y límites | Predeterminado— |

Combinaciones de materiales de entrada

**Texto a video** · Una instrucción escrita. · Obligatorio: model, prompt, duration

`Proporciona prompt como texto y duration en segundos enteros. Elige una resolución compatible y, si es necesario, una relación de aspecto.`

`model`: Tipo: string · minimax/hailuo-3-max

`prompt`: Tipo: string · Máximo de bytes UTF-8: 10,000 · Se requiere contenido distinto de espacios en blanco: Sí

**Imagen a video** · Una instrucción escrita y una imagen del primer fotograma. · Obligatorio: model, prompt, duration, frame\_images

`frame_images es un arreglo. Cada objeto de fotograma tiene type, image_url y frame_type; image_url contiene url. Establece type en image_url. Usa first_frame con last_frame opcional. Cada función de fotograma puede aparecer como máximo una vez. Proporciona una URL HTTPS pública de imagen para cada fotograma. Elige una resolución compatible y, si es necesario, una relación de aspecto.`

Claves exactas: type, image\_url, frame\_type

`model`: Tipo: string · minimax/hailuo-3-max

`prompt`: Tipo: string · Máximo de bytes UTF-8: 10,000 · Se requiere contenido distinto de espacios en blanco: Sí

Parámetros del método y ciclo de vida

| Parámetro | Contrato |
| --- | --- |
| Parámetro`content_type` | Contratoapplication/json |
| Parámetro`required` | Contratomodel, prompt, duration |
| Parámetro`material_types` | Contratotext, image |
| Parámetro`additional_properties` | Contratofalse |
| Parámetro`optional_controls` | Contratoresolution, aspect\_ratio, generate\_audio, frame\_images, input\_references, callback\_url, session\_id, trace, user |

Ciclo de vida: `submit_once_poll_original`

`GET /v1/videos/{public_id}`

`GET /v1/videos/{public_id}/content`

### Tarifas

##### Cómo se calcula el cargo definitivo

Las tarifas mostradas permiten estimar el costo antes de la generación. El cargo final se calcula a partir del costo registrado para la generación original. La duración medida de la salida y las cantidades estimadas no son la cantidad facturable final.

Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.

Modo fast

Sin especificar Cuando se selecciona el modo fast

Modo flex

Sin especificar Cuando se selecciona el modo flex

Esfuerzo máximo de razonamiento

Sin especificar Cuando el esfuerzo máximo de razonamiento usa el ajuste default

#### Tarifas estimadas para comparar

#### Precios por configuración

Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.

| Configuración | Tabla de tarifas | Cantidad prevista | Componente del cargo | Unidad de facturación | Condiciones de facturación | Cargo |
| --- | --- | --- | --- | --- | --- | --- |
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cantidad prevista— | Componente del cargo— | Unidad de facturación— | Condiciones de facturación— | Cargo Entrada · Tokens de entrada · Estimación solo para comparar **—** / 1K tokens Salida · Tokens de salida · Estimación solo para comparar **—** / 1K tokens Entrada · Lectura de caché · Estimación solo para comparar **—** / 1K tokens Entrada · Escritura en caché · Estimación solo para comparar **—** / 1K tokens Entrada · Escritura en caché, 1 hora · Estimación solo para comparar **—** / 1K tokens |
| ConfiguraciónSalida de video · tarifa de referencia | Tabla de tarifas— | Cantidad prevista— | Componente del cargo`reference_output_rate` | Unidad de facturaciónpor segundo de salida | Condiciones de facturación— | Cargo Salida · Tarifa de referencia por segundo de video de salida · Estimación solo para comparar **$0.16** por segundo de salida |
| ConfiguraciónPrecio del video | Tabla de tarifas— | Cantidad prevista— | Componente del cargo— | Unidad de facturaciónpor segundo de video | Condiciones de facturaciónresolution: 480p | Cargo Salida · Precio del video · Estimación solo para comparar **$0.1** por segundo de video |
| ConfiguraciónPrecio del video | Tabla de tarifas— | Cantidad prevista— | Componente del cargo— | Unidad de facturaciónpor segundo de video | Condiciones de facturaciónresolution: 768p | Cargo Salida · Precio del video · Estimación solo para comparar **$0.16** por segundo de video |
| ConfiguraciónCosto estimado de generación | Tabla de tarifas— | Cantidad previstaestimación para una generación | Componente del cargo— | Unidad de facturación— | Condiciones de facturación— | Cargo Salida · Costo estimado de generación · Estimación solo para comparar **$0.5** estimación previa a la generación Esta estimación no es un cargo adicional ni una tarifa fija por la generación completada. |

Ailoot reserva un monto estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. [Cómo funcionan la reserva y la liquidación →](https://ailoot.ai/docs/es-mx/billing/reserve/)

#### Detalles de la tarifa de referencia

Las tablas de referencia del modelo no cambian la selección del método, las cotizaciones ni los cargos. Los cargos aplicados usan las tarifas del método Ailoot seleccionado.

Referencias de precios por configuración de video

#### Precios por configuración

Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.

| Configuración | Condiciones de facturación | Cargo |
| --- | --- | --- |
| ConfiguraciónPrecio del video | Condiciones de facturaciónNo se declara ninguna condición adicional en esta clave de precios. | Cargo Salida · Precio del video **$0.16** por segundo de video Referencia de precio publicada para la configuración mostrada. Los cargos finales corresponden a la configuración realmente facturada. |
| ConfiguraciónPrecio del video | Condiciones de facturaciónresolution: 480p | Cargo Salida · Precio del video **$0.1** por segundo de video Referencia de precio publicada para la configuración mostrada. Los cargos finales corresponden a la configuración realmente facturada. |
| ConfiguraciónPrecio del video | Condiciones de facturaciónresolution: 768p | Cargo Salida · Precio del video **$0.16** por segundo de video Referencia de precio publicada para la configuración mostrada. Los cargos finales corresponden a la configuración realmente facturada. |

### Solicitudes de ejemplo

#### Ailoot Ultra · Video

curl · crea un video

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":8,"model":"minimax/hailuo-3-max","prompt":"A serene mountain landscape at sunset","resolution":"480p"}', encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
```

### Recibir y guardar resultados

#### Ailoot Ultra · Video

URL firmadas de contenido que te pertenece

- `GET /v1/videos/{public_id}`
- `GET /v1/videos/{public_id}/content`

##### Consultar el estado de la tarea

Obtener el estado de la operación original con GET

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
```

Otras consultas de contenido

Guarda todos los resultados completados que te pertenecen

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
    urls.append((str(i),u))
for label,path in urls:
    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
    target=Path('owned-'+label+'.bin')
    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
```

##### Conserva todos los resultados completados

Guarda todos los videos completados o archivos recibidos; descarga cada URL de archivo que se haya devuelto.

Conserva cada salida real que te pertenezca y los metadatos medidos que se devuelvan con ella.

##### Si es necesario revisar la respuesta original

503 result\_pending\_check + id original + X-Should-Retry:false; nunca repitas el envío original

Campos de respuesta

| Campo | Tipo | Significado |
| --- | --- | --- |
| Campo`index` | Tipointeger | SignificadoPosición de este video en la lista de salidas, con índice que comienza en cero. |
| Campo`content_url` | Tipostring | SignificadoURL HTTPS firmada de descarga de este video completado. |
| Campo`sha256` | Tipostring \| null | SignificadoResumen SHA-256 de los bytes del video original; null si no está disponible. |
| Campo`size_bytes` | Tipointeger \| null | SignificadoTamaño del archivo de video original en bytes; null si no está disponible. |
| Campo`duration_ms` | Tipointeger \| null | SignificadoDuración medida del video en milisegundos; null si no está disponible. |
| Campo`width` | Tipointeger \| null | SignificadoAncho del video en píxeles; null si no está disponible. |
| Campo`height` | Tipointeger \| null | SignificadoAlto del video en píxeles; null si no está disponible. |
| Campo`video_codec` | Tipostring \| null | SignificadoIdentificador del códec de video; null si no se registró. |
| Campo`has_audio` | Tipoboolean \| null | SignificadoIndica si el video contiene una pista de audio; null si no se midió. |
| Campo`audio_codec` | Tipostring \| null | SignificadoIdentificador del códec de audio; null cuando no se registra ningún identificador. |

Errores y siguientes pasos

| Respuesta | Condición | Siguiente paso |
| --- | --- | --- |
| Respuesta404 · `not_found_error` | CondiciónEl acceso al video no está disponible o no se encontró este ID de video. | Siguiente pasoVerifica el acceso al video. Para un video existente, usa su ID público original y la misma clave API. |
| Respuesta401 · `authentication_error` | CondiciónLa clave API no coincide con la cuenta autenticada. | Siguiente pasoRevisa tu clave API y el acceso de tu cuenta antes de enviar. |
| Respuesta400 · `invalid_request_error` | CondiciónNo se pudo leer la solicitud o el índice de descarga no es válido. | Siguiente pasoCorrige el cuerpo de la solicitud. Para una descarga, elige un índice de salida devuelto por la tarea original. |
| Respuesta422 · `price_unavailable` | CondiciónNo se puede cotizar la configuración de video seleccionada. | Siguiente pasoElige una configuración de video compatible y completa sus opciones obligatorias antes de enviar una solicitud corregida. |
| Respuesta422 · `invalid_request_error` | CondiciónUna entrada de video o la tarea original de continuación no es válida. | Siguiente pasoUsa entradas HTTPS válidas. Para una continuación, usa el ID público de tu video original completado con la misma clave API. |
| Respuesta402 · `billing_error` | CondiciónEl saldo disponible o los límites no permiten reservar fondos. | Siguiente pasoRevisa tu saldo disponible y tus límites antes de enviar una solicitud nueva. |
| Respuesta503 · `server_error` | CondiciónLa verificación del video, el almacenamiento o el acceso al servicio no están disponibles temporalmente. | Siguiente pasoEspera a que el servicio esté disponible. Si ya tienes un ID de video, consulta esa tarea original en lugar de crear otra generación. |
| Respuesta503 · `result_pending_check` | CondiciónEl resultado y el cargo del video original requieren verificación. | Siguiente pasoConserva el ID de video devuelto y consulta esa tarea. No envíes una solicitud de generación de reemplazo mientras se verifica. |
| Respuesta503 · `owned_result_unavailable` | CondiciónLa descarga del video existente no está disponible temporalmente. | Siguiente pasoConsulta más tarde la misma tarea de video y descarga su salida existente. Una generación nueva crea una operación independiente. |
| Respuesta409 · `video_not_ready` | CondiciónEl contenido del video no se ha publicado. | Siguiente pasoConsulta el estado de la tarea original. Descarga cuando indique completed; si indica failed, sigue su aviso de verificación del cargo. |

### Alias

#### Alias del modelo

**Ailoot Ultra** [`minimax/hailuo-3-max`](https://ailoot.ai/models/es-mx/#m=minimax%2Fhailuo-3-max&route=Ultra&caller=minimax%2Fhailuo-3-max&fmt=videos)

#### Alias de rutas de métodos

Usa las rutas de método indicadas arriba.

#### ID de modelo relacionados

[`minimax/hailuo-3-max`](https://ailoot.ai/models/es-mx/#m=minimax%2Fhailuo-3-max&route=Ultra&caller=minimax%2Fhailuo-3-max&fmt=videos)

FAQ · MiniMax: H3 Max

¿Qué entradas y resultados están disponibles?

`POST /v1/videos` · `minimax/hailuo-3-max`: `text`, `image` → `video`

¿Qué campos utiliza la solicitud?

`POST /v1/videos` · `minimax/hailuo-3-max`: `model`, `prompt`, `duration`, `resolution`, `aspect_ratio`, `generate_audio`, `frame_images`, `input_references`, `callback_url`, `session_id`, `trace`, `user`

¿Qué límites se aplican?

`POST /v1/videos` · `minimax/hailuo-3-max`: `duration.minimum`: `1`; `duration.maximum`: `600`; `frame_images.max_items`: `2`; `frame_images.min_items`: `1`

Conecta Ailoot a Claude Code, OpenCode, Hermes o tu aplicación.

## La empresa y su cartera de proyectos

La empresa y su cartera de proyectos: millones de clientes; ventas por miles de millones al mes.

## Compra tokens con descuento.

Ahorro por suscripción para trabajo habitual. Códigos promocionales: hasta el 50% al comprar tokens.

Suscripción

Elige un plan con descuento para tus peticiones habituales.

Código de hasta el 50%

Introduce el código al comprar. El precio se recalcula según la promoción vigente.

Gasto en el historial

Modelo, tokens e importe quedan guardados por cada petición.

[Elegir suscripción](https://ailoot.ai/docs/es-mx/billing/subscriptions/) · [Consultar precios de modelos](https://ailoot.ai/models/es-mx/)

## Conecta la API al producto que vendes.

SaaS, aplicaciones y bots bajo la oferta y el acuerdo de licencia Ailoot. Solicita una licencia de reventa para redistribuir el acceso.

Aplicación comercial

Integra generación de texto, imágenes, vídeo y sonido en funciones de pago de tu servicio.

Licencia para revendedores

Envía descripción del proyecto y esquema de acceso. Solicita condiciones escritas de uso y reventa.

Documentos en la web

La oferta, el acuerdo de licencia y la política de datos están disponibles antes de conectar.

[Solicitar licencia de reventa](mailto:support@ailoot.ai) · [Oferta y acuerdo de licencia](https://ailoot.ai/legal/offer?lang=es-mx)

## Ailoot · La empresa y su cartera de proyectos





Ailoot se apoya en la experiencia operativa acumulada, una amplia base de clientes, un servicio estable y el seguimiento continuo de KPI.





La empresa y su cartera de proyectos: millones de clientes; ventas por miles de millones al mes.





Ailoot aplica esa experiencia operativa al acceso por API a funciones de IA en productos de clientes, agentes, aplicaciones y automatizaciones.
