curl --request POST \
--url https://api.evolink.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "kling-o3-image-to-video",
"prompt": "The person in the image slowly turns their head and smiles",
"image_start": "https://example.com/portrait.jpg",
"duration": 5,
"quality": "720p"
}
'{
"created": 1757169743,
"id": "task-unified-1757169743-7cvnl5zw",
"model": "kling-o3-image-to-video",
"object": "video.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": true,
"estimated_time": 300,
"video_duration": 9
},
"type": "video",
"usage": {
"billing_rule": "per_call",
"credits_reserved": 7,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: kling-o3-image-to-video",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Kling-O3 imagen a video
- Kling-O3 Image to Video (kling-o3-image-to-video) genera videos basados en imágenes de entrada, impulsado por el modelo Kling AI kling-v3-omni
- Soporta primer fotograma, último fotograma, imágenes de referencia, control de elementos, multi-toma y efectos de sonido
- Modo de procesamiento asíncrono, usa el ID de tarea devuelto para consultar estado
- Los enlaces de video generados son válidos por 24 horas, guárdalos oportunamente
curl --request POST \
--url https://api.evolink.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "kling-o3-image-to-video",
"prompt": "The person in the image slowly turns their head and smiles",
"image_start": "https://example.com/portrait.jpg",
"duration": 5,
"quality": "720p"
}
'{
"created": 1757169743,
"id": "task-unified-1757169743-7cvnl5zw",
"model": "kling-o3-image-to-video",
"object": "video.generation.task",
"progress": 0,
"status": "pending",
"task_info": {
"can_cancel": true,
"estimated_time": 300,
"video_duration": 9
},
"type": "video",
"usage": {
"billing_rule": "per_call",
"credits_reserved": 7,
"user_group": "default"
}
}{
"error": {
"code": "invalid_request",
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid or expired token",
"type": "authentication_error"
}
}{
"error": {
"code": "insufficient_quota",
"message": "Insufficient quota. Please top up your account.",
"type": "insufficient_quota"
}
}{
"error": {
"code": "model_access_denied",
"message": "Token does not have access to model: kling-o3-image-to-video",
"type": "invalid_request_error"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Too many requests, please try again later",
"type": "rate_limit_error"
}
}{
"error": {
"code": "internal_error",
"message": "Internal server error",
"type": "api_error"
}
}Autorizaciones
Todas las APIs requieren autenticación Bearer Token
Obtener API Key:
Visita la Página de gestión de API Key para obtener tu API Key
Agregar al encabezado de la solicitud:
Authorization: Bearer YOUR_API_KEY
Cuerpo
Nombre del modelo de generación de video
kling-o3-image-to-video "kling-o3-image-to-video"
Prompt de texto. Obligatorio cuando multi_shot=false (por defecto), proporcionado por multi_prompt para cada toma cuando multi_shot=true
Nota:
- Máximo
2500caracteres - Use
<<<element_1>>>para referenciar elementos,<<<image_1>>>para referenciar imágenes
2500URL de imagen del primer fotograma
Requisitos de formato de imagen:
- Formato: JPG / JPEG / PNG
- Tamaño: <= 10MB
- Dimensiones: ancho y alto >= 300px, relación de aspecto entre 1:2.5 y 2.5:1
- La URL de la imagen debe ser accesible directamente por el servidor o activar una descarga directa al acceder
URL de imagen del último fotograma
Restricciones:
- El último fotograma requiere un primer fotograma
- El último fotograma no es compatible cuando el número total de imágenes supera 2
- La URL de la imagen debe ser accesible directamente por el servidor o activar una descarga directa al acceder
Array de URLs de imágenes de referencia (no primer/último fotograma, para referencia de estilo/escena/elemento)
Nota:
- Las URL de las imágenes deben ser accesibles directamente por el servidor o activar una descarga directa al acceder
Duración del vídeo (segundos), entero en el rango 3-15
3 <= x <= 15Relación de aspecto del vídeo
16:9, 9:16, 1:1 Nivel de resolución
Opciones:
720p: Estándar 720P1080p: Alta calidad 1080P4k: Ultra alta definición 4K
720p, 1080p, 4k Control de efectos de sonido
on, off Parámetros de extensión del modelo
Show child attributes
Show child attributes
URL de callback HTTPS para completación de tarea
Momento del Callback:
- Se activa cuando la tarea se completa, falla o se cancela
- Se envía después de la confirmación de facturación
Restricciones de Seguridad:
- Solo protocolo HTTPS
- Direcciones IP internas están prohibidas (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)
- La longitud de la URL no debe exceder
2048caracteres
Mecanismo de Callback:
- Tiempo de espera:
10segundos - Máximo
3reintentos después del fallo (a1/2/4segundos después del fallo) - El formato de respuesta del callback es consistente con la API de consulta de tareas
- El código de estado 2xx se considera exitoso, otros códigos activan reintento
"https://your-domain.com/webhooks/video-task-completed"
Respuesta
Tarea de generación de video creada exitosamente
Marca de tiempo de creación de la tarea
1757169743
ID de tarea
"task-unified-1757169743-7cvnl5zw"
Nombre del modelo real utilizado
"kling-o3-image-to-video"
Tipo de tarea
video.generation.task Porcentaje de progreso de la tarea (0-100)
0 <= x <= 1000
Estado de la tarea
pending, processing, completed, failed "pending"
Detalles de la tarea de video
Show child attributes
Show child attributes
Tipo de salida de la tarea
text, image, audio, video "video"
Información de uso y facturación
Show child attributes
Show child attributes