link.createdDikirim saat link baru dibuat
Pengiriman event real-time ke endpoint HTTPS kamu.
Daftarkan endpoint HTTPS publik di Dashboard → Developer → Webhooks. s.id bakal kirim POST payload JSON bertanda tangan ke URL kamu setiap kali event yang kamu langgani terjadi. Kalau pengiriman gagal (non-2xx atau timeout), sistem coba ulang sampai 3 kali, dengan jeda 0 detik, 5 detik, dan 30 detik.
POST
Pengiriman JSON
10s
Batas waktu respons
2xx
Respons berhasil
Event yang tersedia
link.createdDikirim saat link baru dibuat
link.updatedDikirim saat URL atau judul link diubah
link.archivedDikirim saat link diarsipkan
link.clickedDikirim pada setiap pengalihan link
microsite.publishedDikirim saat microsite dipublikasikan
qr.scannedDikirim saat QR Code dipindai
Setiap POST webhook berisi body JSON dengan nama event, resource yang relevan, dan timestamp UTC.
{
"event": "link.created",
"link": {
"id": 123,
"short": "mylink",
"short_url": "https://s.id/mylink",
"long_url": "https://example.com/long-url",
"title": "My Link",
"created": "2026-06-22T10:00:00Z"
},
"timestamp": "2026-06-22T10:00:00Z"
}Setiap pengiriman menyertakan header X-SID-Signature: sha256=<hex>. Hitung HMAC-SHA256 dari body permintaan mentah pakai secret webhook kamu, lalu bandingkan pakai timing-safe comparison.
const crypto = require('node:crypto');
function verifySignature(secret, rawBody, sigHeader) {
if (typeof sigHeader !== 'string' || !sigHeader.startsWith('sha256=')) {
return false;
}
const expected = 'sha256=' +
crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
const receivedBuffer = Buffer.from(sigHeader, 'utf8');
const expectedBuffer = Buffer.from(expected, 'utf8');
return receivedBuffer.length === expectedBuffer.length &&
crypto.timingSafeEqual(receivedBuffer, expectedBuffer);
}func verifySignature(secret, body []byte, sig string) bool {
mac := hmac.New(sha256.New, secret)
mac.Write(body)
expected := "sha256=" + hex.EncodeToString(mac.Sum(nil))
return hmac.Equal([]byte(sig), []byte(expected))
}Buka Dashboard → Developer → Webhooks dan klik Tambah Webhook.
Masukkan URL endpoint HTTPS kamu dan pilih event yang mau kamu langgani.
Salin secret webhook, ditampilkan hanya sekali.
Di server kamu, verifikasi header X-SID-Signature dulu sebelum diproses.
Kembalikan HTTP 2xx dalam 10 detik. Kalau gagal, sistem coba ulang sampai 3 kali. Setelah 5 kali gagal berturut-turut, webhook otomatis dinonaktifkan.
Buat API key dalam hitungan menit. Sudah termasuk tier gratis, tanpa kartu kredit.