How to complete the challenge GET /todos (200) ?_sortBy&_limit&_offset

How to issue a GET request on a top level entity endpoint and combine sorting with pagination.

GET /todos (200) ?_sortBy&_limit&_offset

Issue a GET request on the /todos end point with sorting and pagination parameters.

  • _sortBy=-id sorts todos by id from highest to lowest
  • _limit=5 asks for 5 returned todos
  • _offset=5 skips 5 todos after sorting
  • sorting is applied before pagination
  • if your current session has fewer todos after the offset, the response will contain fewer todos

Basic Instructions

  • Issue a GET request to end point "/todos"
    • https://apichallenges.com/todos
  • The request should have an X-CHALLENGER header to track challenge completion
  • Add _sortBy=-id, _limit=5, and _offset=5 as URL parameters:
    • https://apichallenges.com/todos?_sortBy=-id&_limit=5&_offset=5
  • The response status code should be 200 because the request is accepted
  • Check that the response body contains no more than 5 todos and the ids are still descending

Try it now

GET /todos?_sortBy=-id&_limit=5&_offset=5 to sort and paginate todos

Example Request

> GET /todos?_sortBy=-id&_limit=5&_offset=5 HTTP/1.1
> Host: apichallenges.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": 15, "title": "fifth page item", "doneStatus": false, "description": "" },
    { "id": 14, "title": "sixth page item", "doneStatus": false, "description": "" },
    { "id": 13, "title": "seventh page item", "doneStatus": false, "description": "" },
    { "id": 12, "title": "eighth page item", "doneStatus": false, "description": "" },
    { "id": 11, "title": "ninth page item", "doneStatus": false, "description": "" }
  ]
}
Experiment with this endpoint