Browse free open source HTTP Clients and projects below. Use the toggles on the left to filter open source HTTP Clients by OS, license, language, programming language, and project status.

  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 1
    AIOHTTP

    AIOHTTP

    Asynchronous HTTP client/server framework for asyncio and Python

    Asynchronous HTTP Client/Server for asyncio and Python. AIOHTTP supports both client and server side of HTTP protocol. A long awaited new feature is tracing client request life cycle to figure out when and why client request spends a time waiting for connection establishment, getting server response headers etc. Now it is possible by registering special signal handlers on every request processing stage. The main change is dropping yield from support and using async/await everywhere. Farewell, Python 3.4. You often want to send some sort of data in the URL’s query string. If you were constructing the URL by hand, this data would be given as key/value pairs in the URL after a question mark, e.g. httpbin.org/get?key=val. Requests allows you to provide these arguments as a dict, using the params keyword argument. aiohttp internally performs URL canonicalization before sending request.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 2

    Feign

    Make writing Java http clients easier

    Feign is a Java to HTTP client binder that was built primarily to make writing Java http clients easier. Inspired by previous projects Retrofit, JAXRS-2.0 and WebSocket, Feign was designed to reduce the complexity that is often involved in binding the Denominator uniformly to HTTP APIs, no matter the ReSTfulness. Feign works by processing annotations into a templatized request, to which arguments are applied in a straightforward manner before output. While it may only support text-based APIs, it simplifies system aspects dramatically and makes it much easier to unit test your conversions. Feign makes use of great tools like Jersey and CXF for writing Java clients for ReST or SOAP services. It also lets you write your own code on top of http libraries, and connects your code to http APIs with little overhead.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 3
    libhv

    libhv

    Network library for developing TCP/UDP/SSL/HTTP/WebSocket/MQTT client

    Like libevent, libev, and libuv, libhv provides event loop with non-blocking IO and timer, but simpler api and richer protocols. Cross-platform (Linux, Windows, MacOS, BSD, Solaris, Android, iOS) High-performance EventLoop (IO, timer, idle, custom) TCP/UDP client/server/proxy. TCP supports heartbeat, reconnect, upstream, MultiThread-safe write and close, etc. Built-in common unpacking modes (FixedLength, Delimiter, LengthField) RUDP support: WITH_KCP. SSL/TLS support: (via WITH_OPENSSL or WITH_GNUTLS or WITH_MBEDTLS) HTTP client/server (support https http1/x http2 grpc). HTTP supports static service, indexof service, proxy service, sync/async API handler. HTTP supports RESTful, router, middleware, keep-alive, chunked, SSE, etc. WebSocket client/server.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 4
    urllib3

    urllib3

    Python HTTP library with thread-safe connection pooling

    urllib3 is a powerful, user-friendly HTTP client for Python. Much of the Python ecosystem already uses urllib3 and you should too. Thread safety, connection pooling. Client-side TLS/SSL verification. File uploads with multipart encoding. Helpers for retrying requests and dealing with HTTP redirects. Support for gzip, deflate, brotli, and zstd encoding. Proxy support for HTTP and SOCKS. 100% test coverage. Professional support for urllib3 is available as part of the Tidelift Subscription. Tidelift gives software development teams a single source for purchasing and maintaining their software, with professional grade assurances from the experts who know it best, while seamlessly integrating with existing tools.
    Downloads: 3 This Week
    Last Update:
    See Project
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 5
    RestSharp

    RestSharp

    Simple REST and HTTP API Client for .NET

    RestSharp is probably the most popular HTTP client library for .NET. Featuring automatic serialization and deserialization, request and response type detection, variety of authentications and other useful features, it is being used by hundreds of thousands of projects. RestSharp passed over 32 million downloads on NuGet, with average daily download count of 10,000. It's being used by many popular OSS projects, including Roslyn and Swagger. The main purpose of RestSharp is to make synchronous and asynchronous calls to remote resources over HTTP. As the name suggests, the main audience of RestSharp are developers who use REST APIs. However, RestSharp can call any API over HTTP (but not HTTP/2), as long as you have the resource URI and request parameters that you want to send comply with W3C HTTP standards. RestSharp can take care of serializing the request body to JSON or XML and deserialize the response. It can also form a valid request URI based on different parameter kinds.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    plow

    plow

    A high-performance HTTP benchmarking tool

    Plow is an HTTP(S) benchmarking tool, written in Golang. It uses excellent fast HTTP instead of Go's default net/http due to its lightning-fast performance. Plow runs at specified connections (option -c) concurrently and real-time records summary statistics, histogram of execution time and calculates percentiles to display on Web UI and terminal. It can run for a set duration( option -d), for a fixed number of requests(option -n), or until Ctrl-C is interrupted. The implementation of real-time computing Histograms and Quantiles using stream-based algorithms inspired by Prometheus with low memory and CPU bounds. so it's almost no additional performance overhead for benchmarking.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    Brynet

    Brynet

    A Header-Only cross-platform C++ TCP network library

    Header Only Cross-platform high-performance TCP network library using C++ 11. The server uses two network threads and one logic thread, the client uses one network (also process logic) thread. Every packet size is 46 bytes. Every packet contains the client's id. Server broadcast packets to all clients when recv one packet from any client. The client sends one packet when recv packet from the server and the packet's id is equal self.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 8
    Coraza

    Coraza

    OWASP Coraza WAF is a golang modsecurity compatible firewall library

    Coraza is an open-source, enterprise-grade, high-performance Web Application Firewall (WAF) ready to protect your beloved applications. It is written in Go, supports ModSecurity SecLang rulesets and is 100% compatible with the OWASP Core Rule Set. Coraza is a drop-in alternative to replace the soon-to-be abandoned Trustwave ModSecurity Engine and supports industry-standard SecLang rule sets. Coraza runs the OWASP Core Rule Set (CRS) to protect your web applications from a wide range of attacks, including the OWASP Top Ten, with a minimum of false alerts. CRS protects from many common attack categories including: SQL Injection (SQLi), Cross Site Scripting (XSS), PHP & Java Code Injection, HTTPoxy, Shellshock, Scripting/Scanner/Bot Detection & Metadata & Error Leakages. Coraza is a library at its core, with many integrations to deploy on-premise Web Application Firewall instances.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 9
    CppServer

    CppServer

    Fast and low latency asynchronous socket server & client C++ library

    Ultra-fast and low latency asynchronous socket server & client C++ library with support TCP, SSL, UDP, HTTP, HTTPS, WebSocket protocols, and 10K connections problem solution. Cross platform (Linux, MacOS, Windows) Asynchronous communication. Supported CPU scalability designs: IO service per thread, thread pool. Supported transport protocols: TCP, SSL, UDP, UDP multicast. Supported Web protocols: HTTP, HTTPS, WebSocket, WebSocket secure. Supported Swagger OpenAPI iterative documentation. Supported message protocol based on Fast Binary Encoding.
    Downloads: 1 This Week
    Last Update:
    See Project
  • The All-in-One Commerce Platform for Businesses - Shopify Icon
    The All-in-One Commerce Platform for Businesses - Shopify

    Shopify offers plans for anyone that wants to sell products online and build an ecommerce store, small to mid-sized businesses as well as enterprise

    Shopify is a leading all-in-one commerce platform that enables businesses to start, build, and grow their online and physical stores. It offers tools to create customized websites, manage inventory, process payments, and sell across multiple channels including online, in-person, wholesale, and global markets. The platform includes integrated marketing tools, analytics, and customer engagement features to help merchants reach and retain customers. Shopify supports thousands of third-party apps and offers developer-friendly APIs for custom solutions. With world-class checkout technology, Shopify powers over 150 million high-intent shoppers worldwide. Its reliable, scalable infrastructure ensures fast performance and seamless operations at any business size.
    Learn More
  • 10
    Jimp

    Jimp

    An image processing library written entirely in JavaScript for Node

    An image processing library for Node written entirely in JavaScript, with zero native dependencies. If you're using this library with TypeScript the method of importing slightly differs from JavaScript. Instead of using require, you must import it with ES6 default import scheme. If you're using a web bundles (webpack, rollup, parcel) you can benefit from using the module build of jimp. Using the module build will allow your bundler to understand your code better and exclude things you aren't using. If you're using webpack you can set process.browser to true and your build of jimp will exclude certain parts, making it load faster. The static Jimp.read method takes the path to a file, URL, dimensions, a Jimp instance or a buffer and returns a Promise. In some cases, you need to pass additional parameters with an image's URL.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    TinyGSM

    TinyGSM

    A small Arduino library for GSM modules, that just works

    A small Arduino library for GSM modules that just works. This library is easy to integrate with lots of sketches that use Ethernet or WiFi. PubSubClient (MQTT), Blynk, HTTP Client, and File Download examples are provided. Arduino GSM library uses 15868 bytes (49%) of Flash and 1113 bytes (54%) of RAM in a similar scenario. TinyGSM also pulls data gently from the modem (whenever possible), so it can operate on very little RAM. Now, you have more space for your experiments. TCP (HTTP, MQTT, Blynk, ...) All modules support TCP connections. Most modules support multiple simultaneous connections. TCP and SSL connections can usually be mixed up to the total number of possible connections. Many GSM modems, WiFi, and radio modules can be controlled by sending AT commands over Serial. TinyGSM knows which commands to send, and how to handle AT responses, and wraps that into the standard Arduino Client interface.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    POCO C++ Libraries

    POCO C++ Libraries

    Cross-platform C++ libraries with a network/internet focus.

    NOTE: Current source code as well as bugs/patches are on GitHub: https://github.com/pocoproject/poco/ C++ class libraries for network-centric, portable applications, integrated perfectly with the C++ Standard Library. Includes network protocols (Sockets, HTTP, FTP, SMTP, POP3, etc.), SQL database access and XML parsing. Licensed under Boost license.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 13
    Advanced C/C++ library(ACL) for UNIX-like OS and WIN32 OS, including sync/async/ssl iostream for net/file, thread pool, process pool, db pool, server framework, event, memory, string, array/hash/ring/list, xml and json parser, http/smtp/icmp protocol, SSL/TLS, C unit test, etc
    Leader badge
    Downloads: 6 This Week
    Last Update:
    See Project
  • 14
    NetTool is a developer tool for monitoring and manipulating application-level network messages, particularly useful for debugging web applications and web services. There are two components to NetTool: the HTTP Client, and the TCP Tunnel.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 15
    Highly portable API written in C that implements the client side of the HTTP 1.1 Protocol as Defined in RFC 2616,2617. Can be easily ported to any platform that supports standard C calls and Berkeley sockets.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    Java API for LiveJournal: XML-RPC services, http client, *.bml client. Requires Java 1.5+
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    APIAuto

    APIAuto

    The most advanced tool for HTTP API

    The most powerful and easy-to-use HTTP interface tool for agile development, machine learning zero-code testing, code generation and static inspection, document generation and cursor suspension comments. A one-stop experience integrating documentation, testing, mocking, debugging, and management, as well as efficient and easy-to-use shortcut keys such as one-key formatting, commenting/uncommenting, etc. In terms of common functions, it far exceeds Postman, Swagger, YApi and other open-source and commercial API documentation/testing tools, and can import use cases and documents with one click. Support GET, POST, PUT, PATCH, DELETE, HEAD and other HTTP Method and Content-Type, URL /{Path}/{Variable}. Tencent's internal users include IEG Interactive Entertainment Business Group, TEG Technology Engineering Business Group, CSIG Cloud and Smart Business Group, etc.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    Apisauce

    Apisauce

    Axios + standardized errors + request/response transforms

    Talking to APIs doesn't have to be awkward anymore. Low-fat wrapper for the amazing Axios HTTP client library. All responses follow the same flow: success and failure alike. Responses have a problem property to help guide exception flow, attach functions that get called each request, attach functions that change all request or response data. Detects connection issues (on React Native). The only required property is baseURL and it should be the starting point for your API. It can contain a sub-path and a port as well. The responses are promise-based, so you'll need to handle things in a .then() function. The promise is always resolved with a response object. Even if there was a problem with the request! This is one of the goals of this library. It ensures sane calling code without having to handle .catch and has 2 separate flows.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    A Java library that provides accelerated downloads of HTTP/HTTPS URIs via the GET and POST methods. Works similar to download managers as requests are made in parallel and chunked for speed.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    Cicada

    Cicada

    Fast lightweight HTTP service framework

    Fast, lightweight Web framework based on Netty; without too much dependency, and the core jar package is only 30KB. Configuration files can also be read in multiple environments, just add VM parameters, also ensure that the parameter name and file name are consistent.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Dredd

    Dredd

    Language-agnostic HTTP API Testing Tool

    Dredd is a language-agnostic command-line tool for validating API description documents against the backend implementation of the API. Dredd reads your API description and step by step validates whether your API implementation replies with responses as they are described in the documentation. Dredd supports writing hooks — a glue code for each test setup and teardown.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Drill

    Drill

    Drill is an HTTP load testing application written in Rust

    Drill is an HTTP load-testing application written in Rust. The main goal for this project is to build a really lightweight tool as an alternative to other that require JVM and other stuff. You can write benchmark files, in YAML format, describing all the stuff you want to test. It was inspired by Ansible syntax because it is really easy to use and extend. As you can see, you can play with interpolations in different ways. This will let you specify a benchmark with different requests and dependencies between them. Right now, the easiest way to get drill is to go to the latest release page and download the binary file for your platform. OpenSSL is needed in order to compile Drill, whether it is through cargo install or when compiling from source with cargo build.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    A XML pull-parse library for Java 1.2, designed for processing XML protocol messages in the most efficient way possible. Contains a complete HTTP client library.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Faraday

    Faraday

    Simple, but flexible HTTP client library, with support for backends

    Faraday is an HTTP client library abstraction layer that provides a common interface over many adapters (such as Net::HTTP) and embraces the concept of Rack middleware when processing the request/response cycle. You probably don't want to use Faraday directly in your project, as it will lack an actual client library to perform requests. Instead, you probably want to have a look at Awesome Faraday for a list of available adapters. The best starting point is the Faraday Website, with its introduction and explanation. This library aims to support and is tested against the currently officially supported Ruby implementations. This means that, even without a major release, we could add or drop support for Ruby versions, following their EOL. Currently that means we support Ruby 2.6+. You can also install the faraday_middleware extension gem to access a collection of useful Faraday middleware.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    Fast Android Networking

    Fast Android Networking

    A Complete Fast Android Networking Library that also supports HTTP/2

    Fast Android Networking Library is a powerful library for doing any type of networking in Android applications which is made on top of OkHttp Networking Layer. Fast Android Networking Library takes care of each and everything. So you don't have to do anything, just make a request and listen for the response. The recent removal of HttpClient in Android Marshmallow(Android M) made other networking libraries obsolete. No other single library does and everything like making requests, downloading any type of file, uploading file, loading images from the network in ImageView, etc. There are some libraries but they are outdated. No other library provides a simple interface for doing all types of things in networking like setting priority, canceling, etc. As it uses Okio , No more GC overhead in android applications. Okio is made to handle GC overhead while allocating memory. Okio does some clever things to save CPU and memory.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next