Overview

Sections

Overview

Tutorials are designed to offer a guide to complete common objectives, while also acknowledging that individual developers need to respond to individual needs of their own solutions. Tutorial frameworks provide blueprints for these solutions and should be adapted to fit individual needs.

Analytics with Birst

API Gateway

Application Development with Mongoose

Artificial Intelligence

Data Fabric

Digitical Assistant

Document Management

Integration with ION

Robotic Process Automation

Add description here

Security & User Management

Add description here

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Overview

Analytics with Birst

On this page
  • Analytics with Birst

API Gateway

Overview

The ION API Gateway is a NodeJS reverse proxy application. In the simplest terms, ION API gateway accepts incoming HTTP requests from clients (web-apps, mobile-app, fat-clients, etc.), passes the request on to the proper target server, and returns the target server’s response back to the client.

In addition to simply passing requests and responses through, the ION API can add value for adjusting or enriching the request and response via the use of policies. Policies can, for example, add headers to the request or log values from the response.

The following features describe the API Gateway

  • Pass-through (Proxy)
  • Orchestration
  • Hybrid
  • Backend as a service (BaaS)

Key Concepts & Definitions

Concepts
Definitions

ION

Intelligent Open Network. Part of the Infor OS technology platform.

BOD

Business Object Document. An XML document based on standards from the Open Application Group Integration Specification (OAGIS).

ION Desk

A business representation of complex company data for end user consumption.

Monitors

A monitor verifies incoming documents against a monitoring rule. If the result of this evaluation is true, the monitor generates an alert. The alert is sent to the users that are based on a distribution list.

Workflows

Workflows enable communication from an application to a user. For example, it presents a document for approval or prompts the user to perform a task using a particular screen of an application.

Activation Policy

A workflow activation policy contains a monitoring rule that evaluates incoming Sync BODs, and a mapping feature to map BOD attributes to workflow parameters.

Workflow Schedules

A workflow schedule is an automatic way to start workflow instances at regular intervals of time. A schedule is a sequence of “runs”: each time the schedule timer issues a trigger, the workflow schedule attempts to start a workflow instance. Depending on the schedule configuration, a new workflow instance may be started for each “run”.

Business Rules

Approval matrices contain rules, that are based on parameter evaluation, for distribution of approval tasks. These matrices can be used from Workflow to define approval chains

Want to learn more?

Written Guides

Product documentation serves as the primary reference for understanding specific product functionalities. For online, searchable, and user-friendly resources, refer to the following documentation.

Quick Reference

Download the API Gateway Cheat Sheet

Community

Collaborating with peers in your sector offers a valuable opportunity to learn and assist others. Dive into the Infor OS Community today!

Courses

Infor U Campus offers Learning Paths that combine video-based and instructor- led training. If you are an Infor customer, then check out courses on Infor U Campus. We recommend the following courses specifically for this component:

Was this section helpful?

What made this section unhelpful for you?

On this page
  • API Gateway

Adding APIs in the Infor OS API Gateway

