PHPackages                             s00d/guzzle-http-request - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. s00d/guzzle-http-request

ActiveLibrary[HTTP &amp; Networking](/categories/http)

s00d/guzzle-http-request
========================

GHR is a simple Guzzle wrapper + multiple request + DomCrawler

1.0.56(5y ago)0251MITPHPPHP &gt;=5.5.9

Since Jun 5Pushed 5y ago1 watchersCompare

[ Source](https://github.com/s00d/guzzle-http-request)[ Packagist](https://packagist.org/packages/s00d/guzzle-http-request)[ RSS](/packages/s00d-guzzle-http-request/feed)WikiDiscussions master Synced today

READMEChangelog (10)Dependencies (7)Versions (51)Used By (0)

GHR
===

[](#ghr)

[packagist](https://packagist.org/packages/s00d/guzzle-http-request)

GHR is a simple Guzzle wrapper + multiple request + DomCrawler

Real documentation is in the works, but for now [read the tests](https://github.com/s00d/guzzle-http-request/blob/master/tests/Unit/GuzzleHttpRequestTest.php).

Installation
------------

[](#installation)

Require this package in your `composer.json` or install it by running:

```
composer require s00d/guzzle-http-request

```

To start using Laravel, add the Service Provider and the Facade to your `config/app.php`:

```
'providers' => [
	// ...
	 s00d\GuzzleHttpRequest\GHRServiceProvider::class,
]
```

```
'aliases' => [
	// ...
	'GHR' => s00d\GuzzleHttpRequest\Facades\GHRFacade::class,
]
```

Publish the configurations
--------------------------

[](#publish-the-configurations)

Run this on the command line from the root of your project:

```
php artisan vendor:publish

```

A configuration file will be publish to config/ghr.php

Basic Usage
-----------

[](#basic-usage)

```
use GHR;
...

Config::set('ghr.cookie_file', "/cookie/text.txt");
$request = GHR::createRequest()->setProxy('tcp://127.0.0.1:8080')->setRedirects(5)->setHttpErrors(false)->setTimeout(500);
$request->addHeader('user-agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36');
$response = $request->setUrl('https://localhost')->setType('POST')->send();

$crawler = $response->getCrawler();
try{
    $crawler->filter('.exit')->html();
    print_r(Carbon::now()->toTimeString().": Client auth\n");
} catch(\Exception $e) {
    print_r(Carbon::now()->toTimeString().": Client NOT auth\n");
}

$form = $crawler->selectButton('next')->form();

$form->setValues([
    'user' => $user,
]);

$response->sendForm($form);

var_dump($response->getContents());
var_dump($response->getJson());
...

$response = GHR::createRequest()
    ->setMultipleFlowCount(10)
    ->setProxy('tcp://127.0.0.1:8080')
    ->removeDataParams()->addToQueue('/guzzle-test/get', 'GET', 0)
    ->setBody(['foo' => 'bar'], 'form_params')->addToQueue('/guzzle-test/post',    'POST',   1)
    ->setBody(['foo' => 'bar'], 'form_params')->addToQueue('/guzzle-test/put',     'PUT',    2)
    ->setBody(['foo' => 'bar'], 'form_params')->addToQueue('/guzzle-test/patch',   'PATCH',  3)
    ->setBody(['foo' => 'bar'], 'form_params')->addToQueue('/guzzle-test/delete'), 'DELETE', 4)
    ->multipleSend('form_params')->getMultiResp();

var_dump($response->responses()); // all responses
var_dump($response->errors());
var_dump($response->finished());
```

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 97.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~27 days

Recently: every ~64 days

Total

50

Last Release

1951d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b58c344f6f895edc186de3097331fc96b852a970403edde4c9bbb50bd60388e6?d=identicon)[s00d](/maintainers/s00d)

---

Top Contributors

[![s00d](https://avatars.githubusercontent.com/u/2684895?v=4)](https://github.com/s00d "s00d (76 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (2 commits)")

---

Tags

httprequestlaravelGuzzlemultimultiple

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/s00d-guzzle-http-request/health.svg)

```
[![Health](https://phpackages.com/badges/s00d-guzzle-http-request/health.svg)](https://phpackages.com/packages/s00d-guzzle-http-request)
```

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.2k532.1M2.5k](/packages/aws-aws-sdk-php)[kozz/laravel-guzzle-provider

Guzzle 5/6 Service Provider for Laravel

621.1M2](/packages/kozz-laravel-guzzle-provider)[behamin/service-proxy

for proxy or sending requests to other services with useful utilities

102.2k](/packages/behamin-service-proxy)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
