Affecter une application dans une organisation
POST /v1/organizations/{org_id}/applications/{application_id}/assignments · permission organizations:write
Affecte l'application à une appartenance ou à un groupe d'annuaire de l'organisation. Pour une application en mode assigned_only, la connexion par organisation exige en plus que l'appartenance de l'utilisateur, ou l'un de ses groupes d'annuaire, soit affecté. L'application doit d'abord être activée dans l'organisation. Les groupes d'annuaire proviennent de SCIM ; supprimer un groupe supprime ses affectations. Idempotency-Key est facultatif.
Requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
org_id |
path | oui | Identifiant de l'organisation (org_…). |
application_id |
path | oui | Identifiant de l'application (app_…). |
target_type |
string | oui | membership ou directory_group. |
target_id |
string | oui | Identifiant de la cible ; son préfixe doit correspondre à target_type (mem_… ou dsg_…). |
Réponse
201 Created avec l'affectation.
{
"id": "aas_01j9xq6r0t1v5w7x9y1z3a5b7d",
"organization_id": "org_01j9xk3m7q8r2s4t6v8w0y2z4a",
"application_id": "app_01j9xm4n8r9s3t5v7w9x1y3z5b",
"target_type": "membership",
"target_id": "mem_01j9xn5p9s0t4v6w8x0y2z4a6c",
"created_at": "2026-10-12T09:31:00.123456Z"
}
Erreurs
| HTTP | code | Quand |
|---|---|---|
| 404 | not_found |
L'organisation, l'application ou la cible n'existe pas dans cette organisation. |
| 409 | application_not_enabled |
L'application n'est pas activée dans l'organisation. |
| 409 | conflict |
La cible est déjà affectée. |
| 409 | organization_pending_deletion |
L'organisation est en attente de suppression. |
| 422 | validation_failed |
target_type ou target_id est absent ou invalide. |
| 401 | unauthenticated |
L'identifiant est absent, invalide ou révoqué. |
| 403 | insufficient_permissions |
L'identifiant ne dispose pas de la permission requise. |
| 429 | rate_limited |
La limite de débit a été dépassée ; réessayez après la période Retry-After. |
| 503 | service_unavailable |
Une dépendance est temporairement indisponible ; réessayez après la période Retry-After. |
Exemple
curl -i -X POST "https://api.eu.keenauth.com/v1/organizations/org_01j9xk3m7q8r2s4t6v8w0y2z4a/applications/app_01j9xm4n8r9s3t5v7w9x1y3z5b/assignments" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"target_type":"membership","target_id":"mem_01j9xn5p9s0t4v6w8x0y2z4a6c"}'