## Overview This tutorial will guide you through integrating an API with an API Gateway using Infor OS. You'll discover the essence of an API Gateway, its importance, and the steps to set one up using Infor OS. You'll also learn how to test it effectively. When we ask what an API Gateway is, we're referring to a crucial Software System. It acts as a reverse proxy, forming a bridge between API consumers, like web and mobile applications, and providers, including Infor and other external services. * * * ### Components * [Enterprise Integration](https://developer.infor.com/components/enterprise-integration/) * [Enterprise Integration Best Practices](https://developer.infor.com/best-practices/enterprise-integration/) ### Requirements * Access to ION API Gateway * Security role: IONAPI-Administrator * Security role: IONAPI-User * [Infor U](https://education.infor.com/) courses. * * * ## Tutorial Difficulty: Medium Estimated completion time: 30 Minutes This tutorial will focus on using the role of an API Gateway. It functions as a strong intermediary, guaranteeing secure and efficient communication between consumers and providers. A unified access point simplifies everything for developers and their applications by providing a single base URL path for easier API access. Streamline security enhances protection by creating a uniform authentication process, which ensures that all API interactions are secure and only authorized requests get through. Enhanced API capabilities mean the gateway boosts your API with additional features without altering the existing server or code. This includes analyzing performance, logging usage patterns, and conducting thorough searches of those logs. It also includes adding and configuring an API. Let's examine how to incorporate an API into the gateway. Login to the Infor OS Portal, select the API Gateway tab at the top of the page. ![](https://developer.infor.com/wp-content/uploads/2025/01/image.png) The Available APIs are in the navigation menu in the upper left corner. Clicking this will take you to the menu where all the accessible APIs are listed. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-1.png) Introduce a new API, and hit the \+ Add button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-2.png) You'll see two options. We will develop an API from the ground up, particularly one not offered among the templates. We'll proceed by clicking the Create New button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-3.png) Please fill in the required fields. Application name : Neutrino API . In this scenario, we'll utilize a third-party API from Neutrino, which you can find online. Assign a version number, V2 , for this example. Moving on to the Suite Name and label it Neutrino API . Enter a description , General Web API . Next, select an icon . You can either upload a custom one or pick from a selection already provided. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-5.png) Define at least one target endpoint; this step is crucial to inform the API Gateway about the actual destination API URL. Click the \+ sign in the Target Endpoint section to input the proxy endpoint, which Neutrino, the vendor, has provided. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-6.png) In the Target Endpoint URL field enter [ https://neutrinoapi.com/ ](https://www.neutrinoapi.com/) Add a Description of Neutrinoapi Main UR L and the in the Proxy Context field. We'll use APIS . In the Proxy Security field, there are two primary options for accessing the services. OAuth 2.0 is the default standard for securing that URL, anonymous access is also available but generally reserved for testing phases. Select OAuth 2.0 . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-24.png) Neutrino opts for a widely used approach known as the API key method, necessitating the input of specific keys for Neutrino. From the drop-down, select the API Key option. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-25.png) The first Key Name is identified as a user-id ; enter the user account you generated on the Nuetrino website. The second Key Name is api-key . Enter the Root Key value associated with the Neutrino account. Click Save . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-26.png) Go back to the available API section, and under the Neutrino API Suite definition, you'll see that everything has been configured and saved. The status is now set to active. Click on the Neutrino API widget ![](https://developer.infor.com/wp-content/uploads/2025/01/image-11.png) You will notice the Status indicator also marks the API as active . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-12.png) The next step is to add some documentation. To do this, in the Neutrino API configuration, click on the API Documentation icon. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-13.png) Select the Documentation tab and click the \+ Button . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-14.png) In the Name field type Main Specification . In the Type field select Swagger . In the Enter URL or Upload Swagger JASON/YAML field use and click Save . ![](https://developer.infor.com/wp-content/uploads/2025/01/2025-01-07_142359.jpg) Notice that the API Suite has been updated. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-16.png) Scrolling down, we observe that the API specifications have been rendered, allowing us to view all the available Services. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-17.png) Navigating to the URL Info service. We can access detailed information about this specific API, including examples of making calls and what responses to expect. Click the Try It Out button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-19.png) Test by entering a URL such as https://www.google.com in the URL to probe field. Click Execute to query against that URL. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-21.png) Now, with the credentials and the two keys we've entered, it's retrieving live information directly from Neutrino and delivering a response in real-time. Receiving a 200 code is excellent news as it confirms a successful interaction and provides us with all the details about the URL. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-28.png) ![](https://developer.infor.com/wp-content/uploads/2025/01/image-29.png) This verifies that the API and its Suite have been successfully integrated and are now primed for use within the applications. Exploring this functionality demonstrates the API Suite's seamless integration and real-world application, ensuring it's fully operational and accessible for our development needs. Watch the following video to view all the steps that were covered. https://www.youtube.com/watch?v=lFxg4UQ2VxA&list=PLbzqMzjlWI2ai0KXdFI187v2FMoASVWEi&index=5 ## Resources Help Documents and User Guides * [API Gateway](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=apigatewayag_cloud/cover.html)
Was this section helpful?

What made this section unhelpful for you?

On this page
  • Adding APIs in the Infor OS API Gateway

API Interface to Cloudsuite Distribution Enterprise

Was this section helpful?

What made this section unhelpful for you?

On this page
  • API Interface to Cloudsuite Distribution Enterprise

Convert SOAP service to REST API

