Esta es una traducción proporcionada por conveniencia. La referencia técnica autoritativa es la versión en inglés; en caso de discrepancia, prevalece el texto en inglés.
Autenticación
Cada solicitud necesita una clave de API, enviada en cualquiera de estas cabeceras:
Crea una clave desde el panel de Claves de API de tu panel de control. La clave en texto plano se muestra exactamente una vez, al crearla — si la pierdes, revócala y genera una nueva. Puedes tener hasta 10 claves activas a la vez; todas comparten un único saldo de créditos.
Créditos y precios
Cada archivo cuesta 1 crédito por segundo de duración procesada, mínimo 3 créditos — un clip de 2 segundos aún cuesta el mínimo de 3 créditos, un clip de 10 segundos cuesta 10. Los créditos se deducen cuando se envía el trabajo (antes de que empiece el procesamiento), según la duración del propio archivo, no una tarifa plana por archivo. Una solicitud por lotes cobra por cada archivo del lote por adelantado — si tu saldo no cubre el lote entero, no se crea nada en él. Si un archivo resulta ilegible, el crédito de ese archivo se reembolsa automáticamente.
| Plan | Créditos | Precio |
|---|---|---|
| Paquete de créditos — Micro | 15 (nunca caducan) | $1.99 |
| Paquete de créditos — Light | 150 (nunca caducan) | $9.99 |
| Paquete de créditos — Heavy | 900 (nunca caducan) | $39.99 |
| Plus Trimestral | 2.700 / trimestre | 79,99 $/tri |
| Pro Mensual | 3.000 / mes | 79,99 $/mes |
| Pro Anual | 36.000 / año | 799,99 $/año |
Los créditos residen en tu cuenta, no en una clave individual — cada clave que creas consume del mismo fondo. Consulta tu saldo en cualquier momento con GET /api/account (autenticación de sesión del panel, no autenticación por clave de API).
Enviar un archivo — POST /api/v1/jobs
Datos de formulario multipart:
| Campo | Valores | Notas |
|---|---|---|
file | obligatorio | .gif, .mp4, .mov, .webm |
method | auto (predeterminado) · fast · rembg | fast usa relleno por inundación en lugar de segmentación por IA — más rápido, funciona mejor con fondos de color plano |
tolerance | 8–32 (predeterminado 16) | solo lo usa method=fast |
crop | true (predeterminado) · false | recorta automáticamente al recuadro delimitador del sujeto |
pad | 0–50 px (predeterminado 12) | relleno que se mantiene alrededor del recorte |
canvasW / canvasH | px | tamaño del lienzo de salida; omítelo para mantener el tamaño original |
anchor | center (predeterminado) · bottom | colocación del sujeto al escalar a un lienzo |
outputFormat | gif (predeterminado) · apng · webm · mp4 | ver la nota más abajo sobre mp4 |
bgColor | transparent (predeterminado) · #rrggbb | obligatorio para mp4 |
trim | true · false (predeterminado) | recorta automáticamente los fotogramas inactivos de entrada/salida — solo fuentes GIF |
La salida mp4 no tiene canal alfa, así que solo tiene sentido con un bgColor sólido — solicitar mp4 con un fondo transparente vuelve a gif automáticamente.
Respuesta 202:
Consultar estado — GET /api/v1/jobs/:id
previewUrl aparece en cuanto hay una vista previa disponible; downloadUrl solo cuando status es done. Un trabajo solo es visible para la clave de API que lo creó — cualquier otra clave obtiene un 404.
Vista previa y descarga
GET /api/v1/jobs/:id/preview y GET /api/v1/jobs/:id/download transmiten el archivo directamente, autenticados de la misma forma que cualquier otra llamada — sin un token de descarga aparte.
Lotes — POST /api/v1/batches
Los mismos campos que POST /api/v1/jobs, pero repite el campo file una vez por archivo (hasta 20 archivos por solicitud). Un conjunto de opciones se aplica a cada archivo del lote.
GET /api/v1/batches/:id devuelve { "id", "status": "processing | partial | done", "jobs": [...] } con cada entrada en el mismo formato que GET /api/v1/jobs/:id.
Errores
| Estado | Cuerpo | Significado |
|---|---|---|
401 | { "error": "unauthorized" } | clave de API ausente, no válida o revocada |
402 | { "error": "insufficient_credits", "creditsRemaining" } | créditos insuficientes — no se creó ningún trabajo |
400 | { "error": "bad_request" } | ningún archivo válido, o cuerpo multipart mal formado |
422 | { "error": "unreadable_file" } | no se pudo analizar el archivo — no se cobró ningún crédito |
404 | { "error": "not_found" } | el trabajo/lote no existe, o pertenece a otra clave |
429 | { "error": "rate_limited" } | demasiadas solicitudes — consulta la cabecera Retry-After |
Límites de tasa
Las solicitudes tienen un límite de tasa por clave de API. Si alcanzas el límite, la respuesta incluye una cabecera Retry-After (segundos) — espera ese tiempo antes de reintentar. ¿Necesitas un límite más alto para una integración de producción? contáctanos desde tu panel.