What are the changes in Web services in Sage X3 Product Update 9 and later?

Sage X3 Business Cloud product update brought 9 with it significant changes to web services, here is an overview

  • Generic SOAP web services are based on classic clients and act exactly like it did previously

  • The license now controls the data volume consumed through web service and there is no control on the count of clients defined in the pool

  • Web services are managed within the Syracuse administration, there is no more Console configuration

  • All setups and tests of web services will now be carried out in the new Sage X3 Web methodology (You can no longer use the “old” web tester)

Entities

  • hosts (Administration, ADMINISTRATION, Servers, Hosts): Defines the number of Web Service child processes. By default this is set to 0, so it must be configured. This allows you to work with the Sage X3 web load balancer mode

  • soapClassicPools (Administration>ADMINISTRATION, Web Services, Classic SOAP pools configuration): : Defines pools, count of clients to be initialized during pool setup, maximum count of clients allowed by pool (to avoid overload)
    Note: If you set two child processes and two clients per pool, you will have four clients started. (Nb of clients=Nb of child processes*Nb of clients per child processes)

  • soapGenerics (Administration, ADMINISTRATION, Web Services, Classic SOAP Web services): Retrieve WSDL description and is the internal tester for every operation (save, read, query, delete…)

  • restWebServices (Administration, ADMINISTRATION, Web Services, Rest web services):Declares outgoing rest web services to be used from the SAFE X3 dedicated API.

  • licenseViews: (Administration, USAGE, Session management, License follow up) Allows view into Web services consumption

License Parameters

  • WSGRACELIMIT: (%) defines the oversize percentage allowed (typically 10%) if the maximum size is fixed at 1MB / day, this means that:

    • 1 MB per DAY without speed limitation

    • The next 10% (100Kb) at a lower speed

    • The web service does not respond when the 1.1 MB limit is reached

  • WSGRACESLOWDOWN: indicates the rate used to decrease the speed of the Web services when the grace limit is reached

  • WSPERIOD: determines the period on which the size limitation applies (DAY/MONTH/YEAR)

  • WSSIZELIMIT: size, in MB, of the license for the web services

Things to know before using REST APIs with Sage X3 Business Cloud

Starting in version 7 here are some things that dev teams need to keep in mind if they are going to use REST APIs to work with Sage X3 Business Cloud:

  • The Web API (REST)

    • Can be used to read elements from all modules, as Sage X3 is already providing read-only representations on most resources. Basically, if there is a representation in the Read Only Pages section, REST can be used to read the data.

    • Should be used to update data from modules that have been upgraded. Resources that you can access with the mobile client can be read and modified through the Web API.

  • For the others REST web services currently is only available for READs (i.e. the Read Only Pages).

  • Create, Update and Delete are not currently supported.