<p><strong>First off, I am not sure if this is a bug or intended behavior</strong>:</p>

<p>In the changeset API, if a user tries to subscribe to a changeset he is already subscribed to, he gets a <code>APIChangesetAlreadySubscribedError</code> error. The other way round, if he is not subscribed and tries to unsubscribe, he gets a <code>APIChangesetNotSubscribedError</code>.</p>

<p>So far so good, but the HTTP status code for APIChangesetAlreadySubscribedError is a 409 - Conflict while the status code for APIChangesetNotSubscribedError is a 404 - Not Found. This seems to inconsistent.</p>

<p>404 Not Found is also returned if the changeset one wants to subscribe/unsubscribe to/from does not exist at all. This inconsistency makes it harder for clients to report to the user what is the exact problem.</p>

<p>So... is this a bug?</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly or <a href="https://github.com/openstreetmap/openstreetmap-website/issues/1199">view it on GitHub</a><img alt="" height="1" src="https://github.com/notifications/beacon/ABWnLeLBaGl_26-2KMFJB_b8YEJdSDRyks5p1X54gaJpZM4IChFe.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/openstreetmap/openstreetmap-website/issues/1199"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>