UlazAI kehittäjädokumentit
Sora 2 API: videoiden luominen, hinnoittelu ja käyttö
Sora 2 API: videoiden luominen, hinnoittelu ja käyttö
Luo Sora 2-videoita UlazAI:n kautta selkeällä päätepisteellä, luottohinnoittelulla, prompt-säännöillä, tilakyselyllä ja CDN-tulosteen käsittelyllä.
Tarkista nykyinen Sora-mallin hinta ja kaikki aktiiviset tilitarjoukset ennen luomista.
✨ Sora 2 ominaisuudet
✅ Tekstistä videoksi sukupolvi
✅ Kuvasta videoon animaatio
✅ Kestovaihtoehdot näkyy nykyisellä API-reitillä
✅ Lähtöasetukset näkyy nykyisessä API-dokumentaatiossa
✅ Tuetut kuvasuhteet riippuu valitusta reitistä
✅ Asynkroninen käsittely tilakyselyn kanssa
✅ Automaattinen R2-tallennustila CDN:n kanssa
✅ Sähköposti-ilmoitukset kun valmis
/api/v1/sora/generate/text-to-video/
Luo video tekstistä
Luo 10 sekunnin video tekstistä prompt käyttämällä Sora 2.
Pyynnön elin
{
"prompt": "A serene mountain landscape at sunrise with birds flying",
"aspect_ratio": "landscape", // Options: "landscape", "portrait", "square"
"quality": "standard" // Options: "standard", "high"
}
Parametrit
prompt * (merkkijono)
Luotavan videon tekstikuvaus. Enintään 5000 merkkiä. Ole kuvaileva saadaksesi parhaat tulokset.
aspect_ratio (merkkijono)
Videon kuvasuhde. Vaihtoehdot: landscape (16:9), portrait (9:16), square (1:1). Oletus: landscape
laatu (merkkijono)
Laatu esiasetus. Vaihtoehdot: standard, high. Korkea laatu käyttää enemmän käsittelyaikaa. Oletus: standard
prompt_directory_optin (looginen) 💰 -10 LUOTTOA
Jaa videosi julkiseen Prompt-hakemistoomme ja hanki 10 krediittiä alennus! Oletus: true
Menestysvastaus (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-esimerkki
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/
Luo video kuvasta
Animoi staattinen kuva 10 sekunnin videoksi Sora 2:n avulla.
Pyynnön elin
{
"image_url": "https://example.com/your-image.jpg",
"prompt": "Camera slowly zooms in as the character turns and smiles",
"aspect_ratio": "landscape",
"quality": "standard"
}
Parametrit
image_url * (merkkijono)
Animoitavan lähdekuvan URL-osoite. On oltava julkisesti saatavilla. Tuetut tiedostomuodot: JPG, PNG, WebP.
prompt * (merkkijono)
Kuvaus kuvan animoinnista. Enintään 5000 merkkiä.
aspect_ratio (merkkijono)
Parhaan tuloksen saavuttamiseksi on vastattava lähdekuvan kuvasuhdetta.
laatu (merkkijono)
Laatu esiasetus. Oletus: standard
prompt_directory_optin (looginen) 💰 -10 LUOTTOA
Jaa videosi julkiseen Prompt-hakemistoomme ja hanki 10 krediittiä alennus! Oletus: true
/api/v1/sora/status/{task_id}/
Tarkista sukupolven tila
Hanki Sora-videon luontitehtävän nykyinen tila ja tulos.
Vastaustilat
Käsittely
{
"success": true,
"data": {
"task_id": "sra_2_1234567890abcdef",
"status": "processing",
"progress": 45,
"estimated_completion": "varies by queue"
}
}
Menestystä
{
"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"
}
}
Epäonnistui
{
"success": false,
"error": "Video generation failed",
"error_details": "Content policy violation detected in prompt",
"credits_refunded": 80
}
cURL-esimerkki
curl -X GET https://ulazai.com/api/v1/sora/status/sra_2_1234567890abcdef/ \
-H "Authorization: Token YOUR_API_KEY"
🔑 Sora 2 API: virallinen vs. UlazAI
Sora 2 API pääsy riippuu palveluntarjoajasta, organisaation vahvistuksesta ja tilitasosta. Tarkista nykyinen käyttöoikeus ja hinta ennen integrointia.
Virallinen OpenAI API
- Kutsu/organisaation vahvistus suojattu
- Laskutetaan videon sekuntia kohden
- Hallitset omaa OpenAI-avainta ja kiintiöitä
Sora 2 mallissa UlazAI
- Soita nyt yhdellä UlazAI API avaimella - ei erillistä kutsua
- Hinnoiteltu jaettuna luottona, hyvitetään epäonnistuneista töistä
- Sama näppäin kutsuu myös Veo 3, Seedance ja Kling - vertaa kustannuksia ja latenssia yhdestä saldosta
Haluatko punnita Sora 2 vaihtoehtoja ensin? Katso 2026 AI-videomallien opas.
💰 Sora 2 Hinta
Tekstistä videoksi
Tarkista nykyinen API-hinta
valitulle ajalle ja mallille
• Tarkista nykyiset lähtöasetukset
• Tarkista tuetut kuvasuhteet
• Käsittelyaika vaihtelee jonon mukaan
Kuvasta videoon
Tarkista nykyinen API-hinta
kuvasta videoon
• Lataa tuettu kuva, jota voit käyttää
• Mukautettu liike prompts
• Käsittelyaika vaihtelee jonon mukaan
Laske erä nykyisen mallin hinnasta ja odotetusta uudelleenyritysten määrästä.
📚 Parhaat käytännöt
Prompt-ohjeet
- Ole tarkka kameran liikkeistä (panoroi, zoomaus, kallistus)
- Kuvaile valaistusta ja tunnelmaa
- Sisällytä hahmojen toimintaa ja ilmaisuja
- Määritä avainhetkien ajoitus
- Vältä tekijänoikeuksilla suojattuja merkkejä tai merkkejä
Kuvasta videoon -vinkkejä
- Käytä korkealaatuisia lähdekuvia (min 1024 pikseliä)
- Sovita kuvasuhde välttääksesi rajaamisen
- Kuvaile kohtauksen realistista liikettä
- Harkitse fysiikkaa ja luonnollista liikettä
Webhook-integrointi
- Videot tallennetaan automaattisesti R2:een CDN-toimituksella
- Sähköposti-ilmoitukset lähetetään, kun luonti on valmis
- Pyydä tilapäätepiste 30 sekunnin välein päivityksiä varten
- Epäonnistuneet sukupolvet hyvittävät automaattisesti krediittejä
⚠️ Virhekoodit
400
Virheelliset pyyntöparametrit tai prompt liian pitkä
401
Virheellinen tai puuttuva API-avain
402
Riittämättömät luottotiedot
422
Sisältökäytännön rikkomus
429
Hintaraja ylitetty (enintään 10 yhtäaikaa)
500
Palvelinvirhe - hyvitykset palautetaan
💻 Esimerkkejä koodista
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();
🚀 Oletko valmis aloittamaan?
Tarkista tililtäsi nykyiset luottotarjoukset.