Wideo

Lista wideo, generowanie pojedynczych wideo ze zdjęć oraz tworzenie rolek z wielu zdjęć.

GET /api/external/videos

Zwraca listę wygenerowanych wideo.

Nagłówki

NagłówekWymaganyOpis
X-Api-KeyTakTwój API key w formacie mk_live_xxx.secret

Parametry zapytania

Brak parametrów zapytania.

Odpowiedź

{
  "videos": [
    {
      "id": "vid_abc123",
      "name": "Product Showcase - White T-Shirt",
      "thumbnail": "https://cdn.example.com/videos/thumb_abc123.jpg",
      "videoUrl": "https://cdn.example.com/videos/vid_abc123.mp4",
      "status": "DONE",
      "voting": "APPROVED",
      "createdAt": "2026-03-20T17:00:00.000Z"
    }
  ],
  "count": 1
}

Odpowiedzi z błędem

KodZnaczenie
401Brakujący lub nieprawidłowy API key
500Wewnętrzny błąd serwera

Uwagi

  • Ten endpoint nie zużywa kredytów.

Przykład

curl -X GET "https://app.qamera.ai/api/external/videos" \
  -H "X-Api-Key: mk_live_abc123.secret456"

POST /api/external/video-picker/register-videos

Generuje wideo z istniejącego zdjęcia. Kredyty są rezerwowane natychmiast i zużywane po zakończeniu przetwarzania.

Nagłówki

NagłówekWymaganyOpis
X-Api-KeyTakTwój API key w formacie mk_live_xxx.secret
Content-TypeTakapplication/json

Treść zapytania

PoleTypWymaganyOpis
imageIdstringWarunkowoID zdjęcia źródłowego. Wymagane jest imageId lub generatedImageId.
generatedImageIdstringWarunkowoID wygenerowanego zdjęcia. Wymagane jest imageId lub generatedImageId.
suggestionstringNieWskazówki kreatywne lub sugestie dotyczące ruchu w wideo
providerstringNieDostawca generowania wideo (domyślnie: pollo)

Odpowiedź

{
  "createdRecordIds": ["vid_001"],
  "batchId": "batch_abc123",
  "orderId": "order_xyz789",
  "reservationId": "res_def456",
  "creditsReserved": 10
}

Odpowiedzi z błędem

KodZnaczenie
400Nieprawidłowa treść zapytania lub brak wymaganego ID zdjęcia
401Brakujący lub nieprawidłowy API key
402Niewystarczające kredyty
500Wewnętrzny błąd serwera

Uwagi

  • Przetwarzanie jest asynchroniczne. Zadanie jest publikowane w kolejce komunikatów i przetwarzane przez worker.
  • Śledź status wygenerowanych wideo za pomocą endpointu GET.
  • Kredyty są rezerwowane przy tworzeniu, zużywane po pomyślnym przetworzeniu i zwracane w przypadku niepowodzenia.
  • Każde zapytanie generuje correlationId do śledzenia w logach.
  • Musisz podać imageId lub generatedImageId, nie oba jednocześnie.

Przykład

curl -X POST "https://app.qamera.ai/api/external/video-picker/register-videos" \
  -H "X-Api-Key: mk_live_abc123.secret456" \
  -H "Content-Type: application/json" \
  -d '{
    "imageId": "img_abc123",
    "suggestion": "Slow zoom in with subtle rotation",
    "provider": "pollo"
  }'

POST /api/external/reel/register-reel

Generuje rolkę (krótkie wideo) z wielu zdjęć. Kredyty są rezerwowane natychmiast i zużywane po zakończeniu przetwarzania.

Nagłówki

NagłówekWymaganyOpis
X-Api-KeyTakTwój API key w formacie mk_live_xxx.secret
Content-TypeTakapplication/json

Treść zapytania

PoleTypWymaganyOpis
imagesIdsstring[]TakTablica ID zdjęć do uwzględnienia w rolce (min: 1, maks: 10)

Odpowiedź

{
  "createdRecordIds": ["reel_001"],
  "batchId": "batch_abc123",
  "orderId": "order_xyz789",
  "reservationId": "res_def456",
  "creditsReserved": 15
}

Odpowiedzi z błędem

KodZnaczenie
400Nieprawidłowa treść zapytania, brak imagesIds lub rozmiar tablicy poza dozwolonym zakresem
401Brakujący lub nieprawidłowy API key
402Niewystarczające kredyty
500Wewnętrzny błąd serwera

Uwagi

  • Przetwarzanie jest asynchroniczne. Zadanie jest publikowane w kolejce komunikatów i przetwarzane przez worker.
  • Śledź status wygenerowanych rolek za pomocą endpointu GET /api/external/videos.
  • Kredyty są rezerwowane przy tworzeniu, zużywane po pomyślnym przetworzeniu i zwracane w przypadku niepowodzenia.
  • Każde zapytanie generuje correlationId do śledzenia w logach.
  • Tablica imagesIds musi zawierać od 1 do 10 ID zdjęć.

Przykład

curl -X POST "https://app.qamera.ai/api/external/reel/register-reel" \
  -H "X-Api-Key: mk_live_abc123.secret456" \
  -H "Content-Type: application/json" \
  -d '{
    "imagesIds": ["img_001", "img_002", "img_003", "img_004"]
  }'