Web kancası ucunu güncelle

PATCH /v1/webhook-endpoints/{endpoint_id} · izin webhook-endpoints:write · bütün planlar

Ucu JSON birleştirme yamasıyla (RFC 7396, Content-Type: application/merge-patch+json) değiştirir. If-Match zorunludur; güncel değer Web kancası ucunu getir yanıtının ETag başlığıdır. Hiçbir şeyi değiştirmeyen yama yazılmaz, sürüm artmaz.

İstek

Alan Tür Zorunlu Açıklama
endpoint_id yol evet Web kancası ucu kimliği (whe_…).
If-Match başlık evet Ucun güncel ETag'i (* her sürümle eşleşir).
key, url, description, event_types, event_schema_versions, payload_mode, rate_limit_per_second hayır Web kancası ucu ekle sayfasındaki gibi.
status string hayır enabled ya da disabled_by_user.
{
  "status": "enabled",
  "event_types": ["user.created", "user.updated", "user.deleted"]
}

Yanıt

200 OK: uç (Web kancası ucunu getir sayfasındaki gibi) ve yeni ETag.

Hatalar

HTTP code Ne zaman
400 malformed_request Gövde JSON nesnesi değil.
400 unknown_field Yamada yukarıda olmayan bir alan var.
403 quota_exceeded status: enabled planın etkin uç sayısını aşar.
404 not_found Bu ortamda böyle bir uç yok.
409 conflict Ortamın başka bir ucu bu key'i kullanıyor.
412 precondition_failed If-Match güncel sürümle eşleşmiyor (uç siz okuduktan sonra değişti).
422 validation_failed Bir alan geçersiz (işaretçiler Web kancası ucu ekle sayfasındaki gibi); enabled ya da disabled_by_user dışındaki durum için /status invalid.
428 precondition_required If-Match yok.
401 unauthenticated Kimlik bilgisi yok, geçersiz ya da iptal edilmiş.
403 insufficient_permissions Kimlik bilgisinde webhook-endpoints:write yok.
503 service_unavailable Web kancası yönetimi geçici olarak kullanılamıyor; Retry-After süresinden sonra yeniden deneyin.

Örnek

curl -X PATCH https://api.eu.keenauth.com/v1/webhook-endpoints/whe_01k8a3m5q7t9v1w3x5y7z9b2c4 \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/merge-patch+json" \
  -H 'If-Match: "3"' \
  -d '{"status":"enabled"}'

CLI: keenauth webhook-endpoints update whe_01k8a3m5q7t9v1w3x5y7z9b2c4 --status enabled --if-match '"3"'