Introduction to Decision Services

  • Updated

InRule is proud to release its latest APIs for discoverable and frictionless execution of decisions and rules. Decision Services are provided as two APIs-in-one including the newly designed Decision API and a modernized version of our classic Rule Execution API

As of InRule 5.8.1, Decision Services are available in both InRule SaaS and Azure self-hosted. The classic irServer Rule Execution Service is flagged for retirement at the end of 2024. Please plan on transitioning your calling application to use either the new Decision API or the backward-compatible Rule Execution API. 

API Overview

Decision API

The Decision API is our new modern API that is designed to provide simplicity and an intuitive user experience when executing your decisions and rules.

  • InRule's newly designed, modern API - tailored for simplicity and ease of use
  • Generates Swagger for all of your decision and rule set endpoints by rule application
  • Simplified request/response model
  • When in doubt, use this API
    Explore the Decision API here

Rule execution API

Shared API features

  • NET 6 Web API with cross-platform portability
  • OpenAPI 2.1 compliant
  • Descriptive Swagger pages with test capability 
  • API key-based authentication
  • Auto-scaling with health monitoring
  • Status endpoint

Understanding which API to use depends on your application's specific use case and integration needs. In general, the Decision API should be the preferred API unless there are specific technical reasons requiring the use of the Rule Execution API.

Locating Decision Services in the InRule Portal

Hover over the Decisioning menu in the InRule portal. In the drop-down, select Execution and then select Decision API in the sub-menu.

Picture1.png

This will take you to the Swagger pages for the Decision API and the Rule Execution API. Additional descriptions for these APIs are contained in their respective help articles along with details of the Swagger for each API. 

Locating your URLs and API key

  1. The URLs and API Key to use the Decision Service or Rule Execution Service can be found in the InRule Portal by clicking on the cog icon in the top right corner of the page.
    Settings.png

  2. Select Provisioned Resources.
    Provisioned Resources .png

  3. From the Provisioned Resources page, expand the Execution - Decision Services section to access the API Key and URLs.
    Execution.png

It is worth double-checking that you are using the Execution - Decision Services resource.  If your tenant still has the classic Rule Execution Service enabled, that resource will be located under Execution - irServer.

When calling either API from code or a tool such as Postman, the API Key must be set as a Header in the POST request. 

Key: inrule-apikey             Value: {your API Key}

For the Rule Execution API, the legacy API Key format using the "Authorization" header will remain active, but you should migrate to the new header format at your earliest convenience. 

Swagger overview

Swagger is a set of open-source tools built around the OpenAPI Specification that enables users to explore and consume REST APIs. We utilize Swagger to document the base execution APIs as well as all of the decisions and rule sets across your rule applications. The Decision Services Swagger can be used in a variety of ways:

  • Swagger UI – Accessed in the InRule Portal for easily running requests to execute decisions and rules.
  • External tools – Curl, Postman, etc.
  • Author Studio Tester - This UI is generated from the Decision API Swagger.
  • Swagger Codegen tools – These tools exist for creating programming libraries directly from OpenAPI definitions and allow you to consume the endpoints programmatically. There are many supported languages. To learn more, visit the GitHub page.

Was this article helpful?

0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.