
Veo3.1 Reference-to-Video API by Google
Create richly detailed videos guided by visual references. Veo 3.1 Reference-to-Video preserves characters, style, and composition across scenes for consistent, visually coherent storytelling.
INPUT
OUTPUT
IdleYour request will cost $0.2 per run. For $10 you can run this model approximately 50 times.
Here's what you can do next:
Esempio di codice
import requests
import time
# Step 1: Start video generation
generate_url = "https://api.atlascloud.ai/api/v1/model/generateVideo"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
"model": "google/veo3.1/reference-to-video",
"prompt": "A beautiful sunset over the ocean with gentle waves",
"width": 512,
"height": 512,
"duration": 3,
"fps": 24,
}
generate_response = requests.post(generate_url, headers=headers, json=data)
generate_result = generate_response.json()
prediction_id = generate_result["data"]["id"]
# Step 2: Poll for result
poll_url = f"https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}"
def check_status():
while True:
response = requests.get(poll_url, headers={"Authorization": "Bearer $ATLASCLOUD_API_KEY"})
result = response.json()
if result["data"]["status"] in ["completed", "succeeded"]:
print("Generated video:", result["data"]["outputs"][0])
return result["data"]["outputs"][0]
elif result["data"]["status"] == "failed":
raise Exception(result["data"]["error"] or "Generation failed")
else:
# Still processing, wait 2 seconds
time.sleep(2)
video_url = check_status()Installa
Installa il pacchetto richiesto per il tuo linguaggio.
pip install requestsAutenticazione
Tutte le richieste API richiedono l'autenticazione tramite una chiave API. Puoi ottenere la tua chiave API dalla dashboard di Atlas Cloud.
export ATLASCLOUD_API_KEY="your-api-key-here"Header HTTP
import os
API_KEY = os.environ.get("ATLASCLOUD_API_KEY")
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {API_KEY}"
}Non esporre mai la tua chiave API nel codice lato client o nei repository pubblici. Utilizza invece variabili d'ambiente o un proxy backend.
Invia una richiesta
import requests
url = "https://api.atlascloud.ai/api/v1/model/generateVideo"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
"model": "your-model",
"prompt": "A beautiful landscape"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())Invia una richiesta
Invia una richiesta di generazione asincrona. L'API restituisce un ID di previsione che puoi usare per controllare lo stato e recuperare il risultato.
/api/v1/model/generateVideoCorpo della richiesta
import requests
url = "https://api.atlascloud.ai/api/v1/model/generateVideo"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
"model": "google/veo3.1/reference-to-video",
"input": {
"prompt": "A beautiful sunset over the ocean with gentle waves"
}
}
response = requests.post(url, headers=headers, json=data)
result = response.json()
print(f"Prediction ID: {result['id']}")
print(f"Status: {result['status']}")Risposta
{
"id": "pred_abc123",
"status": "processing",
"model": "model-name",
"created_at": "2025-01-01T00:00:00Z"
}Controlla lo stato
Interroga l'endpoint di previsione per verificare lo stato attuale della tua richiesta.
/api/v1/model/prediction/{prediction_id}Esempio di polling
import requests
import time
prediction_id = "pred_abc123"
url = f"https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}"
headers = { "Authorization": "Bearer $ATLASCLOUD_API_KEY" }
while True:
response = requests.get(url, headers=headers)
result = response.json()
status = result["data"]["status"]
print(f"Status: {status}")
if status in ["completed", "succeeded"]:
output_url = result["data"]["outputs"][0]
print(f"Output URL: {output_url}")
break
elif status == "failed":
print(f"Error: {result['data'].get('error', 'Unknown')}")
break
time.sleep(3)Valori di stato
processingLa richiesta è ancora in fase di elaborazione.completedLa generazione è completata. I risultati sono disponibili.succeededLa generazione è riuscita. I risultati sono disponibili.failedLa generazione è fallita. Controlla il campo errore.Risposta completata
{
"data": {
"id": "pred_abc123",
"status": "completed",
"outputs": [
"https://storage.atlascloud.ai/outputs/result.mp4"
],
"metrics": {
"predict_time": 45.2
},
"created_at": "2025-01-01T00:00:00Z",
"completed_at": "2025-01-01T00:00:10Z"
}
}Carica file
Carica file nello storage Atlas Cloud e ottieni un URL utilizzabile nelle tue richieste API. Usa multipart/form-data per il caricamento.
/api/v1/model/uploadMediaEsempio di caricamento
import requests
url = "https://api.atlascloud.ai/api/v1/model/uploadMedia"
headers = { "Authorization": "Bearer $ATLASCLOUD_API_KEY" }
with open("image.png", "rb") as f:
files = {"file": ("image.png", f, "image/png")}
response = requests.post(url, headers=headers, files=files)
result = response.json()
download_url = result["data"]["download_url"]
print(f"File URL: {download_url}")Risposta
{
"data": {
"download_url": "https://storage.atlascloud.ai/uploads/abc123/image.png",
"file_name": "image.png",
"content_type": "image/png",
"size": 1024000
}
}Schema di input
I seguenti parametri sono accettati nel corpo della richiesta.
Nessun parametro disponibile.
Esempio di corpo della richiesta
{
"model": "google/veo3.1/reference-to-video"
}Schema di output
L'API restituisce una risposta di previsione con gli URL degli output generati.
Esempio di risposta
{
"id": "pred_abc123",
"status": "completed",
"model": "model-name",
"outputs": [
"https://storage.atlascloud.ai/outputs/result.mp4"
],
"metrics": {
"predict_time": 45.2
},
"created_at": "2025-01-01T00:00:00Z",
"completed_at": "2025-01-01T00:00:10Z"
}Atlas Cloud Skills
Atlas Cloud Skills integra oltre 300 modelli di IA direttamente nel tuo assistente di codifica IA. Un comando per installare, poi usa il linguaggio naturale per generare immagini, video e chattare con LLM.
Client supportati
Installa
npx skills add AtlasCloudAI/atlas-cloud-skillsConfigura chiave API
Ottieni la tua chiave API dalla dashboard di Atlas Cloud e impostala come variabile d'ambiente.
export ATLASCLOUD_API_KEY="your-api-key-here"Funzionalità
Una volta installato, puoi usare il linguaggio naturale nel tuo assistente IA per accedere a tutti i modelli Atlas Cloud.
Server MCP
Il server MCP di Atlas Cloud collega il tuo IDE con oltre 300 modelli di IA tramite il Model Context Protocol. Funziona con qualsiasi client compatibile MCP.
Client supportati
Installa
npx -y atlascloud-mcpConfigurazione
Aggiungi la seguente configurazione al file delle impostazioni MCP del tuo IDE.
{
"mcpServers": {
"atlascloud": {
"command": "npx",
"args": [
"-y",
"atlascloud-mcp"
],
"env": {
"ATLASCLOUD_API_KEY": "your-api-key-here"
}
}
}
}Strumenti disponibili
API Schema
Schema not availablePlease log in to view request history
You need to be logged in to access your model request history.
Log InGoogle Veo 3.1 — Reference-to-Video Model
Veo 3.1 Reference-to-Video brings static images to life by combining visual reference consistency with cinematic motion generation. Powered by Google DeepMind’s next-generation Veo 3.1 architecture, this model transforms up to three reference images into coherent 5-second videos with smooth motion, accurate visual alignment, and synchronized native audio.
🌟 Key Features
🧠 Multi-Image Reference Support
- Accepts up to three reference images to define the subject, environment, or style.
- Maintains consistent identity, lighting, and appearance across frames.
- Ideal for animating people, objects, or scenes with reliable fidelity.
🎬 Cinematic Video Generation
- Produces 5-second motion clips at 1080p or 720p resolution.
- Adds camera dynamics such as panning, zooming, or subtle perspective drift.
- Supports synchronized audio generation, matching dialogue or ambient context.
💡 Smart Prompt Adherence
- Interprets both text instructions and visual cues for precise motion storytelling.
- Automatically harmonizes character interactions, props, and backgrounds.
⚙️ Capabilities
-
Input:
- Up to 3 reference images (JPEG / PNG / WEBP)
- Text prompt describing motion, action, and scene context
-
Output:
- 8-second MP4 video (720p or 1080p)
- Optional synchronized audio
-
Negative Prompt (optional):
- Exclude unwanted artifacts or elements (e.g., “no text”, “no flicker”).
-
Seed (optional):
- Reproduce specific results for consistent creative control.
💰 Pricing
| Duration | Resolution | With Audio | Without Audio |
|---|---|---|---|
| 8 seconds | 720p | $3.20 | $1.60 |
| 8 seconds | 1080p | $3.20 | $1.60 |
✅ Commercial use allowed
🧩 How to Use
- Upload up to 3 reference images — define the subject, object, or visual style.
- Write a text prompt — describe the action, setting, and camera motion.
- (Optional) Add a negative prompt to remove unwanted details.
- Choose resolution (720p or 1080p).
- (Optional) Enable audio generation for synchronized sound.
- Click Run to generate your 5-second cinematic video.
💡 Best Practices
- Use clear, well-lit reference images with similar styles and proportions.
- Keep prompts concise but specific (e.g., “The man in image 1 waves to the penguins in image 2 under bright sunlight”).
- Avoid overly complex scenarios with many characters or fast movement.
- Enable audio for more immersive storytelling results.
📝 Notes
- Ensure uploaded images are valid and accessible URLs or uploaded locally.
- If the output looks unstable, reduce reference count or simplify the prompt.
- Follow Google’s content safety rules; modify the prompt if flagged.
- For best performance, prefer portrait-oriented subjects and balanced lighting.






