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

  • Build Agents and Models on One Platform Icon
    Build Agents and Models on One Platform

    Everything you need to build production-ready agents and models. Access 200+ Google and third-party AI models and tools.

    Gemini Enterprise Agent Platform is Google Cloud's comprehensive platform for developers to build, scale, govern, and optimize agents and models. Choose from Google's most advanced models and third-party models like Anthropic's Claude Model Family.
    Try It Free
  • $300 Free Credits for Your Google Cloud Projects Icon
    $300 Free Credits for Your Google Cloud Projects

    Start building on Google Cloud with $300 in free credits. No commitment, no credit card required until you're ready to scale.

    Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
    Start Free Trial
  • 1
    Gopeed

    Gopeed

    High speed downloader that supports all platforms

    Gopeed (full name Go Speed), a high-speed downloader developed by Golang + Flutter, supports (HTTP, BitTorrent, Magnet) protocol, and supports all platforms. This project is divided into two parts, the front end uses flutter, the back end uses Golang, and the two sides communicate through the http protocol. On the unix system, unix socket is used, and on the windows system, tcp protocol is used.
    Downloads: 54 This Week
    Last Update:
    See Project
  • 2
    pgrok

    pgrok

    HTTP/TCP reverse tunnel solution through SSH remote port forwarding

    The pgrok is a multi-tenant HTTP/TCP reverse tunnel solution through remote port forwarding from the SSH protocol. This is intended for small teams that need to expose the local development environment to the public internet, and you need to bring your own domain name and SSO provider. It gives a stable subdomain for every user and gated by your SSO through the OIDC protocol. Think of this as a bare-bones alternative to the ngrok's $65/user/month enterprise tier. Trying to put this behind a production system will blow up your SLA. For individuals and production systems, just buy ngrok, it is still my favorite.
    Downloads: 47 This Week
    Last Update:
    See Project
  • 3
    aria2

    aria2

    aria2 is a lightweight multi-protocol & multi-source download utility

    aria2 is a lightweight multi-protocol & multi-source command-line download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink. aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces. aria2 can download a file from multiple sources/protocols and tries to utilize your maximum download bandwidth. Really speeds up your download experience. aria2 doesn’t require much memory and CPU time. When disk cache is off, the physical memory usage is typically 4MiB (normal HTTP/FTP downloads) to 9MiB (BitTorrent downloads). CPU usage in BitTorrent with a download speed of 2.8MiB/sec is around 6%. aria2 supports The Metalink Download Description Format (aka Metalink v4), Metalink version 3, and Metalink/HTTP. Metalink offers the file verification, HTTP/FTP/SFTP/BitTorrent integration and various configurations for language, location, OS, etc.
    Downloads: 37 This Week
    Last Update:
    See Project
  • 4
    Jellyfin Android TV

    Jellyfin Android TV

    Android TV Client for Jellyfin

    Jellyfin Android TV is a Jellyfin client for Android TV, Nvidia Shield, and Amazon Fire TV devices. We welcome all contributions and pull requests! If you have a larger feature in mind please open an issue so we can discuss the implementation before you start. Jellyfin is the volunteer-built media solution that puts you in control of your media. Stream to any device from your own server, with no strings attached. Your media, your server, your way. Jellyfin enables you to collect, manage, and stream your media. Run the Jellyfin server on your system and gain access to the leading free-software entertainment system, bells and whistles included.
    Downloads: 35 This Week
    Last Update:
    See Project
  • Stop vibe-debugging. Icon
    Stop vibe-debugging.

    Plug Claude into your app's actual errors.

    AppSignal's MCP server hands Claude, Cursor, or Zed your real errors, traces, and the deploy that shipped them. AI writes the fix; you review the diff.
    Free 30 days.
  • 5
    go-mitmproxy

    go-mitmproxy

    mitmproxy implemented with golang

    go-mitmproxy is a Golang implementation of mitmproxy that supports man-in-the-middle attacks and parsing, monitoring, and tampering with HTTP/HTTPS traffic. Parses HTTP/HTTPS traffic and displays traffic details via a web interface. Supports a plugin mechanism for easily extending functionality. Various event hooks can be found in the examples directory. HTTPS certificate handling is compatible with mitmproxy and stored in the ~/.mitmproxy folder. If the root certificate is already trusted from the previous use of mitmproxy, go-mitmproxy can use it directly. Map Remote and Map Local support.
    Downloads: 30 This Week
    Last Update:
    See Project
  • 6
    Restfox

    Restfox

    Offline-first web HTTP client

    Offline-first web HTTP client. Package available through snap can be installed using sudo snap install restfox. There are precompiled binaries in the releases page.
    Downloads: 24 This Week
    Last Update:
    See Project
  • 7
    http4k

    http4k

    The Functional toolkit for Kotlin HTTP applications

    http4k is a lightweight but fully-featured HTTP toolkit written in pure Kotlin that enables the serving and consuming of HTTP services in a functional and consistent way. http4k applications are just Kotlin functions. http4k consists of a lightweight core library, http4k-core, providing a base HTTP implementation and Server/Client implementations based on the JDK classes. Further servers, clients, serverless, templating, websockets capabilities are then implemented in add-on modules. http4k apps can be simply mounted into a running Server, Serverless platform, or compiled to GraalVM and run as a super-lightweight binary. Apart the from Kotlin StdLib, http4k-core module has ZERO dependencies and weighs in at ~1mb. Add-on modules only have dependencies required for specific implementation.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 8
    Axios

    Axios

    Promise based HTTP client for the browser and node.js

    Axios is a promise-based HTTP client for the browser and Node.js. It makes sending asynchronous HTTP requests to REST endpoints and performing CRUD operations much easier. The Axios library can be used in plain JavaScript or with more advanced frameworks like Vue.js or React.js.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 9
    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: 19 This Week
    Last Update:
    See Project
  • Auth0 B2B Essentials: SSO, MFA, and RBAC Built In Icon
    Auth0 B2B Essentials: SSO, MFA, and RBAC Built In

    Unlimited organizations, 3 enterprise SSO connections, role-based access control, and pro MFA included. Dev and prod tenants out of the box.

    Auth0's B2B Essentials plan gives you everything you need to ship secure multi-tenant apps. Unlimited orgs, enterprise SSO, RBAC, audit log streaming, and higher auth and API limits included. Add on M2M tokens, enterprise MFA, or additional SSO connections as you scale.
    Sign Up Free
  • 10
    Interactsh

    Interactsh

    An OOB interaction gathering server and client library

    Interactsh is an open-source tool for detecting out-of-band interactions. It is a tool designed to detect vulnerabilities that cause external interactions. Interactsh Cli client requires go1.17+ to install successfully. interactsh-client with -sf, -session-file flag can be used store/read the current session information from user defined file which is useful to resume the same session to poll the interactions even after the client gets stopped or closed. Running the interactsh-client in verbose mode (v) to see the whole request and response, along with an output file to analyze afterwards. Using the server flag, interactsh-client can be configured to connect with a self-hosted Interactsh server, this flag accepts single or multiple server separated by comma. Default servers are subject to change/rotate/down at any time, thus we recommend using a self-hosted interactsh server if you are experiencing issues with the default server.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 11
    bombardier

    bombardier

    Fast cross-platform HTTP benchmarking tool written in Go

    bombardier is an HTTP(S) benchmarking tool. It is written in Go programming language and uses excellent fast HTTP instead of Go's default HTTP library, because of its lightning-fast performance. With bombardier v1.1 and higher, you can now use the net/HTTP client if you need to test HTTP/2.x services or want to use a more RFC-compliant HTTP client.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 12
    Sōzu

    Sōzu

    Sōzu HTTP reverse proxy, configurable at runtime, fast and safe

    Open source HTTP reverse proxy built in Rust for immutable infrastructures. Most existing tools have a static vision of production: a service is installed once on a long-lived server, updated from time to time, with configuration rarely changing. There's now a shift in infrastructure to short-lived virtual machines and hundreds of new deployments per day, and the usual tools reach their limits. How do we reconcile a dynamic environment with availability guarantees? How can we get "zero downtime" deployments for critical services? SŌZU is a HTTP reverse proxy built in Rust, that can handle fine-grained configuration changes at runtime without reloads, and is designed to never ever stop. SŌZU receives and handles configuration changes at runtime and updates its internal configuration without restarts. You can update the configuration multiple times per second, and it will take care of lingering connections.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 13
    Tesla

    Tesla

    The flexible HTTP client library for Elixir

    The flexible HTTP client library for Elixir, with support for middleware and multiple adapters. Tesla is an HTTP client loosely based on Faraday. It embraces the concept of middleware when processing the request/response cycle. Define module with use Tesla and choose from a variety of middleware. Tesla is built around the concept of composable middlewares. This is very similar to how Plug Router works. All HTTP functions, such as Tesla.get/3 and Tesla.post/4, can take a dynamic client as the first argument. This allows using convenient syntax for modifying the behavior in runtime. Tesla supports multiple HTTP adapter that do the actual HTTP request processing. Each piece of the stream will be encoded as JSON and sent as a new line (conforming to JSON stream format). You can set the adapter to Tesla.Mock in tests.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 14
    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: 12 This Week
    Last Update:
    See Project
  • 15
    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: 11 This Week
    Last Update:
    See Project
  • 16
    RESTinio

    RESTinio

    HTTP/WebSocket server C++14 library

    RESTinio is a header-only C++14 library that gives you an embedded HTTP/WebSocket server. It is based on the standalone version of ASIO and is targeted primarily for the asynchronous processing of HTTP requests. Since v.0.4.1 Boost::ASIO (1.66 or higher) is also supported. Consider the task of writing a C++ application that must support some REST API, RESTinio represents our solution for that task. Server runs on the main thread, and responds to all requests with a hello-world message. Of course, you've got access to the structure of a given HTTP request, so you can apply complex logic for handling requests. Async request handling. Cannot get the response data immediately? That's ok, store the request handle somewhere and/or pass it to another execution context and get back to it when the data is ready.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 17
    HTTPX

    HTTPX

    A next generation HTTP client for Python

    HTTPX is a fully featured HTTP client for Python 3, which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2. HTTPX should currently be considered in beta. A 1.0 release is expected to be issued sometime in 2021. International domains and URLs, keep-alive and connection pooling, sessions with cookie persistence, browser-style SSL verification. Basic/digest authentication, elegant key/value cookies, automatic decompression. Automatic content decoding, unicode response bodies, multipart file uploads, HTTP(S) proxy support. Connection timeouts, streaming downloads, .netrc support, and chunked requests. For more advanced topics, see the Advanced Usage section, the async support section, or the HTTP/2 section. The Developer Interface provides a comprehensive API reference.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 18
    Hoverfly

    Hoverfly

    Lightweight service virtualization/ API simulation / API mocking tool

    Hoverfly is a lightweight, open source API simulation tool. Using Hoverfly, you can create realistic simulations of the APIs your application depends on. Replace unreliable test systems and restrictive API sandboxes with high-performance simulations in seconds. Run on MacOS, Windows or Linux, or use native Java or Python language bindings to get started quickly. Simulate API latency or failure when required by writing custom scripts in the language of your choice.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 19
    elastic4s

    elastic4s

    Elasticsearch Scala Client - Reactive, Non Blocking, Type Safe, HTTP

    Elastic4s is a concise, idiomatic, reactive, type safe Scala client for Elasticsearch. The official Elasticsearch Java client can of course be used in Scala, but due to Java's syntax it is more verbose and it naturally doesn't support classes in the core Scala core library nor Scala idioms such as typeclass support. Elastic4s's DSL allows you to construct your requests programatically, with syntactic and semantic errors manifested at compile time, and uses standard Scala futures to enable you to easily integrate into an asynchronous workflow. The aim of the DSL is that requests are written in a builder-like way, while staying broadly similar to the Java API or Rest API. Each request is an immutable object, so you can create requests and safely reuse them, or further copy them for derived requests. Because each request is strongly typed your IDE or editor can use the type information to show you what operations are available for any request type.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 20
    hyper for Rust

    hyper for Rust

    An HTTP library for Rust

    hyper is a fast HTTP implementation written in and for Rust. A Client for talking to web services. A Server for building those web services. Blazing fast thanks to Rust. High concurrency with non-blocking sockets. HTTP/1 and HTTP/2 support. hyper is a relatively low-level library, meant to be a building block for libraries and applications. If you are looking for a convenient HTTP client, then you may wish to consider reqwest. If you are looking for a convenient HTTP server, then you may wish to consider warp. Both are built on top of this library. A Service lets you define how to respond to incoming requests. While it is possible to implement the trait directly, there are a few patterns that are common when using Hyper. We’ve included some helpers for when these patterns fit our needs. An echo server will listen for incoming connections and send back the request body as the response body on POST requests.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 21
    sish

    sish

    HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH

    An open source serveo/ngrok alternative. Builds are made automatically for each commit to the repo and are pushed to Dockerhub. Builds are tagged using a commit sha, branch name, tag, latest if released on main. Each release builds separate sish binaries that can be downloaded from here for various OS/archs. Feel free to either use the automated binaries or to build your own. If you submit a PR, images are not built by default and will require a retag from a maintainer to be built. You can also use Docker Compose to setup your sish instance. This includes taking care of SSL via Let's Encrypt for you. This uses the adferrand/dnsrobocert container to handle issuing wildcard certifications over DNS. SSH can normally forward local and remote ports. This service implements an SSH server that only handles forwarding and nothing else. The service supports multiplexing connections over HTTP/HTTPS with WebSocket support.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 22
    Hurl

    Hurl

    Hurl, run and test HTTP requests with plain text

    Hurl is a command line tool that runs HTTP requests defined in a simple plain text format. It can chain requests, capture values and evaluate queries on headers and body responses. Hurl is very versatile: it can be used for both fetching data and testing HTTP sessions. Hurl makes it easy to work with HTML content, REST / SOAP / GraphQL APIs, or any other XML / JSON-based APIs. Hurl can run HTTP requests but can also be used to test HTTP responses. Different types of queries and predicates are supported, from XPath and JSONPath on body response, to assert on status code and response headers.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 23
    tus-js-client

    tus-js-client

    A pure JavaScript client for the tus resumable upload protocol

    tus-js-client is a JavaScript client for the tus resumable upload protocol, enabling reliable and efficient file uploads, especially for large files or unstable network conditions.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 24
    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: 8 This Week
    Last Update:
    See Project
  • 25
    HTTP

    HTTP

    Rust HTTP types

    This crate is a general purpose library for common types found when working with the HTTP protocol. You’ll find Request and Response types for working as either a client or a server as well as all of their components. Notably you’ll find Uri for what a Request is requesting, a Method for how it’s being requested, a StatusCode for what sort of response came back, a Version for how this was communicated, and HeaderName/HeaderValue definitions to get grouped in a HeaderMap to work with request/response headers. You will notably not find an implementation of sending requests or spinning up a server in this crate. It’s intended that this crate is the “standard library” for HTTP clients and servers without dictating any particular implementation. Note that this crate is still early on in its lifecycle so the support libraries that integrate with the http crate are a work in progress! Stay tuned and we’ll be sure to highlight crates here in the future.
    Downloads: 8 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next
Auth0 Logo