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)