REST API
파일 업로드 및 공유
이 튜토리얼에서는 데모.mp4라는 로컬 파일 하나를 가져와서 작업 공유 URL로 변환합니다. 단계를 순서대로 완료하세요. 각 응답은 다음 요청에 사용되는 값을 제공합니다.
API 키 생성 및 저장
개발자 설정을 열고 uploads:write, files:read, shares:write 및 shares:read를 선택한 다음 키를 만듭니다. 지금 복사하세요. 전체 비밀은 한 번만 표시됩니다.
사용 가능한 범위: uploads:write, files:read, shares:write 및 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에 직접 업로드하세요. 이 PUT 요청에 Video2URL API 키를 추가하지 마세요. 생성-업로드 응답에서 반환된 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()