Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.rail.cl/llms.txt

Use this file to discover all available pages before exploring further.

Un link representa la conexión que un usuario tuyo tiene con uno de sus bancos. Es persistente: una vez creado, vive en tu DB asociado a tu user. Cada link tiene un link_id con prefijo link_ + 16 chars hex.
{
  "object": "link",
  "id": "link_8a2f4c6e1b9d5037",
  "bank_id": "banco_estado",
  "holder_name": "JANE DOE EXAMPLE",
  "status": "active",
  "created_at": "2026-05-15T01:50:22Z",
  "last_synced_at": "2026-06-03T12:00:00Z",
  "next_sync_at": "2026-06-03T16:00:00Z"
}

Cómo se crea

Solo vía widget. No hay endpoint público que reciba credenciales en plano. El flow:
  1. Tu backend pide wt_* con POST /v1/widget_tokens.
  2. El widget se abre en el frontend con ese token.
  3. User mete RUT + clave + MFA dentro del widget.
  4. Widget cierra y devuelve et_* al frontend.
  5. Tu backend canjea et_* por link_id con POST /v1/exchange_tokens/{id}.

Estados

statusSignifica
activeFuncionando. Syncs corren automáticos cada 4h.
pausedPausado por el cliente. No corre syncs. Lo despausás con POST /v1/links/{id}/resume.
errorEl último sync falló transient. Reintentamos en el próximo cron tick.
requires_attentionCredenciales rechazadas por el banco. User debe re-conectar (nuevo widget).
expired3 fallos consecutivos sin validar. Webhook link.expired disparado. User debe re-conectar.

Listar y leer

# Todos los links del cliente
curl https://api.rail.cl/v1/links \
  -H "Authorization: Bearer rail_sk_live_…"

# Un link específico
curl https://api.rail.cl/v1/links/link_8a2f4c6e1b9d5037 \
  -H "Authorization: Bearer rail_sk_live_…"

Pausar / despausar

curl https://api.rail.cl/v1/links/link_xxx/pause \
  -X POST \
  -H "Authorization: Bearer rail_sk_live_…"

curl https://api.rail.cl/v1/links/link_xxx/resume \
  -X POST \
  -H "Authorization: Bearer rail_sk_live_…"
Útil si el user pausó la cuenta en tu app — no querés seguir haciendo syncs.

Borrar

curl https://api.rail.cl/v1/links/link_xxx \
  -X DELETE \
  -H "Authorization: Bearer rail_sk_live_…"
Borra el link, todas sus cuentas y movimientos asociados, y revoca sus credenciales del vault. Irreversible.