Webhook'lar
Mağazada bir şey olunca kendi sunucuna imzalı bir istek gelir. Sorgulamadan, anında.
Bir adres ver ve olayları seç; olay olduğunda MultiKolay o adrese POST atar. Siparişleri dakikada bir
sorgulamak yerine webhook kullan: hem daha hızlı hem istek sınırına takılmazsın.
Aboneliği aç
Panelde Ayarlar → API anahtarları sayfasının Webhook'lar bölümünden ya da API'yle
(webhook:yonet izni gerekir):
curl -X POST https://api.multikolay.com/v1/webhooklar \
-H "Authorization: Bearer $MK_API_ANAHTARI" \
-H "Content-Type: application/json" \
-d '{ "adres": "https://ornek.com/multikolay/webhook", "olaylar": ["siparis.olusturuldu", "stok.degisti"] }'Yanıttaki gizli (whsec_…) imza sırrıdır; sakla. Adres https:// ile başlamalı ve bir alan adı olmalı (IP ya da
localhost olamaz).
İsteği karşıla
POST /multikolay/webhook HTTP/1.1
Content-Type: application/json
MK-Olay: siparis.olusturuldu
MK-Teslimat: whd_01M5…
MK-Imza: t=1792344310,v1=5f2c…
{
"id": "evt_mgx3k2a1f09c4e7b2d81a6",
"olay": "siparis.olusturuldu",
"magaza": "gelistirici",
"zaman": "2026-10-19T05:16:29.894Z",
"veri": { "id": "order_01M599DZ…", "no": "6", "durum": "hazirlaniyor", "toplam": 220000, "…": "…" }
}Önce imzayı doğrula, sonra 10 saniye içinde 2xx dön. Ağır işi kuyruğa al.
Dene
Test olayı gönder adresine test.ping olayını yollar; panelde de aynı düğme var.
Test mağazasında en çok 5 abonelik açılabilir.
Gövde
| Alan | Açıklama |
|---|---|
id | Olayın kimliği (evt_…). Aynı olay tekrar gelirse aynıdır; tekrarları bununla ayıkla. |
olay | Olay adı. Bkz. Olaylar. |
magaza | Mağazanın kimliği. Birden çok mağazayı tek adrese bağladıysan ayırt etmek için. |
zaman | Olayın olduğu an (ISO 8601, UTC). |
veri | Olay anındaki kayıt; API'nin döndüğü biçimle aynı. |
ek | Bazı olaylarda olaya özgü bilgi, ör. siparis.kargoya_verildi'de gonderi_id. |