Panduan Konfigurasi Webhook
Apa itu Webhook?
Webhook memungkinkan SNSTracker secara otomatis mengirim notifikasi ke server atau aplikasi Anda saat konten yang dipantau memenuhi ambang batas yang Anda atur. Misalnya, ketika jumlah penayangan video meningkat signifikan, atau saat sebuah channel mendapatkan pengikut baru, SNSTracker akan mengirim notifikasi ke URL webhook Anda (biasanya dalam 1 menit).
Panduan Konfigurasi Langkah demi Langkah
Langkah 1: Siapkan Endpoint Webhook Anda
Sebelum mengonfigurasi di SNSTracker, Anda perlu menyiapkan endpoint webhook. Ini adalah URL yang bisa menerima permintaan HTTP POST.
Opsi untuk endpoint webhook Anda:
- Server Anda sendiri:
https://api.yourcompany.com/webhook - Cloud functions: AWS Lambda, Google Cloud Functions, Azure Functions, dll.
- Platform otomatisasi: Zapier, Make.com, n8n, dll.
- Layanan pengujian: webhook.site (hanya untuk pengujian)
Persyaratan:
- Harus menggunakan HTTPS (URL diawali
https://) - Harus menerima permintaan POST
- Harus mengembalikan status HTTP 200-299 untuk sukses
Langkah 2: Tambahkan Target Webhook di SNSTracker
-
Masuk ke halaman Collections
- Masuk ke SNSTracker
- Klik Collections di sidebar kiri (di bawah bagian Track)
- Atau langsung ke:
/dashboard/collections
-
Buka Manage Notify Targets
- Di halaman Collections, temukan dan klik tombol "Manage Notify Targets"
- Ini akan membuka dialog manajemen target notifikasi
-
Tambahkan target baru
- Klik tombol "Add Target"
- Dialog akan muncul untuk membuat target notifikasi baru
-
Pilih tipe Webhook
- Di dialog, temukan dropdown "Type"
- Pilih "Webhook" dari opsi
-
Masukkan URL Webhook
- Di field "Webhook URL", masukkan URL endpoint webhook Anda
- Contoh:
https://api.yourcompany.com/webhook - Penting: URL harus diawali
https://
-
Tambahkan komentar (opsional)
- Di field "Comment", Anda dapat menambahkan catatan untuk mengingat fungsi webhook ini
- Contoh: "Webhook produksi untuk pemantauan TikTok"
- Maksimum 50 karakter
-
Konfigurasikan signature key (opsional, direkomendasikan untuk produksi)
- Di field "Extra", Anda dapat menambahkan objek JSON dengan signature key:
{ "signature_key": "your-secret-key-here" }- Kunci ini akan digunakan untuk memverifikasi keaslian permintaan
- Jika tidak disediakan, SNSTracker akan menggunakan API key Anda atau URL webhook sebagai signature key
-
Simpan target webhook
- Klik tombol "Save"
- Target webhook Anda sekarang sudah dibuat dan siap digunakan
Langkah 3: Konfigurasi Aturan Notifikasi di Collection
-
Buka pengaturan Collection
- Kembali ke halaman Collections
- Temukan collection yang ingin Anda konfigurasi notifikasinya
- Klik tombol Edit (atau klik nama collection untuk membuka pengaturan)
-
Aktifkan Feed Notify (untuk video/post)
- Di pengaturan collection, temukan bagian "Feed Notify"
- Aktifkan tombol "Enable Notifications" ke ON
- Pilih target webhook Anda dari dropdown "Notify Targets"
- Pilih "Metrics" yang ingin Anda pantau:
- Views
- Engagement (likes + comments + shares)
- Atur nilai "Threshold":
- Masukkan angka (mis. 1000) untuk memberi notifikasi saat metrik meningkat sebesar ini
- Atur ke 0 untuk memberi notifikasi setelah setiap refresh yang berhasil
- Klik "Save" atau "Update"
-
Aktifkan Channel Notify (untuk akun)
- Di pengaturan collection yang sama, temukan bagian "Channel Notify"
- Aktifkan tombol "Enable Notifications" ke ON
- Pilih target webhook Anda dari dropdown "Notify Targets"
- Pilih "Metrics" yang ingin Anda pantau:
- Followers
- Followings
- Likes
- Atur nilai "Threshold":
- Masukkan angka (mis. 500) untuk memberi notifikasi saat metrik meningkat sebesar ini
- Atur ke 0 untuk memberi notifikasi setelah setiap refresh yang berhasil
- Klik "Save" atau "Update"
-
Verifikasi konfigurasi
- Pastikan target webhook dan aturan notifikasi sudah disimpan
- Webhook Anda sekarang akan menerima notifikasi saat ambang batas yang dikonfigurasi terpenuhi
Langkah 4: Uji Webhook Anda
-
Gunakan layanan pengujian (direkomendasikan untuk pengaturan pertama kali)
- Kunjungi webhook.site
- Salin URL unik yang disediakan (mis.
https://webhook.site/unique-id) - Gunakan URL ini sebagai URL webhook Anda di Langkah 2
- Konfigurasikan notifikasi dengan threshold 0 (agar terpancing oleh perubahan apa pun)
- Tunggu SNSTracker memeriksa konten Anda
- Periksa webhook.site untuk melihat apakah Anda menerima notifikasi
-
Periksa log endpoint Anda
- Jika menggunakan server Anda sendiri, periksa log server
- Cari permintaan POST masuk dari SNSTracker
- Verifikasi body request berisi data yang diharapkan
-
Verifikasi format notifikasi
- Notifikasi harus berupa objek JSON dengan:
title: Deskripsi notifikasitype: "feed" atau "channel"timestamp: Waktu notifikasi dikirimdata: Array item yang memicu notifikasi
- Notifikasi harus berupa objek JSON dengan:
Cara Notifikasi Webhook Dikirim
SNSTracker menggunakan mekanisme batching untuk mengoptimalkan pengiriman webhook:
-
Deteksi Langsung: Saat resource yang dipantau (feed atau channel) berhasil di-refresh dan memenuhi threshold notifikasi, resource tersebut langsung ditandai untuk notifikasi.
-
Jendela Batch 1 Menit: Alih-alih mengirim notifikasi satu per satu secara langsung, SNSTracker mengumpulkan semua notifikasi yang memenuhi syarat dalam jendela 1 menit.
-
Pengiriman Terkonsolidasi: Di akhir setiap periode 1 menit, semua notifikasi dari jendela tersebut digabung menjadi satu permintaan webhook dan dikirim bersama.
Contoh Skenario:
- Pada 10:00:15, Feed A memenuhi threshold → ditandai
- Pada 10:00:45, Feed B memenuhi threshold → ditandai
- Pada 10:01:00, Feed A dan Feed B dikirim dalam satu permintaan webhook
Manfaat:
- Mengurangi jumlah permintaan HTTP ke endpoint Anda
- Meningkatkan efisiensi dan mengurangi beban server
- Mencegah spam notifikasi saat data berubah cepat
- Semua notifikasi dalam periode batch disertakan dalam array
data
Catatan: Penundaan maksimum antara resource memenuhi threshold dan webhook dikirim adalah 1 menit. Ini memastikan notifikasi hampir real-time sambil menjaga efisiensi sistem.
Data Apa yang Akan Anda Terima?
Saat notifikasi dipicu, Anda akan menerima permintaan POST dengan data JSON seperti ini:
{
"title": "SNSTracker Notification: Feed Views Increased",
"type": "feed",
"timestamp": "2024-01-15T10:30:00Z",
"data": [
{
"feed_id": "feed-123",
"url": "https://www.tiktok.com/@user/video/123",
"platform_name": "TikTok",
"view_count": 10000,
"like_count": 2000,
"changed_views": 1000,
"changed_engagement": 50
}
]
}Field Data Notifikasi Feed
feed_id: Identifikasi unikurl: Tautan langsung ke video/postplatform_name: Platform (TikTok, Instagram, dll.)title: Judul kontendescription: Deskripsi kontenauthor_username: Nama pengguna kreatorauthor_nickname: Nama tampilan kreatorview_count: Total penayanganlike_count: Total sukacomment_count: Total komentarshare_count: Total dibagikanchanged_views: Penayangan bertambah sejak pemeriksaan terakhirchanged_engagement: Engagement bertambah (likes + comments + shares)
Field Data Notifikasi Channel
id: Identifikasi unik channelchannel_url: Tautan langsung ke channel/profilplatform_name: Nama platformnickname: Nama tampilanusername: Nama pengguna/handlefollowers: Total pengikutfollowings: Total akun yang diikutilikes: Total sukachanged_followers: Pengikut bertambah sejak pemeriksaan terakhirchanged_followings: Mengikuti bertambah sejak pemeriksaan terakhirchanged_likes: Suka bertambah sejak pemeriksaan terakhir
Keamanan: Verifikasi Signature
SNSTracker menyertakan signature di header X-Signature untuk memverifikasi keaslian permintaan. Signature key ditentukan oleh:
signature_keydi field Extra (jika disediakan)- API key aktif pertama Anda (jika signature_key tidak diset)
- URL webhook Anda (sebagai fallback)
Untuk penggunaan produksi, disarankan untuk memverifikasi signature guna memastikan permintaan autentik.
Troubleshooting
Webhook tidak menerima notifikasi
-
Periksa URL webhook
- Verifikasi URL benar dan dapat diakses
- Pastikan diawali dengan
https:// - Uji URL secara manual dengan permintaan POST
-
Periksa pengaturan notifikasi
- Pastikan notifikasi diaktifkan di Collection Anda
- Pastikan target webhook dipilih
- Pastikan threshold diatur dengan benar
-
Periksa status endpoint
- Pastikan endpoint Anda berjalan dan dapat diakses
- Periksa log server untuk permintaan masuk
- Verifikasi endpoint Anda mengembalikan status sukses (200-299)
Masalah Umum
Masalah: "Webhook URL already exists"
Solusi: Setiap URL webhook hanya bisa digunakan sekali per tim. Gunakan URL lain atau edit target yang sudah ada.
Masalah: Notifikasi tidak terpicu
Solusi:
- Atur threshold ke 0 untuk pengujian (memberi notifikasi pada setiap perubahan)
- Tunggu SNSTracker memeriksa konten Anda (pemeriksaan dilakukan secara berkala)
- Verifikasi konten Anda benar-benar berubah sebesar nilai threshold
Masalah: Error timeout
Solusi: Endpoint Anda harus merespons dalam 30 detik. Optimalkan waktu respons endpoint Anda.
Butuh Bantuan?
Jika Anda mengalami masalah:
- Verifikasi URL webhook Anda dapat diakses
- Periksa bahwa pengaturan notifikasi sudah diaktifkan
- Pastikan threshold dikonfigurasi dengan benar
- Hubungi dukungan jika masalah berlanjut
Selamat tracking! 🚀