Bağlantının SP ana bilgisayarını taşıyın
POST /v1/connections/{connection_id}:migrate-sp-host · izin connections:write
Kurumsal bir bağlantının SP uç noktalarını (ACS, meta veri, tek oturum kapatma, OIDC geri çağırma) yeni bir ana bilgisayara taşımayı başlatır; örneğin keenauth.app ana bilgisayarından doğrulanmış özel alan adınıza. SP URL'leri, kimlik sağlayıcının bunları bildiği için başka şekilde değiştirilemez.
İstek, bağlantının durumundan bağımsız olarak sp_host türünde bir taslak revizyon oluşturur. Oturum açmalarda henüz hiçbir şey değişmez:
revision_idile SP meta verilerini indirin ve yeni SP meta verilerini kimlik sağlayıcının yöneticisine verin. Yeni ana bilgisayar yalnızca bu meta verileri ve taslağın test oturum açmasını sunar, başka bir şeyi değil.revision_idile Bağlantıyı test edin adımında taslağı test edin.- Revizyonu yayımlayın. Bağlantı artık yeni ana bilgisayarı kullanır. Eski ana bilgisayar, kimlik sağlayıcının güncellenebilmesi için 30 gün daha yanıt vermeye devam eder, ardından
404döndürür.
Yeni bir taslak, bağlantının önceki taslağını iptal eder. İstek connection.revision_created olarak denetlenir.
İstek
| Alan | Tür | Zorunlu | Açıklama |
|---|---|---|---|
connection_id |
yol | evet | Kurumsal bağlantı kimliği (conn_…). |
Idempotency-Key |
üstbilgi | hayır | Yeniden denenen isteğin güvenli olmasını sağlayan isteğe bağlı anahtar (16-64 karakter). |
sp_host |
string | evet | Yeni ana bilgisayar: bu ortamın etkin bir ana bilgisayarı (keenauth.app ana bilgisayarı veya doğrulanmış özel alan adı), küçük harfli, bağlantı noktası olmadan. |
Yanıt
200 OK, taslak revizyonla birlikte:
{
"id": "connrev_01j9xr8c2d4e6f8g0h2j4k6m8n",
"connection_id": "conn_01j9xp6q0r1s5t7v9w1x3y5z7b",
"protocol": "saml",
"kind": "sp_host",
"status": "draft",
"discard_reason": null,
"created_at": "2026-10-28T10:00:00Z",
"decided_at": null,
"purge_after": null,
"superseded_revision_id": null,
"changes": {
"sp_host": "login.example.com",
"idp_entity_id": null,
"idp_sso_url": null,
"idp_slo_url": null,
"certificate_fingerprints": [],
"mfa_authn_context_values": null,
"issuer": null,
"client_id": null,
"client_auth_method": null,
"provider_profile": null,
"client_secret_change": null
},
"latest_test": null
}
superseded_revision_id, bu istekle iptal edilen önceki taslağın kimliğidir (varsa).
Hatalar
| HTTP | code | Ne zaman |
|---|---|---|
| 400 | unknown_field |
Gövdede bilinmeyen bir alan var. |
| 401 | unauthenticated |
Kimlik bilgisi eksik, geçersiz veya iptal edilmiş. |
| 403 | insufficient_permissions |
Kimlik bilgisinde connections:write yok. |
| 404 | not_found |
Bağlantı bu ortamda yok veya kurumsal bir bağlantı değil. |
| 409 | conflict |
Önceki SP ana bilgisayarı taşıma işleminin 30 günlük penceresi hâlâ açık veya bağlantının henüz bir protokol yapılandırması yok. |
| 422 | validation_failed |
errors[] /sp_host alanını gösterir; required, invalid_value (küçük harfli bir ana bilgisayar adı değil), not_in_environment (bu ortamın etkin bir ana bilgisayarı değil) veya unchanged (zaten bağlantının SP ana bilgisayarı). |
| 429 | rate_limited |
Hız sınırı aşıldı; Retry-After süresinden sonra yeniden deneyin. |
| 503 | service_unavailable |
Bir bağımlılık geçici olarak kullanılamıyor; Retry-After süresinden sonra yeniden deneyin. |
Örnek
curl -X POST "https://api.eu.keenauth.com/v1/connections/conn_01j9xp6q0r1s5t7v9w1x3y5z7b:migrate-sp-host" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"sp_host":"login.example.com"}'
keenauth connections migrate-sp-host conn_01j9xp6q0r1s5t7v9w1x3y5z7b --sp-host login.example.com --yes