Infor Application Connector (IMS)

This section explains the adoption procedures that applications must fulfill to integrate with ION through the ION Messaging Service, (IMS), connection point.

IMS is a connector that allows applications to integrate with ION through REST/JSON APIs. Unlike the IO Box connector, IMS does not require direct access to an application’s database. Instead, IMS communicates through the secured https protocol, through OAuth 1.0, or through ION API for authentication. Therefore, IMS is a loosely coupled connector that makes integrations easier.

IMS specifications include well defined API methods. These methods are implemented by ION and must be implemented by the concerned application. After this, they can push messages to each other through the APIs.

IMS can send and receive multiple message requests in parallel. Therefore, sequence of message transport is not guaranteed when using the IMS connector. If sequencing is important, you must use, for example, a VariationID.

The current IMS protocol supports three versions: v1, v2, and v3. March 2020, IMS protocol v3 was introduced. New adopters should use the v3 protocol. The v1 and v2 protocols are not described in this document.

API specifications

For details on the API methods that are mentioned in this guide, see the swagger documentation for IMS.

This documentation is available through ION API.

In ION API, select Available APIs. Then, search for the Infor ION suite and open the details for the ION Messaging Service endpoint.

Note: You cannot make IMS API calls through the swagger 'Try it out!' option because the IMS side verifies the authentication of the calling side. Therefore, for an IMS through ION API, the ClientId of the ION API authorized application must be included in the request; the swagger cannot take care of this. Instead, use a client such as Postman to make the call to ION API and use the authorized application credentials.

Encoding

For transport performance reasons, especially where it involves larger messages, you can compress the message before sending. In that case you can use the DEFLATE or GZIP encoding. ION ensures the message is decompressed before it is delivered to the receiving application.

ION internals are DEFLATE-optimized. Therefore, we recommend the use of DEFLATE over GZIP.