# Links

Un **Link** es un conjunto de credenciales asociadas al acceso de un usuario final a una **institución**. Necesitarás registrar un **Link** antes de acceder a la información de ese usuario final específico, como los detalles de cuenta o transacciones.

Recomendamos usar el Belvo Hosted Widget para gestionar el proceso de conexión.

## Enumerar enlaces

 - [GET /api/links/](https://developers.belvo.com/es/apis/belvoopenapispec/links/listlinks.md): ## ▶️ Uso

Con el método List Links, puedes:

1. Listar todos los enlaces relacionados con tu cuenta de Belvo (sin usar parámetros de consulta).
2. Obtener los detalles de un link.id específico (usando el parámetro de consulta id).

## 📖 Paginación

Este método devuelve una respuesta paginada (por defecto: 100 elementos por página). Puedes usar el parámetro de consulta page_size para aumentar el número de elementos devueltos hasta un máximo de 1000 elementos. Puedes usar el parámetro de consulta page para navegar a través de los resultados. Para más detalles sobre cómo navegar por las respuestas paginadas de Belvo, consulta nuestro artículo Consejos de Paginación.

## 🔦 Filtrado de Respuestas

Consulta la lista de campos a continuación para ver los campos por los que puedes filtrar tus respuestas. Para más información sobre cómo usar filtros, consulta nuestro artículo Filtrado de respuestas.

## Registrar un nuevo enlace

 - [POST /api/links/](https://developers.belvo.com/es/apis/belvoopenapispec/links/registerlink.md): ## ▶️ Uso

Registra un nuevo enlace (una conexión entre tu usuario y su institución) utilizando la API de Belvo.

> 👍 Recomendamos encarecidamente usar nuestro Connect Widget para manejar la creación de enlaces y las actualizaciones de estado de los enlaces.

Para facilitar las cosas, hemos incluido ejemplos personalizados para los enlaces que puedes crear para cada uno de nuestros productos. Simplemente haz clic en el tipo de enlace que deseas crear en la sección Body Params a continuación.

## Completar una solicitud de enlaces

 - [PATCH /api/links/](https://developers.belvo.com/es/apis/belvoopenapispec/links/patchlinks.md): Se utiliza para reanudar una sesión de registro de Link que se pausó porque la institución requería un token MFA.

## Obtener los detalles de un enlace

 - [GET /api/links/{id}/](https://developers.belvo.com/es/apis/belvoopenapispec/links/detaillink.md): Obtén los detalles de un enlace específico.

## Modificar la recuperación de datos de un enlace

 - [PATCH /api/links/{id}/](https://developers.belvo.com/es/apis/belvoopenapispec/links/modifylinkdataretrieval.md): Modifique la configuración de recuperación de datos para un enlace específico. Actualmente puede:

  - Cambiar el modo de acceso de un enlace de single a recurrent o de recurrent a single.
  - Modificar el período stale_in para el enlace.
  - Modificar los recursos históricos que desea recuperar para el enlace (fetch_resources).

## Cambiando el access_mode de un enlace

Cuando cambia un enlace de single a recurrent, al día siguiente se activa una actualización histórica de los recursos principales para el enlace (lo que resulta en que reciba webhooks de historical_update para el enlace). Se le cobrará por estas actualizaciones históricas.

## Modificando stale_in

Si solo modifica el período stale_in para un enlace, esto no activará una actualización histórica. Para activar una actualización histórica para el enlace, debe cambiar el access_mode.

## Modificando fetch_resources

Si solo modifica los fetch_resources para un enlace, esto no activará una actualización histórica. Para activar una actualización histórica para el enlace, debe cambiar el access_mode.

## Actualizar las credenciales de un enlace

 - [PUT /api/links/{id}/](https://developers.belvo.com/es/apis/belvoopenapispec/links/updatelink.md): Actualiza las credenciales de un enlace específico. Si el enlace actualizado con éxito es recurrente, automáticamente activamos una actualización del enlace. Si encontramos datos nuevos, recibirás webhooks de actualización histórica.

> 👍 Usa nuestro Connect Widget
>
> Recomendamos usar nuestro Connect Widget para manejar la actualización de enlaces invalid o token_required.

## Eliminar un enlace

 - [DELETE /api/links/{id}/](https://developers.belvo.com/es/apis/belvoopenapispec/links/destroylink.md): Elimina un enlace específico y todos los datos asociados (por ejemplo: transacciones, cuentas, facturas, declaraciones de impuestos, empleos, etc.) de ese enlace de tu cuenta de Belvo. Esta acción es irreversible y no podrás recuperar los datos eliminados.

{% admonition type="success" name="Usa el encabezado X-Belvo-Request-Mode: async" %}
  Recomendamos encarecidamente establecer el encabezado X-Belvo-Request-Mode a async para habilitar la eliminación asincrónica. De esta manera, evitarás el límite de tasa de 5 eliminaciones por minuto. Cuando se establece, el endpoint responderá con un estado 202 Accepted y proporcionará un ID de solicitud para rastrear el proceso de eliminación. Una vez que el proceso esté completo, recibirás una notificación webhook link_deleted.
  
  Si no configuras este encabezado, el endpoint responderá con un estado 204 No Content, pero estarás sujeto al límite de tasa de 5 eliminaciones por minuto. Si excedes este límite, recibirás un error 429 Too Many Requests.
{% /admonition %}

## Activar una actualización histórica para un enlace

 - [POST /api/links/{id}/refresh/](https://developers.belvo.com/es/apis/belvoopenapispec/links/refreshhistoricaldataforlink.md): {% admonition type="warning" name="Límite de Solicitudes Concurrentes" %}
  Para prevenir solicitudes duplicadas, este endpoint tiene un período de enfriamiento de 10 minutos por enlace. Si intentas actualizar el mismo enlace dentro de los 10 minutos de una solicitud previa, recibirás un error 409 Conflict con el mensaje "The link has already been refreshed. Please wait X minutes before trying again.".
{% /admonition %}

Usa este método para desencadenar una actualización histórica para un enlace específico (único o recurrente). Utiliza el parámetro fetch_resources para especificar qué recursos deseas actualizar. Si no especificas este parámetro, la actualización histórica se realizará para todos los recursos soportados por la institución con la que está asociado el enlace.

En una solicitud exitosa, nuestra API responderá con un código de estado 202 y un request_id que podrás usar posteriormente para asociar un webhook de historical_update a esta solicitud.

{% admonition type="info" name="No actualiza la definición del enlace" %}
  Este endpoint no actualiza la definición del enlace en sí, solo los datos históricos para los recursos especificados. Si deseas cambiar permanentemente el fetch_resources del enlace, deberías usar el método Modificar la recuperación de datos de un enlace en su lugar.
{% /admonition %}