## Overview You want to integrate Infor OS with another system using APIs, but the system only supports SOAP web services, while Infor OS prefers REST APIs. How can you create a modern, integrated solution? * * * ### Components * [Enterprise Integration](https://developer.infor.com/components/enterprise-integration/) * [Enterprise Integration Best Practices](https://developer.infor.com/best-practices/enterprise-integration/) ### Requirements * Access to ION API Gateway * Security role: IONAPI-Administrator * Security role: IONAPI-User * API (REST vs SOAP) knowledge * Handlebars script knowledge for Policy [Docs](https://handlebarsjs.com/guide/) * * * ## Tutorial Difficulty: Medium Estimated completion time: 45 Minutes SOAP Webservices are still a valid option in the API world. They are based on WSDL (Web Service Definition Language) an XML file where you can define the input and the output with the types of messages. This approach is completely different compared to the REST (REpresentational State Transfer) that is based on swagger documentation 2.0 or Open API 3.0.x. Unless it is possible to define a SOAP web service in the API gateway, we cannot use it in ION, because the ION API connector is based on an API suite based on REST. ### Register Custom API Suite With the use of the API Policy, we can convert a SOAP web service into a REST API, and to do that we use this WSDL. ``` [![](https://developer.infor.com/wp-content/uploads/2022/09/2022-09-05-15_51_28-https___www.dataaccess.com_webservicesserver_numberconversion.wso_WSDL.png)](https://developer.infor.com/wp-content/uploads/2022/09/2022-09-05-15_51_28-https___www.dataaccess.com_webservicesserver_numberconversion.wso_WSDL.png) Once we have the URL (Uniform Resource Locator) of the WSDL we can register a new custom API suite in the API Gateway . Login to OS Portal and click on API Gateway . Click the ( + ) Add button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-60.png) Click on Create New button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-61.png) Input the following values and under the Target Endpoints tab, click the + button ![](https://developer.infor.com/wp-content/uploads/2024/09/image-62.png) On the Add Endpoint page, in the Target Endpoint URL field enter the WSDL URL . Enter rest in the Proxy Context field. Click Save . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-63.png) Below is the output screen after Save. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-64.png) * Watch the following video to view all the steps that were covered. ### Upload Swagger Documentation We need swagger documentation or an Open API 3.0.x to document our endpoint, which can be found with the following link or under the Downloads sections at the bottom the tutorial ([Swagger file to import into API Gateway](https://developer.infor.com/wp-content/uploads/2022/09/swagger.zip)). This file needs to be uploaded into the API suite. Click on the Details button for the rest Endpoint you just created. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-65.png) Scroll to the bottom of the rest endpoint page and select the Documentation tab. Click the ( + ) button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-66.png) Download and extract the swagger.zip file from the Swagger file to import into API Gateway link in the Download section. On the Add Documentation page, in the Name field type rest , from the drop down select Swagger in the Type field. Click the browse button on the Enter URL or Upload Swagger JSON/YAML field and select the rest.json file that was extracted from the swagger.zip file. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-68.png) Click Save . Below is the output screen after Save. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-69.png) * Watch the following video to view all the steps that were covered. ### Create Request and Response Policies Defining the Endpoint Policy for Request and Response. We have to write the scripts that convert JSON input from REST API to XML (Request) and SOAP that converts XML to JSON as a (Response). From JSON to XML (Request) {{number}} ]]> ``` From XML to JSON (Response) ``` ``` Scroll to the bottom of the rest endpoint page. Select the Endpoint Policies tab and click the ( + ) button under Request Policies . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-70.png) From the drop down select Transformation for the Policy Type field, in the Name field type input . For the Policy Definition replace the content with the From JSON to XML request script information displayed in a previous step. Click Save . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-71.png) Go back to the rest endpoint page and under the Endpoint Policies tab click the ( + ) button under Response Polices . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-72.png) From the drop down select Transformation for the Policy Type field, in the Name field type output . For the Policy Definition replace the content with the From XML to JSON response script information displayed in a previous step. Click Save . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-73.png) Below is the output screen after Save. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-74.png) * Watch the following video to view all the steps that were covered. ### Test API On the rest Endpoint page, select the Documentation tab and click the POST button, then click the Try it out button, ![](https://developer.infor.com/wp-content/uploads/2024/09/image-75.png) Change the number value from string to 101 and click the Execute button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-76.png) In the Response Body you should see the results, notice the one hundred and one content is displayed. This is telling you it is working. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-77.png) Watch the following video to view all the steps that were covered. ### Test ION API Connection Point Go to the ION tab, expand Connect and select Connection Points . Click on the ( + ) Add button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-78.png) From the drop down, select API . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-79.png) Watch the video below on how to create a Service Account . In the Name field type soap2rest_cp , click the IMPORT button to import your Service Account. Select the folder button and select your ServiceAccount csv file that was generated when creating a service account.. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-80.png) Click Ok . Below is the output screen after Ok. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-81.png) Select the Documents tab and click the ( + ) button. Click on the SELECT button at the bottom of the screen. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-82.png) From the drop down select soap to rest . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-83.png) Select the search button and select the CustomerAPI/soap/rest API. Click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-84.png) In the API Call Name field type soap . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-85.png) Select the Request Body tab and click on the EXAMPLE button. You will change the string number value to 101 . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-86.png) ![](https://developer.infor.com/wp-content/uploads/2024/09/image-88.png) Select the Output Documentation tab and select the Document search button. Search and select the AnyDocuments option, click Ok . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-89.png) Click the TEST button, you will receive the Warning message, click Yes . ![](https://developer.infor.com/wp-content/uploads/2024/09/image-90.png) Click the Test button. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-91.png) You will notice the Output displaying the one hundred and one message. This tells us the API call is working and the Soap to REST conversion is successful. ![](https://developer.infor.com/wp-content/uploads/2024/09/image-92.png) Watch the following video to view all the steps that were covered. ## Downloads [Swagger file to import into API Gateway](https://developer.infor.com/wp-content/uploads/2022/09/swagger.zip) [Connection Point file to import into ION Desk](https://developer.infor.com/wp-content/uploads/2022/09/soap2rest_cp.zip) [API Suite definition to import into API Gateway](https://developer.infor.com/wp-content/uploads/2022/09/Custom_API_SUITE.zip) ## Resources Online help documentation: * [Target SOAP WSDL](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=apigatewayag_cloud/cover.html) * [Custom API Suite](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=apigatewayag_cloud/vwi1489585692124.html) * [Swagger or Open API 3.0.x documentation](https://swagger.io/docs/) * [API Policy rules](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=apigatewayag_cloud/vgs1507223114567.html)
Was this section helpful?

