Uygulamanın bağlantılarını değiştir

PUT /v1/applications/{application_id}/connections · izinler applications:write ve connections:write

Uygulamada etkin bağlantı listesini tek adımda bütünüyle değiştirir. connection_ids sırası barındırılan giriş sayfasındaki düğme sırasıdır; boş liste bütün bağlantıları kapatır. Her bağlantı aynı ortamda olmalıdır: başka ortamın bağlantısı var olmayan bağlantı gibi işlenir (/connection_ids'de 422) ve hiçbir şey yazılmaz. Uygulamanın zaten sahip olduğu liste gönderilirse bir şey değişmez ve sürüm aynı kalır. Değişiklik yönetim audit'ine application.updated olarak yazılır ve application_changed olayı yayımlanır; bir bağlantının çıkarılması sonraki girişte etkili olur.

İstek

Başlıklar: If-Match: "<sürüm>" (isteğe bağlı). If-Match verilirse liste yalnız uygulama hâlâ o sürümdeyse yazılır (değilse 412); verilmezse sürümden bağımsız yazılır. Yeniden denemeleri güvenli kılmak için Idempotency-Key başlığı gönderin.

Parametre Yer Zorunlu Açıklama
application_id path evet app_ önekli uygulama kimliği.

Gövde

Alan Tür Zorunlu Açıklama
connection_ids string dizisi evet Bağlantı kimlikleri (conn_…), tekrarsız, en çok 100, düğme sırasıyla.

Yanıt

200 OK; uygulama ve yeni ETag.

Hatalar

Her hata kararlı bir code taşıyan application/problem+json gövdesidir.

HTTP code Ne zaman
400 malformed_request, unknown_field Gövde geçerli JSON değil ya da bilinmeyen bir alan taşıyor.
401 unauthenticated API anahtarı yok, geçersiz ya da iptal edilmiş.
403 insufficient_permissions Anahtarda applications:write ya da connections:write yok.
404 not_found Uygulama bu ortamda yok (ya da kimlik bozuk).
412 precondition_failed If-Match'teki sürüm eski.
422 validation_failed connection_ids yok, 100'den fazla öğe, bozuk ya da tekrarlanan kimlik ya da bu ortamda olmayan bir bağlantı taşıyor.
429 rate_limited Hız sınırı aşıldı; Retry-After'a uyun.
503 service_unavailable Bir bağımlılık geçici olarak erişilemez; sonra yeniden deneyin.

Örnek

curl -X PUT https://api.eu.keenauth.com/v1/applications/app_6f8d0cjgbmf0gtn2rg6pscp3cg/connections \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"connection_ids":["conn_01h455vb4pex5vsknk084sn02q"]}'

CLI: keenauth applications put-connections app_6f8d0cjgbmf0gtn2rg6pscp3cg --connection-ids conn_01h455vb4pex5vsknk084sn02q (bütün bağlantıları kapatmak için {"connection_ids":[]} gövdesini --data - ile gönderin)