İş ortağı yüzeyi sözleşmesi Webhooks PA-46
Webhook aboneliği oluşturma
POST/api/partner/v1/webhooks
> Künye: TASK-395; REQ-021 KK-7, DEC-351.
Amaç
Hesap sahibi adına giden bir webhook aboneliği yazmak. Bu, iş ortağının hesap sahibinin tenant'ı adına yaptığı tek dışarıya bağlanan fiildir ve DEC-351 ile bilinçli olarak açılmıştır.
Yetki
İki kademeli kimlik: X-App-Key + Authorization: Bearer. Hesap anahtarı partner-api yeteneği taşır ve tek başına /api/v1e giremez.
ADRES KAPISI GEVŞETİLMEMİŞTİR ve montajla birlikte taşınır
url https olmak zorundadır ve SSRF ön kontrolünden geçer - iç ağ adresine çözülen bir alan adı reddedilir. Aynı kontrol teslimat anında yeniden koşar, yani kayıttan sonra değişen bir DNS çözümü de yakalanır.
İstek
name (en çok 100 karakter), url (https, en çok 2048 karakter), event_type (bugün yalnız shipment.updated); is_active opsiyonel.
Başarı 201
oluşturulan abonelik. `secret` YALNIZ bu yanıtta bir kez döner ve sonraki okumalarda görünmez - saklamak çağıranın sorumluluğudur.
Kayıt hesap sahibinin tenant'ına düşer
, iş ortağının değil.
Hatalar
422 (doğrulama; https olmayan adres, iç ağa çözülen adres, bilinmeyen olay tipi); ayrıca 401, 403, 429.
Idempotency-Key
sözleşmesi yoktur ve bu /api/v1 ile aynıdır.
curl -X POST "{{host}}/api/partner/v1/webhooks" \
-H "Accept: application/json" \
-H "X-App-Key: SEVKORA_UYGULAMA_ANAHTARINIZ" \
-H "Authorization: Bearer SEVKORA_API_ANAHTARINIZ" \
-H "Content-Type: application/json" \
-d '{"name":"Sipariş kancası","url":"https://ortak.example/kanca","event_type":"shipment.updated"}'