graham-campbell/guzzle-factory

Provides A Simple Guzzle Factory With Good Defaults

Maintainers

👁 graham-campbell

Package info

github.com/GrahamCampbell/Guzzle-Factory

pkg:composer/graham-campbell/guzzle-factory

Fund package maintenance!

GrahamCampbell

Tidelift

Statistics

Installs: 6 900 613

Dependents: 44

Suggesters: 0

Stars: 91

Open Issues: 0

v8.0.0 2026-06-02 14:01 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT fb79dfb05c498fc42fd3695472f9326cf6685146

httpGuzzleGraham CampbellGrahamCampbellGuzzle FactoryGuzzle-Factory


README

Guzzle Factory was created by, and is maintained by Graham Campbell, and provides a simple Guzzle factory, with good defaults. Feel free to check out the change log, releases, security policy, license, code of conduct, and contribution guidelines.

👁 Banner

👁 Build Status
👁 StyleCI Status
👁 Software License
👁 Packagist Downloads
👁 Latest Version

Installation

This version requires PHP 7.4-8.5.

To get the latest version, simply require the project using Composer:

$ composer require "graham-campbell/guzzle-factory:^8.0"

Usage

<?php

use GrahamCampbell\GuzzleFactory\GuzzleFactory;

$client = GuzzleFactory::make(['base_uri' => 'https://example.com']);

Customizing The Handler Stack

<?php

use GrahamCampbell\GuzzleFactory\GuzzleFactory;
use GuzzleHttp\HandlerStack;

$client = GuzzleFactory::make(
 ['base_uri' => 'https://example.com'],
 null,
 static function (HandlerStack $stack): void {
 $stack->push(static fn (callable $handler): callable => $handler, 'custom');
 },
);

Transport Sharing

Transport sharing is disabled by default. If you need best-effort handler-lifetime transport sharing, pass the sharing mode as the second argument:

<?php

use GrahamCampbell\GuzzleFactory\GuzzleFactory;
use GuzzleHttp\TransportSharing;

$client = GuzzleFactory::make(
 ['base_uri' => 'https://example.com'],
 TransportSharing::HANDLER_PREFER,
);

Security

If you discover a security vulnerability within this package, please send an email to security@tidelift.com. All security vulnerabilities will be promptly addressed. You may view our full security policy here.

License

Guzzle Factory is licensed under The MIT License (MIT).

For Enterprise

Available as part of the Tidelift Subscription

The maintainers of graham-campbell/guzzle-factory and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. Learn more.