HTTP

Mock 431 Request Header Fields Too Large Response

The server refuses to process the request because an individual header field or all headers collectively are too large.

View full reference →

1 HTTP Response

HTTP Response
HTTP/1.1 431 Request Header Fields Too Large
Content-Type: application/json
Date: Tue, 25 Feb 2026 12:00:00 GMT
Content-Length: 90

{
  "error": "request_header_fields_too_large",
  "message": "Request Header Fields Too Large"
}

2 Test with curl

terminal
curl -i https://httpbin.org/status/431

3 Return 431 Request Header Fields Too Large in Your Framework

django
from django.http import JsonResponse


def my_view(request):
    return JsonResponse(
        {"error": "request_header_fields_too_large", "message": "Request Header Fields Too Large"},
        status=431,
    )
flask
from flask import Flask, jsonify

app = Flask(__name__)


@app.route("/endpoint")
def my_endpoint():
    return jsonify({"error": "request_header_fields_too_large", "message": "Request Header Fields Too Large"}), 431
fastapi
from fastapi import FastAPI
from fastapi.responses import JSONResponse

app = FastAPI()


@app.get("/endpoint")
def my_endpoint():
    return JSONResponse(
        content={"error": "request_header_fields_too_large", "message": "Request Header Fields Too Large"},
        status_code=431,
    )
express.js
// Express.js
app.get('/endpoint', (req, res) => {
  res.status(431).json({"error": "request_header_fields_too_large", "message": "Request Header Fields Too Large"});
});
spring boot
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.Map;

@RestController
public class MyController {

    @GetMapping("/endpoint")
    public ResponseEntity<Map<String, Object>> myEndpoint() {
        return ResponseEntity
            .status(431)
            .body(Map.of("error", "request_header_fields_too_large",
                         "message", "Request Header Fields Too Large"));
    }
}
go net/http
package main

import (
    "encoding/json"
    "net/http"
)

func myHandler(w http.ResponseWriter, r *http.Request) {
    w.Header().Set("Content-Type", "application/json")
    w.WriteHeader(431)
    json.NewEncoder(w).Encode(map[string]string{
        "error":   "request_header_fields_too_large",
        "message": "Request Header Fields Too Large",
    })
}
ruby on rails
class MyController < ApplicationController
  def my_action
    render json: {"error": "request_header_fields_too_large", "message": "Request Header Fields Too Large"},
           status: :request_header_fields_too_large
  end
end
asp.net core
// ASP.NET Core Minimal API
app.MapGet("/endpoint", () =>
    Results.Json(
        new { error = "request_header_fields_too_large", message = "Request Header Fields Too Large" },
        statusCode: 431
    )
);

More HTTP Mock Pages