Obtener las asignaciones de atributos de una conexión
GET /v1/connections/{connection_id}/attribute-mappings · permiso connections:read
Devuelve las reglas de asignación de atributos de una conexión empresarial (SAML u OIDC), ordenadas por destino. Cada regla asocia un atributo o una reclamación enviada por el proveedor de identidad (source_name) con un campo de usuario (target). La cabecera ETag contiene la versión de la lista; envíela como If-Match cuando reemplace la lista o aplique un perfil predefinido. Una conexión sin reglas guardadas devuelve una lista vacía: al iniciar sesión se aplica el valor predeterminado de la plantilla (el perfil generic para OIDC; en SAML no se asigna nada). Las lecturas no se auditan.
Solicitud
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
connection_id |
ruta | sí | ID de la conexión empresarial (conn_…). |
Respuesta
200 OK con la lista y 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"
}
]
}
| Campo | Descripción |
|---|---|
target |
email, given_name, family_name, name, locale, zoneinfo, phone, groups o user_metadata.<key>. |
source_name |
Atributo SAML Name o nombre de reclamación OIDC (ruta con puntos, profundidad ≤ 3). |
source_name_format |
NameFormat de SAML con el que se lee el atributo; null coincide solo por nombre. |
overwrite |
always (en cada inicio de sesión), if_empty (solo cuando el campo está vacío) o never (solo al crear). |
profile |
Perfil predefinido del que procede la regla; generic para las reglas escritas a mano. |
Errores
| HTTP | código | Cuándo |
|---|---|---|
| 404 | not_found |
La conexión no existe en este entorno o no es una conexión empresarial. |
| 401 | unauthenticated |
La credencial falta, no es válida o fue revocada. |
| 403 | insufficient_permissions |
La credencial no tiene el permiso requerido. |
| 429 | rate_limited |
Se superó el límite de tasa; reintente después del tiempo indicado en Retry-After. |
| 503 | service_unavailable |
Una dependencia no está disponible temporalmente; reintente después del tiempo indicado en Retry-After. |
Ejemplo
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