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.