DELETE /resources?ids=recordId1,recordId2
無し
204 No Content
POST /resources/delete
[
"recordId1",
"recordId2"
]
200 OK
[
"recordId1",
"recordId2"
]
- メリット
- 削除することがHTTPメソッドから明確
- デメリット
- RESTfulの流儀から外れる
- メリット
- 無い?
- デメリット
- 作成用メソッドなのに削除をしていることに違和感
RESTful APIにおいてリソースの複数削除の設計思想に無い。どちらの手法も基本的には例外である。
個人的な考えとしては、パターン1の方がメソッドがDELETE
なので削除することが明示的で分かりやすい。RESTfulの思想から外れているが、利用するイメージもしやすく利用しやすいのでパターン1の方が良い。
- API Design Tips And Tricks - Getting, creating, updating or deleting multiple resources in one API call | API Handyman
- Delete Multiple Objects - Amazon Simple Storage Service
- Delete Multiple Records with Fewer Round-Trips | REST API Developer Guide | Salesforce Developers
- Web API(REST API)のURL設計 | Developers.IO
- REST API の設計について教えて下さい - QA@IT