回答:
あいまいなHTTPエラーコードで過度に巧妙になることは悪い考えです。ブラウザーは状況をわかりにくくする、役に立たない方法で反応することがあります。404に固執する。
404戻りコードは実際には「リソースが見つかりません」を意味し、要求が行われたが満たされていないエンティティに適用されます。そのため、ページ、ページのサブセクション、およびレンダリングされる特定のリクエストがあるページに存在するアイテムに対しても同じように機能します。
したがって、404はこのシナリオで使用する適切なコードです。これは「サーバーが見つかりません」には適用されないことに注意してください。これは、要求は出されたがまったく応答されなかった場合とは異なり、応答されたがリソースが要求されなかった場合とは異なります。
404で十分です。RFC2616のHTTP / 1.1ステータスコード定義
これは、useridがリソースIDか追加のパラメーターかによって異なります。そうであれば、404を返しても問題ありません。
400 (bad request) ‐ indicates a bad request
または
412 (Precondition Failed) e.g. conflict by performing conditional update
詳細については、無料のInfoQ Explores:RESTブックをご覧ください。