title: RESTful API with # fragment expansion in URI Template (RFC 6570)
body: <p>I have a RESTful API spec for a new project from another company and it refers to RFC6570 and the use of Fragment Expansion <code>{#var}</code> in the URI Template when making requests to their API.</p>
  <p>The URI templates look like:</p>
  <p><code>PUT https://api.acme.com/order{#meta*}{?order_number}</code> or <code>GET https://api.acme.com/orders{#meta*}</code> (note the difference with order/orders).</p>
  <p>They mention 'if the metadata stored on your system looks like this:'</p>
  <pre><code>{
    &quot;meta&quot;: {
      &quot;customer&quot;: &quot;1234&quot;,
      &quot;state&quot;: &quot;open&quot;
    },
    &quot;order_number&quot;: &quot;0003&quot;
  }
  </code></pre>
  <p>This is then translated into requests like <code>PUT https://api.acme.com/order#customer=1234,state=open?order_number=0003</code> or <code>GET https://api.acme.com/orders#customer=1234,state=open</code>.</p>
  <p>The URL fragments, e.g. <code>#customer=1234,state=open</code> are meant to be used as some kind of metadata filtering or context for the request?</p>
  <p>Postman, <code>curl</code> and browser requests appear to strip out everything after the <code>#</code> before sending to the server. Is that expected behaviour and described in an RFC somewhere? Does that mean these RESTful URLs are invalid?</p>
  <p>What is the proper use case for the <code>{#var}</code> fragment expansion in URL Templates?</p>