> ## Documentation Index
> Fetch the complete documentation index at: https://help.impactu.colav.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Iniciar sesión

> Autentica con email y contraseña. Si es válido, establece una cookie HttpOnly con el JWT de sesión.

## Cuerpo de la solicitud

Un objeto JSON con los dos campos como texto. Si falta alguno, está vacío o no es texto, responde `400`.

**email** `string` *required*

Correo electrónico del usuario.

**password** `string` *required*

Contraseña del usuario.

> [!NOTE]
>
> El JWT **no** se devuelve en el cuerpo de la respuesta. Se establece
> automáticamente como cookie HttpOnly `access_token_cookie`. Las llamadas
> posteriores a endpoints protegidos deben incluir esta cookie. El inicio de
> sesión también crea la cookie `csrf_access_token`: su valor va en el
> encabezado `X-CSRF-TOKEN` de las solicitudes con sesión que no son `GET`.

## Respuesta

**success** `boolean`

`true` si la autenticación fue exitosa.

**\_id** `string`

Identificador ROR de la institución asociada al usuario.

**institution** `string`

Nombre de la institución.

**role** `string`

Rol del usuario en la plataforma (`admin`, `staff`, etc.).

```json 200 theme={null}
{
  "success": true,
  "_id": "example-institution-id",
  "institution": "Universidad Ejemplo",
  "role": "staff"
}
```

```json 400 theme={null}
{"msg": "correo y contraseña requeridos", "success": false}
```

```json 400 — cuerpo inválido theme={null}
{ "success": false, "msg": "El cuerpo de la petición debe ser un objeto JSON." }
```

```json 401 theme={null}
{"msg": "Usuario con correo usuario@example.com no encontrado o contraseña no conciden", "success": false}
```

```json 403 theme={null}
{ "success": false, "msg": "El usuario está desactivado. Contacte al administrador del sistema" }
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.