Böngésszen a fejlesztői dokumentumok között

REST API

Fájlok feltöltése és megosztása

Ez az oktatóanyag egy demo.mp4 nevű helyi fájlt használ, és működő megosztássá alakítja át URL. Végezze el a lépéseket sorrendben; minden válasz megad egy értéket, amelyet a következő kérés használ.

1

Hozzon létre és mentsen el egy API-kulcsot

Nyissa meg a Fejlesztői beállításokat, válassza a feltöltések:írás, fájlok:olvasás, megosztások:írás és megosztások:olvasás lehetőséget, majd hozza létre a kulcsot. Másolja ki most – a teljes titok csak egyszer jelenik meg.

Elérhető hatókör: feltöltések:írás, fájlok:olvasás, megosztás:írás és megosztás:olvasás.

Várható eredmény:Van egy titka, amely a Video2URL kulcs előtaggal kezdődik. Tartsa privátban.
2

Készítse elő a terminált

Helyezze a kulcsot egy környezeti változóba, hogy ne jelenjen meg minden parancsban vagy a shell előzményeiben. Cserélje ki a helyőrzőt, mielőtt megnyomja az Entert.

Terminal
read -s VIDEO2URL_API_KEY
echo "key loaded"
Várható eredmény:A parancs a kulcsot betöltve nyomtatja ki, nem magát a titkot.
3

Hozzon létre egy feltöltési feladatot

Mondja el a Video2URL pontos fájlnevet, MIME-típust és bájtméretet. Ez ideiglenes R2 feltöltést URL ad vissza; még nem tölti fel a videót.

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}'
Várható eredmény:A data.uploadId és data.upload.url tartalmazó JSON-válasz. Mentse el mindkét értéket a következő lépésekhez.
Save response values
export UPLOAD_ID="paste data.uploadId here"
export UPLOAD_URL="paste data.upload.url here"
4

Küldje el a videó bájtjait

Töltse fel a bemutatót.mp4 közvetlenül az ideiglenes URL. Ne adja hozzá a Video2URL API-kulcsot ehhez a PUT-kéréshez. Használja a Create-upload válasz által visszaadott tartalomtípust. Töltse fel a nyers fájlt az előre aláírt URL fájlba a visszaadott tartalomtípus használatával.

curl · PUT
curl --fail-with-body -X PUT "$UPLOAD_URL" \
  -H "Content-Type: video/mp4" \
  --data-binary @demo.mp4
Várható eredmény:A feltöltő szerver HTTP 200-at ad vissza. Az üres választörzs normális.
5

Fejezze be és ellenőrizze a feltöltést

Miután a PUT sikeres volt, mondja meg a Video2URL számára, hogy ellenőrizze a tárolt objektumot, és hozza létre a fájlrekordot. Ne hívja meg ezt a lépést a PUT befejezése előtt.

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"
Várható eredmény:A válasz tartalmazza a data.file.fileId azonosítót. Fájl_ID mentése; az elkészült fájlt azonosítja.
Save FILE_ID
export FILE_ID="paste data.file.fileId here"
6

A végső megosztás létrehozása URL

Hozzon létre egy nem nyilvános linket a(z) FILE_ID fájlból. A nem listázott azt jelenti, hogy a URL birtokában bárki megnyithatja, de nem kerül nyilvános könyvtárba.

  • A cím nem kötelező.
  • A jelszó nem kötelező.
  • A láthatóság nem kötelező.
  • A láthatóság alapértelmezés szerint nem listázott.

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"}"
Várható eredmény:A válasz tartalmazza a megosztási rekordot és a URL. Nyissa meg a SHARE_URL-t privát böngészőablakban az ellenőrzéshez.
Open SHARE_URL
export SHARE_URL="paste the returned share URL here"
open "$SHARE_URL" # macOS; use xdg-open on Linux

JavaScript & Python

Hozza létre a szükséges legkeskenyebb kulcsot. A régi kulcs visszavonása előtt egy csere létrehozásával és üzembe helyezésével forgassa el. Ha a fizetős hozzáférés megszűnik, a kulcsok mentve maradnak, de a hívások szünetelnek; a jogosult terv megújítása visszaállítja a hozzáférést.

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()