Source: https://ailoot.ai/docs/sl/api/video-music/
Canonical: https://ailoot.ai/docs/sl/api/video-music/
Language: sl

[API](https://ailoot.ai/docs/sl/) 

# Video in glasba

[Markdown](https://ailoot.ai/docs/sl/api/video-music/index.md)

Generiranje videov in glasbe: zahteva ustvari opravilo, rezultat pa pridobite z njegovim identifikatorjem.

POST`https://api.ailoot.ai/v1/videos`

Video in glasba

```bash
# Shranite ID zahteve: podpora z njim poišče vašo zahtevo.
# Opravilo ustvarite enkrat; spodnja zanka samo bere njegovo stanje.
curl --fail-with-body --max-time 120 -D video-create-headers-v1.txt \
  https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"grok-imagine-video-1.5","prompt":"mirno jezero","seconds":"8","size":"1280x720"}' \
  -o video-create-v1.json || exit 1
VIDEO_ID=$(jq -er '.id // .request_id' video-create-v1.json) || exit 1
VIDEO_STATUS=""
# Ta zanka bere samo izvirno opravilo. Zahteve za njegovo ustvarjanje nikoli ne pošlje znova.
for ATTEMPT in $(seq 1 60); do
  curl --fail-with-body --max-time 30 \
    "https://api.ailoot.ai/v1/videos/$VIDEO_ID" \
    -H "Authorization: Bearer $AILOOT_API_KEY" \
    -o video-status-v1.json || exit 1
  VIDEO_STATUS=$(jq -r '.status // empty' video-status-v1.json)
  # result_pending_check: true (stanje ostane in_progress): rezultat se preverja. Ustavite se; opravila nikoli ne ustvarite znova.
  if jq -e '.result_pending_check == true' video-status-v1.json >/dev/null; then
    cat video-status-v1.json
    echo "The result is being checked. Do not create the job again: check GET /v1/videos/$VIDEO_ID later or contact support with the Request ID." >&2
    exit 1
  fi
  case "$VIDEO_STATUS" in
    done|completed) break ;;
    queued|in_progress|pending|processing) sleep 5 ;;
    # failed ali katero koli drugo stanje: prikažite ga in se ustavite. Opravila nikoli ne ustvarite znova.
    *) cat video-status-v1.json; exit 1 ;;
  esac
done
case "$VIDEO_STATUS" in
  done|completed) ;;
  *) echo "The job is not finished yet (status: ${VIDEO_STATUS:-none}). Check it later: GET /v1/videos/$VIDEO_ID" >&2; exit 1 ;;
esac
curl --fail-with-body --max-time 120 -L --max-redirs 3 \
  "https://api.ailoot.ai/v1/videos/$VIDEO_ID/content" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o video-v1.mp4
# Po prekoračitvi časovne omejitve pri ustvarjanju pred ponovnim zagonom tega skripta preverite ID zahteve v zgodovini porabe.
```

```bash
curl https://api.ailoot.ai/v1/music/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "google/lyria", "prompt": "Umirjen klavir in violončelo, brez vokala"}' 
```

Odgovor · skrajšano

```json
// Identifikator opravila je v polju id ali request_id
{ "id": "…", … }

// Oblika je odvisna od modela: identifikator prevzemite
// iz odgovora na zahtevo za ustvarjanje brez sprememb.
```

## Avtentikacija

| Parameter | Tip | Obvezen | Opis |
| --- | --- | --- | --- |
| `Authorization` | header | obvezno | Ključ v obliki `Bearer sk-…`. Uporabite lahko tudi glavi `x-api-key` ali `x-goog-api-key`. |

## Video: telo zahteve

| Parameter | Tip | Obvezen | Opis |
| --- | --- | --- | --- |
| `model` | string | obvezno | Model za video: `google/omni-1.1-flash`, `grok-imagine-video`, `happyhorse-1.1-t2v`, `MiniMax-Hailuo-2.3`, `grok-imagine-video-1.5`, `happyhorse-1.1-r2v`, `grok-imagine-video-1.5-preview`, `happyhorse-1.1-i2v`. |
| `prompt` | string | obvezno | Opis videa. |
| `duration / seconds` | integer / string | neobvezno | Odvisno od družine: Grok 1–15 sekund, MiniMax 6/10 pri 768P ali 6 pri 1080P, HappyHorse 3–15; Google Omni 4/6/8/10. Polja ene družine ne uporabljajte pri drugi. |
| `resolution / size` | string | neobvezno | Grok: 480p/720p/1080p (1080p pri video-1.5) ali size 1280x720/720x1280/1920x1080/1080x1920. MiniMax: 768P/1080P. HappyHorse: 480P/720P/1080P. Google Omni: 360p/720p. |
| `image / first_frame_image / image_urls` | string / array | neobvezno | Polja izvornih slik so odvisna od družine in načina. MiniMax Fast zahteva first\_frame\_image. HappyHorse t2v – brez images, i2v – natanko ena slika brez ratio, r2v – 1–9 slik. |

Odgovor vsebuje identifikator opravila (polje `id` ali `request_id`). Uporabite ga nespremenjenega, brez razčlenjevanja: format je odvisen od modela. Stanje in dokončana datoteka:

GET`https://api.ailoot.ai/v1/videos/{id}`

GET`https://api.ailoot.ai/v1/videos/{id}/content`

Isti naslovi delujejo tudi s predpono `/v1/videos/generations/{id}`. Stanje dokončanega opravila in nabor polj odgovora sta odvisna od modela – ravnajte se po polju stanja in datoteko pridobite prek `/content`.

## Ustvarjanje → stanje → prenos

Shranite odgovor ob ustvarjanju in njegov Request ID. Pri MiniMax/HappyHorse je rezultat pripravljen ob `status: completed`, odgovor vsebuje `content_url`, `data[]` in usage. Pri Grok – `status: done` z `video.url`. Google Omni vrne 202 queued, nato in\_progress z Retry-After, completed ali partial/content\_revoked. Vsakega 200 ne obravnavajte kot dokončan video. Če odgovor o stanju vsebuje `result_pending_check: true` (`status` pri tem `in_progress`) se rezultat še preverja. Opravila ne ustvarite ponovno – pozneje ga preverite prek GET /v1/videos/{id} ali pišite podpori z Request ID.

`/content` lahko vrne MP4 neposredno ali preusmeritev na podpisano datoteko. Če odgovor vsebuje več rezultatov v `data[]`, shranite vsakega: obračunajo se vsi dostavljeni rezultati. Videoopravila prek API-ja ni mogoče preklicati ali izbrisati. Izbris dokončane datoteke zapre dostop do nje, ne prekliče pa generiranja.

Obračunavanje poteka po sekundah dokončanega videa pri izbrani ločljivosti ali po videu, kot je navedeno v katalogu. Celotni strošek se rezervira ob ustvarjanju opravila.

## Glasba

POST`https://api.ailoot.ai/v1/music/generations`

| Parameter | Tip | Obvezen | Opis |
| --- | --- | --- | --- |
| `model` | string | obvezno | `google/lyria`, `google/lyria-3-clip-preview`. |
| `prompt` | string | obvezno | Opis skladbe: zvrst, inštrumenti, vzdušje. |

V odgovoru `data[]` – povezave do dokončanih posnetkov. Model lahko v eni zahtevi vrne več posnetkov; obračuna se vsak dostavljeni posnetek.

Zahteve za video ali glasbo ne pošljite ponovno, če se povezava prekine: opravilo se je morda že začelo. Najprej preverite stanje z identifikatorjem ali pišite podpori z Request ID.

Imate še vprašanja? Pošljite Request ID in opis – pomagali vam bomo razjasniti težavo.[Pišite podpori](mailto:support@ailoot.ai)

## Ailoot · Podjetje in njegov portfelj projektov





Ailoot temelji na pridobljenih operativnih izkušnjah, široki bazi strank, stabilni storitvi in stalnem spremljanju KPI.





Podjetje in njegov portfelj projektov: milijoni strank; mesečna prodaja v milijardah.





Ailoot te operativne izkušnje uporablja za dostop prek API do funkcij umetne inteligence v izdelkih strank, agentih, aplikacijah in avtomatizacijah.
