smokills/laravel-http-client-default-options
A Laravel package for defining default options on the HTTP client, so shared headers, timeouts, and other settings apply automatically to every outgoing request. Configure defaults once and keep API calls clean, consistent, and free of repetition.
Illuminate\Http\Client can now emit RequestSending, ResponseReceived, and ConnectionFailed events. For a PM, this converts "the vendor integration is broken" into "the vendor was returning 503s between 14:02 and 14:19" — a qualitative shift in how support, success, and engineering triage the same incident.Adopt when:
Look elsewhere when:
curl, SDKs with their own transport). Coverage will be partial and the gaps will be the ones that bite you.To executives: This is a small, contained change with outsized diagnostic value. Today, when a partner API degrades, we learn about it from customers. With this release we can capture every outbound call we make — timing, status, failure — and route it into whatever logging or monitoring we already have. It costs us a dependency and some configuration, not a project. It also gives us the raw material to hold vendors to their SLAs and to report on integration reliability without commissioning new work.
To engineering: v2.0.2 enables dispatch of Laravel's HTTP client events, so you can register listeners for request/response/failure instead of writing Guzzle middleware or wrapping the client. No breaking changes are called out in this release, but note the package is already on major version 2 — pin the version, read the v2 upgrade notes before adopting, and confirm the event names and payload shape against your Laravel version rather than assuming.
Risks to flag in the same breath: event payloads may contain headers, tokens, or request bodies — agree a redaction policy before enabling in production; decide on sampling and retention before, not after, the log bill arrives; and be honest that this buys observability, not resilience. If the business wants retries, circuit breakers, or a live vendor dashboard, that is a follow-on roadmap item, not something this release delivers.
How can I help you explore Laravel packages today?