As of the release of version 13 a full client is now available for use in building custom solutions that integrate with the RESTful WebAPI endpoints available in WN Help Desk. This NuGet client can be found by searching the NuGet Package Manager in your development environment for WNHelpDeskClient, or by visiting the following URL:
The client contains both Async and non-Async methods for accessing each of the available RESTful WebAPI endpoints. Full solutions can be built in any programming tool that supports .NET. Some great tools are Visual Studio, Visual Studio Code, and LINQPad. LINQPad is a great tool for prototyping .NET code, and can even be used to run code using the lprun executable that comes with the application so LINQPad scripts can be run from the command line and even scheduled to run with the Windows Task Scheduler by referencing the lprun executable. That is a great option for building integrations with WN Help Desk using this client.
The basic usage of the client in code is done as follows (C# example):
// Use the client with a username and password
HelpDeskClient client = new HelpDeskClient("https://FullUrlToYourHelpDeskInstance", "username", "password");
// Use the client with a user token
HelpDeskClient client = new HelpDeskClient("https://FullUrlToYourHelpDeskInstance", "User Token");
An example of using the client to get the MasterLoader object is:
// Get the MasterLoader object using an Async method
DataObjects.MasterLoader masterLoader = await client.GetMasterLoaderAsync();
// Get the MasterLoader object using an non-Async method
DataObjects.MasterLoader masterLoader = client.GetMasterLoader();
The client makes use of the defined DataObjects used in WN Help Desk. Both the client and the DataObjects libraries include an XML documentation file so rich tips are shown when using these libaries in your solution.
The details about the available RESTful WebAPI endpoints can be found within WN Help Desk under the TBD Options menu by selecting "RESTful Web Api Documentation".