What made this section unhelpful for you?

On this page
  • Convert SOAP service to REST API

How to call an ION API

## Overview This tutorial will help you learn how to call an ION API within the OS portal using Authorized API Calls and Postman--a popular tool for testing APIs. It will also offer guidance on integrating this process into your own client application, ensuring a smooth and efficient implementation. * * * ### Components * [Enterprise Integration](https://developer.infor.com/components/enterprise-integration/) * [Enterprise Integration Best Practices](https://developer.infor.com/best-practices/enterprise-integration/) ### Requirements * Access to ION API Gateway * Security role: IONAPI-Administrator * Security role: IONAPI-User * [Infor U](https://education.infor.com/) courses. * * * ## Tutorial Difficulty: Medium Estimated completion time: 45 Minutes This tutorial will guide you through calling an ION API within the Infor OS portal using several OAuth scenarios, including Postman, a widely used tool for API testing. We'll also give you some tips on how to implement this from your own client application. How you call an ION API depends on the type of client application you are using. If an application is already authenticated with Infor OS, you will receive an Infor OS token, which can be used to call an ION API. This is an OAuth2 SAML Bearer Grant , the first scenario in the slide below. To be logged into the Infor OS portal means you are already authenticated, so the same token that was issued to you via login for single sign-on can be reused if you are making an ION API call from the Infor OS portal or itself or within any of the other SSO authenticated applications. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-31.png) We'll call a simple API that will return the details of the currently logged- in user. Login to the OS portal and select the API Gateway tab. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-32.png) On the navigation menu in the upper left corner, select Available APIs . Here, you will see a list of various APIs and associated documentation registered by the API Gateway. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-1.png) Search and select the IFS Service API. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-33.png) Click on the Documentation tab. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-34.png) Scroll to the IFSUser section, click on the GET /usermgt/v2/users/me API. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-35.png) Currently the details are empty, click the Try it out button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-36.png) Click the Execute button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-37.png) You should see the field replaced by your personal details in the 200 success code. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-40.png) You will also see there is a Bearer Token issued for this request. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-41.png) This is the OAuth2 SAML Bearer Token type. The client application we used here is the Documentation page of the registered API itself. The next OAuth Scenario involves calling mobile or web applications. In this case, the application is not yet authenticated within the Gateway. The user must authorize the mobile application to call the ION API on their behalf. This type of interaction uses the OAuth2 Authorization Code Grant . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-42.png) On the navigation menu select Authorized Apps , then select the \+ button to create a new authorized app. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-43.png) In the Name field enter Postman Web App Demo . For the Type , choose Web Applicatio n, and in the Description field, enter Postman Web App . Enter the Postman Redirect URL In this example, we will use this [https://oauth.pstmn.io/v1/browser- callback](https://www.getpostman.com/oauth2/callback). The Authorized JavaScript Origins field will be the same callback URL. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-44.png) Click Save. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-45.png) The Gateway will generate your Client ID and Client Secret , click the Download Credentials button to download the credentials file. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-46.png) Open and view the credentials file, which will look like this. The file holds the details to call the API and Postman. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-47.png) Log into Postman and create a new request collection using the Authorization methods template; click the \+ sign in the top left corner and select the View more templates link, or you can click the \+ sign in the tab section. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-70.png) Click the Authorization methods button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-50.png) Click the Use Template button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-51.png) On the Authorization methods collection, click on the eclipsis and select Add request . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-62.png) On the New Request collection, click on the eclipsis and select Rename . Give the Collection a new name. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-71.png) We will name it Authorization Code Grant . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-72.png) Within the Params tab, enter the IFS Service /usermgt/V2/users/me ION API URL in the GET parameters field. In this example we will enter ![](https://developer.infor.com/wp-content/uploads/2025/01/image-73.png) Select the Authorization tab, and in the Auth Type field, choose OAuth 2.0 . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-74.png) To acquire a new access token, scroll down to the Configure New Token section and enter the following Postman Mapping information from the downloaded Postman Web App Demo.ionapi credentials file performed in the previous steps. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-54.png) Enter the relevant credentials into the required input parameter. In the Token Name field, enter Auth Code Token and set Grant type to Authorization Code . The Callback URL is the embedded Postman link (). The Auth URL is a concatenation of values pu + oa , similarly, the Access Token URL is a concatenation of pu + ot , The Client ID is value ci and the Client Secret is cs . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-75.png) Scroll to the bottom of the page and click the Get New Access Token button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-76.png) This will take you to a login screen. Once signed in you can see infor OS is prompting the Request For Approval regarding Postman using our credentials. Click the Allow button. ![This image has an empty alt attribute; its file name is image-77.png](https://developer.infor.com/wp-content/uploads/2025/01/image-80.png) You will get the following message. You can click the Proceed button or wait a few seconds. The Manage Access Token screen will then appear. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-78.png) This will provide a new token within the Postman application. On the Manage Access Tokens screen, click the Use Token button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-79.png) ![](https://developer.infor.com/wp-content/uploads/2025/01/image-98.png) We can test this by calling the same GET API using the /ifsservice/usermgt/v2/users/me URL. Click the Send button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-81.png) You can see that the call was successful. Error Code 200 and returned Data . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-82.png) Now, let's look into the Resource Owner Grant type. In this case, the calling application is not a mobile or web application but either a service system or backend application. Since it is an app calling an API, there is no user interaction present which requires the OAuth2 Resource Owner Grant for a silent API call from a Service/System client. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-83.png) Go back to the OS portal. We'll create another authorized app. On the navigation menu, select Authorized Apps , then select the \+ button to create a new authorized app. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-43.png) In the Name field enter Postman_Resource_Demo . For the Type , choose Backend Service , and in the Description field, enter Postman as a calling system . Click Save . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-84.png) Click the Download Credentials button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-85.png) On the Download Credentials screen, select Create Service Account and add an account in the Full Name field. Then click Download . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-86.png) The credentials will look something like the following. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-88.png) Now, create another Postman request. On the Authorization methods collection, click on the eclipsis and select Add request . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-62.png) On the New Request collection, click on the eclipsis and select Rename . Give the Collection a new name. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-90.png) We will name it Resource Owner Grant . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-91.png) Within the Params tab, enter the IFS Service /usermgt/V2/users/me ION API URL in the GET parameters field. In this example we will enter ![](https://developer.infor.com/wp-content/uploads/2025/01/image-92.png) Select the Authorization tab, and in the Auth Type field, choose OAuth 2.0 . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-93.png) To acquire a new access token, scroll down to the Configure New Token section and enter the following Postman Mapping information from the downloaded Postman_Resource_Demo.ionapi credentials file performed in the previous steps. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-94.png) Enter the relevant credentials into the required input parameter. In the Token Name field, enter Resource Owner Token and set the Grant type to Password Credentials . The Access Token URL is a concatenation of values pu + ot , the Client ID is value ci and the Client Secret is cs , the Username is a service account, account key saak and the Password is the service account, secret key sask . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-95.png) Now we can request our token, Scroll to the bottom of the page and click the Get New Access Token button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-96.png) You will get the following message. You can click the Proceed button or wait a few seconds. The Manage Access Token screen will then appear. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-78.png) This will provide a new token within the Postman application. On the Manage Access Tokens screen, click the Use Token button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-97.png) ![](https://developer.infor.com/wp-content/uploads/2025/01/image-98.png) Call the GET API, by clicking the Send button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-99.png) You can see that the call was successful. Error Code 200 and returned Data . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-100.png) We have demonstrated how to call an ION API in three distinct ways. One by using the OAuth2 SAML Bearer Grant , which was executed from the documentation page of the OS portal. Second, we used the Postman OAuth2 Authorization Code Grant , where the user logs in using their username and password to authenticate and allows Postman to call the API on their behalf. Thirdly, we demonstrated that if the calling system is a service or one with no user interaction, in that case, the user would need the OAuth2 Resource Owner Grant with details supplied when getting the token. Lastly, if the API allows itself to be called Anonymously , no credentials are passed, and the gateway can successfully pass the request through. This fourth scenario is strictly discouraged unless the API provides some non- sensitive information and is open to everyone. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-101.png) If you are building your client application and want to call an ION API, you can refer to our [GitHub](https://github.com/infor-cloud/ion-api-sdk) , where we have published the source code for getting tokens for various types of OAuth2 grants. Your app can be a Java or .Net application we have supplied code for both. Watch the following video to view all the steps that were covered. https://www.youtube.com/watch?v=0evdcrDc6F4&list=PLbzqMzjlWI2ai0KXdFI187v2FMoASVWEi&index=7 ## Resources Help Documents and User Guides * [API Gateway](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=apigatewayag_cloud/cover.html)
Was this section helpful?

