API Documentation
w upload bisa dipakai sebagai backend file pihak ketiga untuk website lain, bot Telegram, bot Discord, WhatsApp gateway, automation, dan service internal Anda sendiri. Seluruh flow utamanya bisa dijalankan dengan API key atau sesi browser.
Authentication
Gunakan salah satu metode berikut untuk setiap request yang membutuhkan otorisasi.
Authorization: Bearer <your_jwt_token>
x-api-key: <your_api_key>
API key dibuat dari Profile dan cocok untuk backend server, bot, worker, atau webhook relay.
Upload API
Upload file via Base64 JSON. Bisa dipakai dari website pihak ketiga, bot, webhook processor, atau custom admin panel.
x-api-key: YOUR_API_KEY Content-Type: application/jsonBody:
{
"filename": "photo.jpg",
"contentType": "image/jpeg",
"base64": "data:image/jpeg;base64,...",
"description": "Uploaded from Telegram bot",
"parentId": null
}
Ambil file langsung dari URL pihak ketiga lalu simpan ke akun Anda.
{
"url": "https://example.com/video.mp4",
"parentId": "optional_folder_id"
}
Mulai upload file besar secara chunk.
Third-Party Integrations
w upload sekarang siap dipakai sebagai service pihak ketiga untuk banyak channel. Pola paling umum:
- Website lain: kirim file Base64 atau remote URL ke
/api/uploadmenggunakanx-api-key. - Telegram / Discord bots: ambil attachment dari bot API, ubah ke Base64 atau remote fetch, lalu kirim ke w upload.
- WhatsApp gateway: file dari webhook WA atau middleware bisa diteruskan ke endpoint upload yang sama.
- Automation / worker: gunakan API key + webhook untuk sinkron status upload ke sistem asal.
const response = await fetch('https://your-domain/api/upload', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.WUPLOAD_API_KEY
},
body: JSON.stringify({
filename: 'voice-note.ogg',
contentType: 'audio/ogg',
base64: dataUrlFromBot
})
});
const result = await response.json();
Webhooks
Gunakan webhook untuk menerima event real-time dari akun Anda. Cocok untuk sinkronisasi ke CRM, bot balasan, notifikasi Discord, atau sistem pihak ketiga.
Terpicu ketika file berhasil disimpan.
Terpicu ketika file hasil konversi selesai dibuat.
Terpicu ketika versi file baru berhasil disimpan.
Dipakai untuk mengetes endpoint webhook Anda dari halaman profile.
{
"event": "file.uploaded",
"timestamp": "2026-04-08T12:00:00.000Z",
"data": {
"fileId": "6800...",
"filename": "document.pdf",
"alias": "document_1.pdf",
"size": 102400,
"url": "https://your-domain/w-upload/file/document_1.pdf"
}
}
Validasi signature menggunakan header X-Webhook-Signature jika Anda mengisi secret webhook di profile.
API Key Limits
| Plan | Max API Keys | Recommended Use |
|---|---|---|
| Free | 3 keys | Testing, personal scripts, 1-2 bots |
| Pro | 25 keys | Production integrations, multiple bots, team automations |
Jika limit tercapai, endpoint pembuatan API key akan menolak request baru sampai Anda menghapus key lama.
Security Features
- Passkeys (WebAuthn): Login biometrik untuk perangkat modern.
- 2FA (TOTP): Tambahan keamanan berbasis authenticator app.
- Session Control: Lihat dan revoke perangkat aktif dari profile.
- Webhook Secret: Tanda tangan HMAC untuk memverifikasi payload webhook.
- Virus Scan: Scan file tertentu dengan integrasi VirusTotal bila tersedia.