Basic webservices
It is easy to consume webservices directly from Appscript. Here we show how.You may clone all examples from git at this repository: https://github.com/SigmaEstimates/AppScript-Examples.git
It is easy to consume webservices directly from Appscript. This enables integrations between Sigma and Cloud based solutions to synchronize and connect data. Example: Send the Sigma budget directly to a cloud based accounting system, or update a Sigma estimate based on values from a server.
This example show the very basic GET and POST options, but there are more advanced features such as controlling headers, timeouts, and much more.
// GET via SSL
var Url := 'https://google.dk';
var Response := WebClient.Get(Url);
if (Response.Success) then
MessageTaskDlg('HTTP Get success', Format('Address: %s|%s', [Url, Response.ContentAsText]), mtInformation, [mbOk])
else
MessageTaskDlg('HTTP Get error', Format('Address: %s'#13'Error code: %d|%s', [Url, Response.StatusCode, Response.ContentAsText]), mtError, [mbOk]);
// POST
// First we create a new JSON object with some data to POST
var Content := JSON.NewObject;
Content.Property1 := 100;
Content.Property2 := "Hello";
Content.List := JSON.NewArray;
Content.List[0] := 6;
Content.List[1] := 12;
Url := 'http://sigmaservice.net/jsontest/';
//Post the Content data to our test webservice
Response := WebClient.Post(Url, Content, 'application/json');
if (Response.Success) then
begin
//Parse the returned data from JSON to an AppScript object
var returnedData = JSON.Parse( Response.ContentAsText );
//And show the JSON output form the test webservice (which includes our post data)
MessageTaskDlg('HTTP Post success', JSONBeautify( returnedData ), mtInformation, [mbOk]);
//Additionally show how to access a specific data:
ShowMessage(returnedData.data.Property1);
end else
MessageTaskDlg('HTTP Post error', Format('Address: %s'#13'Error code: %d|%s', [Url, Response.StatusCode, Response.ContentAsText]), mtError, [mbOk]);