HTTP requests that send JSON and return promises