Repolode
svix

svix/svix-webhooks

Servicio open source de envío de webhooks escrito en Rust que gestiona entregas, reintentos y firmas para que los desarrolladores envíen webhooks con una sola llamada a la API.

Alternativa open source a:Svix Cloud

Estrellas
3,475
Forks
299
Issues abiertos
64
Último commit
hace 20 horas

¿Qué es?

Svix es un servicio de webhooks para equipos que necesitan enviar webhooks a sus clientes. Un desarrollador hace una sola llamada a la API para publicar un evento, y el servicio se encarga de entregarlo a cada endpoint suscrito, incluidos los reintentos, la firma de los payloads y el seguimiento del estado de entrega.

El servidor está escrito en Rust y se ejecuta como binario independiente o como contenedor Docker. Requiere PostgreSQL para almacenar eventos y, de forma opcional, usa Redis u otros backends de colas para su cola de tareas y caché. La configuración se proporciona mediante un archivo TOML o variables de entorno. El proyecto admite esquemas de firma simétricos (al estilo HMAC, con secretos por endpoint) y asimétricos ed25519; el esquema simétrico es el predeterminado. Las tareas fallidas que agotan los reintentos se envían a una dead letter queue, desde donde se pueden volver a procesar mediante un endpoint de administración.

Hay bibliotecas cliente para Go, Python, TypeScript/JavaScript, Java, Kotlin, Ruby, C#, Rust y PHP, además de un proveedor de Terraform y una CLI distribuida a través de npm. El repositorio también incluye una implementación de DLQ para colas Redis y exportación opcional de trazas, métricas y logs mediante OpenTelemetry.

Funciones clave

  • 01Envía webhooks con una sola llamada a la API desde el publicador.
  • 02Gestiona los reintentos y realiza un seguimiento del estado de entrega de cada endpoint.
  • 03Firma los payloads con claves simétricas de forma predeterminada, con opción de usar firmas asimétricas ed25519.
  • 04Admite PostgreSQL para el almacenamiento y Redis para la cola de tareas.
  • 05Proporciona una dead letter queue con un endpoint de administración para volver a procesar las tareas fallidas.
  • 06Exporta trazas, métricas y logs mediante OpenTelemetry.

Casos de uso

  • Añadir notificaciones de webhooks salientes a un producto SaaS para integraciones con clientes.
  • Sustituir un distribuidor de webhooks hecho a medida que necesita reintentos y firmas.
  • Alojar por cuenta propia una canalización de entrega de webhooks con PostgreSQL y Redis.
  • Enviar notificaciones de eventos desde un backend mediante una de las bibliotecas cliente disponibles.

Inicio rápido

  1. 1

    Prueba Svix CLI sin instalarlo

    npx svix-cli --help
  2. 2

    Ve al directorio server del repositorio

    cd server
  3. 3

    Inicia el servidor con Docker Compose, que también pone en marcha Redis y PostgreSQL

    docker compose up

Antes de usarlo

  • El servidor necesita una base de datos PostgreSQL. Redis es opcional, pero se recomienda para la cola de tareas.
  • Redis debe configurarse con persistencia y una política de eviction que no expulse claves, lo que requiere más trabajo si lo alojas por tu cuenta.

Temas

Preguntas frecuentes

¿Qué es svix-webhooks?
Servicio open source de envío de webhooks escrito en Rust que gestiona entregas, reintentos y firmas para que los desarrolladores envíen webhooks con una sola llamada a la API. Svix es un servicio de webhooks para equipos que necesitan enviar webhooks a sus clientes. Un desarrollador hace una sola llamada a la API para publicar un evento, y el servicio se encarga de entregarlo a cada endpoint suscrito, incluidos los reintentos, la firma de los payloads y el seguimiento del estado de entrega.
¿svix-webhooks es gratuito? ¿Qué licencia tiene?
svix-webhooks es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿svix-webhooks sigue mantenido?
Mantenimiento activo. El último commit de svix-webhooks fue el 6 nov 2026.
¿Para qué puedo usar svix-webhooks?
Añadir notificaciones de webhooks salientes a un producto SaaS para integraciones con clientes. Sustituir un distribuidor de webhooks hecho a medida que necesita reintentos y firmas. Alojar por cuenta propia una canalización de entrega de webhooks con PostgreSQL y Redis. Enviar notificaciones de eventos desde un backend mediante una de las bibliotecas cliente disponibles.
¿Cómo se instala svix-webhooks?
Prueba Svix CLI sin instalarlo: npx svix-cli --help Ve al directorio server del repositorio: cd server Inicia el servidor con Docker Compose, que también pone en marcha Redis y PostgreSQL: docker compose up
¿Dónde consigo svix-webhooks?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/svix/svix-webhooks

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados