Gateway de webhooks de código abierto que recibe, almacena, entrega y depura eventos, con reintentos, limitación de velocidad y circuit breaking.
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
Prueba Svix CLI sin instalarlo
npx svix-cli --help - 2
Ve al directorio server del repositorio
cd server - 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
Plataforma de streaming de datos compatible con la API de Kafka, escrita en C++ y que funciona sin ZooKeeper ni la JVM.
NSQ es una plataforma distribuida de mensajería en tiempo real, diseñada para gestionar grandes volúmenes de mensajes sin un único punto de falla.
Un runtime portable que ofrece a las aplicaciones distribuidas y a los agentes de IA workflows durables, seguridad entre servicios, gestión de estado y pub/sub mediante un sidecar.
Motor de workflows durables para ejecutar funciones por pasos, tareas en segundo plano y workflows de IA en serverless, servidores o edge, con reintentos y control de flujo.
Una biblioteca de Go para crear aplicaciones basadas en eventos, con una interfaz unificada de Publisher/Subscriber para Kafka, RabbitMQ, NATS, SQL y más.