Obtenir les correspondances d'attributs d'une connexion
GET /v1/connections/{connection_id}/attribute-mappings · autorisation connections:read
Retourne les règles de correspondance d'attributs d'une connexion d'entreprise (SAML ou OIDC), classées par cible. Chaque règle associe un attribut ou une revendication envoyé par le fournisseur d'identité (source_name) à un champ utilisateur (target). L'en-tête ETag porte la version de la liste ; envoyez-la dans If-Match lorsque vous remplacez la liste ou appliquez un profil prédéfini. Une connexion sans règle enregistrée renvoie une liste vide : à la connexion, le profil par défaut du modèle s'applique (le profil generic pour OIDC ; rien n'est associé pour SAML). Les lectures ne sont pas auditées.
Requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
connection_id |
chemin | oui | ID de la connexion d'entreprise (conn_…). |
Réponse
200 OK avec la liste et un ETag.
{
"attribute_mappings": [
{
"target": "email",
"source_name": "email",
"source_name_format": null,
"overwrite": "always",
"profile": "okta"
},
{
"target": "user_metadata.department",
"source_name": "department",
"source_name_format": "urn:oasis:names:tc:SAML:2.0:attrname-format:basic",
"overwrite": "if_empty",
"profile": "generic"
}
]
}
| Champ | Description |
|---|---|
target |
email, given_name, family_name, name, locale, zoneinfo, phone, groups ou user_metadata.<key>. |
source_name |
Attribut SAML Name ou nom de revendication OIDC (chemin pointé, profondeur ≤ 3). |
source_name_format |
NameFormat SAML avec lequel l'attribut est lu ; null ne correspond que par le nom. |
overwrite |
always (à chaque connexion), if_empty (seulement si le champ est vide) ou never (seulement à la création). |
profile |
Profil prédéfini dont la règle est issue ; generic pour les règles saisies manuellement. |
Erreurs
| HTTP | code | Cas |
|---|---|---|
| 404 | not_found |
La connexion n'existe pas dans cet environnement ou n'est pas une connexion d'entreprise. |
| 401 | unauthenticated |
L'identifiant est absent, invalide ou révoqué. |
| 403 | insufficient_permissions |
L'identifiant ne dispose pas de l'autorisation requise. |
| 429 | rate_limited |
La limite de débit a été dépassée ; réessayez après la durée indiquée par Retry-After. |
| 503 | service_unavailable |
Une dépendance est temporairement indisponible ; réessayez après la durée indiquée par Retry-After. |
Exemple
curl -i "https://api.eu.keenauth.com/v1/connections/conn_01j9xp6q0r1s5t7v9w1x3y5z7b/attribute-mappings" \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
keenauth connections attribute-mappings get conn_01j9xp6q0r1s5t7v9w1x3y5z7b