httpbin
HTTP Request and Response Service
Decision gist · record as of 2026-08-14
Yes. httpbin is actively maintained, has no known vulnerabilities, and is widely used in the Python ecosystem (pytest-httpbin, requests). Install friction is low and it supports current Python versions (3.8–3.14). Use it as a library for HTTP client testing or deploy the Docker image as a standalone service.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.8 or later.
- The Flask framework and its dependencies (werkzeug, greenlet) must be available.
- Low install friction with a wheel distribution and seven runtime dependencies.
License · maintenance · safety
MIT or ISC (permissive) — Dual-licensed under MIT or ISC (both permissive). No restrictions on commercial or private use.
last release 2026-06-16 (59 days) · last repo commit 2026-06-16 · 84 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 493,841 downloads/mo, #6,354 on PyPI
Alternatives
Verify before relying
pip install httpbin
from httpbin import app
from flask import Flask
# Use the Flask app directly in tests or as a WSGI application
if __name__ == '__main__':
app.run()- Whether the package is intended primarily as a library dependency or as a standalone service to be run separately.
- What specific HTTP testing scenarios each endpoint (/bytes, /delay, /redirect-to, /drip, etc.) is designed to cover.
- Performance characteristics or concurrency limits when used as a library in test suites.
What it is and what it does
httpbin is a Flask-based service that exposes HTTP endpoints for testing and debugging HTTP clients. It was originally created by Kenneth Reitz and is now maintained as a fork by the Python community after the original became unmaintained. The package can be deployed as a standalone Docker container or used directly as a library in Python projects.
When used as a library, httpbin provides a Flask application object that can be integrated into test suites or development environments. It includes endpoints for testing various HTTP scenarios: response codes, redirects, delays, byte streams, digest authentication, and more. The package depends on Flask, werkzeug, greenlet, decorator, brotlicffi, six, and importlib-metadata. Recent releases have made flasgger optional and fixed Python 3.12+ compatibility issues.
Use it for
- Test HTTP client libraries like requests by making real HTTP calls to a local or remote httpbin instance.
- Debug HTTP request/response behavior during development without needing a real backend service.
- Verify authentication flows (digest auth, basic auth) in HTTP clients before integration.
- Simulate network conditions like delays, redirects, and byte streaming for stress testing.
- Validate error handling by requesting specific HTTP status codes and response formats.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
httpbin is actively maintained, has no known vulnerabilities, and is widely used in the Python ecosystem (pytest-httpbin, requests). Install friction is low and it supports current Python versions (3.8–3.14). Use it as a library for HTTP client testing or deploy the Docker image as a standalone service.
Install
httpbin on PyPI
Before you install
Low install friction with a wheel distribution and seven runtime dependencies. Actively maintained as of 2026-06-16 with recent fixes for Python 3.12+ compatibility and dependency cleanup.
Requires Python 3.8 or later. The Flask framework and its dependencies (werkzeug, greenlet) must be available.
License in practice
Dual-licensed under MIT or ISC (both permissive). No restrictions on commercial or private use.
Quickstart
pip install httpbin
from httpbin import app
from flask import Flask
# Use the Flask app directly in tests or as a WSGI application
if __name__ == '__main__':
app.run()
Verify before relying
- Whether the package is intended primarily as a library dependency or as a standalone service to be run separately.
- What specific HTTP testing scenarios each endpoint (/bytes, /delay, /redirect-to, /drip, etc.) is designed to cover.
- Performance characteristics or concurrency limits when used as a library in test suites.
Package facts
| License | MIT or ISC permissive |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 7 packagesbrotlicffidecoratorflaskgreenletimportlib-metadatasixwerkzeug |
| Maintenance | Actively maintained 59 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 493,841 / month, #6,354 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: ISC License (ISCL)License :: OSI Approved :: MIT LicenseNatural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: httpbin-0.10.4-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “http request testing service”
- httpbinhttpbin is a Flask-based HTTP request and response service that…
- aresponsesMocks external HTTP/HTTPS services for asyncio-based tests by…
- responsesMocks HTTP requests made by the requests library, allowing you to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Testing packages
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
virtualenv creates isolated Python environments where packages can be installed independently without affecting the system Python or other projects.
Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.
Install it if you want to measure test completeness or enforce coverage thresholds in your project.
pytest-asyncio is a pytest plugin that enables writing and running async test functions using the asyncio library, allowing developers to await code directly within test cases.
Install it if you write tests for any asyncio-based code.
A pytest plugin that generates test reports in Common Test Report Format (CTRF) as JSON, compatible with pytest-xdist and pytest-playwright for distributed and browser-based testing.
Install it if you need CTRF-formatted test output for CI/CD integration or cross-tool reporting.
See also pytest-httpbin · pook · requests · Flask-HTTPAuth · Flask · invenio-rest · Flask-BasicAuth · WebOb · requests-futures