Bla gjennom utviklerdokumentasjon

REST API

Last opp og del filer

Denne veiledningen tar én lokal fil med navnet demo.mp4 og gjør den om til en fungerende delt deling URL. Fullfør trinnene i rekkefølge; hvert svar angir en verdi som brukes av neste forespørsel.

1

Opprett og lagre en API-nøkkel

Åpne utviklerinnstillingene, velg uploads:write, files:read, shares:write og shares:read, og opprett deretter nøkkelen. Kopier den nå – hele hemmeligheten vises bare én gang.

Tilgjengelige omfang: uploads:write, files:read, shares:write og shares:read.

Forventet resultat:Du har en hemmelighet som begynner med nøkkelprefikset Video2URL. Hold den privat.
2

Klargjør terminalen din.

Plasser nøkkelen i en miljøvariabel slik at den ikke vises i alle kommandoer eller i skallhistorikken din. Erstatt plassholderen før du trykker Enter.

Terminal
read -s VIDEO2URL_API_KEY
echo "key loaded"
Forventet resultat:Kommandoen skriver ut nøkkelen som er lastet inn, ikke selve hemmeligheten.
3

Opprett en opplastingsjobb

Gi Video2URL det nøyaktige filnavnet, MIME-typen og bytestørrelsen. Dette returnerer en midlertidig R2-opplasting URL; videoen lastes ikke opp ennå.

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}'
Forventet resultat:Et JSON-svar som inneholder data.uploadId og data.upload.url. Lagre begge verdiene for de neste trinnene.
Save response values
export UPLOAD_ID="paste data.uploadId here"
export UPLOAD_URL="paste data.upload.url here"
4

Send videobytene

Last opp demo.mp4 direkte til den midlertidige URL. Ikke legg til Video2URL API-nøkkelen i denne PUT-forespørselen. Bruk innholdstypen som returneres av create-upload-svaret. Last opp rådfilen til den forhåndsbestemte URL ved hjelp av den returnerte innholdstypen.

curl · PUT
curl --fail-with-body -X PUT "$UPLOAD_URL" \
  -H "Content-Type: video/mp4" \
  --data-binary @demo.mp4
Forventet resultat:Opplastingsserveren returnerer HTTP 200. En tom svartekst er normalt.
5

Fullfør og bekreft opplastingen.

Etter at PUT lykkes, ber du Video2URL bekrefte det lagrede objektet og opprette filoppføringen. Ikke kall dette trinnet før PUT er ferdig.

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"
Forventet resultat:Svaret inneholder data.file.fileId. Lagre FILE_ID; det identifiserer den fullførte filen.
Save FILE_ID
export FILE_ID="paste data.file.fileId here"
6

Opprett den endelige delingen URL

Opprett en ikke-oppført lenke fra FILE_ID. Ikke-oppført betyr at alle med URL kan åpne den, men den plasseres ikke i en offentlig katalog.

  • Tittelen er valgfri.
  • Passord er valgfritt.
  • Synlighet er valgfritt.
  • Synlighet er som standard satt til ikke oppført.

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"}"
Forventet resultat:Svaret inneholder delingsoppføringen og URL. Åpne SHARE_URL i et privat nettleservindu for å bekrefte det.
Open SHARE_URL
export SHARE_URL="paste the returned share URL here"
open "$SHARE_URL" # macOS; use xdg-open on Linux

JavaScript & Python

Opprett den smaleste nøkkelen du trenger. Roter ved å opprette og distribuere en erstatning før du tilbakekaller den gamle nøkkelen. Hvis betalt tilgang avsluttes, forblir nøklene lagret, men anrop settes på pause. Fornyelse av en kvalifisert plan gjenoppretter tilgangen.

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