I can make a simple API call in JavaScript using XMLHttpRequest: <!-- begin snippet: js hide: false console: true babel: false --> <!-- language: lang-html --> <html> <script> function reqListener () { out.textContent=this.responseText; } var oReq = new XMLHttpRequest(); oReq.addEventListener("load", reqListener); oReq.open("GET", "https://api.stackexchange.com/2.3/tags?order=desc&sort=popular&site=stackoverflow"); oReq.send(); </script> <body><span id='out'></span></body> </html> <!-- end snippet --> using the code from: > https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest The same code in Excel: Dim xh As Object Set xh = CreateObject("MSXML2.serverXMLHTTP") seurl = "https://api.stackexchange.com/2.3/tags?order=desc&sort=popular&site=stackoverflow" xh.Open "GET", seurl, False xh.Send MsgBox xh.responseText doesn't work, I get a return of '`?[]`'. I can't see any difference. Why does the first one work and not the second? I have read: > https://api.stackexchange.com/docs/compression on compression, but the `GET` request seems to return a text file, at least in the JavaScript version.