VirusTotal tidak menyediakan dokumen resmi API dalam format file PDF mandiri yang statis, melainkan menyediakan dokumentasi berbasis web interaktif yang selalu diperbarui secara real-time di situs resminya pada alamat docs.virustotal.com/reference/overview. Seluruh spesifikasi endpoint, struktur objek JSON, kode status HTTP, hingga pustaka klien resmi tersedia lengkap melalui halaman dokumentasi online tersebut untuk memudahkan pengembang mengintegrasikan analisis malware dan URL.
Bagi pengembang yang membutuhkan referensi offline atau cetak, dokumentasi web resmi tersebut dapat disimpan mandiri menjadi format PDF melalui peramban web dengan menekan kombinasi tombol Ctrl + P (Windows) atau Cmd + P (Mac) lalu memilih opsi Save as PDF pada menu cetak. Pendekatan ini menjamin ketersediaan versi dokumentasi paling mutakhir tanpa risiko menggunakan referensi endpoint API v2 yang sudah mulai dihentikan dukungannya oleh pengembang VirusTotal.
Tabel Endpoint Utama VirusTotal API V3
VirusTotal API v3 menggunakan format RESTful dengan basis URL https://www.virustotal.com/api/v3. Berikut adalah ringkasan endpoint esensial yang paling sering digunakan dalam integrasi sistem keamanan siber:
| Fungsi Utama | Metode HTTP | Endpoint URL | Deskripsi Singkat |
|---|---|---|---|
| Analisis File | POST | /files |
Mengunggah file baru untuk dipindai oleh puluhan mesin antivirus. |
| Laporan File | GET | /files/{id} |
Mengambil hasil analisis pemindaian file berdasarkan SHA-256, SHA-1, atau MD5. |
| Analisis URL | POST | /urls |
Mengirimkan tautan web untuk dianalisis terhadap konten berbahaya atau phishing. |
| Laporan URL | GET | /urls/{id} |
Mengambil laporan analisis URL menggunakan ID hasil enkripsi base64 dari tautan. |
| Cari Domain | GET | /domains/{domain} |
Mendapatkan informasi reputasi, catatan DNS, dan sertifikat SSL dari suatu domain. |
| Cari IP Address | GET | /ip_addresses/{ip} |
Menganalisis alamat IP, geolokasi, serta catatan asosiasi trafik jaringan. |
Ketentuan Kuota dan Batasan Rate (Rate Limits)
Penggunaan VirusTotal API dibagi menjadi dua kategori utama yaitu akun publik (gratis) dan akun premium. Akun publik memiliki batasan ketat untuk mencegah penyalahgunaan sumber daya sistem:
- Public API Key: Dibatasi maksimal 4 permintaan (requests) per menit dan 500 permintaan per hari. Kecepatan transfer dibatasi hingga 5 permintaan per detik. Kunci ini hanya diizinkan untuk penggunaan non-komersial dan riset pribadi.
- Premium API Key: Menyediakan kuota yang disesuaikan dengan paket langganan komersial, menghilangkan batasan per menit yang ketat, serta memberikan akses penuh terhadap umpan data langsung (live feeds) dan unduhan sampel file.
Contoh Implementasi Kode Python
Untuk mulai menggunakan API, pastikan Anda mendaftar akun gratis di situs resmi VirusTotal guna mendapatkan kunci API (API Key). Berikut adalah skrip dasar bahasa pemrograman Python menggunakan pustaka requests untuk memeriksa laporan sebuah hash file:
import requests
url = "https://www.virustotal.com/api/v3/files/4e2713a893b8277be327cb762a4b868f7027ae967a3286b24056d6d84221a710"
headers = {
"accept": "application/json",
"x-apikey": "MASUKKAN_API_KEY_ANDA_DISINI"
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
result = response.json()
print(result['data']['attributes']['last_analysis_stats'])
else:
print(f"Gagal mengambil data. Kode status: {response.status_code}")
Tips Keamanan Integrasi API
Simpan kunci API Anda di dalam variabel lingkungan (environment variables) alih-alih menuliskannya secara langsung (hardcode) di dalam kode sumber aplikasi. Kebocoran kunci API publik dapat mengakibatkan kuota harian Anda habis terpakai oleh pihak lain atau berujung pada pemblokiran akun oleh sistem keamanan VirusTotal.