Introduction to the JobTracker / Systemize API
The JobTracker application programming interface (API) allows programmers to write custom software to interact with your JobTracker data. The API works for Systemize as well as JobTracker (but not CounterGo).
The API Can
The API provides create/read/update/delete (CRUD) access to
- Accounts
- Jobs
- Job Activities
- Job Forms and Form Data
- Job Files
- Purchase Orders
- Serial Numbers
- Material Allocations
The API CANNOT
The API does not provide access to every aspect of Moraware software. Notably, using the API there is currently no way to access
- Quotes (neither JobTracker nor CounterGo)
- Some settings
- Some views
- Some details of Jobs and Accounts (e.g., issues)
- The change log
- The underlying database directly
Alternatives to the API
Developing software is expensive - so the API is overkill for many types of problems. Consider especially if you can export views to Excel (in JobTracker or Systemize) and manipulate a spreadsheet instead.
Technical Details
The JobTracker API .NET object model is a wrapper around an (autogenerated) XML/http interface, greatly reducing the amount of code needed to interact with JobTracker. To use the JobTracker API in a .NET language, call methods on the JobTrackerAPI .NET object model.
User Rights
In order to use the API, a user must either be an Admin or have the API right checked on a role:
Getting Started
To use the API on your machine, simply download the latest .zip file and extract the contents to your local file system.
To use the object model from your .NET project, you first need to create a reference to the DLL in your project properties.
Samples
- C# sample: JTSample
- VB sample: JTSampleVB
- Miscellaneous code snippets and samples: APISamples
Connecting to the JobTracker API
To connect to a JobTracker instance, use the URL of the JobTracker server along with a username and password.
The URL for the API ends with "api.aspx", while the regular JobTracker application web page ends in "d.aspx" for the desktop web page or "m.aspx" for the mobile web page.
Example: If your Moraware database is at demo.moraware.net, then pass this URL to the constructor of your Connection object: https://demo.moraware.net/api.aspx.
The UserName and Password can be any JobTracker user who has security permissions to execute API requests. (i.e. The user must be an Administrator or be associated with a Role that has the Execute API Requests permission set, as shown above.)
.NET Object Model
While programming against the .NET object model of the API, you interact with the server primarily through the Connection object. The first step is to create a Connection object and connect to the server using the URL/UserName/Password. Then you can call methods on the Connection object to interact with the server.
To log out of the session you can call the Disconnect method. If you don't call this method, the session will eventually time out based on the "Session Timeout" setting on the System Settings page in JobTracker.
From C# Example:
From VB Example: