Mettre à jour les valeurs par défaut de l'organisation

PATCH /v1/organization-defaults · autorisation organizations:write

Met à jour les valeurs par défaut de l'organisation de l'environnement à l'aide d'un correctif de fusion JSON (application/merge-patch+json, RFC 7396). If-Match est obligatoire : son absence renvoie 428, une version obsolète renvoie 412. N'envoyez que les champs que vous modifiez. Un correctif qui ne change rien n'écrit rien et conserve la version.

Requête

Champ Type Obligatoire Description
If-Match en-tête oui Le ETag des valeurs par défaut tel que lu en dernier. Absent : 428 ; obsolète : 412.
org_admin_role_id string non Rôle de l'environnement (rol_…) attribué aux administrateurs de l'organisation. Il doit détenir les autorisations de gestion des organisations (422 permission_reserved), et aucune organisation ne peut rester sans administrateur actif (409 last_org_admin). Ne peut pas être null.
default_member_role_id string non Rôle de l'environnement (rol_…) attribué aux nouveaux membres de l'organisation. Ne peut pas être null.
max_memberships_per_user integer non Nombre d'organisations auxquelles un utilisateur peut appartenir, de 1 à 1000 (par défaut 200). Ne peut pas être null.
invitation_ttl_days integer non Nombre de jours pendant lesquels une invitation reste valide, de 1 à 30 (par défaut 7). Ne peut pas être null.
org_self_service_deletion_grace_days integer non Nombre de jours d'attente avant l'exécution d'une suppression d'organisation en libre-service, de 0 à 30 (par défaut 14). Ne peut pas être null.
on_org_delete_members string non detach (par défaut) : les membres perdent seulement leur appartenance. delete_exclusive_provisioned : les utilisateurs arrivés dans cette organisation via JIT ou SCIM et n'appartenant à aucune autre organisation sont placés en file d'attente pour suppression. Ne peut pas être null.
org_custom_roles_enabled boolean non Permet aux administrateurs de l'organisation de définir leurs propres rôles (par défaut false). L'écriture des rôles d'organisation nécessite toujours la fonctionnalité d'offre org_custom_roles. Ne peut pas être null.
org_self_delete_enabled boolean non Permet aux administrateurs de l'organisation de supprimer eux-mêmes leur organisation (par défaut false). Ne peut pas être null.

Comportement

Réponse

200 OK avec les valeurs par défaut mises à jour et le nouveau ETag.

{
  "org_admin_role_id": "rol_01j9xs0a2b4c6d8e0f2g4h6j8k",
  "default_member_role_id": "rol_01j9xs0a2b4c6d8e0f2g4h6j8m",
  "max_memberships_per_user": 200,
  "invitation_ttl_days": 9,
  "org_self_service_deletion_grace_days": 14,
  "on_org_delete_members": "delete_exclusive_provisioned",
  "org_custom_roles_enabled": false,
  "org_self_delete_enabled": false,
  "updated_at": "2026-11-03T10:00:00.123456Z",
  "version": 2
}

Erreurs

HTTP code Quand
400 unknown_field Le correctif contient un champ inconnu ou en lecture seule, ou n'est pas un objet JSON (malformed_request).
403 insufficient_permissions L'identifiant ne dispose pas de l'autorisation requise.
409 last_org_admin Le nouveau rôle d'administrateur laisserait une organisation sans administrateur actif.
412 precondition_failed If-Match ne correspond pas à la version actuelle.
415 unsupported_media_type Le type de contenu n'est pas application/merge-patch+json.
422 validation_failed Une valeur est invalide (le pointeur désigne le champ), ou un champ a été défini à null (code: invalid).
428 precondition_required If-Match est absent.

Exemple

curl -i -X PATCH "https://api.eu.keenauth.com/v1/organization-defaults" \
  -H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
  -H "Content-Type: application/merge-patch+json" \
  -H 'If-Match: "1"' \
  -d '{"on_org_delete_members":"delete_exclusive_provisioned","invitation_ttl_days":9}'
keenauth organization-defaults update --if-match '"1"' \
  --on-org-delete-members delete_exclusive_provisioned --invitation-ttl-days 9