Mengenal API urlscan.io
urlscan.io adalah layanan pemindai situs web yang memungkinkan pengguna untuk menganalisis URL, domain, dan alamat IP guna mendeteksi ancaman keamanan seperti phishing, malware, atau aktivitas mencurigakan. API urlscan.io menyediakan akses terprogram untuk mengirimkan URL ke pemindai, mengambil hasil pemindaian, dan melakukan pencarian data historis.
Endpoint Utama API
Untuk berinteraksi dengan API, Anda memerlukan API Key yang dapat diperoleh melalui profil akun di situs resmi urlscan.io. Berikut adalah tabel endpoint utama yang sering digunakan:
| Endpoint | Metode | Deskripsi |
|---|---|---|
| /api/v1/scan/ | POST | Mengirimkan URL baru untuk dipindai. |
| /api/v1/result/<uuid>/ | GET | Mengambil hasil pemindaian berdasarkan UUID. |
| /api/v1/search/ | GET | Mencari hasil pemindaian berdasarkan kueri. |
Implementasi Python Sederhana
Berikut adalah contoh skrip untuk mengirimkan URL ke urlscan.io menggunakan pustaka requests:
import requests
API_KEY = 'YOUR_API_KEY'
URL = 'https://urlscan.io/api/v1/scan/'
headers = {'API-Key': API_KEY, 'Content-Type': 'application/json'}
data = {'url': 'https://example.com', 'visibility': 'public'}
response = requests.post(URL, headers=headers, json=data)
print(response.json())Batasan dan Aturan Penggunaan
Penggunaan API tunduk pada batasan rate limit yang ditentukan oleh jenis akun Anda. Akun gratis memiliki kuota harian yang lebih rendah dibandingkan akun berbayar. Pastikan untuk selalu menyertakan header API-Key yang valid dalam setiap permintaan. Jika Anda menerima status kode 429, artinya Anda telah melampaui batas permintaan per menit.
Tips Keamanan
- Jangan pernah membagikan API Key Anda di repositori publik seperti GitHub.
- Gunakan variabel lingkungan (environment variables) untuk menyimpan kunci API.
- Selalu validasi respons dari API sebelum memproses data lebih lanjut untuk menghindari injeksi data.