REST API
Ladda upp och dela filer
Denna handledning tar en lokal fil med namnet demo.mp4 och förvandlar den till en fungerande resurs URL. Slutför stegen i ordning; varje svar tillhandahåller ett värde som används av nästa begäran.
Skapa och spara en API-nyckel
Öppna utvecklarinställningarna, välj uploads:write, files:read, shares:write och shares:read, skapa sedan nyckeln. Kopiera den nu – hela hemligheten visas bara en gång.
Tillgängliga omfång: uploads:write, files:read, shares:write och shares:read.
Förbered din terminal
Sätt nyckeln i en miljövariabel så att den inte visas i varje kommando eller i din skalhistorik. Byt ut platshållaren innan du trycker på Enter.
read -s VIDEO2URL_API_KEY
echo "key loaded"Skapa ett uppladdningsjobb
Berätta för Video2URL exakt filnamn, MIME-typ och bytestorlek. Detta returnerar en tillfällig R2-uppladdning URL; den laddar inte upp videon ännu.
POST /api/v1/uploads
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}'export UPLOAD_ID="paste data.uploadId here"
export UPLOAD_URL="paste data.upload.url here"Skicka videobytes
Upload demo.mp4 directly to the temporary URL. Lägg inte till nyckeln Video2URL API till denna PUT-förfrågan. Använd Content-Type som returneras av svaret skapa uppladdning. Ladda upp råfilen till den fördefinierade URL med den returnerade innehållstypen.
curl --fail-with-body -X PUT "$UPLOAD_URL" \
-H "Content-Type: video/mp4" \
--data-binary @demo.mp4Slutför och verifiera uppladdningen
När PUT har lyckats, be Video2URL att verifiera det lagrade objektet och skapa filposten. Anrop inte detta steg innan PUT är klar.
POST /api/v1/uploads/{uploadId}/complete · GET /api/v1/uploads/{uploadId}
curl -sS -X POST "https://video2url.com/api/v1/uploads/$UPLOAD_ID/complete" \
-H "Authorization: Bearer $VIDEO2URL_API_KEY"export FILE_ID="paste data.file.fileId here"JavaScript & Python
Skapa den smalaste nyckeln du behöver. Rotera genom att skapa och distribuera en ersättning innan du återkallar den gamla nyckeln. Om betald åtkomst upphör förblir nycklarna sparade men samtalen pausas; att förnya en kvalificerad plan återställer åtkomsten.
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();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()