What made this section unhelpful for you?

On this page
  • How to call an ION API

How to create swagger documentation for REST API

Overview

To use an ION API connection point in ION Connect, you must first register an ION API Suite in the API Gateway with Swagger 2.0 or Open API documentation. However, not all APIs available online come with the necessary documentation, and in some cases, you may need to create it manually.


Components

Requirements

  • User privileges to ION * Security roles: IONDeskAdmin * User privileges to API Gateway * Security roles: IONAPI-Administrator * Optional classes on Infor U * Infor OS: Foundation for Multi-Tenant-Part 1 * Infor OS: Foundation for Multi-Tenant-Part 2 * Infor OS: Configuring ION Connect

Tutorial

Difficulty: Medium Estimated completion time: 45 Minutes

Swagger documentation is used for REST APIs, while WSDL documentation is for web services. Swagger outlines the HTTP verb methods (GET, POST, PUT, PATCH, DELETE), along with the request and response parameters and their types. For more information, refer to the official Swagger documentation. Many free REST APIs lack proper documentation—one example is an API for Exchange Rates, which we will create in this tutorial.

To accomplish this, you'll use a free tool called Swagger Editor, an online platform designed to help you create accurate API documentation. Here are the steps we'll follow:

  • Create an Account and API Key. * Choose the endpoint you want to document. * Create the swagger documentation (swagger editor). * Test the documentation (swagger editor). * Register the custom API suite and upload the documentation. * Test the documentation (API Gateway).

