Endpoints
Method Endpoint Description POST /api/v1/generateTask/kling-2-5-turbo-proСоздание задачи генерации GET /api/v1/statusTask/kling-2-5-turbo-proЗапрос статуса задачи
Authentication
Все запросы требуют API Key в заголовке:
Authorization: Bearer YOUR_API_KEY
Request Body
{
"request_type" : "async" ,
"callback_url" : "https://..." ,
"provider" : "auto" ,
"input" : {
"mode" : "text-to-video" ,
"prompt" : "..." ,
"duration" : 10 ,
"aspect_ratio" : "16:9" ,
"image_urls" : [ "..." ],
"negative_prompt" : "..." ,
"cfg_scale" : 0.6
}
}
Parameters
request_type
string
по умолчанию: "async"
async (polling) или callback (webhook)
Callback URL, обязателен при request_type=callback (условно)
provider
string
по умолчанию: "auto"
Стратегия маршрутизации: auto, value или official
Параметры входа модели mode
string
по умолчанию: "text-to-video"
обязательно
text-to-video or image-to-video
Text description, 1-2500 characters
duration
integer
по умолчанию: "5"
обязательно
Video duration in seconds: 5 or 10
Reference images, 1-2 (required for image-to-video, 2nd is end frame) (conditional)
aspect_ratio
string
по умолчанию: "16:9"
16:9, 9:16, or 1:1 (for text-to-video only)
Negative prompt, max 2500 characters
Guidance scale, 0-1, step 0.1
Mode Options:
text-to-video — Generate video from text
image-to-video — Generate video from image (supports 1-2 images for end frame control)
Example
Text-to-Video
curl -X POST "https://api.apixo.ai/api/v1/generateTask/kling-2-5-turbo-pro" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "async",
"input": {
"mode": "text-to-video",
"prompt": "a cinematic drone shot over snowy mountains at sunrise",
"duration": 10,
"aspect_ratio": "16:9",
"negative_prompt": "low quality, jitter",
"cfg_scale": 0.6
}
}'
Image-to-Video (with End Frame Control)
curl -X POST "https://api.apixo.ai/api/v1/generateTask/kling-2-5-turbo-pro" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"request_type": "callback",
"callback_url": "https://your-server.com/callback",
"provider": "official",
"input": {
"mode": "image-to-video",
"prompt": "smooth camera transition from first to last frame",
"duration": 5,
"image_urls": [
"https://example.com/head.jpg",
"https://example.com/tail.jpg"
],
"cfg_scale": 0.4
}
}'
Response
POST /api/v1/generateTask/kling-2-5-turbo-pro
При успехе возвращает taskId для последующих запросов статуса.
Success:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678"
}
}
Error:
{
"code" : 400 ,
"message" : "Insufficient credits" ,
"data" : null
}
GET /api/v1/statusTask/kling-2-5-turbo-pro
Запрос статуса выполнения задачи и результатов по taskId.
curl -X GET "https://api.apixo.ai/api/v1/statusTask/kling-2-5-turbo-pro?taskId=task_12345678" \
-H "Authorization: Bearer YOUR_API_KEY"
Success:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678" ,
"state" : "success" ,
"resultJson" : "{ \" resultUrls \" :[ \" https://r2.apixo.ai/video.mp4 \" ]}" ,
"createTime" : 1767965610929 ,
"completeTime" : 1767965652317 ,
"costTime" : 41388
}
}
Failed:
{
"code" : 200 ,
"message" : "success" ,
"data" : {
"taskId" : "task_12345678" ,
"state" : "failed" ,
"failCode" : "CONTENT_VIOLATION" ,
"failMsg" : "Content does not meet safety guidelines"
}
}
Status Response Fields
Уникальный идентификатор задачи.
Текущее состояние задачи: pending, processing, success или failed.
JSON-строка с массивом resultUrls. Присутствует только при success. Парсите через JSON.parse().
Код ошибки. Присутствует только при state=failed. См. Error Codes .
Читаемое сообщение об ошибке. Присутствует только при state=failed.
Timestamp создания задачи (Unix миллисекунды).
Timestamp завершения задачи (Unix миллисекунды).
Длительность обработки в миллисекундах.
Error Codes
Code Description 400 Неверные параметры или ошибка запроса 401 Недействительный или отсутствующий API Key 429 Превышен лимит запросов
Fail Code Description CONTENT_VIOLATIONКонтент нарушает правила безопасности INVALID_IMAGE_URLНе удаётся получить доступ к URL изображения
Rate Limits
Limit Value Requests 10000 / minute Concurrent tasks 1000
При превышении возвращается ошибка 429. Подождите и повторите.
Tips
Generation time :
5-second video: ~30-45 seconds
10-second video: ~45-60 seconds
Submit task, wait 30 seconds, then poll every 5 seconds
Turbo advantage : Faster generation and better value compared to standard version, ideal for batch generation.
Callback mode : Recommend using callback mode to avoid frequent polling.
Video expiration : Result URLs are valid for 15 days. Download promptly.
Content moderation : Prompts must comply with content safety guidelines.
End frame control : image-to-video mode supports 2 images:
1st image: Video start frame
2nd image: Video end frame
Enables precise start/end control, ideal for transition animations
Negative prompt : Use negative_prompt to avoid blur, jitter, and other unwanted effects.
CFG Scale :
0.3-0.5: More creative freedom
0.6-0.8: Moderate adherence to prompt
0.9-1.0: Strict adherence, may lose flexibility
Image formats : image_urls supports JPG, PNG, WebP, max 10MB per image.
Video generation takes longer than images — use callback mode for production workloads. Result URLs expire after 15 days; download important outputs promptly.