You can support this site from as little as $1 a month on Patreon.

The support pays for site hosting and the expansion of this content.

In addition, Patreon Supporters gain access to exclusive online video training courses and ebooks.

Join Now

How to complete the challenge GET /todos (200) ? filter and _sortBy

How to issue a GET request on a top level entity endpoint, filter the returned todos, and sort the filtered results.

GET /todos (200) ? filter and _sortBy

Issue a GET request on the /todos end point with a query filter and a query parameter to sort the filtered todos.

  • todo fields can be used as URL parameters to filter collection results
  • _sortBy is the URL parameter used to sort collection results
  • prefix a sort field with - to sort descending
  • for example, doneStatus=false&_sortBy=-id returns only not done todos, sorted by id from highest to lowest

Basic Instructions

  • Issue a GET request to end point "/todos"
    • https://apichallenges.eviltester.com/todos
  • The request should have an X-CHALLENGER header to track challenge completion
  • Add doneStatus=false and _sortBy=-id as URL parameters:
    • https://apichallenges.eviltester.com/todos?doneStatus=false&_sortBy=-id
  • The response status code should be 200 because the request is accepted
  • Check that all returned todos have doneStatus set to false, and that the ids are descending

Try it now

Example Request

> GET /todos?doneStatus=false&_sortBy=-id HTTP/1.1
> Host: apichallenges.eviltester.com
> User-Agent: rest-client
> X-CHALLENGER: x-challenger-guid
> Accept: application/json

Example Response

< HTTP/1.1 200 OK
< Connection: close
< Content-Type: application/json
< X-Challenger: x-challenger-guid

Returned body:

{
  "todos": [
    {
      "id": 10,
      "title": "not done with highest id",
      "doneStatus": false,
      "description": ""
    },
    {
      "id": 3,
      "title": "not done with lower id",
      "doneStatus": false,
      "description": ""
    }
  ]
}