1. Create an Account and API Key

The free API is protected by an API Key. To create the API Key you need to register an account.

Open a browser and go to this URL and provide Name, Email, Password, and Confirm Password and click on the Register button to create a new account.

Check your email and confirm your subscription.

Once verified, you are logged in and the API Key is created for you.


2. Choose the endpoint you want to document

When you are logged in, click the Docs link and then select Documentation .

Scroll down and on the left bar, select Latest Rates Endpoints .

You reached the endpoint description, which outlines the parameter specifications , their types ( optional or required ), and provides an example of the API response .

You can test it directly in your browser, by opening a new tab and pasting this URL :

https://commodities-api.com/api/latest ? access_key = API_KEY & base = USD & symbols = GBP,JPY,EUR Replacing the API_KEY with your API Access Key generated when you have created your account.


3. Create the swagger documentation (swagger editor)

Once you identified the endpoint for which you want to create the documentation, it's time to create it.

Open a new tab in your browser and go to this URL: Swagger Editor. You will see the page below.

This is the default example of Open API documentation for a Petstore API. Your goal is to create Swagger 2.0 documentation for your endpoint.

You wonder what is the difference between Open API and Swagger 2.0 documentation. Mainly there are 2 differences.

  • Swagger 2.0 is the old definition for REST API and it is written in JSON format. * Open API 3.0.X is the new definition for REST API and it is written in YAML.

There are also tools that convert Swagger 2.0 to OpenAPI 3.0 and vice versa. Your goal will be to write Swagger 2.0 documentation and also see how to convert to OpenAPI 3.0.

Select and remove everything from the editor, and you will see this page.

You will be creating 4 parts:

  • info * schemes * paths * definitions

3.1 info

In the "info" section, you have to provide the title , description , and version of the documentation, plus the host and the basePath of the endpoint. You will receive an error which you will fix later on.

3.2 schemes

In the "scheme" section, you have to provide the protocol [HTTP,HTTPS], in your case you have only HTTPS . You still have the same error which you will fix later on.

3.3 paths

In the "paths" section, you define the final part of the endpoint URL, specify the HTTP verb methods (such as GET, POST, PUT), and outline the parameters, including their types, as well as the structure for request and response bodies.

3.4 definitions

This part can be the most challenging, as it requires familiarity with JSON schema definitions. In this section, you define the types for the Request and Response payloads. In your case, since you're using the GET method rather than POST, there is no request payload to define, but you will need to create the schema for the Response payload.

For the Request, you’ve already defined the types in the parameters section. If not, you’ll need to create a new definition here. As you can see, these definitions can be quite complex, but we'll explore how to simplify the process. Since you’re working with a GET verb method, you can easily use your browser for testing. However, for POST verb methods, you'll need to use a client like Postman to make the API call.

Make the API call as generic as possible providing only mandatory values, in your case provide the API_KEY . The other parameters are optional. Copy the output.

Now you have to create a JSON schema for this JSON Object. You can find free tools on the internet like this one, copy the output and generate the schema.

Copy the generated schema and use it in the Swagger documentation. Remove the $schema line from the generated schema, give a Name to the definition and paste the JSON Schema.


4. Test the documentation (swagger editor)

Now that you have created the swagger documentation, let's test if it works. On the right side of the page editor expand the GET endpoint, click TRY IT OUT , provide the required parameter ( API_KEY ) and click the EXECUTE button. Check that the response is the same as the response you have received in your browser.


5. Register the custom API suite and upload the documentation

You have created a working Swagger 2.0 documentation for the free API, now let's try to use it in the API Gateway. To do that you have to create a New custom API Suite and upload the Swagger 2.0 documentation.

5.1 Register the custom API suite

Log into the Infor OS Portal and click the API Gateway menu label on the top bar.

Click the ( +Add ) tile to create a New API suite.

On the next page, click on the ( + Create New ) button.

Fill in all mandatory input and then click the ( + ) button below Target Endpoints tab.

Provide the Target Endpoint URL , the Target Endpoint Description , and the Proxy value (any value you like). Click Save .

Now you are ready for uploading the Swagger documentation.

5.2 Upload the documentation

Before uploading the Swagger 2.0 documentation, you have to apply a small modification.

The reason for this modification is that now the host and basePath are managed by the API Gateway and the basePath of the documentation is now related to the New custom API suite. Change the basePath to the correct path. (see the photos above).

Now that you have applied this modification, click on File and Save as JSON and store the file in a local folder. You may also notice the option to convert and save the file in YAML format. If you click on the Edit menu, there is the option to convert the swagger 2.0 documentation to OpenAPI3 as we discussed before.

