REST API
העלה ושתף קבצים
מדריך זה לוקח קובץ מקומי אחד בשם demo.mp4 והופך אותו לשיתוף עבודה URL. השלם את השלבים לפי הסדר; כל תגובה מספקת ערך המשמש לבקשה הבאה.
צור ושמור מפתח API
פתח את הגדרות המפתחים, בחר העלאות:כתוב, קבצים:קריאה, שיתופים:כתיבה ושיתופים:קריאה, ולאחר מכן צור את המפתח. העתק אותו עכשיו - הסוד המלא מוצג פעם אחת בלבד.
היקפים זמינים: uploads:write, files:read, shares:write, and shares:read.
הכן את הטרמינל שלך
שים את המפתח במשתנה סביבה כך שהוא לא יופיע בכל פקודה או בהיסטוריית המעטפת שלך. החלף את מציין המיקום לפני הקשה על Enter.
read -s VIDEO2URL_API_KEY
echo "key loaded"צור עבודת העלאה
אמור לVideo2URL את שם הקובץ המדויק, סוג MIME וגודל הבתים. זה מחזיר העלאה זמנית R2 URL; זה עדיין לא מעלה את הסרטון.
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"שלח את הווידאו בייטים
העלה הדגמה.mp4 ישירות ל-URL הזמני. אל תוסיף את מפתח ה-API Video2URL לבקשת PUT זו. השתמש ב-Content-Type שהוחזר על ידי תגובת היצירה להעלאה. העלה את הקובץ הגולמי ל-URL המוגדר מראש באמצעות סוג התוכן המוחזר.
curl --fail-with-body -X PUT "$UPLOAD_URL" \
-H "Content-Type: video/mp4" \
--data-binary @demo.mp4השלם ואמת את ההעלאה
לאחר שה-PUT הצליח, אמור ל-Video2URL לאמת את האובייקט המאוחסן וליצור את רשומת הקובץ. אל תקרא לשלב זה לפני שה-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
צור את המפתח הצר ביותר שאתה צריך. סובב על ידי יצירה ופריסה של תחליף לפני ביטול המפתח הישן. אם הגישה בתשלום מסתיימת, המפתחות נשארים שמורים אך השיחות מושהות; חידוש תוכנית זכאית משחזר את הגישה.
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()