title: Is the HTTP SEARCH method standardized?
body: <p>I am thinking about how to implement a REST API endpoint for searching. As I see it, I have four options for how to implement search options, each with pros and cons:</p>
  <ol>
  <li>Use a GET endpoint with querystring params</li>
  <li>Use a GET endpoint with a payload (for example, a JSON payload)</li>
  <li>Use a POST endpoint with a payload</li>
  <li>Use a SEARCH endpoint with a payload</li>
  </ol>
  <p>For completeness, here are the pros and cons I am thinking of:</p>
  <ul>
  <li>GET endpoint with querystring params
  <ul>
  <li>Pro - Accurate verb, standards compliant</li>
  <li>Con - Limited option structure (key/values only), and URL size limit</li>
  </ul>
  </li>
  <li>GET endpoint with a payload (for example, a JSON payload)
  <ul>
  <li>Pro - Accurate verb, no size limit</li>
  <li>Con - HTTP specs say GET requests do not have meaningful payloads, and some frameworks may not support it (<a href="https://stackoverflow.com/q/978061/1455074">relevant question</a>)</li>
  </ul>
  </li>
  <li>POST endpoint with a payload
  <ul>
  <li>Pro - Standards compliant, no size limit</li>
  <li>Con - Searching is idempotent, while POSTing is not. Basically, it's the wrong verb.</li>
  </ul>
  </li>
  <li>SEARCH endpoint with a payload
  <ul>
  <li>Pro - Accurate verb, no size limit</li>
  <li>Con - Is an obscure (non-standard?) HTTP verb</li>
  </ul>
  </li>
  </ul>
  <p>A lengthy, nuanced, and opinionated discussion could be had as to which of these is best, but that discussion is not the purpose of this question. Instead I ask: Is the SEARCH verb merely obscure and rarely used but still an official method, or is it non-standard?</p>
  <p>I found <a href="https://trac.tools.ietf.org/id/draft-snell-search-method-00.html" rel="noreferrer">this draft</a> for the method, but not many more official documents about it. The draft echoed some of the points of the quadrilemma I posed above. It appears to me that the method is still merely a draft and can't be called &quot;standard&quot;, though I am not overly familiar with how to read those documents.</p>
  <p>Functionally, I guess my question is: Can I rely on self-touted standards compliant software to handle the SEARCH method? And if they don't handle it, can I appeal to their claim of standards compliance to force them into handling it? Boiled down even further, is it a reliable verb?</p>