Skip to content
SPECIFICTION
Get listed

Hurl

hurl.dev

Free plan WindowsmacOSLinuxSelf-hosted
Visit hurl.dev
Spec score 8.2 #19 of 38 in API clients

What it is

Hurl is a command-line tool for running HTTP requests written in a plain-text format. It can fetch data or test HTTP sessions, including flows where later requests use values captured earlier. It can evaluate queries against response headers and bodies. Hurl works with HTML, REST, SOAP, GraphQL, XML, and JSON APIs, and examples cover assertions for status, headers, cookies, XPath, JSONPath, response duration, and SHA-256 body hashes. For CI/CD, it can produce text, JUnit, TAP, and HTML reports; its documentation covers GitHub Actions and GitLab CI/CD. The lightweight binary is written in Rust, with an HTTP engine powered by libcurl. Installation options include binaries or packages for Linux, macOS, and Windows, as well as Docker, Cargo, conda-forge, and npm. The precompiled Linux binary requires libc 2.35 or newer. Windows installation requires a separately installed Visual C++ Redistributable Package. Hurl is free under the Apache License, Version 2.0.

Spec sheet

Purpose
Hurl is a command-line tool that runs HTTP requests defined in a plain-text format and can be used to fetch data or test HTTP sessions.Read 8 Oct 2026 · hurl.dev
Free plan
YesRead 21 Sep 2026 · hurl.dev
License
The Hurl license page contains the Apache License, Version 2.0.Read 8 Oct 2026 · hurl.dev
API formats
The site says Hurl works with HTML, REST, SOAP, GraphQL, XML, and JSON APIs.Read 8 Oct 2026 · hurl.dev
Assertions
Hurl examples show assertions for HTTP status, headers, cookies, XPath, JSONPath, response duration, and SHA-256 body hashes.Read 8 Oct 2026 · hurl.dev
CI integrations
The documentation describes using Hurl in GitHub Actions and GitLab CI/CD pipelines.Read 8 Oct 2026 · hurl.dev
CI reports
Hurl supports text, JUnit, TAP, and HTML reports for CI/CD use.Read 8 Oct 2026 · hurl.dev
GraphQL support
YesRead 21 Sep 2026 · hurl.dev
Installation
The installation page lists binaries or package installation for Linux, macOS, and Windows, as well as Docker, Cargo, conda-forge, and npm options.Read 8 Oct 2026 · hurl.dev
Linux requirement
The precompiled Linux binary listing specifies libc version 2.35 or newer, and the Debian package instructions cover Debian 12 or newer and Ubuntu 22.04 and 24.04.Read 8 Oct 2026 · hurl.dev
Request chaining
Hurl can chain requests, capture values, and evaluate queries on response headers and bodies.Read 8 Oct 2026 · hurl.dev
Security testing
The security tutorial explains using Hurl to test server-side validation, CSRF protection, and whether served HTML contains comments.Read 8 Oct 2026 · hurl.dev
Support and feedback
The site welcomes feedback, suggestions, bug reports, and improvements through its GitHub feedback link.Read 8 Oct 2026 · hurl.dev
Technology
Hurl is a lightweight binary written in Rust, with its HTTP engine powered by libcurl.Read 8 Oct 2026 · hurl.dev
Windows requirement
Windows installation requires the Visual C++ Redistributable Package to be installed manually because it is not included in the installer.Read 8 Oct 2026 · hurl.dev

Plans and prices

Hurl Free Open-source command-line tool; no paid plans stated Read 8 Oct 2026 · hurl.dev

Every Hurl plan and price →

Strong points and limits

Strong points

  • Chains requests and captures response values
  • Supports HTML, REST, SOAP, GraphQL, XML, and JSON
  • Offers text, JUnit, TAP, and HTML reports
  • Free under Apache License, Version 2.0

Limits

  • Linux binary requires libc 2.35 or newer
  • Windows requires a separate Visual C++ Redistributable
  • No free trial is listed

Who it suits

Hurl suits developers who want to define HTTP requests as plain text and run API or session checks from the command line. Its request chaining, assertions, and CI reports also suit teams running checks in automated pipelines.

Verdict

Hurl combines plain-text HTTP requests with response assertions and CI reporting. Check its Linux and Windows requirements before choosing an installation route.

Where Specifiction places it

Alternatives to HurlAll alternatives →