HTTPlug

The HTTP client abstraction for PHP.

Diagram

Decouple your package from implementation

HTTPlug allows you to write reusable libraries that need an HTTP client without binding to a specific implementation.

Read more about the why and how of the HTTP client abstraction in our documentation.

HTTP Clients

Use your HTTP Client of choice

We provide adapters for existing HTTP Clients, so you can use your regular tools, even in compatible third-party packages. Furthermore, you can implement your own, if you would like to.

Plugins

Separate logic using plugins

Need to log each request? Authenticate a request? It's easy. Our powerful plugin system allows you to add custom logic to the request's lifecycle.

They are using HTTPlug

PHP Geocoder
PHP Geocoder
Fetches geocode data from many different APIs.
Mailgun
Mailgun
API client for Mailgun email service.
FOSHttpCache
FOSHttpCache
Integrate your application with HTTP caching proxy such as Varnish.
KNPLabs Github Api
KNPLabs Github client
An API client for GitHub.
LinkedIn
LinkedIn API client
An unofficial API client for communicating with LinkedIn API.
Swap
Swap
A money currency converter library.
Sparkpost
SparkPost API client
An API client for sending mails with SparkPost.
Payum
Payum
Everything you need regarding payment integration with different providers.
Stormpath
Stormpath
Authenticateion as a service. Stormpath is a hosted API service for creating and managing user accounts.
Docker PHP
Docker PHP
A Docker client written in PHP.
Payum
Flint's Stampie
A wrapper for different mail providers.