مستندات المطور UlazAI
Sora 2 API: إنشاء الفيديو والتسعير والوصول
Sora 2 API: إنشاء الفيديو والتسعير والوصول
أنشئ مقاطع فيديو Sora 2 من خلال UlazAI بنقاط نهاية واضحة وتسعير ائتماني وقواعد prompt واستقصاء الحالة ومعالجة مخرجات CDN.
تحقق من سعر طراز Sora الحالي وأي عرض حساب نشط قبل الإنشاء.
✨مميزات Sora 2
✅ تحويل النص إلى فيديو جيل
✅ صورة إلى فيديو الرسوم المتحركة
✅ خيارات المدة يظهر بواسطة مسار API الحالي
✅ إعدادات الإخراج هو موضح في وثائق API الحالية
✅ نسب العرض إلى الارتفاع المدعومة تعتمد على المسار المحدد
✅ معالجة غير متزامنة مع استطلاع الحالة
✅ تخزين R2 التلقائي مع CDN
✅ إشعارات البريد الإلكتروني عند اكتماله
/api/v1/sora/generate/text-to-video/
توليد فيديو من النص
قم بإنشاء فيديو مدته 10 ثوانٍ من النص prompt باستخدام Sora 2.
هيئة الطلب
{
"prompt": "A serene mountain landscape at sunrise with birds flying",
"aspect_ratio": "landscape", // Options: "landscape", "portrait", "square"
"quality": "standard" // Options: "standard", "high"
}
حدود
prompt * (سلسلة)
الوصف النصي للفيديو المراد إنشاؤه. الحد الأقصى 5000 حرف. كن وصفيًا للحصول على أفضل النتائج.
aspect_ratio (سلسلة)
نسبة العرض إلى الارتفاع للفيديو. الخيارات: landscape (16:9), portrait (9:16), square (1:1). الافتراضي: landscape
جودة (سلسلة)
الجودة محددة مسبقا. الخيارات: standard, high. الجودة العالية تستهلك المزيد من وقت المعالجة. الافتراضي: standard
prompt_directory_optin (منطقي) 💰 -10 اعتمادات
شارك مقطع الفيديو الخاص بك في دليل Prompt العام الخاص بنا واحصل على خصم 10 اعتمادات! الافتراضي: true
استجابة النجاح (201)
{
"success": true,
"data": {
"task_id": "sra_2_1234567890abcdef",
"status": "processing",
"estimated_completion": "varies by queue",
"credits_charged": 80,
"credits_remaining": 920,
"webhook_url": "https://ulazai.com/api/v1/sora/status/sra_2_1234567890abcdef/",
"message": "Sora 2 video generation started successfully"
}
}
مثال الضفيرة
curl -X POST https://ulazai.com/api/v1/sora/generate/text-to-video/ \
-H "Authorization: Token YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A serene mountain landscape at sunrise with birds flying across the sky",
"aspect_ratio": "landscape",
"quality": "standard"
}'
/api/v1/sora/generate/image-to-video/
توليد الفيديو من الصورة
قم بتحريك صورة ثابتة إلى فيديو مدته 10 ثوانٍ باستخدام Sora 2.
هيئة الطلب
{
"image_url": "https://example.com/your-image.jpg",
"prompt": "Camera slowly zooms in as the character turns and smiles",
"aspect_ratio": "landscape",
"quality": "standard"
}
حدود
image_url * (سلسلة)
عنوان URL للصورة المصدر المراد تحريكها. يجب أن تكون في متناول الجمهور. التنسيقات المدعومة: JPG، PNG، WebP.
prompt * (سلسلة)
شرح كيفية تحريك الصورة الحد الأقصى 5000 حرف.
aspect_ratio (سلسلة)
يجب أن تتطابق مع نسبة العرض إلى الارتفاع للصورة المصدر للحصول على أفضل النتائج.
جودة (سلسلة)
الجودة محددة مسبقا. الافتراضي: standard
prompt_directory_optin (منطقي) 💰 -10 اعتمادات
شارك مقطع الفيديو الخاص بك في دليل Prompt العام الخاص بنا واحصل على خصم 10 اعتمادات! الافتراضي: true
/api/v1/sora/status/{task_id}/
التحقق من حالة الجيل
احصل على الحالة الحالية ونتيجة مهمة إنشاء فيديو Sora.
دول الاستجابة
يعالج
{
"success": true,
"data": {
"task_id": "sra_2_1234567890abcdef",
"status": "processing",
"progress": 45,
"estimated_completion": "varies by queue"
}
}
النجاح
{
"success": true,
"data": {
"task_id": "sra_2_1234567890abcdef",
"status": "success",
"video_url": "https://cdn.ulazai.com/sora/videos/sra_2_1234567890abcdef.mp4",
"thumbnail_url": "https://cdn.ulazai.com/sora/thumbnails/sra_2_1234567890abcdef.jpg",
"duration": 10,
"resolution": "1920x1080",
"file_size": "15.2 MB",
"created_at": "2025-01-03T10:15:30Z"
}
}
فشل
{
"success": false,
"error": "Video generation failed",
"error_details": "Content policy violation detected in prompt",
"credits_refunded": 80
}
مثال الضفيرة
curl -X GET https://ulazai.com/api/v1/sora/status/sra_2_1234567890abcdef/ \
-H "Authorization: Token YOUR_API_KEY"
🔑 الوصول إلى Sora 2 API: الوصول الرسمي مقابل UlazAI
الوصول إلى Sora 2 API يعتمد على الموفر والتحقق من المؤسسة ومستوى الحساب. تحقق من الوصول الحالي والتسعير قبل التكامل.
الرسمية OpenAI API
- دعوة / التحقق من المنظمة بوابات
- تتم المحاسبة لكل ثانية من الفيديو
- يمكنك إدارة مفتاح OpenAI والحصص النسبية الخاصة بك
Sora 2 على UlazAI
- اتصل بها الآن باستخدام مفتاح UlazAI API - بدون دعوة منفصلة
- يتم تسعيرها بالأرصدة المشتركة، ويتم ردها على المهام الفاشلة
- نفس المفتاح يستدعي أيضًا Veo 3 وSeedance وKling - قارن التكلفة وزمن الوصول من رصيد واحد
هل تريد موازنة Sora 2 مع البدائل أولاً؟ انظر دليل نماذج فيديو الذكاء الاصطناعي 2026.
💰 تسعير Sora 2
تحويل النص إلى فيديو
تحقق من أسعار API الحالية
للمدة والنموذج المحدد
• التحقق من إعدادات الإخراج الحالية
• التحقق من نسب العرض إلى الارتفاع المدعومة
• يختلف وقت المعالجة حسب قائمة الانتظار
صورة إلى فيديو
تحقق من أسعار API الحالية
لتحويل الصورة إلى فيديو
• قم بتحميل صورة مدعومة قد تستخدمها
• حركة مخصصة prompts
• يختلف وقت المعالجة حسب قائمة الانتظار
احسب الدفعة الخاصة بك من تكلفة النموذج الحالي ومعدل إعادة المحاولة المتوقع.
📚 أفضل الممارسات
المبادئ التوجيهية Prompt
- كن محددًا بشأن حركات الكاميرا (التحريك والتكبير/التصغير والإمالة)
- وصف الإضاءة والجو
- تضمين إجراءات الشخصية والتعبيرات
- تحديد توقيت للحظات الرئيسية
- تجنب الشخصيات أو العلامات التجارية المحمية بحقوق الطبع والنشر
نصائح حول تحويل الصورة إلى فيديو
- استخدم صور مصدر عالية الجودة (1024 بكسل على الأقل)
- مطابقة نسبة العرض إلى الارتفاع لتجنب الاقتصاص
- وصف الحركة الواقعية للمشهد
- النظر في الفيزياء والحركة الطبيعية
التكامل عبر الويب
- يتم تخزين مقاطع الفيديو تلقائيًا في R2 مع تسليم CDN
- يتم إرسال إشعارات البريد الإلكتروني عند اكتمال الإنشاء
- قم باستقصاء نقطة نهاية الحالة كل 30 ثانية للحصول على التحديثات
- تقوم الأجيال الفاشلة باسترداد الاعتمادات تلقائيًا
⚠️ رموز الخطأ
400
معلمات الطلب غير صالحة أو prompt طويلة جدًا
401
مفتاح API غير صالح أو مفقود
402
الاعتمادات غير كافية
422
انتهاك سياسة المحتوى
429
تم تجاوز حد المعدل (بحد أقصى 10 متزامنة)
500
خطأ في الخادم - سيتم رد الاعتمادات
💻 أمثلة على الكود
بايثون
import requests
import time
API_KEY = "YOUR_API_KEY"
BASE_URL = "https://ulazai.com/api/v1"
# Generate video
response = requests.post(
f"{BASE_URL}/sora/generate/text-to-video/",
headers={"Authorization": f"Token {API_KEY}"},
json={
"prompt": "A beautiful sunset over the ocean with waves",
"aspect_ratio": "landscape",
"quality": "standard"
}
)
if response.status_code == 201:
task_id = response.json()["data"]["task_id"]
# Poll for status
while True:
status_response = requests.get(
f"{BASE_URL}/sora/status/{task_id}/",
headers={"Authorization": f"Token {API_KEY}"}
)
status_data = status_response.json()["data"]
if status_data["status"] == "success":
print(f"Video ready: {status_data['video_url']}")
break
elif status_data["status"] == "failed":
print("Generation failed")
break
time.sleep(30) # Wait 30 seconds before next check
جافا سكريبت (Node.js)
const axios = require('axios');
const API_KEY = 'YOUR_API_KEY';
const BASE_URL = 'https://ulazai.com/api/v1';
async function generateSoraVideo() {
try {
// Generate video
const response = await axios.post(
`${BASE_URL}/sora/generate/text-to-video/`,
{
prompt: 'A beautiful sunset over the ocean with waves',
aspect_ratio: 'landscape',
quality: 'standard'
},
{
headers: { 'Authorization': `Token ${API_KEY}` }
}
);
const taskId = response.data.data.task_id;
console.log(`Generation started: ${taskId}`);
// Poll for status
const checkStatus = async () => {
const statusResponse = await axios.get(
`${BASE_URL}/sora/status/${taskId}/`,
{ headers: { 'Authorization': `Token ${API_KEY}` } }
);
const status = statusResponse.data.data.status;
if (status === 'success') {
console.log(`Video ready: ${statusResponse.data.data.video_url}`);
} else if (status === 'failed') {
console.log('Generation failed');
} else {
setTimeout(checkStatus, 30000); // Check again in 30 seconds
}
};
setTimeout(checkStatus, 30000);
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
}
generateSoraVideo();
🚀 جاهز للبدء؟
تحقق من حسابك لمعرفة عروض الائتمان الحالية.