Infor Application Connector (IMS)
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 API Gateway 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.
In June 2023, a new IMS v3 message/multipart
is introduced.
The difference in the IMS v3 multipartMessage
method is that the new method
contains only one body for the payload. All message parameters are moved to the HTTP header
and query parameters. Except for this change, the new method works similar (functionality,
responses, HTTP status codes, etc.) to the existing multipartMessage
method.
In line
with best practice standards, the IMS standard message template uses HTTPS transfer
protocol.
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 API Gateway.
In API Gateway, select . Then, search for the Infor ION suite and open the details for the ION Messaging Service endpoint.
ClientId
of the
API Gateway 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 API Gateway 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.