API Pagination limit

Hi,

About API and too large response limit.
Jon Masse (cced) asked me a question about API and the right HTTP Code to send back to the client. 

Creating an API returning N posts starting at an index x
with a limit of N <= 500.

Someone sends an HTTP GET with n=1000
http://api.example.org/post?start=1&n=1000

    GET /post?start=1&n=1000 HTTP/1.1
    Host: api.example.org
    User-Agent: FooBar v1
    Accept: application/json

What should the API developer send back?

* 200 OK and a Link for the pagination?
  Link: </post?start=500&n=500>; rel="Next"
  (but the client might not know it used an out of range value

* a 4xx to communicate that there is an out of range value?
  (but which 4xx? It doesn't seem there is one appropriate.
  403 doesn't seem right)

Thanks.


-- 
Karl Dubost - http://dev.opera.com/
Developer Relations & Tools, Opera Software

Received on Thursday, 14 July 2011 15:30:30 UTC