REST API
Carregueu i compartiu fitxers
Aquest tutorial pren un fitxer local anomenat demo.mp4 i el converteix en una compartició de treball URL. Completa els passos en ordre; cada resposta proporciona un valor utilitzat per la següent sol·licitud.
Creeu i deseu una clau API
Obriu la configuració del desenvolupador, seleccioneu uploads:write, files:read, shares:write i shares:read i, a continuació, creeu la clau. Copieu-lo ara: el secret complet només es mostra una vegada.
Abasts disponibles: uploads:write, files:read, shares:write i shares:read.
Prepara el teu terminal
Poseu la clau en una variable d'entorn perquè no aparegui a totes les ordres ni a l'historial de l'intèrpret d'ordres. Substituïu el marcador de posició abans de prémer Intro.
read -s VIDEO2URL_API_KEY
echo "key loaded"Crea un treball de càrrega
Digues a Video2URL el nom exacte del fitxer, el tipus de MIME i la mida dels bytes. Això retorna una càrrega R2 temporal URL; encara no puja el vídeo.
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"Envia els bytes del vídeo
Carregueu demo.mp4 directament al URL temporal. No afegiu la clau Video2URL API a aquesta sol·licitud PUT. Utilitzeu el tipus de contingut que retorna la resposta de creació de càrrega. Carregueu el fitxer en brut al URL presignat mitjançant el tipus de contingut retornat.
curl --fail-with-body -X PUT "$UPLOAD_URL" \
-H "Content-Type: video/mp4" \
--data-binary @demo.mp4Completa i verifica la càrrega
Després que PUT tingui èxit, digueu a Video2URL que verifiqui l'objecte emmagatzemat i que creï el registre del fitxer. No crideu a aquest pas abans que acabi el PUT.
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
Creeu la clau més estreta que necessiteu. Gireu creant i desplegant un reemplaçament abans de revocar la clau antiga. Si s'acaba l'accés de pagament, les claus es mantenen desades però les trucades es posen en pausa; la renovació d'un pla elegible restableix l'accés.
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()