Prehliadnite si dokumenty pre vývojárov

REST API

Nahrávajte a zdieľajte súbory

Tento tutoriál obsahuje jeden lokálny súbor s názvom demo.mp4 a premení ho na pracovný zdieľaný súbor URL. Vykonajte kroky v poradí; každá odpoveď poskytuje hodnotu použitú pri ďalšej požiadavke.

1

Vytvorte a uložte kľúč API

Otvorte nastavenia vývojára, vyberte uploads:write, files:read, sharing:write a share:read a potom vytvorte kľúč. Skopírujte ho teraz – celé tajomstvo sa zobrazí iba raz.

Dostupné rozsahy: nahrávanie: zápis, súbory: čítanie, zdieľanie: zápis a zdieľanie: čítanie.

Očakávaný výsledok:Máte tajomstvo, ktoré začína predponou kľúča Video2URL. Udržujte to v súkromí.
2

Pripravte si terminál

Vložte kľúč do premennej prostredia, aby sa nezobrazoval v každom príkaze alebo vo vašej histórii shellu. Pred stlačením klávesu Enter nahraďte zástupný symbol.

Terminal
read -s VIDEO2URL_API_KEY
echo "key loaded"
Očakávaný výsledok:Príkaz vypíše načítaný kľúč, nie samotné tajomstvo.
3

Vytvorte úlohu nahrávania

Povedzte Video2URL presný názov súboru, typ MIME a veľkosť bajtu. Toto vráti dočasné R2 nahranie URL; ešte nenahráva video.

POST /api/v1/uploads

curl
curl -sS -X POST https://video2url.com/api/v1/uploads \
  -H "Authorization: Bearer $VIDEO2URL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename":"demo.mp4","mimeType":"video/mp4","sizeBytes":1048576}'
Očakávaný výsledok:Odpoveď JSON obsahujúca data.uploadId a data.upload.url. Uložte obe hodnoty pre ďalšie kroky.
Save response values
export UPLOAD_ID="paste data.uploadId here"
export UPLOAD_URL="paste data.upload.url here"
4

Pošlite bajty videa

Nahrajte demo.mp4 priamo do dočasného URL. K tejto požiadavke PUT nepridávajte kľúč API Video2URL. Použite Content-Type vrátený odpoveďou create-upload. Nahrajte nespracovaný súbor do vopred podpísaného URL pomocou vráteného typu obsahu.

curl · PUT
curl --fail-with-body -X PUT "$UPLOAD_URL" \
  -H "Content-Type: video/mp4" \
  --data-binary @demo.mp4
Očakávaný výsledok:Nahrávací server vráti HTTP 200. Prázdne telo odpovede je normálne.
5

Dokončite a overte nahrávanie

Po úspešnom PUT povedzte Video2URL, aby overil uložený objekt a vytvoril záznam súboru. Nevyvolávajte tento krok pred dokončením PUT.

POST /api/v1/uploads/{uploadId}/complete · GET /api/v1/uploads/{uploadId}

curl
curl -sS -X POST "https://video2url.com/api/v1/uploads/$UPLOAD_ID/complete" \
  -H "Authorization: Bearer $VIDEO2URL_API_KEY"
Očakávaný výsledok:Odpoveď obsahuje data.file.fileId. Uložiť FILE_ID; identifikuje dokončený súbor.
Save FILE_ID
export FILE_ID="paste data.file.fileId here"
6

Vytvorte posledné zdieľanie URL

Vytvorte neuvedený odkaz zo súboru FILE_ID. Neuvedený znamená, že ho môže otvoriť ktokoľvek s URL, ale nie je umiestnený vo verejnom adresári.

  • Názov je voliteľný.
  • Heslo je voliteľné.
  • Viditeľnosť je voliteľná.
  • Predvolená viditeľnosť je neuvedená.

POST /api/v1/shares · GET / DELETE /api/v1/shares/{shareId}

curl
curl -sS -X POST https://video2url.com/api/v1/shares \
  -H "Authorization: Bearer $VIDEO2URL_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{"fileId":"$FILE_ID","visibility":"unlisted"}"
Očakávaný výsledok:Odpoveď obsahuje záznam zdieľania a URL. Otvorte SHARE_URL v súkromnom okne prehliadača a overte ho.
Open SHARE_URL
export SHARE_URL="paste the returned share URL here"
open "$SHARE_URL" # macOS; use xdg-open on Linux

JavaScript & Python

Vytvorte si najužší kľúč, aký potrebujete. Otočte vytvorením a nasadením náhrady pred zrušením starého kľúča. Ak sa platený prístup skončí, kľúče zostanú uložené, ale hovory sa pozastavia; obnovením vhodného plánu sa obnoví prístup.

JavaScript
const response = await fetch('https://video2url.com/api/v1/uploads', {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.VIDEO2URL_API_KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({ filename: 'demo.mp4', mimeType: 'video/mp4', sizeBytes: file.size }),
});
const created = await response.json();
Python
import os, requests
headers = {"Authorization": f"Bearer {os.environ['VIDEO2URL_API_KEY']}"}
created = requests.post("https://video2url.com/api/v1/uploads", headers=headers, json={"filename": "demo.mp4", "mimeType": "video/mp4", "sizeBytes": 1048576})
created.raise_for_status()
with open("demo.mp4", "rb") as video:
    requests.put(created.json()["data"]["upload"]["url"], data=video).raise_for_status()