Skip to content

OxideHTTP

OxideHTTP is an asynchronous HTTP client for Python, built on top of pyreqwest.

It provides a simple interface for HTTP requests while supporting configurable connections, middleware, response caching, streaming, and Server-Sent Events.

What you can do

  • HTTP requests


    Make asynchronous GET, POST, PUT, PATCH, and DELETE requests, with streaming support for supported HTTP methods.

    Learn about requests

  • Configuration


    Configure base URLs, headers, timeouts, proxies, connection limits, and TLS verification.

    Configure OxideHTTP

  • Middleware


    Extend request processing with middleware, including rate limiting, request IDs, and retries.

    Explore middleware

  • Caching


    Cache HTTP responses using memory or Redis.

    Configure caching

  • :material-stream:{ .lg .middle } Streaming


    Process streamed responses without loading the entire response into memory.

    Learn about streaming

  • Server-Sent Events


    Consume SSE streams with event parsing and reconnection support.

    Learn about SSE

Getting started

New to OxideHTTP? Start with the installation instructions and make your first request.

  1. Installation
  2. Quickstart
  3. Basic usage

Guides

The guides explain individual OxideHTTP features and how to use them.

Guide Description
Configuration Client configuration and defaults
Requests HTTP methods, parameters, headers, and request bodies
Responses Response data and status codes
Error handling Handling client and transport errors
Caching Memory and Redis caching
Middleware Built-in and custom middleware
Streaming Streaming HTTP responses
Server-Sent Events Parsing and consuming SSE streams

API reference

For detailed information about public classes, methods, parameters, and types, see the API reference.

Requirements

  • Python 3.13 or newer.
  • Redis is optional and only required when using Redis-based caching.