Seedance 1.0 Pro API: profesjonalny endpoint do generowania wideo
Kompletny przewodnik po Seedance 1.0 Pro API do profesjonalnego generowania wideo. Dowiedz się, jak integrować endpoint, uwierzytelniać, konfigurować parametry, obsługiwać błędy i stosować najlepsze praktyki przy wbudowywaniu wideo AI w swoje aplikacje.

Jeśli budujesz wideo jako element produktu, przepływu pracy lub potoku przetwarzania danych, interfejs webowy prędzej czy później staje się wąskim gardłem. API Seedance 1.0 Pro to ten sam model, który działa pod spodem interfejsu webowego, udostępniony jako przejrzysty endpoint REST z uwierzytelnianiem tokenem Bearer, przewidywalnym cennikiem za sekundę i prostym mechanizmem odpytywania zadań. Ten przewodnik zawiera wszystko, czego potrzebujesz, by wdrożyć go na produkcji.
TL;DR
- REST API do natywnego generowania wideo 1080p przez Seedance 1.0 Pro
- Uwierzytelnianie: token Bearer z Twojego panel konta
- Rozliczenia: za sekundę, około $0.12/sek., zaokrąglone w górę do pełnych kredytów
- Schemat działania: wyślij zadanie → sprawdzaj status → pobierz MP4
- Najlepsze do: integracji SaaS, potoków wsadowych, automatyzacji, produktów white-label
Co daje Ci API
Wszystko, co oferuje interfejs webowy Seedance 1.0 Pro, dostępne programistycznie:
- Generowanie wideo z obrazu na podstawie adresu URL źródłowego obrazu
- Prompt ruchu do sterowania animacją
- Kontrola czasu trwania od 2 do 12 sekund
- Kontrola ostatniej klatki dla kierowanych przejść
- Blokada kamery do włączenia/wyłączenia
- Odpytywanie zadania w celu sprawdzenia statusu i adresu URL wyniku
- Wyjście MP4 w natywnej rozdzielczości 1080p
Użyj go do produktów SaaS wymagających wbudowanego generowania wideo, wewnętrznych potoków agencyjnych, wsadowych przepływów produkcyjnych lub automatyzacji powtarzalnych zadań wideo.
Generuj wideo 1080p w jakości broadcastowej
Profesjonalne AI do generowania wideo z obrazu. Domyślne wyjście 1080p, doskonały ruch. Darmowe kredyty.
Wypróbuj Seedance 1.0 Pro za darmo5 bezpłatnych generacji · Bez wymaganej karty kredytowej
Uwierzytelnianie
Wszystkie wywołania API są uwierzytelniane tokenem Bearer. Wygeneruj go z poziomu panelu konta Arteza na arteza.ai.
Authorization: Bearer YOUR_API_KEY
Zasady bezpieczeństwa:
- Nigdy nie umieszczaj kluczy API w systemie kontroli wersji
- Regularnie rotuj klucze
- Używaj zmiennych środowiskowych lub menedżera sekretów
- Ogranicz klucze do konkretnych źródeł, jeśli to możliwe
Główne endpointy
Wyślij zadanie generowania
POST /v1/seedance-1-pro/generate
Treść żądania:
{
"source_image_url": "https://your-cdn.com/source.jpg",
"prompt": "Slow camera push-in on the subject, warm golden hour light, shallow depth of field",
"duration_seconds": 6,
"camera_lock": false,
"end_frame_url": null
}
Parametry:
| Pole | Typ | Wymagane | Opis |
|---|---|---|---|
source_image_url | string | tak | Publicznie dostępny adres URL obrazu źródłowego |
prompt | string | tak | Opis ruchu |
duration_seconds | integer | tak | 2-12 sekund |
camera_lock | boolean | nie | Domyślnie false |
end_frame_url | string | nie | Opcjonalny adres URL ostatniej klatki |
Odpowiedź:
{
"job_id": "job_abc123xyz",
"status": "queued",
"created_at": "2026-04-10T12:00:00Z",
"estimated_seconds": 90
}
Sprawdź status zadania
GET /v1/seedance-1-pro/status/{job_id}
Odpowiedź (w trakcie przetwarzania):
{
"job_id": "job_abc123xyz",
"status": "processing",
"progress": 0.45,
"created_at": "2026-04-10T12:00:00Z"
}
Odpowiedź (ukończone):
{
"job_id": "job_abc123xyz",
"status": "completed",
"video_url": "https://arteza.ai/videos/abc123xyz.mp4",
"duration_seconds": 6,
"resolution": "1920x1080",
"credits_charged": 144
}
Możliwe wartości statusu: queued, processing, completed, failed
Pobierz wynik
Gdy status wynosi completed, pole video_url wskazuje plik MP4 w rozdzielczości 1080p. Pobierz go natychmiast i przechowaj we własnej infrastrukturze - nie polegaj na tym, że adres URL będzie ważny bezterminowo.
Kompletny przykład w Pythonie
import os
import time
import requests
API_KEY = os.environ["SEEDANCE_API_KEY"]
BASE_URL = "https://api.arteza.ai/v1/seedance-1-pro"
HEADERS = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
def generate_video(source_image_url, prompt, duration=6, camera_lock=False, end_frame=None):
payload = {
"source_image_url": source_image_url,
"prompt": prompt,
"duration_seconds": duration,
"camera_lock": camera_lock,
}
if end_frame:
payload["end_frame_url"] = end_frame
response = requests.post(f"{BASE_URL}/generate", headers=HEADERS, json=payload)
response.raise_for_status()
return response.json()["job_id"]
def wait_for_completion(job_id, poll_interval=5, timeout=300):
start = time.time()
while time.time() - start < timeout:
r = requests.get(f"{BASE_URL}/status/{job_id}", headers=HEADERS)
r.raise_for_status()
data = r.json()
if data["status"] == "completed":
return data["video_url"]
if data["status"] == "failed":
raise RuntimeError(f"Zadanie nie powiodło się: {data.get('error', 'nieznany błąd')}")
time.sleep(poll_interval)
raise TimeoutError(f"Zadanie {job_id} nie zostało ukończone w ciągu {timeout}s")
def download_video(url, output_path):
response = requests.get(url, stream=True)
response.raise_for_status()
with open(output_path, "wb") as f:
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)
# Użycie
job_id = generate_video(
source_image_url="https://example.com/product.jpg",
prompt="Slow camera orbit around the product, studio lighting, 6 seconds",
duration=6,
camera_lock=True
)
video_url = wait_for_completion(job_id)
download_video(video_url, "output.mp4")
print(f"Wideo zapisano w output.mp4")
Kompletny przykład w Node.js
import fs from 'fs';
import fetch from 'node-fetch';
const API_KEY = process.env.SEEDANCE_API_KEY;
const BASE_URL = 'https://api.arteza.ai/v1/seedance-1-pro';
const HEADERS = {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
};
async function generateVideo(opts) {
const response = await fetch(`${BASE_URL}/generate`, {
method: 'POST',
headers: HEADERS,
body: JSON.stringify(opts)
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
return data.job_id;
}
async function waitForCompletion(jobId, { pollInterval = 5000, timeout = 300000 } = {}) {
const start = Date.now();
while (Date.now() - start < timeout) {
const r = await fetch(`${BASE_URL}/status/${jobId}`, { headers: HEADERS });
const data = await r.json();
if (data.status === 'completed') return data.video_url;
if (data.status === 'failed') throw new Error(`Zadanie nie powiodło się: ${data.error}`);
await new Promise(res => setTimeout(res, pollInterval));
}
throw new Error('Przekroczono limit czasu');
}
async function downloadVideo(url, path) {
const response = await fetch(url);
const buffer = await response.buffer();
fs.writeFileSync(path, buffer);
}
// Użycie
const jobId = await generateVideo({
source_image_url: 'https://example.com/product.jpg',
prompt: 'Slow camera orbit around the product, studio lighting, 6 seconds',
duration_seconds: 6,
camera_lock: true
});
const videoUrl = await waitForCompletion(jobId);
await downloadVideo(videoUrl, 'output.mp4');
console.log('Zapisano output.mp4');

Chcesz takiej jakości broadcastowej? Wypróbuj Seedance 1.0 Pro za darmo →
Cennik i rozliczenia
Stawka: około $0.12 za sekundę wygenerowanego wideo, zaokrąglone w górę do najbliższego pełnego kredytu
| Czas trwania | Kredyty | Koszt |
|---|---|---|
| 2s | 4 | $0.40 |
| 4s | 8 | $0.80 |
| 6s | 11 | $1.10 |
| 8s | 15 | $1.50 |
| 10s | 18 | $1.80 |
| 12s | 22 | $2.20 |
Kredyty są pobierane tylko w przypadku pomyślnego wygenerowania. Za nieudane zadania kredyty nie są pobierane.
Plany są takie same jak w interfejsie webowym: $5 Starter, $25 Creator, $50 Pro, $120 Studio. Zobacz strona z cennikiem.
Limity żądań i współbieżność
Standardowe konta mają limity żądań odpowiednie dla typowych obciążeń integracyjnych. W przypadku produkcji o dużym wolumenie skontaktuj się z pomocą techniczną, aby zwiększyć limity.
Ogólne wskazówki:
- 5-10 równoczesnych zadań działa niezawodnie dla większości kont
- Wykładnicze wycofanie przy odpowiedziach HTTP 429
- Ponowne próby na poziomie zadania przy przejściowych błędach (do 3 prób)
- Callbacki webhook są dostępne, by uniknąć nadmiernego odpytywania
Webhooki (opcjonalne)
Zamiast odpytywać serwer, zarejestruj adres URL webhooka w ustawieniach konta lub per żądanie. Gdy zadanie zostanie ukończone, Arteza wyśle żądanie POST na Twój adres URL:
{
"event": "job.completed",
"job_id": "job_abc123xyz",
"status": "completed",
"video_url": "https://arteza.ai/videos/abc123xyz.mp4",
"duration_seconds": 6,
"credits_charged": 144,
"timestamp": "2026-04-10T12:02:15Z"
}
Webhooki są podpisywane sygnaturą HMAC w nagłówku X-Seedance-Signature. Zweryfikuj ją przed zaufaniem zawartości żądania.
Wdrażaj wideo 1080p ze swojego backendu
REST API z tokenem Bearer, natywne wyjście 1080p, webhooki i przewidywalne rozliczenia za sekundę. Darmowe kredyty.
Pobierz swój klucz APIObsługa błędów
API zwraca standardowe kody statusu HTTP:
| Kod | Znaczenie |
|---|---|
200 | Sukces |
400 | Nieprawidłowe żądanie - sprawdź dane wejściowe |
401 | Nieautoryzowany dostęp - nieprawidłowy klucz API |
402 | Niewystarczająca liczba kredytów |
429 | Przekroczono limit żądań |
500 | Błąd serwera - ponów z wycofaniem |
Treści odpowiedzi błędów zawierają pole error z czytelną dla człowieka wiadomością oraz pole code do obsługi programistycznej.
{
"error": "Source image URL could not be fetched",
"code": "source_image_unreachable"
}
Wymagania dotyczące obrazu źródłowego
- Formaty: PNG, JPEG, WebP
- Rozmiar: do 10 MB na obraz
- Rozdzielczość: minimum 512x512, wyższa jest lepsza (zalecana 1080p lub wyższa)
- Dostęp do adresu URL: musi być publicznie dostępny dla serwerów Arteza (bez localhost, bez zasobów chronionych uwierzytelnianiem)
W przypadku prywatnych obrazów prześlij je pod podpisany adres URL S3, CloudFront lub podobnej usługi i przekaż podpisany adres URL w żądaniu.
Dobre praktyki
- Przechowuj wyniki we własnej infrastrukturze. Nie polegaj długoterminowo na adresach URL Arteza.
- Loguj wszystko. Identyfikatory zadań, prompty, czasy, przejścia statusów, błędy.
- Ponawiaj przejściowe błędy. Chwilowe problemy sieciowe i odpowiedzi 5xx powinny być ponawiane z wykładniczym wycofaniem.
- Weryfikuj dane wejściowe wcześnie. Sprawdzaj adresy URL obrazów i zakresy parametrów przed wysłaniem żądania.
- Monitoruj saldo kredytów. Ustawiaj alert, gdy saldo spadnie poniżej określonego progu.
- Używaj webhooków na produkcji. Odpytywanie jest odpowiednie dla małych obciążeń, ale nieefektywne przy dużej skali.
- Buforuj identyczne generowania. Jeśli użytkownik dwa razy prześle ten sam obraz i ten sam prompt, zwróć zbuforowany adres URL.
Testy i staging
Zacznij każdą integrację od planu $5 Starter (60 kredytów miesięcznie). To wystarczy na dwadzieścia 2-sekundowych generowań testowych. Zbuduj i przetestuj integrację od końca do końca, zanim przejdziesz na plan z wyższym wolumenem.
Przypadki użycia
- Platformy SaaS - pozwól użytkownikom generować wideo z ich własnych zasobów
- E-commerce - generuj wideo z ruchem produktów na podstawie zdjęć z katalogu
- Nieruchomości - automatyzuj tworzenie filmów z ogłoszeń na podstawie zdjęć
- Automatyzacja marketingu - spersonalizowane wideo na dużą skalę
- Platformy contentowe - wzbogacaj artykuły, ogłoszenia lub posty w mediach społecznościowych o wygenerowane wideo
- Narzędzia wideo white-label - zbuduj własny produkt AI wideo na backendzie Arteza
Powiązane materiały
- Przepływy pracy z przetwarzaniem wsadowym
- Kompletny przewodnik po Seedance 1.0 Pro
- Seedance 1.0 Pro dla agencji
- Przewodnik po API Seedance 2.0
FAQ
Czy mogę używać API do zastosowań komercyjnych? Tak, wszystkie wyniki są dopuszczone do użytku komercyjnego.
Co się dzieje, gdy generowanie się nie powiedzie? Za nieudane generowania kredyty nie są pobierane.
Jak długo wygenerowane filmy są hostowane? Wideo są dostępne do pobrania przez określony czas po wygenerowaniu. Pobierz je i zapisz niezwłocznie.
Czy obsługujecie biblioteki SDK? Społecznościowe SDK dla Pythona i Node są dostępne. Zobacz dokumentację dla deweloperów na arteza.ai.
Czy mogę anulować trwające zadanie? Tak, wyślij żądanie DELETE /v1/seedance-1-pro/jobs/{job_id}. Za anulowane zadania kredyty nie są pobierane.
Jak uzyskać pomoc techniczną? Skontaktuj się z pomocą techniczną przez e-mail z poziomu panelu konta w sprawach dotyczących API.
API Seedance 1.0 Pro to gotowa na produkcję ścieżka do wbudowania generowania wideo AI w rozdzielczości 1080p w Twój produkt lub potok przetwarzania danych.
Pobierz klucz API i zacznij budować → z darmowymi kredytami 10 dostępnymi po rejestracji.
Wypróbuj Seedance 1.0 Pro - Już teraz
5 bezpłatnych generacji · Bez wymaganej karty kredytowej