Kuruluşu güncelleme
PATCH /fapi/v1/organizations/{org_id} · ortamın giriş yap ana makinesinden çağrılır
Bir kuruluşun adını, slug değerini veya marka rengini değiştirir (JSON birleştirme yaması, RFC 7396). Meta veriler, harici kimlik ve üyelik sınırı burada değiştirilemez. Kimliği doğrulanmış kullanıcının __Host-idp_session çerezi gerekir; çerez eksikse, süresi dolmuşsa veya iptal edilmişse 401 unauthenticated döner. Farklı bir kaynaktaki birinci taraf bir uygulama bunun yerine Front API erişim belirtecini gönderebilir (DPoP kanıtıyla birlikte Authorization: DPoP <token>; bkz. Front API erişim belirteci). Kullanıcı, kuruluşun aktif bir üyesi olmalı ve idp_org:update iznine sahip olmalıdır. Üye olmayan bir kullanıcı 404 not_found alır; izni olmayan bir üye 403 insufficient_permissions alır.
@keenauth/js ile: await keenauth.organizations.update(orgId, { name: "Acme Inc" }, { expectedVersion: 4 }).
İstek
Başlıklar:
| Başlık | Zorunlu | Açıklama |
|---|---|---|
Idp-Client |
evet | SDK tanımlayıcısı. |
Origin |
evet, çerezle birlikte | Tam olarak https://<sign-in host> olmalıdır. |
Content-Type |
evet | application/json veya application/merge-patch+json. |
If-Match |
hayır | Kuruluşun son okunduğu "<version>" değeri; o zamandan beri değiştiyse 412 precondition_failed döner ve hiçbir şey değişmez. |
org_id: kuruluş tanımlayıcısı (org_…).
Gövde (en az bir alan):
| Alan | Zorunlu | Açıklama |
|---|---|---|
name |
hayır | Yeni görünen ad; null olamaz. |
slug |
hayır | Yeni slug; null olamaz. Eski slug 90 gün boyunca ayrılmış kalır ve bir slug 30 günde bir kez değiştirilebilir. |
brand_color |
hayır | #RRGGBB; null gönderildiğinde temizlenir. |
Yanıt
Yeni bir ETag ile 200 OK; gövde kuruluştur (bkz. Kuruluşu alma).
Hatalar
| Durum | Kod | Ne zaman |
|---|---|---|
| 400 | unknown_field |
Gövdede name, slug ve brand_color dışında bir alan var. |
| 401 | unauthenticated |
Geçerli bir oturum çerezi yok. |
| 403 | origin_not_allowed |
Origin eksik veya yanlış. |
| 403 | insufficient_permissions |
Kullanıcının kuruluşta idp_org:update izni yok. |
| 404 | not_found |
Bu kullanıcı için böyle bir kuruluş yok; bilinmeyen, hatalı biçimli veya başka bir tanımlayıcı aynı yanıtı verir. |
| 409 | slug_taken |
Başka bir kuruluş bu slug'ı kullanıyor. |
| 409 | slug_reserved |
Slug, başka bir kuruluşun 90 günlük ayrılmasında. |
| 409 | slug_change_rate_limited |
Slug son 30 günde zaten değiştirilmiş. |
| 409 | organization_disabled |
Kuruluş devre dışı. |
| 409 | organization_pending_deletion |
Kuruluş silinmek üzere planlanmış. |
| 412 | precondition_failed |
If-Match geçerli sürümü belirtmiyor veya istek işlenirken kuruluş değişti. |
| 422 | validation_failed |
Bir alan geçersiz ya da izin verilmeyen yerde null, veya yama boş (empty_patch). |
| 503 | service_unavailable |
Geçici olarak kullanılamıyor; Retry-After süresinden sonra yeniden deneyin. |
Örnek
curl -X PATCH https://example.keenauth.app/fapi/v1/organizations/org_01jbz6x8kq3m2n4p5r6s7t8v9a \
-H "Idp-Client: my-app/1.0.0 (node/22.0.0)" \
-H "Origin: https://example.keenauth.app" \
-H "Content-Type: application/merge-patch+json" \
-H 'If-Match: "4"' \
-b cookies.txt \
-d '{"name": "Acme Inc", "brand_color": null}'
Yanıt, Kuruluşu alma ile aynı yapıdadır; "version": 5 değeriyle.