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

  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • Go from Code to Production URL in Seconds Icon
    Go from Code to Production URL in Seconds

    Cloud Run deploys apps in any language instantly. Scales to zero. Pay only when code runs.

    Skip the Kubernetes configs. Cloud Run handles HTTPS, scaling, and infrastructure automatically. Two million requests free per month.
    Start Free
  • 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: 55 This Week
    Last Update:
    See Project
  • 2
    undici

    undici

    An HTTP/1.1 client, written from scratch for Node.js

    An HTTP/1.1 client, written from scratch for Node.js. This section documents our most commonly used API methods. Additional APIs are documented in their own files within the docs folder and are accessible via the navigation list on the left side of the docs site. Garbage collection in Node is less aggressive and deterministic (due to the lack of clear idle periods that browsers have through the rendering refresh rate) which means that leaving the release of connection resources to the garbage collector can lead to excessive connection usage, reduced performance (due to less connection re-use), and even stalls or deadlocks when running out of connections.
    Downloads: 35 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: 34 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: 29 This Week
    Last Update:
    See Project
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Start Free
  • 5
    Hetty

    Hetty

    An HTTP toolkit for security research

    Hetty is an HTTP toolkit for security research. It aims to become an open-source alternative to commercial software like Burp Suite Pro, with powerful features tailored to the needs of the infosec and bug bounty communities. Machine-in-the-middle (MITM) HTTP proxy, with logs and advanced search. HTTP client for manually creating/editing requests, and replay proxied requests. Intercept requests and responses for manual review (edit, send/receive, cancel) Scope support, to help keep work organized. Easy-to-use web-based admin interface. Project-based database storage, to help keep work organized.
    Downloads: 23 This Week
    Last Update:
    See Project
  • 6
    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: 21 This Week
    Last Update:
    See Project
  • 7
    Sub-Store

    Sub-Store

    Advanced Subscription Manager for QX, Loon, Surge, Stash, etc.

    Advanced subscription manager for QX, Loon, Surge, Stash and ShadowRocket. Conversion among various formats. Subscription formatting. Collect multiple subscriptions in one URL.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 8
    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: 13 This Week
    Last Update:
    See Project
  • 9
    oha

    oha

    HTTP load generator, inspired by rakyll/hey with tui animation

    oha is a tiny program that sends some load to a web application and shows real-time tui inspired by rakyll/hey. This program is written in Rust and powered by tokio and beautiful tui by tui-rs. -q option works differently from rakyll/hey. It's set the overall query per second instead of for each worker.
    Downloads: 11 This Week
    Last Update:
    See Project
  • Cut Data Warehouse Costs by 54% Icon
    Cut Data Warehouse Costs by 54%

    Easily migrate from Snowflake, Redshift, or Databricks with free tools.

    BigQuery delivers 54% lower TCO with exabyte scale and flexible pricing. Free migration tools handle the SQL translation automatically.
    Start Free
  • 10
    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: 10 This Week
    Last Update:
    See Project
  • 11
    UBoat HTTP

    UBoat HTTP

    HTTP Botnet

    A proof-of-concept HTTP Botnet designed to replicate a full weaponized commercial botnet. This project should be used for authorized testing or educational purposes only. The main objective behind creating this offensive project was to aid security researchers and to enhance the understanding of commercial HTTP loader-style botnets. We hope this project helps to contribute to the malware research community and that people can develop efficient countermeasures. Written in C++ with no dependencies. Encrypted C&C communications. Persistence to prevent your control from being lost. Connection redundancy (Uses a fallback server address or domain). DDoS methods (TCP & UDP Flood). Task Creation System (Altering system HWID, Country, IP, OS.System). Remote command execution. Update and uninstall other malware. Download and execute other malware. Active as well as a passive key-logger. Enable Windows RDP. Plugin system for easy feature updates.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 12
    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: 8 This Week
    Last Update:
    See Project
  • 13
    OAuth2 (Client)

    OAuth2 (Client)

    An Elixir OAuth 2.0 Client Library

    This library can be configured to handle encoding and decoding requests and responses automatically based on the accept and/or content-type headers. An Elixir OAuth 2.0 Client Library. This library can be configured to handle encoding and decoding requests and responses automatically based on the accept and/or content-type headers. The http client library used is tesla, the default adapter is Httpc, since it comes out of the box with every Erlang instance but you can easily change it to something better.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 14
    HTTPie Desktop

    HTTPie Desktop

    Cross-platform API testing client for humans

    HTTPie Desktop is a graphical API client built on top of the popular HTTPie terminal tool, offering a user-friendly interface for testing and interacting with APIs. It combines the simplicity of HTTPie’s CLI with a modern desktop and web UI for a more visual workflow. Developers can easily build, send, and preview HTTP requests without needing to memorize commands or write scripts. The platform supports organizing work into spaces, collections, and tabs, making it ideal for managing multiple APIs and projects. It also includes AI-assisted features to help streamline request creation and improve productivity. Overall, HTTPie Desktop provides a clean, intuitive, and powerful environment for API development across devices.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 15
    httr

    httr

    httr: a friendly http package for R

    httr is superseded: only changes necessary to keep it on CRAN will be made. We recommend using httr2 instead. The aim of httr is to provide a wrapper for the curl package, customized to the demands of modern web APIs. Functions for the most important http verbs: GET(), HEAD(), PATCH(), PUT(), DELETE() and POST(). Automatic connection sharing across requests to the same website (by default, curl handles are managed automatically), cookies are maintained across requests, and an up-to-date root-level SSL certificate store is used. Requests return a standard reponse object that captures the http status line, headers and body, along with other useful information. Support for OAuth 1.0 and 2.0 with oauth1.0_token() and oauth2.0_token(). The demo directory has eight OAuth demos: four for 1.0 (twitter, vimeo, withings and yahoo) and four for 2.0 (facebook, github, google, linkedin). OAuth credentials are automatically cached within a project.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 16
    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: 5 This Week
    Last Update:
    See Project
  • 17
    dio

    dio

    A powerful HTTP client for Dart and Flutter

    A powerful HTTP client for Dart and Flutter, which supports global settings, Interceptors, FormData, aborting and canceling a request, files uploading and downloading, requests timeout, custom adapters, etc.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 18

    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: 4 This Week
    Last Update:
    See Project
  • 19
    Guzzle

    Guzzle

    An extensible PHP HTTP client

    Guzzle is a PHP HTTP client that makes it easy to send HTTP requests and trivial to integrate with web services. Simple interface for building query strings, POST requests, streaming large uploads, streaming large downloads, using HTTP cookies, uploading JSON data, etc... Can send both synchronous and asynchronous requests using the same interface. Uses PSR-7 interfaces for requests, responses, and streams. This allows you to utilize other PSR-7 compatible libraries with Guzzle. Abstracts away the underlying HTTP transport, allowing you to write environment and transport agnostic code; i.e., no hard dependency on cURL, PHP streams, sockets, or non-blocking event loops. Middleware system allows you to augment and compose client behavior.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 20
    HTTP Client

    HTTP Client

    Async HTTP/1.1+2 client for PHP based on Amp

    This package provides an asynchronous HTTP client for PHP based on Amp. Its API simplifies standards-compliant HTTP resource traversal and RESTful web service consumption without obscuring the underlying protocol. The library manually implements HTTP over TCP sockets; as such it has no dependency on ext/curl. Streams entity bodies for memory management with large transfers. Supports all standard and custom HTTP method verbs. Simplifies HTTP form submissions. Implements secure-by-default TLS. Supports cookies and sessions. Functions seamlessly behind HTTP proxies. Additionally, you might want to install the nghttp2 library to take advantage of FFI to speed up and reduce the memory usage on PHP 7.4. More extensive code examples reside in the examples directory.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 21
    Java API for GitHub

    Java API for GitHub

    Java API for GitHub

    This library defines an object oriented representation of the GitHub API. By "object oriented" we mean there are classes that correspond to the domain model of GitHub (such as GHUser and GHRepository), operations that act on them as defined as methods (such as GHUser.follow()), and those object references are used in favor of using string handle (such as GHUser.isMemberOf(GHOrganization) instead of GHUser.isMemberOf(String)) The library supports both github.com and GitHub Enterprise. Most of the GitHub APIs are covered, although there are some corners that are still not yet implemented. The library allows connecting to GitHub via several different authentication mechanisms. This library defines a common convention so that applications using this library will look at a consistent location. In this convention, the library looks at ~/.github property file. The content of the files depends on the way you want this library to authenticate as shown.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 22
    Open Directory Downloader

    Open Directory Downloader

    Indexes open directories

    Indexes open directories listings in 130+ supported formats, including FTP(S), Google Drive, Bhadoo, GoIndex, Go2Index (alternatives), Dropbox, Mediafire, GoFile, GitHub. Written in C# with .NET (Core), which means it is cross-platform! Downloading is not (yet) implemented, but is already possible when you use the resulting file into another tool (for most of the formats). When you are NOT using the self-contained releases, you need to install the latest/current Runtime version of .NET 7.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 23
    Promxy

    Promxy

    An aggregating proxy to enable HA prometheus

    Promxy is a prometheus proxy that makes many shards of prometheus appear as a single API endpoint to the user. This significantly simplifies operations and use of prometheus at scale (when you have more than one prometheus host). Promxy delivers this unified access endpoint without requiring any sidecars, custom-builds, or other changes to your prometheus infrastructure. Prometheus itself provides no real HA/clustering support. As such the best-practice is to run multiple (e.g N) hosts with the same config. Similarly prometheus has no real built-in query federation, which means that you end up with N sources in grafana which is (1) confusing to grafana users and (2) has no support for aggregation across the sources. Promxy enables an HA prometheus setup by "merging" the data from the duplicate hosts (so if there is a gap in one, promxy will fill with the other). In addition Promxy provides a single datasource for all promql queries.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 24
    cpprestsdk

    cpprestsdk

    Microsoft project for cloud-based client-server communication

    The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services. cpprestsdk is in maintenance mode and we do not recommend its use in new projects. We will continue to fix critical bugs and address security issues. Once you have the library, look at our tutorial to use the http_client. It walks through how to setup a project to use the C++ Rest SDK and make a basic Http request. HTTP client/server, JSON, URI, asynchronous streams, WebSockets client, oAuth. A powerful model for composing asynchronous operations based on C++ 11 features. Windows desktop, Windows Store (UWP), Linux, OS X, Unix, iOS, and Android. Support for Visual Studio 2015 and 2017 with debugger visualizers.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 25
    rathole

    rathole

    A lightweight and high-performance reverse proxy for NAT traversal

    A secure, stable and high-performance reverse proxy for NAT traversal, written in Rust. rathole, like frp and ngrok, can help to expose the service on the device behind the NAT to the Internet, via a server with a public IP. High Performance Much higher throughput can be achieved than frp, and more stable when handling a large volume of connections. Low Resource Consumption Consumes much fewer memory than similar tools. See Benchmark. The binary can be as small as ~500KiB to fit the constraints of devices, like embedded devices as routers. Security Tokens of services are mandatory and service-wise. The server and clients are responsible for their own configs. With the optional Noise Protocol, encryption can be configured at ease. No need to create a self-signed certificate! TLS is also supported.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next