Skip to main content

Changes in jxAPI Version 10.0

Warning: legacy API

This page is about the legacy SOAP-based jxAPI that is no longer updated or recommended for use in new projects. The documentation in this section may be outdated or inaccurate, and is provided for reference purposes only.

Journyx recommends using the REST-based API for new projects in most cases. However, at the current time, there are certain object types that are not available through the REST API.

Multiple version support

Version 10.0 introduces multiple version support to the jxAPI, which is intended to allow applications built for previous versions of the jxAPI to continue to work even when the current version introduces incompatible changes in types and method signatures.

Using a versioned endpoint is recommended

The unversioned and original endpoint URLs such as /jtcgi/jxapi_wsi.pyc do not have newer database fields and features added to them; in general, these are only accessible in the versioned endpoints. We recommend using the latest available versioned endpoint, which as of this writing is 12.6.

In order to facilitate support for multiple versions, a new endpoint URL has been added, of the format http(s)://<host>:<port>/jtcgi/api/<version>/<protocol>[/<flags>][?wsdl]. The <version> element is a dotted version number such as "10.0" or "9.5", <protocol> is one of the supported endpoint protocols (described below), <flags> are optional protocol-specific flags, and the ?wsdl query on the end causes the server to return the WSDL, if any, for the requested version and protocol.

jxAPI 10.0 and higher no longer supports the old SOAPpy and ZSI (rpc/encoded) SOAP protocols. The available protocols are:

  • wsi - document/literal SOAP suitable for use with .NET
  • wsi/inline - document/literal SOAP suitable for use with Axis2
  • jsonrpc - JSON-RPC 2.0
  • xmlrpc - XML-RPC

The older jxAPI code is still available from the old endpoint addresses (jxapi_wsi.pyc and the like) and WSDL URL, but it will no longer be updated with new features. That means that new fields and features going forward are not available in the unversioned API endpoints.

As of December 2024, the following versioned endpoints are available. In general, we recommend using the newest available versioned endpoint, which is 12.6. Note that product versions after 12.6 stopped adding new versioned API endpoints; new features and fields are only added to the REST API.

  • 9.5
  • 10.0
  • 10.1
  • 11.0
  • 11.1
  • 11.2
  • 11.5
  • 12.1
  • 12.2
  • 12.4
  • 12.5
  • 12.6

Removed Methods

The following older methods duplicate functionality elsewhere, and have been removed from jxAPI 10.0:

  • CreateApprovalTemplate
  • UnassignApprovalTemplate
  • AssignApprovalTemplate
  • getApprovalTemplates
  • addUser
  • newUser
  • addGroup
  • newGroup
  • addProject
  • newProject
  • getProjectList
  • addTimeRecord
  • newTimeRecord
  • getTimeList
  • addExpenseRecord
  • newExpenseRecord
  • getExpenseList
  • getExpenseCodeList
  • getExpenseCurrencyList
  • getExpenseSourceList
  • addCode
  • newCode
  • getCodeList
  • addSubcode
  • newSubcode
  • getSubcodeList
  • addSubsubcode
  • newSubsubcode
  • getSubsubcodeList
  • getTimeSheetIDByDate
  • getLatestTimeSheetID
  • getNextTimeSheetID
  • getPreviousTimeSheetID
  • getDatesInTimeSheet
  • getTimeRecordIDsInSheet
  • submitTimeSheet
  • getTimeSheetStatus
  • getTimeSheetReason
  • getAllTimeSheetIDs
  • getRecentTimeSheetStatus
  • getTimeSheetRejectedStatuses
  • getTimePeriodDates
  • getExpensePeriodDates

Added Methods

The primary additions to the jxAPI in this version (and in 9.5.2) focus on mobile app support and the infrastructure necessary to support multiple versions and more dramatic improvements going forward, but there are some new features that may be useful in other contexts as well: