title: Call to an external API via HTTPS from LotusScript
body: <p>I need to make a call to a HTTPS based service, from LotusScript.</p>
  
  <p>Previously, I have used:</p>
  
  <pre><code>Set http = CreateObject("Msxml2.ServerXMLHTTP.3.0")
  </code></pre>
  
  <p>But now we have moved the application to a Domino server on Linux.</p>
  
  <p>My first attempt to replace this code, was to call the <code>shell</code> function, with a call to <code>curl</code>. It works, but the <code>shell</code> function always return an integer, so the response is transferred back to LotusScript as temporary files. The curl solution is rather slow. Approximately 2 seconds response time is too long. The MsXml solution responded in 170 ms!</p>
  
  <p>Then, to get rid of the temporary files, I tried using <code>libcurl</code>, but it requires a callback method to receive the response. It is my understanding that LotusScript is unable to pass callback methods to native methods.</p>
  
  <p>The next attempt was using LS2J to make the HTTP request from Java. It worked, but with a response time of more than 6 seconds, it is useless for our application.</p>
  
  <p>How can I call an external API from LotusScript on Linux, with descent performance?</p>
  
  <p>@IBM: Can we please have a HTTP client and a JSON parser in LotusScript?</p>