1-This is really up to the application. But yes, you could go that far. There's a great book that discusses exactly that scenario in details named "Building Hypermedia APIs with HTML5 and Node". I'd suggest taking a look at that.
2-ASP.Net Web API allows for that and it is not uncommon. In many cases you don't want to expose directly your database objects. You can use libraries such as AutoMapper to do that, more or less like discussed here: http://stackoverflow.com/questions/14484692/web-api-queryable-how-to-apply-automapper
Feel free to ping me on @matvelloso