Kling نص إلى فيديو
استخدم نقطة نهاية تحويل النص إلى فيديو لإنشاء مهمة غير متزامنة.
نظرة عامة
استخدم نقطة نهاية تحويل النص إلى فيديو مع نموذج مدعوم. استخدم معرّف المهمة المُعاد لاسترداد حالتها، أو أدخل callback_url للتسليمات الموثقة أدناه.
البدء السريع
- أنشئ مفتاح API واضبطه كـ RUNAPI_API_KEY.
- اختر نموذجاً مدعوماً وأرسل طلب POST يطابق مخطط ذلك النموذج.
- احفظ معرّف المهمة المُعاد، ثم استطلع الحالة حتى تبلغ حالة نهائية أو تعالج عمليات الاستدعاء الموثقة أدناه.
نقطة النهاية
- عنوان URL الأساسي
https://runapi.ai- إصدار API
v1- المصادقة
Authorization: Bearer YOUR_API_TOKEN
النماذج المدعومة
افتح صفحة النموذج للاطلاع على التسعير الحالي وحدود المعدل وتفاصيل الاستخدام التجاري.
مخطط الطلب
تعتمد الحقول والقيم المسموح بها على النموذج المحدد. عند التوفير، يستقبل callback_url عمليات تسليم المهمة الموثّقة أدناه.
kling-3.014 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
cfg_scalenumberمقياس التوجيه (0-1).
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
enable_soundbooleanتفعيل توليد الصوت.
first_frame_image_urlstringعنوان URL لصورة الإطار الأول.
kling_elementsarrayمراجع العناصر مع مواد الصور والفيديو والصوت.
last_frame_image_urlstringعنوان URL للإطار الأخير للصورة في وضع اللقطة الواحدة.
modelstringمعرّف النموذج.
multi_promptarrayمقاطع الموجّه لوضع التصوير المتعدد.
multi_shotsbooleanتفعيل التوليد متعدد اللقطات.
negative_promptstringالموجّه السلبي.
output_resolutionstringدقة الإخراج.
القيم المسموح بها:720p, 1080p, 4k
promptstringوصف الفيديو. مطلوب ما لم يكن multi_shots مفعّلاً.
kling-o111 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
القيمة الافتراضية: 16:9
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:5
القيمة الافتراضية: 5
enable_soundbooleanيجب أن يظل توليد الصوت معطَّلاً.
القيمة الافتراضية:false
modestringوضع التوليد.
القيم المسموح بها:std, pro
القيمة الافتراضية: std
modelstringمعرّف النموذج.
preserve_reference_video_audiobooleanالاحتفاظ بالصوت الأصلي لمقطع الفيديو المرجعي.
القيمة الافتراضية:false
promptstringوصف الفيديو؛ أشر إلى الوسائط المرجعية بعلامات مرقّمة مطابقة.
نطاق:1 - 2500
reference_image_urlsarrayعناوين URL مرتَّبة لصور مرجعية بتنسيق JPG أو JPEG أو PNG عبر HTTP(S) العام.
نطاق العناصر:1 - 7
reference_video_typestringاستخدم الفيديو كتحرير أساسي أو مرجع للميزات.
القيم المسموح بها:base, feature
القيمة الافتراضية: base
reference_video_urlstringعنوان URL عام عبر HTTP(S) لمقطع فيديو مرجعي بصيغة MP4 أو MOV.
kling-v2.1-master-text-to-video8 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
cfg_scalenumberمقياس التوجيه (0-1).
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:5, 10
enable_soundbooleanتفعيل توليد الصوت.
modelstringمعرّف النموذج.
negative_promptstringالموجّه السلبي.
promptstringوصف الفيديو.
kling-v2.5-turbo-text-to-video-pro8 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
cfg_scalenumberمقياس التوجيه (0-1).
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:5, 10
enable_soundbooleanتفعيل توليد الصوت.
modelstringمعرّف النموذج.
negative_promptstringالموجّه السلبي.
promptstringوصف الفيديو.
kling-v2.67 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
القيمة الافتراضية: 16:9
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:5, 10
القيمة الافتراضية: 5
enable_soundbooleanتفعيل توليد الصوت؛ يتطلب وضع pro.
القيمة الافتراضية:false
modestringوضع التوليد.
القيم المسموح بها:std, pro
القيمة الافتراضية: std
modelstringمعرّف النموذج.
promptstringوصف الفيديو.
نطاق:1 - 2500
kling-v3-omni7 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
القيمة الافتراضية: 16:9
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
القيمة الافتراضية: 5
enable_soundbooleanتفعيل توليد الصوت المتزامن.
القيمة الافتراضية:false
modelstringمعرّف النموذج.
output_resolutionstringدقة الإخراج.
القيم المسموح بها:720p, 1080p, 4k
القيمة الافتراضية: 720p
promptstringوصف الفيديو.
نطاق:1 - 2500
kling-v3-omni-reference8 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
duration_secondsintegerمدة المخرجات بالثواني.
القيم المسموح بها:3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
القيمة الافتراضية: 5
enable_soundbooleanتفعيل توليد الصوت المتزامن.
القيمة الافتراضية:false
modelstringمعرّف النموذج.
output_resolutionstringدقة الإخراج.
القيم المسموح بها:720p, 1080p, 4k
القيمة الافتراضية: 720p
promptstringوصف الفيديو.
نطاق:1 - 2500
reference_image_urlsarrayعناوين URL مرتَّبة للصور المرجعية.
نطاق العناصر:1 - 7
kling-v3-turbo-text-to-video6 حقل
aspect_ratiostringنسبة أبعاد المخرجات.
القيم المسموح بها:16:9, 9:16, 1:1
القيمة الافتراضية: 16:9
callback_urlstringرابط Webhook لإشعارات غير متزامنة.
duration_secondsintegerالمدة بالثواني.
القيم المسموح بها:3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
القيمة الافتراضية: 5
modelstringمعرّف النموذج.
output_resolutionstringدقة الإخراج.
القيم المسموح بها:720p, 1080p
القيمة الافتراضية: 720p
promptstringوصف الفيديو.
نطاق:1 - 2500
القواعد الشرطية
تسري هذه المتطلبات عندما تتطابق جميع الشروط المدرجة.
-
عندما
model = kling-3.0- مطلوب
- غير مقبول
reference_image_urls,reference_video_url,reference_video_type,preserve_reference_video_audio
-
عندما
model = kling-o1- مطلوب
- غير مقبول
output_resolution,negative_prompt,cfg_scale,multi_shots,multi_prompt,first_frame_image_url,last_frame_image_url,kling_elements
-
عندما
model = kling-v2.1-master-text-to-video- مطلوب
- غير مقبول
mode,reference_image_urls,reference_video_url,reference_video_type,preserve_reference_video_audio
-
عندما
model = kling-v2.5-turbo-text-to-video-pro- مطلوب
- غير مقبول
mode,reference_image_urls,reference_video_url,reference_video_type,preserve_reference_video_audio
-
عندما
model = kling-v2.6- مطلوب
- غير مقبول
output_resolution,negative_prompt,cfg_scale,multi_shots,multi_prompt,first_frame_image_url,last_frame_image_url,kling_elements,reference_image_urls,reference_video_url,reference_video_type,preserve_reference_video_audio
-
عندما
model = kling-v3-omni- مطلوب
- غير مقبول
negative_prompt,cfg_scale,multi_shots,multi_prompt,first_frame_image_url,last_frame_image_url,kling_elements,reference_image_urls,reference_video_url,reference_video_type,preserve_reference_video_audio
-
عندما
model = kling-v3-turbo-text-to-video- مطلوب
- غير مقبول
enable_sound,negative_prompt,cfg_scale,multi_shots,multi_prompt,first_frame_image_url,last_frame_image_url,kling_elements,reference_image_urls,reference_video_url,reference_video_type,preserve_reference_video_audio
إنشاء قبول
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"billing": {
"properties": {
"refund": {
"oneOf": [
{
"properties": {
"refunded_at": {
"type": "string"
}
},
"required": [
"refunded_at"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"reservation": {
"oneOf": [
{
"properties": {
"amount_cents": {
"type": "integer"
}
},
"required": [
"amount_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"settlement": {
"oneOf": [
{
"properties": {
"amount_micro_cents": {
"type": "integer"
},
"charged_amount_cents": {
"type": "integer"
}
},
"required": [
"charged_amount_cents",
"amount_micro_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
}
},
"required": [
"reservation",
"settlement",
"refund"
],
"type": "object",
"unevaluatedProperties": false
},
"id": {
"type": "string"
},
"status": {
"enum": [
"processing"
],
"type": "string"
},
"task_replayed": {
"type": "boolean"
}
},
"required": [
"id",
"status",
"billing"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"billing": {
"refund": null,
"reservation": null,
"settlement": null
},
"id": "tsk_reference_demo",
"status": "processing"
}
الاستطلاع قيد المعالجة
GET /api/v1/kling/text_to_video/:id
مخطط الاستجابة
{
"properties": {
"billing": {
"properties": {
"refund": {
"oneOf": [
{
"properties": {
"refunded_at": {
"type": "string"
}
},
"required": [
"refunded_at"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"reservation": {
"oneOf": [
{
"properties": {
"amount_cents": {
"type": "integer"
}
},
"required": [
"amount_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"settlement": {
"oneOf": [
{
"properties": {
"amount_micro_cents": {
"type": "integer"
},
"charged_amount_cents": {
"type": "integer"
}
},
"required": [
"charged_amount_cents",
"amount_micro_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
}
},
"required": [
"reservation",
"settlement",
"refund"
],
"type": "object",
"unevaluatedProperties": false
},
"id": {
"type": "string"
},
"status": {
"enum": [
"processing"
],
"type": "string"
}
},
"required": [
"id",
"status",
"billing"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"billing": {
"refund": null,
"reservation": null,
"settlement": null
},
"id": "tsk_reference_demo",
"status": "processing"
}
اكتمل الاستطلاع
GET /api/v1/kling/text_to_video/:id
مخطط الاستجابة
{
"properties": {
"billing": {
"properties": {
"refund": {
"oneOf": [
{
"properties": {
"refunded_at": {
"type": "string"
}
},
"required": [
"refunded_at"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"reservation": {
"oneOf": [
{
"properties": {
"amount_cents": {
"type": "integer"
}
},
"required": [
"amount_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"settlement": {
"oneOf": [
{
"properties": {
"amount_micro_cents": {
"type": "integer"
},
"charged_amount_cents": {
"type": "integer"
}
},
"required": [
"charged_amount_cents",
"amount_micro_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
}
},
"required": [
"reservation",
"settlement",
"refund"
],
"type": "object",
"unevaluatedProperties": false
},
"id": {
"type": "string"
},
"status": {
"enum": [
"completed"
],
"type": "string"
},
"videos": {
"items": {
"properties": {
"url": {
"type": "string",
"x-runapi-generated-media": true
}
},
"required": [
"url"
],
"type": "object",
"unevaluatedProperties": false
},
"type": "array"
}
},
"required": [
"id",
"status",
"videos",
"billing"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"billing": {
"refund": null,
"reservation": null,
"settlement": null
},
"id": "tsk_reference_demo",
"status": "completed",
"videos": [
{
"url": "https://file.runapi.ai/reference-video.mp4"
}
]
}
فشل الاستطلاع
GET /api/v1/kling/text_to_video/:id
مخطط الاستجابة
{
"properties": {
"billing": {
"properties": {
"refund": {
"oneOf": [
{
"properties": {
"refunded_at": {
"type": "string"
}
},
"required": [
"refunded_at"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"reservation": {
"oneOf": [
{
"properties": {
"amount_cents": {
"type": "integer"
}
},
"required": [
"amount_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
},
"settlement": {
"oneOf": [
{
"properties": {
"amount_micro_cents": {
"type": "integer"
},
"charged_amount_cents": {
"type": "integer"
}
},
"required": [
"charged_amount_cents",
"amount_micro_cents"
],
"type": "object",
"unevaluatedProperties": false
},
{
"enum": [
null
]
}
]
}
},
"required": [
"reservation",
"settlement",
"refund"
],
"type": "object",
"unevaluatedProperties": false
},
"error": {
"type": "string"
},
"id": {
"type": "string"
},
"status": {
"enum": [
"failed"
],
"type": "string"
}
},
"required": [
"id",
"status",
"error",
"billing"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"billing": {
"refund": null,
"reservation": null,
"settlement": null
},
"error": "Task processing failed.",
"id": "tsk_reference_demo",
"status": "failed"
}
استدعاء العميل: مكتمل
POST callback_url
مخطط الاستجابة
{
"properties": {
"id": {
"type": "string"
},
"status": {
"enum": [
"completed"
],
"type": "string"
},
"videos": {
"items": {
"properties": {
"url": {
"type": "string",
"x-runapi-generated-media": true
}
},
"required": [
"url"
],
"type": "object",
"unevaluatedProperties": false
},
"type": "array"
}
},
"required": [
"id",
"status",
"videos"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"id": "tsk_reference_demo",
"status": "completed",
"videos": [
{
"url": "https://file.runapi.ai/reference-video.mp4"
}
]
}
استدعاء العميل: فشل
POST callback_url
مخطط الاستجابة
{
"properties": {
"error": {
"oneOf": [
{
"type": "string"
},
{
"properties": {
"code": {
"type": "string"
},
"limit_cents": {
"type": "integer"
},
"message": {
"type": "string"
},
"reset_at": {
"format": "date-time",
"type": [
"string",
"null"
]
},
"used_cents": {
"type": "integer"
},
"window": {
"enum": [
"1h",
"1d",
"7d",
"daily",
"weekly",
"monthly",
"lifetime"
],
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"unevaluatedProperties": false
}
]
},
"id": {
"type": "string"
},
"status": {
"enum": [
"failed"
],
"type": "string"
}
},
"required": [
"id",
"status",
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": {
"code": "generation_failed",
"message": "Task processing failed."
},
"id": "tsk_reference_demo",
"status": "failed"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "Authentication required"
}
الأخطاء
GET /api/v1/kling/text_to_video/:id
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "Authentication required"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"oneOf": [
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
},
{
"properties": {
"error": {
"description": "ملخص التحقق القابل للقراءة البشرية.",
"type": "string"
},
"errors": {
"additionalProperties": {
"items": {
"type": "string"
},
"type": "array"
},
"description": "رسائل التحقق مفتاحها حقل الطلب العام، مع مصفوفة من السلاسل القابلة للقراءة البشرية لكل حقل.",
"type": "object"
}
},
"required": [
"error",
"errors"
],
"type": "object",
"unevaluatedProperties": false
}
]
}
مثال على الاستجابة
{
"error": "model must be one of: kling-3.0, kling-o1, kling-v2.1-master-text-to-video, kling-v2.5-turbo-text-to-video-pro, kling-v2.6, kling-v3-omni, kling-v3-omni-reference, kling-v3-turbo-text-to-video"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "Insufficient balance"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "API key credit limit exceeded"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "The request uses features that are not supported for the selected model"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "Rate limit reached. Please retry later."
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "Service under maintenance, please try again later"
}
الأخطاء
POST /api/v1/kling/text_to_video
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "The request timed out"
}
الأخطاء
GET /api/v1/kling/text_to_video/:id
مخطط الاستجابة
{
"properties": {
"error": {
"description": "رسالة خطأ قابلة للقراءة البشرية.",
"type": "string"
}
},
"required": [
"error"
],
"type": "object",
"unevaluatedProperties": false
}
مثال على الاستجابة
{
"error": "Task with id 'tsk_reference_demo' not found"
}
نماذج الأكواد المولَّدة
استخدم cURL مباشرةً، أو ثبّت SDK للغة البرمجة التي تستخدمها. كل نموذج يُرسل الطلب الذي تم التحقق من صحته كما هو موضح في هذا المرجع.
التثبيت
pip install runapi-kling
import os
from runapi.kling import KlingClient
client = KlingClient(api_key=os.environ["RUNAPI_API_KEY"])
task = client.text_to_video.create(
model="kling-v3-turbo-text-to-video",
prompt="A paper kite flying above a quiet coastal town at sunrise",
duration_seconds=5,
aspect_ratio="16:9",
output_resolution="720p"
)