On the Commodities API screen, under the Endpoints tab. Click on the Documentation icon.

You arrive at a new Proxy page, Scroll down to the Documentation tab and click the ( + ) button, on the Add Documentation page, provide a Name , from the drop down select Swagger as a Type and in the Enter URL or Upload Swagger JSON/YAML field select the JSON file you created with the Swagger editor. Click Save . The new custom API suite now has its own Swagger documentation.


6. Test the documentation (API Gateway)

Let's test now the custom API in the API Gateway. From the document tab, expand the resource definition, click the Try it out button, enter the API_KEY and click the Execute button. Check if the response is the same as what you get from the swagger editor and from the browser. You have created a swagger 2.0 documentation and you have registered a new API Suite, now you can use it in the API connection point of the ION Connect.


Downloads

API Suite & Swagger Editor Definition

Resources

Online help documentation:

Was this section helpful?

What made this section unhelpful for you?

On this page
  • How to create swagger documentation for REST API

Starting a workflow from an API

## Overview Infor OS Platform features a robust API Gateway, which includes the powerful ION API Suite complete with workflow endpoints. This functionality enables seamless integration of your applications, allowing you to trigger workflows effortlessly. By leveraging these capabilities, you can enhance your system's interoperability, streamline business processes, and achieve greater efficiency across your enterprise solutions. Join us as we uncover the potential of Infor OS Platform and its API-driven approach to modern workflow management. * * * ### Components * [Enterprise Integration](https://developer.infor.com/components/enterprise-integration/) * [Enterprise Integration Best Practices](https://developer.infor.com/best-practices/enterprise-integration/) ### Requirements * Access to ION API Gateway * Security role: IONAPI-Administrator * Security role: IONAPI-User * [Infor U](https://education.infor.com/) courses. * * * ## Tutorial Difficulty: Medium Estimated completion time: 30 Minutes In this tutorial, we'll explore the powerful capabilities of Infor OS's API Gateway. You'll see how its robust ION API Suite, complete with workflow endpoints, enables seamless application integration to easily trigger workflows. Discover how to enhance interoperability and streamline processes with Infor OS. Let's examine how to call a workflow from an API. Log in to the Infor OS Portal and select the API Gateway tab at the top of the page. ![](https://developer.infor.com/wp-content/uploads/2025/01/image.png) The Available APIs option is in the navigation menu in the upper left corner. Clicking this will take you to the menu where all the accessible APIs are listed. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-1.png) Using the search function at the top, Type in Infor ION and double click the Infor ION Suite. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-121.png) It reveals a comprehensive list of endpoints, including two workflow-specific ION process endpoints. Our focus is on the IONSERVICES/process/application endpoint; proceed by clicking on its documentation. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-122.png) The Swagger UI interface for this endpoint is displayed. Scrolling down we find the workflow /v1/workflow/start API listed among the available methods. Click on it. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-123.png) Expanding the details revealing essential information such as required inputs. Specifically a logicalid and JSON body, it also provides a helpful example demonstrating how to structure the JSON. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-124.png) Now let's click the try it out button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-125.png) To execute this API, input the Logical ID following this format: lid://infor.iondesk.iondesk .It's important to consult your system administrator to confirm your environment setup. Additionally, input the JSON body. A generic JSON is displayed as a default example or guide. We will paste the JSON using the following example, which specifies the workflowName of WF_DEMO and the pre-assigned instanceName of TestInstance . Even though this workflow doesn't require any inputs, we'll include one for demonstration. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-128.png) Click the Execute button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-126.png) Below in the server response section, we've achieved a Code 200, signifying a successful execution. The response body reveals the ID of the workflow that's up and running. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-127.png) We'll be using Postman to make a request call. Postman is a popular and freely available API client that can be found online. First, on the OS portal, we must build an Authorized App using the Web Application type for the request in Postman's OAuth2 Authentication setup. In this case, the application has not yet been authenticated within the Gateway. The user must authorize the mobile application to call the ION API on their behalf. This type of interaction uses the OAuth2 Authorization Code Grant . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-42.png) On the navigation menu select Authorized Apps , then select the \+ button to create a new authorized app. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-43.png) In the Name field enter Postman Web App Demo . For the Type , choose Web Applicatio n, and in the Description field, enter Postman Web App . Enter the Postman Redirect URL In this example, we will use this [https://oauth.pstmn.io/v1/browser- callback](https://www.getpostman.com/oauth2/callback). The Authorized JavaScript Origins field will be the same callback URL. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-44.png) Click Save . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-45.png) The Gateway will generate your Client ID and Client Secret , click the Download Credentials button to download the credentials file. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-46.png) Open and view the Postman Web App Demo.ionapi credentials file, which will look like this. The file holds the details to call the API and Postman. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-134.png) Log into Postman and create a new request collection using the Authorization methods template; click the \+ sign in the top left corner and select the View more templates link, or you can click the \+ sign in the tab section. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-70.png) Click the Authorization methods button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-50.png) Click the Use Template button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-51.png) On the Authorization methods collection, click on the eclipsis and select Add request . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-62.png) On the New Request collection, click on the ellipsis and select Rename . Give the Collection a new name. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-71.png) We will name it API Workflow Demo . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-129.png) Within the Params tab, enter the IFS Service /application/V1/workflow/start ION API URL in the POST parameters field. In this example we will enter The key named logicalId will be filled in with the required value for our API. lid://infor.iondesk.iondesk ![](https://developer.infor.com/wp-content/uploads/2025/01/image-131.png) Select the Authorization tab, and in the Auth Type field, choose OAuth 2.0 . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-133.png) To acquire a new access token, scroll down to the Configure New Token section and enter the following Postman Mapping information from the downloaded Postman Web App Demo.ionapi credentials file performed in the previous steps. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-54.png) Enter the relevant credentials into the required input parameter. In the Token Name field, enter Auth Code Token and set Grant type to Authorization Code . The Callback URL is the embedded Postman link (). The Auth URL is a concatenation of values pu + oa , similarly, the Access Token URL is a concatenation of pu + ot , The Client ID is value ci and the Client Secret is cs . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-137.png) Scroll to the bottom of the page and click the Get New Access Token button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-136.png) Postman will initiate a handshake with Infor's Cloud OAuth authentication and take you to a login screen, where you must sign in. Once signed in you can see infor OS is prompting the Request For Approval regarding Postman using our credentials. Click the Allow button. ![This image has an empty alt attribute; its file name is image-77.png](https://developer.infor.com/wp-content/uploads/2025/01/image-80.png) You will get the following message. You can click the Proceed button or wait a few seconds. The Manage Access Token screen will then appear. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-78.png) This will provide a new token within the Postman application. On the Manage Access Tokens screen, click the Use Token button. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-79.png) ![](https://developer.infor.com/wp-content/uploads/2025/01/image-98.png) Click on the Body tab where we'll enter our JSON to call the API and kick off the workflow. Ensure the format is set to raw and JSON is selected from the dropdown. Paste in the script we successfully tested previously when we did the " try it out " in the ION API section of this tutorial. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-128.png) ![](https://developer.infor.com/wp-content/uploads/2025/01/image-138.png) Click the Send button, to trigger the chain of events we've set up. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-139.png) You can see that the call was successful. Error Code 200 and a job ID of 56903 . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-140.png) Go back to the OS Portal, and view active workflows in ION. Click the ION tab, and in the navigation menu expand Monitors and Workflows and select Active Workflows . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-141.png) Searching for the WF_DEMO workflow. You can see the last one has a status of Running . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-142.png) Let's confirm it's the one we executed in Postman by clicking on Workflow Instances . ![](https://developer.infor.com/wp-content/uploads/2025/01/image-143.png) There's the matching job ID of 56903 we got from Postman. ![](https://developer.infor.com/wp-content/uploads/2025/01/image-144.png) This Concludes this Tutorial on how to Start a workflow from an API. Watch the following video to view all the steps that were covered. https://www.youtube.com/watch?v=CFuRaN8NQK4&t=24s ## Resources Help Documents and User Guides * [API Gateway](https://docs.infor.com/inforos/latest/en-us/useradminlib_cloud/default.html?helpcontent=apigatewayag_cloud/cover.html)
Was this section helpful?

