SDIT-R2 Upload API
Endpoint tersedia di {BASE_URL}/api/r2/upload. Gunakan metode POST dengan header x-api-key: <R2_API_KEY> dan body multipart/form-data dengan struktur berikut:
Field Form-Data
| Field | Wajib | Deskripsi |
|---|---|---|
file | Ya | File biner yang akan diunggah (maksimal 10MB). |
bucketName | Tidak | Nama bucket R2 tujuan. Jika tidak diisi, server menggunakan default dari R2_BUCKET (saat ini public). |
folderName | Tidak | Prefix folderName tanpa karakter / atau \. Default uploads jika kosong. |
publicBaseUrl | Tidak | Default ini https://public.vickykdv.com. |
filename | Tidak | Nama file custom. Jika kosong, memakai nama asli file yang diunggah. |
contentType | Tidak | MIME type explicit. Default mengikuti file.type atauapplication/octet-stream. |
Contoh cURL
curl -X POST https://<host>/api/r2/upload \ -H "x-api-key: <R2_API_KEY>" \ -F "file=@/path/to/file.png" \ -F "bucketName=public" \ -F "folderName=uploads" \ -F "publicBaseUrl=https://public.vickykdv.com"
Response Example
{
"ok": true,
"size": 392955,
"contentType": "image/png",
"downloadUrl": "https://images.png"
}Respons berhasil (HTTP 200) akan berisi key,downloadUrl, dan metadata lain yang dapat Anda simpan di sistem klien.