It definitely makes sense to have it in the query string, and I think people are already doing it that way, but the author makes a good point - it isn't a resource in its own right, it's merely a different representation. But in my experience, requiring Accept manipulation outside of .json versus .xml makes your service less usable by clients, which often don't expose anything besides the url.
I think both interpretations can be defended. Though if you're playing with the Accept: header it's important to correctly set Vary: as well.
> But in my experience, requiring Accept manipulation outside of .json versus .xml makes your service less usable by clients, which often don't expose anything besides the url.
Browsers have that limitation (and numerous others), but if a programmatic HTTP library does not expose this, you need to throw it out. The Accept header is not part of the "immutable" headers of XHR either.
https://docs.djangoproject.com/en/dev/ref/request-response/#...
Agreed - 'depth' makes more sense as a GET parameter, since it's a resource in its own right.