Sari la conținut

UlazAI documente pentru dezvoltatori

Sora 2 API: generare video, prețuri și acces

Sora 2 API: generare video, prețuri și acces

Generați videoclipuri Sora 2 prin UlazAI cu puncte finale clare, prețuri de credit, reguli prompte, sondaj de stare și gestionarea ieșirii CDN.

Verificați prețul actual al modelului Sora și orice ofertă de cont activă înainte de generare.

✨ Caracteristici Sora 2

✅ Text-to-video generație

✅ De la imagine la video animație

✅ Opțiuni de durată indicat de ruta actuală API

✅ Setări de ieșire prezentate în documentația actuală API

✅ Raport de aspect acceptat depinde de ruta selectată

✅ Procesare asincronă cu sondaj de status

✅ Stocare automată R2 cu CDN

✅ Notificări prin e-mail când este completă

POSTĂ /api/v1/sora/generate/text-to-video/

Generați video din text

Creați un videoclip de 10 secunde dintr-un text prompt folosind Sora 2.

Organismul de solicitare

{
  "prompt": "A serene mountain landscape at sunrise with birds flying",
  "aspect_ratio": "landscape",  // Options: "landscape", "portrait", "square"
  "quality": "standard"          // Options: "standard", "high"
}

Parametrii

prompt * (șir)

Descrierea text a videoclipului de generat. Maxim 5000 de caractere. Fii descriptiv pentru cele mai bune rezultate.

aspect_ratio (șir)

Raportul aspectului video. Opțiuni: landscape (16:9), portrait (9:16), square (1:1). Implicit: landscape

calitate (șir)

Calitate prestabilită. Opțiuni: standard, high. Calitatea înaltă utilizează mai mult timp de procesare. Implicit: standard

prompt_directory_optin (boolean) 💰 -10 CREDITE

Partajați videoclipul dvs. în directorul nostru public Prompt și obțineți Reducere de 10 credite! Implicit: true

Răspuns de succes (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"
  }
}

Exemplu de cURL

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"
  }'
POSTĂ /api/v1/sora/generate/image-to-video/

Generați videoclip din imagine

Animați o imagine statică într-un videoclip de 10 secunde folosind Sora 2.

Organismul de solicitare

{
  "image_url": "https://example.com/your-image.jpg",
  "prompt": "Camera slowly zooms in as the character turns and smiles",
  "aspect_ratio": "landscape",
  "quality": "standard"
}

Parametrii

image_url * (șir)

URL-ul imaginii sursă de animat. Trebuie să fie accesibil public. Formate acceptate: JPG, PNG, WebP.

prompt * (șir)

Descrierea modului de animare a imaginii. Maxim 5000 de caractere.

aspect_ratio (șir)

Trebuie să se potrivească cu raportul de aspect al imaginii sursă pentru cele mai bune rezultate.

calitate (șir)

Calitate prestabilită. Implicit: standard

prompt_directory_optin (boolean) 💰 -10 CREDITE

Partajați videoclipul dvs. în directorul nostru public Prompt și obțineți Reducere de 10 credite! Implicit: true

GET /api/v1/sora/status/{task_id}/

Verificați starea generației

Obțineți starea curentă și rezultatul unei sarcini de generare video Sora.

Statele de răspuns

Prelucrare

{
  "success": true,
  "data": {
    "task_id": "sra_2_1234567890abcdef",
    "status": "processing",
    "progress": 45,
    "estimated_completion": "varies by queue"
  }
}

Succes

{
  "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"
  }
}

A eșuat

{
  "success": false,
  "error": "Video generation failed",
  "error_details": "Content policy violation detected in prompt",
  "credits_refunded": 80
}

Exemplu de cURL

curl -X GET https://ulazai.com/api/v1/sora/status/sra_2_1234567890abcdef/ \
  -H "Authorization: Token YOUR_API_KEY"

🔑 Acces Sora 2 API: oficial vs UlazAI

Sora 2 API acces depinde de furnizor, de verificarea organizației și de nivelul contului. Verificați accesul curent și prețurile înainte de integrare.

Oficial OpenAI API

  • Invitație/organizație-verificare închisă
  • Facturat pe secundă de videoclip
  • Vă gestionați propria cheie și cotele OpenAI

Sora 2 pe UlazAI

  • Apelați-l acum cu o cheie UlazAI API - fără invitație separată
  • Prețul în credite partajate, rambursat pentru locurile de muncă eșuate
  • Aceeași cheie apelează și Veo 3, Seedance și Kling - comparați costul și latența dintr-un singur sold

Doriți să cântăriți mai întâi Sora 2 cu alternativele? Vezi Ghid de modele video AI 2026.

💰 Prețul Sora 2

Text-to-video

Verificați prețul actual pentru API

pentru durata și modelul selectate

• Verificaţi setările curente de ieşire

• Verificați raporturile de aspect acceptate

• Timpul de procesare variază în funcție de coadă

Imagine-to-Video

Verificați prețul actual pentru API

pentru imagine-la-video

• Încărcați o imagine acceptată pe care o puteți utiliza

• Mișcare personalizată prompt

• Timpul de procesare variază în funcție de coadă

Calculați lotul din costul actual al modelului și rata de reîncercare estimată.

📚 Cele mai bune practici

Prompt Ghid

  • Fiți specific cu privire la mișcările camerei (pan, zoom, tilt)
  • Descrieți iluminarea și atmosfera
  • Includeți acțiuni și expresii ale caracterului
  • Specificați momentul pentru momentele cheie
  • Evitați caracterele sau mărcile protejate prin drepturi de autor

Sfaturi imagine-la-video

  • Utilizați imagini sursă de înaltă calitate (min 1024px)
  • Potriviți raportul de aspect pentru a evita tăierea
  • Descrieți mișcarea realistă pentru scenă
  • Luați în considerare fizica și mișcarea naturală

Integrare Webhook

  • Videoclipurile sunt stocate automat în R2 cu livrare CDN
  • Notificări prin e-mail trimise la finalizarea generării
  • Interogați punctul final de stare la fiecare 30 de secunde pentru actualizări
  • Generațiile eșuate rambursează automat creditele

⚠️ Coduri de eroare

400 Parametri de solicitare nevalidi sau prompt prea lung
401 Cheie API nevalidă sau lipsă
402 Credite insuficiente
422 Încălcarea politicii de conținut
429 Limita ratei a fost depășită (maximum 10 simultan)
500 Eroare de server - creditele vor fi rambursate

💻 Exemple de coduri

Python

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

Javascript (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();

🚀 Gata de început?

Verificați-vă contul pentru ofertele de credit curente.