Board Thread:Support Requests - Getting Technical/@comment-27971057-20160218025046/@comment-27393108-20160407054422

No. A request to the server is asynchronous. You simply don't know when it will complete. That's why you cannot assign the return value to a variable and expect a result. And that's why  doesn't return JSON. It returns a "promise" - a subset of a $.Deferred.

This tutorial looks nice but google has plenty of hits for "jquery promise tutorial"...

EDIT:

If it looks as if your code works, it's because your browser doesn't make a web request at all. It's already got the data in its local cache. So you're running the code synchronously. But loading the API reply for the first time is asynchronous.