What made this section unhelpful for you?

On this page
  • Starting a workflow from an API

Application Development with Mongoose

Go beyond basic fit and customize your cloud experience with extensibility tools that leverage no-code, low-code, and full-code frameworks.

On this page
  • Application Development with Mongoose

Artificial Intelligence

Use Machine Learning to build an AI into your business processes.

On this page
  • Artificial Intelligence

Analytics & Reporting in CloudSuite Service Industries

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Analytics & Reporting in CloudSuite Service Industries

Analytics & Reporting in M3 Cloudsuites

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Analytics & Reporting in M3 Cloudsuites

Backend as a Service (BaaS)

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Backend as a Service (BaaS)

Data Fabric

Manage data on the platform so that humans and systems can securely access information from anywhere.

On this page
  • Data Fabric

Digital Assistant

Streamline the user experience with a digital assistant that helps your employees navigate and access information by voice or chat.

On this page
  • Digital Assistant

Document Management

Leverage Infor's central document repository to manage your enterprise document in the cloud.

On this page
  • Document Management

Governance, Risk and Compliance

Was this section helpful?

What made this section unhelpful for you?

On this page
  • Governance, Risk and Compliance

Integration with ION

Create a unified application topology using the integration hub in the Infor Platform.

On this page
  • Integration with ION

Portal and Workspaces

On this page
  • Portal and Workspaces

Robotic Process Automation

RPA automates repetitive tasks and empowers your team to focus on what they do best.

On this page
  • Robotic Process Automation

Security & User Management

Tutorials that help you leverage Infor's cloud security and user management capabilities.

On this page
  • Security & User Management
View as Markdown

Ask an AI

Open in ChatGPTOpen in Claude