Skip to content
308

Permanent Redirect

Redirection (3xx)

The 308 Permanent Redirect status code indicates that the resource has been permanently moved to a new URL, and the client must use the same HTTP method for future requests. It is the permanent equivalent of 307, combining the permanence of 301 with the method-preservation guarantee of 307. This is the most precise redirect for permanent API endpoint moves.

What is HTTP 308 Permanent Redirect?

HTTP 308 Permanent Redirect is a redirection (3xx) status code. The 308 Permanent Redirect status code indicates that the resource has been permanently moved to a new URL, and the client must use the same HTTP method for future requests. It is the permanent equivalent of 307, combining the permanence of 301 with the method-preservation guarantee of 307. This is the most precise redirect for permanent API endpoint moves. Common causes include api versioning (v1 to v2 permanently) and permanent url restructuring with method preservation. This response indicates the server processed the request as expected.

Example Response

HTTP/1.1 308 Permanent Redirect
Location: https://api.example.com/v2/resource

Common Causes

What to Know

  1. 1. Update all client configurations to use the new URL directly
  2. 2. Ensure the Location header is correct and permanent
  3. 3. Update API documentation to reflect the new endpoint
  4. 4. Monitor traffic to the old URL and plan eventual removal

Frequently Asked Questions

What is the difference between 301 and 308?

Both are permanent redirects. 301 may change the request method (POST to GET), while 308 guarantees the method is preserved. Use 308 for API endpoints where POST, PUT, or DELETE must stay the same.

Do search engines treat 308 like 301?

Yes, search engines treat 308 as a permanent redirect and transfer ranking signals similarly to 301. For web pages, 301 is more commonly used, but 308 is technically more correct when method preservation matters.

Is 308 well-supported?

308 is supported by all modern browsers and HTTP clients. It was standardized in RFC 7538 (2015). Very old clients may not recognize it, so for maximum compatibility with legacy systems, 301 may be safer.

Related Status Codes

301 Moved Permanently 307 Temporary Redirect 302 Found

Related Reading

HTTP Status Codes Cheat Sheet: Every Code Explained → JSON vs YAML vs TOML: Which Config Format to Use →