URLが長くなり過ぎたり、扱いにくくならないためのルール
親テーブルに関わらず一意なIDが付与されている場合には親の階層を省略してよい
例
- アイテムIDに紐づくレビューの詳細(とコメント一覧)画面
# アイテムのレビュー一覧 /items/:item_id/:reviews [GET] # アイテムのレビュー詳細 /items/:item_id/reviews/:review_id [GET] ではなく /reviews/:review_id [GET] でよい
子テーブルから親IDも取得可能なため。
ログインが必須で1:1の関係にある操作はidを省略してよい
例
- あるページをお気に入り登録
- あるコメントにいいねをつける
# アイテムをブックマーク /items/:item_id/bookmark [POST] # アイテムのブックマーク解除 /items/:item_id/bookmark/:bookmark_id [DELETE] ではなく /items/:item_id/bookmark [DELETE] でよい
親IDとユーザーIDから対象が判別可能なため。