<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia" -->

---
title: HTTP gets a QUERY method so complex searches can stop...
description: The IETF has officially published RFC 10008, introducing a new HTTP request method called QUERY. It fills a long-standing gap: complex search queries have...
canonical: https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: HTTP gets a QUERY method so complex searches can stop pretending to be POST | daily.dev
og:description: The IETF has officially published RFC 10008, introducing a new HTTP request method called QUERY. It fills a long-standing gap: complex search queries have...
og:url: https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia
og:image: https://api.daily.dev/og/posts/MK7367Aia.png
og:image:alt: HTTP gets a QUERY method so complex searches can stop pretending to be POST
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# HTTP gets a QUERY method so complex searches can stop pretending to be POST

**[DEVCLASS](https://daily.dev/sources/devclass)** · 5 min read · 294 upvotes · 16 comments

## Summary

The IETF has officially published RFC 10008, introducing a new HTTP request method called QUERY. It fills a long-standing gap: complex search queries have historically been sent via POST (which is neither safe nor idempotent) or crammed into unwieldy GET URLs. QUERY combines POST's ability to carry a request body with GET's safe and idempotent semantics, enabling proxies, CDNs, and browsers to cache and automatically retry these requests. Cloudflare and Akamai engineers co-authored the spec. Adoption is still early — HTML forms only support GET and POST, and the broader ecosystem (reverse proxies, load balancers, frameworks) needs updating — but Node.js, Go, and Laravel are already moving toward support.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.devclass.com/development/2026/07/14/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post/5270400>

## Community discussion

Top comments from developers on daily.dev.

**@byteslayer** · 14 upvotes

> Cool a new standard!

**@trevorsuna** · 11 upvotes

> QUERY makes the semantics much cleaner, but ecosystem support feels like the real battle. Until gateways, WAFs, observability tools, and client libraries preserve the method correctly, teams may still keep POST-based searches as a compatibility fallback. The caching behavior could be the feature that finally makes adoption worth that transition.

**@allinonetools** · 8 upvotes

> This is a much-needed addition. I’ve used POST for complex search endpoints simply because GET became too messy—QUERY finally gives that use case the right semantics.

**@sikandarkhan56** · 6 upvotes

> Good to know 👍

**@sahilatahar** · 2 upvotes

> Its amazing and very useful but still it would not effect some Psycho who still use:
>
> ```
> POST /api/create-user
> GET /api/get-user
> POST /api/update-user
> POST /api/delete-user
> ```

---

Tags: [#webdev](https://daily.dev/tags/webdev), [#architecture](https://daily.dev/tags/architecture)

[View this post on daily.dev](https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"HTTP gets a QUERY method so complex searches can stop pretending to be POST","url":"https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia"},"datePublished":"2026-07-14T10:56:38.332Z","dateModified":"2026-07-14T22:17:29.443Z","description":"The IETF has officially published RFC 10008, introducing a new HTTP request method called QUERY. It fills a long-standing gap: complex search queries have...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/63a5453395f184bb8e092e5848037542?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/63a5453395f184bb8e092e5848037542?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"DEVCLASS","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"DEVCLASS","logo":"https://media.daily.dev/image/upload/s--quq5_zKP--/f_auto/v1732552064/logos/devclass","url":"https://daily.dev/sources/devclass"},"commentCount":16,"discussionUrl":"https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":294},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":16}],"keywords":"webdev,architecture","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"DEVCLASS","item":"https://daily.dev/sources/devclass"},{"@type":"ListItem","position":3,"name":"HTTP gets a QUERY method so complex searches can stop pretending to be POST"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/http-gets-a-query-method-so-complex-searches-can-stop-pretending-to-be-post-mk7367aia","comment":[{"@type":"Comment","text":"Cool a new standard!","datePublished":"2026-07-14T12:26:42.384Z","url":"https://daily.dev/posts/MK7367Aia#c-m8lDha27F","author":{"@type":"Person","name":"Some one","url":"https://daily.dev/byteslayer","image":"https://media.daily.dev/image/upload/s--O0TOmw4y--/f_auto/v1715772965/public/noProfile"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":14}},{"@type":"Comment","text":"QUERY makes the semantics much cleaner, but ecosystem support feels like the real battle. Until gateways, WAFs, observability tools, and client libraries preserve the method correctly, teams may still keep POST-based searches as a compatibility fallback. The caching behavior could be the feature that finally makes adoption worth that transition.","datePublished":"2026-07-15T01:36:55.187Z","url":"https://daily.dev/posts/MK7367Aia#c-xFBY0dJdD","author":{"@type":"Person","name":"Trevor Suna","url":"https://daily.dev/trevorsuna","image":"https://media.daily.dev/image/upload/s--dZ7gXxpp--/f_auto/v1784081551/avatars/avatar_EMoP47rpuw8DNjhp6R1b6?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":11}},{"@type":"Comment","text":"This is a much-needed addition. I’ve used POST for complex search endpoints simply because GET became too messy—QUERY finally gives that use case the right semantics.","datePublished":"2026-07-15T02:56:16.106Z","url":"https://daily.dev/posts/MK7367Aia#c-KljeuzoK0","author":{"@type":"Person","name":"AllInOneTools","url":"https://daily.dev/allinonetools","image":"https://media.daily.dev/image/upload/s--4ZT8QlF0--/f_auto/v1769790028/avatars/avatar_igzBsWloJeaegzm9bQltZ?_a=BAMAMiiu0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":8}},{"@type":"Comment","text":"Good to know 👍","datePublished":"2026-07-14T14:06:31.836Z","url":"https://daily.dev/posts/MK7367Aia#c-SmsA5jOzI","author":{"@type":"Person","name":"Sikandar Khan","url":"https://daily.dev/sikandarkhan56","image":"https://media.daily.dev/image/upload/s--F6gR7EHC--/f_auto/v1782892974/avatars/avatar_8rrkDoZtwC8IYlg7yT40f?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":6}},{"@type":"Comment","text":"Its amazing and very useful but still it would not effect some Psycho who still use:\nPOST /api/create-user\nGET /api/get-user\nPOST /api/update-user\nPOST /api/delete-user","datePublished":"2026-07-15T09:52:23.465Z","url":"https://daily.dev/posts/MK7367Aia#c-Nwnjkaxen","author":{"@type":"Person","name":"Sahil Atahar","url":"https://daily.dev/sahilatahar","image":"https://media.daily.dev/image/upload/s--jYTP98TM--/f_auto/v1768622996/avatars/avatar_3E5CUHMGZwkEqSfvFYXsF?_a=BAMAMiiu0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}}]}
```

