Activar una conexión
POST /v1/connections/{connection_id}:activate · permiso connections:write
Establece el status de la conexión en active. El cuerpo de la solicitud es opcional y no tiene campos. La operación es idempotente: si la conexión ya tiene este estado, no se escribe nada, la versión no cambia y se devuelve la conexión actual. No se usa If-Match; si otro escritor modifica la conexión en el mismo momento, la llamada se reintenta algunas veces. Activar una conexión enterprise (SAML u OIDC) requiere una prueba de inicio de sesión exitosa en las últimas 24 horas que haya cubierto la configuración de protocolo actual y los allowed_email_domains que tendrá la conexión; de lo contrario, la llamada devuelve 409 connection_test_required y no se escribe nada. Si no es posible realizar la comprobación, la conexión no se activa y la llamada devuelve 503. Los demás tipos de conexión no se verifican.
Solicitud
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
connection_id |
string | sí | Identificador de la conexión (conn_…). |
Idempotency-Key |
encabezado | no | Clave opcional (de 16 a 64 caracteres) que hace seguro reintentar una solicitud. |
El cuerpo es opcional; si está presente, debe ser {}.
Respuesta
200 OK con la conexión y su ETag.
{
"id": "conn_0k3v8m1q2x9dz4h7s5t6w0y1ab",
"key": "google",
"type": "social",
"strategy": "google",
"name": "Google",
"display_name": "Sign in with Google",
"status": "active",
"org_id": null,
"allowed_email_domains": [],
"allow_external_domains": false,
"jit_mode": null,
"email_trust": null,
"default_role_ids": [],
"trust_idp_mfa": null,
"allow_idp_initiated": null,
"idp_initiated_default_application_id": null,
"idp_initiated_allowed_application_ids": [],
"settings": {},
"created_at": "2026-10-05T09:30:00.123456Z",
"updated_at": "2026-10-05T09:30:00.123456Z"
}
Errores
| HTTP | código | Cuándo |
|---|---|---|
| 400 | unknown_field |
El cuerpo contiene un campo. |
| 404 | not_found |
La conexión no existe o pertenece a otro entorno. |
| 409 | connection_test_required |
Una conexión enterprise no tiene una prueba exitosa de su configuración actual en las últimas 24 horas. Ejecute una prueba de inicio de sesión y, después, reintente. |
| 412 | precondition_failed |
La conexión siguió cambiando de forma concurrente; reintente. |
| 401 | unauthenticated |
La credencial falta, no es válida o ha sido revocada. |
| 403 | insufficient_permissions |
La credencial no tiene el permiso requerido. |
| 429 | rate_limited |
Se superó el límite de solicitudes; reintente después del período indicado en Retry-After. |
| 503 | service_unavailable |
Una dependencia no está disponible temporalmente; reintente después del período indicado en Retry-After. |
Ejemplo
curl -X POST https://api.eu.keenauth.com/v1/connections/conn_0k3v8m1q2x9dz4h7s5t6w0y1ab:activate \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"