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ă
/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"
}'
/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
/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.