How to expose additional data through Web API?

Hi all, 

I am developing an integration with Sage 300 and am fetching data through the Web API.

The problem is I need to access Item stock counts for different Locations, and as far as I can tell this information is not returned anywhere via the Web API.

The only properties available are the simple total counts on the Item object are QtyAvailable, QtyOnOrder, QtyOnHand etc, with no information about the qty at different locations! I would have thought this a fairly standard requirement for anyone consuming Item stock counts and seems to be a massive oversite by the developers.

So what to do, as I can't wait for this feature to be added to the API?

As far as I can tell my three options are to either:

  1. build a stand alone .Net API app to fetch this data from the DB and expose it (but this will come with security, installation, and maintenance issues)
  2. extend the web screens app to expose that data which would come with the benefit of sharing security and data access
  3. extend the API somehow, but I'm not sure if there is any way to do this

Option 2 seems to be the most feasible, but I can't find any information on how one would customize the Web Screens app. I have looked through the Web SDK git repo to see what it can do, but there is a lot of different functions it seems to be able to do without having any good documentation as to what one can do with the different modules, or how they fit in to the general architecture of the Web Screens app.

Any advice or direction would be much appreciated!

Sebastian Fjastad

  • 0

    Hi Sebastian,

    We had the same issue a little while back, so we created a custom API which called the database directly from the ICILOC table. We then filtered out to the locations we needed. 

    So basically we had 2 API's running on the webserver: the standard Sage300 WebAPI, and our custom API which managed everything the standard one couldn't. 

    Not sure if this helps, but may be an additional option for you. 

    Russell

  • 0

    Should the below not help, please note that all Web API support queries are handled by the North American dev team, to registered Sage 300 development business partners. Should you require more info, please ensure to log a ticket with our support desk.