البدء السريع مع API

إنشاء مهمة صورة إلى فيديو ومتابعتها.

1. إعداد بيانات الاعتماد

export SEEDANCE_BASE_URL="https://api.seedance2video.io/v1"
export SEEDANCE_API_KEY="sd_live_replace_me"

احفظ المفتاح فقط في Secret Manager على الخادم أو n8n Credential.

2. إنشاء التوليد

يجب اعتماد نطاق الإدخال مسبقًا للمفتاح.

curl --request POST "$SEEDANCE_BASE_URL/videos" \
  --header "Authorization: Bearer $SEEDANCE_API_KEY" \
  --header "Idempotency-Key: order-10086-shot-1" \
  --header "Content-Type: application/json" \
  --data '{
    "model":"seedance-2.0-pro","mode":"image-to-video",
    "prompt":"يتجه العنصر ببطء نحو الكاميرا مع بقاء الخلفية ثابتة.",
    "inputs":[{"type":"image","url":"https://media.example.com/reference.png"}],
    "parameters":{"duration_seconds":5,"resolution":"720p","aspect_ratio":"16:9","generate_audio":true}
  }'

تعيد الواجهة 202 وid وstatus_url والتكلفة الفعلية في billing.cost_credits وفق حساب الكمبيوتر نفسه.

3. متابعة المهمة نفسها

curl "$SEEDANCE_BASE_URL/generations/GENERATION_ID" \
  --header "Authorization: Bearer $SEEDANCE_API_KEY"

عندما تكون الحالة queued أو processing التزم بـretry_after_seconds أو Retry-After. بعد الاكتمال استخدم output.video_url أو output.image_urls.

إذا انتهت مهلة الإنشاء، أعد المحاولة بالجسم نفسه وIdempotency-Key نفسه؛ لا تنشئ مهمة بديلة تلقائيًا بمفتاح جديد.

يعيد طلب الإنشاء المقبول 202 Accepted. وتحافظ الاستجابة المكتملة على هذا المخطط وسياسة same_as_pc:

{
  "status": "completed",
  "output": {
    "urls": ["https://.../completed-video.mp4"],
    "video_url": "https://.../completed-video.mp4"
  },
  "billing": {
    "unit": "credits",
    "cost_credits": 355,
    "policy": "same_as_pc"
  }
}

اقرأ الفيديو الأول من output.video_url.