liberusoftware/webhooks-api
Laravel package for building webhook APIs: register endpoints, dispatch payloads with retries, verify signed requests, and track delivery logs. A clean foundation for third-party integrations with configurable queues, events, and migrations.
Architecture fit: liberusoftware/webhooks-api appears intended as a presentation/API adapter for a webhooks domain module in a Laravel modular monolith. That is a sound boundary if the organization already uses Liberu’s module conventions: the adapter should expose HTTP endpoints, resources, validation, and middleware while a separate core package owns webhook registration, secrets, delivery, retries, and persistence. It is not a complete webhook platform by itself. Fit is good for a Laravel API layer with existing webhook domain services; poor for standalone adoption or non-Laravel stacks.
Integration feasibility: Conditional. Composer installation is likely straightforward, but the real effort is confirming required sibling modules, service-provider registration, route/middleware conventions, auth integration, tenancy behavior, and API contracts. With 0 stars and 0 dependents, there is no external adoption evidence. A time-boxed source audit and sandbox spike of 1–3 engineering days is warranted before committing. If the core webhooks domain package is not already present or maintained, this adapter has limited standalone value.
Technical risk: High for production-critical use. The package has minimal visible ecosystem validation, no dependents, and a low package score. The future-dated release metadata (2026-10-27) should be verified against tags, changelog, and commit history. Primary risks are undocumented coupling to Liberu internals, missing or weak test coverage/CI, route and middleware collisions, incomplete auth/tenant isolation, API contract instability, and security exposure around webhook secrets and payloads. The adapter may be thin, but its dependency chain and domain assumptions are the real risk.
Key questions: Which core webhook package/contracts are required? What Laravel and PHP versions are supported? Is there an OpenAPI or JSON schema contract? How are authentication, authorization, tenancy, and rate limiting handled? Does the domain layer already provide signing, retries, idempotency, delivery logs, and dead-letter handling? Are migrations, config publishing, and route registration documented? What tests and CI exist? Is the future-dated release a real tag or metadata error? Who owns maintenance and security patching?
Stack fit: Fits a Laravel/PHP Composer-based application, especially one already following Liberu module patterns. Expected integration points are a service provider, route registration, config publishing, API resources/controllers, middleware, and possibly migrations or policies. Confirm it does not duplicate an existing API surface.
Migration path: Inventory current webhook endpoints and domain services first. If replacing an existing implementation, map current API contracts to the adapter’s resources before installation. Add the package on a branch, register the provider, publish only required config/routes, wire auth and tenancy, and run contract tests against the existing webhook domain. Keep the adapter behind a feature flag until endpoint parity and failure behavior are proven.
Compatibility: Verify Composer constraints against the application’s Laravel/PHP versions and existing packages. Check route prefixes, middleware groups, CSRF/API middleware assumptions, exception handling, pagination, and API resource conventions. If the application is multi-tenant, confirm tenant scoping is enforced at the adapter and domain layers. Avoid adopting if dependency constraints force broad upgrades without a clear owner.
Sequencing: 1) Source and dependency audit; 2) sandbox proof of concept with the required webhooks domain module; 3) contract tests for endpoints, auth, errors, and payloads; 4) security review for secrets, signing, and tenant isolation; 5) staging integration with queue and persistence; 6) production canary behind a feature flag; 7) rollback plan and ownership assignment. If the required domain module is absent, stop before integration and evaluate building or buying a fuller webhook subsystem.
Maintenance: Low code footprint may mean low maintenance, but the package is effectively orphan-risk without visible adoption. Pin the version, fork if necessary, and assign internal ownership. Track upstream changes manually; do not rely on community momentum.
Support: No meaningful community support or dependent ecosystem is visible. Operational support must come from the integrating team. Establish an internal runbook for webhook endpoint configuration, secret rotation, delivery failure investigation, and API changes.
Scaling: The adapter itself is unlikely to be the bottleneck; scaling depends on the webhook domain, database, queue workers, retry policy, and outbound HTTP behavior. Validate rate limits, pagination, payload size limits, fan-out volume, and queue backlogs under expected load. API-layer scaling without domain-layer scaling will not help.
Failure modes: Missing core module or incompatible contracts; route/middleware collisions; auth or tenant scoping gaps; secret exposure; duplicate or missed deliveries; retry storms and queue backlog; breaking API changes; migration conflicts; and metadata/tag confusion from the future-dated release. Add observability around request volume, error rates, delivery success, retry counts, and latency before production use.
Ramp-up: Laravel developers should ramp quickly on the adapter mechanics, but TPM and operations staff need explicit webhook domain knowledge: signing, idempotency, retries, delivery logs, and tenant boundaries. Documentation is likely insufficient given the package’s maturity signals. Recommendation: conditional pilot only, with internal ownership and contract tests; avoid for production-critical webhook infrastructure until the source, dependencies, and domain module are proven.
How can I help you explore Laravel packages today?