Webhooks

Cómo usar los webhooks de MonedAPI.

Webhooks

Los webhooks te permiten recibir notificaciones en tiempo real cuando cambian las cotizaciones.

Seguridad

Los webhooks se envían desde la infraestructura de Supabase. Para verificar que el envío es auténtico, debes validar la firma de la petición.

Headers

  • X-MonedAPI-Signature: HMAC-SHA256 del payload.
  • X-MonedAPI-Timestamp: Unix timestamp del envío.

| dead | Falló definitivamente después de 4 intentos. |

Estructura del Payload

Cuando se produce un cambio en una cotización, enviamos un JSON con los siguientes campos a tu URL:

{
  "event": "rate.updated",
  "currency": "USD",
  "origin": "BNA",
  "buy": 950.5,
  "sell": 1000.0,
  "prevBuy": 948.0,
  "prevSell": 998.5,
  "changePct": 0.15,
  "updatedAt": "2024-05-20T14:30:00Z",
  "timestamp": "2024-05-20T14:31:05Z"
}

Descripción de Campos

CampoTipoDescripción
eventstringTipo de evento (rate.updated para cambios, manual.trigger para pruebas).
currencystringCódigo de la moneda (ej: USD, EUR).
originstringOrigen de la cotización (ej: Informatica, BNA).
buynumberPrecio de compra actual.
sellnumberPrecio de venta actual.
prevBuynumberPrecio de compra anterior al cambio.
prevSellnumberPrecio de venta anterior al cambio.
changePctnumberPorcentaje de variación respecto a la última cotización de venta.
updatedAtstringFecha y hora ISO del dato en la fuente original.
timestampstringFecha y hora ISO en la que se envió la notificación.

[!NOTE] Si la URL del destino corresponde a Discord, el payload se envía automáticamente formateado como un Embed enriquecido (colores, campos en columnas, etc.) para que aparezca correctamente en tu canal de Discord sin necesidad de adaptadores.


Gestión vía API (v2)

Puedes gestionar tus webhooks y consultar el historial de envíos utilizando la API v2. Todas las peticiones requieren una API Key válida.

Listar Webhooks

GET /api/v2/webhooks

curl -H "Authorization: Bearer <TU_API_KEY>" \
     https://monedapi.ar/api/v2/webhooks

Crear Webhook

POST /api/v2/webhooks

CampoTipoDescripción
urlstringURL de destino de las notificaciones.
methodstringOpcional. Método HTTP (POST, GET). Por defecto POST.
enabledbooleanOpcional. Habilitar o deshabilitar el webhook.
currencynumberOpcional. ID de la moneda específica a la que suscribirse (vía currencies).
curl -X POST -H "Authorization: Bearer <TU_API_KEY>" \
     -H "Content-Type: application/json" \
     -d '{"url": "https://mi-servidor.com/webhook", "currency": 1}' \
     https://monedapi.ar/api/v2/webhooks

Consultar Historial

GET /api/v2/webhooks/deliveries

Este endpoint devuelve los últimos 50 intentos de envío, incluyendo el payload enviado y la respuesta de tu servidor.

curl -H "Authorization: Bearer <TU_API_KEY>" \
     https://monedapi.ar/api/v2/webhooks/deliveries?limit=10

On this page