Skip to content

API: Deleting a Todo is not very RESTful

Current Situation

Using the API, we have two endpoints to mark Todos as done.

DELETE /todos
DELETE /todos/:todo_id

Those two endpoints mark one or all Todos as done but do not delete them.

Problem

We use the DELETE endpoint although actually not delete them, which is very confusing. The API could provide a an endpoint to read out the done Todos. This would return 'deleted' items which makes no sense.

Proposal

As part of the v4 API, I would like to change those endpoints using a POST method:

POST /todos/done
POST /todos/:todo_id/done

@rymai @smcgivern @oswaldo @to1ne Can you weigh in and share your thoughts?