REST interface for RuleApp resources

Rule Execution Server resources that represent RuleApp instances, ruleset instances, and related objects.

Introduction

Resources for developing client applications that work with RuleApps and rulesets running on Rule Execution Server.
These resources include:

Available Since

8.0.1.0

Summary of all Methods

+ View Methods
REST Method Description
GET /api/v1/ruleapps[?parts={string}] Returns all the RuleApps contained in the repository.
GET /api/v1/ruleapps?count={boolean} Counts the number of elements in this list.
POST /api/v1/ruleapps[?merging={string}][&version={string}] Deploys a RuleApp archive in the repository, based on the merging and versioning policies passed as parameters. The RuleApp archive is passed in the request body.
POST /api/v1/ruleapps Adds a new RuleApp in the repository. The RuleApp representation is passed in the request body in JSON or XML format. If the RuleApp already exists in the repository, the response body contains a specific error description and the HTTP status 202 is returned.
GET /api/v1/ruleapps/{ruleappname}[?parts={string}] Returns all the RuleApps with the specified name. If the repository does not contain any RuleApp with this name, the response body contains an empty list.
GET /api/v1/ruleapps/{ruleappname}?count={boolean} Counts the number of elements in this list.
GET /api/v1/ruleapps/{ruleappname}/highest[?parts={string}] Returns the highest version of a RuleApp, identified by its name. If the repository does not contain the RuleApp, the response body is empty and the HTTP status 204 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}[?parts={string}] Returns the RuleApp identified by its name and version number. If the repository does not contain such a RuleApp, the response body is empty and the HTTP status 204 is returned.
PUT /api/v1/ruleapps/{ruleappname}/{ruleappversion} Updates an existing RuleApp in the repository. The new RuleApp representation is passed in the request body in JSON or XML format. If the repository does not contain the RuleApp to update, the response body contains a specific error description and the HTTP status 202 is returned.
DELETE /api/v1/ruleapps/{ruleappname}/{ruleappversion} Removes a RuleApp, identified by its name and version number, from the repository. If the repository does not contain such a RuleApp, the response body contains a specific error description and the HTTP status 202 is returned. If the removed RuleApp was still in use, the behavior is undefined.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/notifychanges Notifies to reload all the rulesets contained in the RuleApp. If the repository does not contain the RuleApp, the response body contains a specific error description and the HTTP status 202 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/properties Returns all the properties associated with a RuleApp. If the repository does not contain such a RuleApp, the response body is empty and the HTTP status 204 is returned. If the RuleApp exists but has no properties, the response body contains an empty list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/properties?count={boolean} Counts the number of elements in this list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/archive[?filename={string}] Returns the archive of the RuleApp. If the repository does not contain the RuleApp, the response body is empty and the HTTP status 204 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/rulesets[?parts={string}] Returns all the rulesets contained in the RuleApp. If the repository does not contain the RuleApp, the response body is empty and the HTTP status 204 is returned. If the RuleApp exists but contains no rulesets, the response body contains an empty list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/rulesets?count={boolean} Counts the number of elements in this list.
POST /api/v1/ruleapps/{ruleappname}/{ruleappversion}/rulesets Adds a new ruleset in a RuleApp, identified by its name and version number, in the repository. The ruleset representation is passed in the request body in JSON or XML format. If the repository does not contain such a RuleApp or the ruleset already exists, the response body contains a specific error description and the HTTP status 202 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}[?parts={string}] Returns all the rulesets with that name contained in a RuleApp. If the repository does not contain such a RuleApp, the response body is empty and the HTTP status 204 is returned. If the RuleApp exists but does not contain any ruleset with that name, the response body contains an empty list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}?count={boolean} Counts the number of elements in this list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/highest[?parts={string}] Returns the highest version of the ruleset, identified by its name, contained in a RuleApp identified by its name and version number. If the repository does not contain such a ruleset, the response body is empty and the HTTP status 204 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}[?parts={string}] Returns the ruleset, identified by its name and version number, contained in a RuleApp. If the repository does not contain such a ruleset, the response body is empty and the HTTP status 204 is returned.
POST /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion} Deploys a ruleset archive at the specified location in the repository. The ruleset archive is passed in the request body. If the repository already contains a ruleset with the same path, the response body contains a specific error description and the HTTP status 202 is returned.
PUT /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion} Updates an existing ruleset in a RuleApp, identified by their names and version numbers, in the repository. The new ruleset representation is passed in the request body in JSON or XML format. If the repository does not contain the ruleset to update, the response body contains a specific error description and the HTTP status 202 is returned.
DELETE /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion} Removes a ruleset, identified by its name and version number, contained in a RuleApp, identified by its name and version number. If the repository does not contain such a ruleset, the response body contains a specific error description and the HTTP status 202 is returned. If the removed ruleset was still in use, the behavior is undefined.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/notifychanges Notifies to reload the ruleset, identified by its name and version number and by the name and version number of its RuleApp. If the repository does not contain such a ruleset, the response body contains the error description and the HTTP status 202 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/xoms[?filename={string}] Returns the XOMs referenced by a ruleset contained in a RuleApp. The referenced XOMs (managed XOMs and XSD files if any) are returned in a zip file. If the repository does not contain such a ruleset, the response body is empty and the HTTP status 204 is returned.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/properties Returns all the properties associated with a ruleset, identified by its name and version number and by the name and version number of its RuleApp. If the repository does not contain such a ruleset, the response body is empty and the HTTP status 204 is returned. If the ruleset exists but has no properties, the response body contains an empty list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/properties?count={boolean} Counts the number of elements in this list.
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/archive[?filename={string}] Returns the archive of a ruleset identified by its name and version number and by the name and version number of its RuleApp. If the repository does not contain such a ruleset, the response body is empty and the HTTP status 204 is returned.
PUT /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/archive Replaces an existing ruleset archive by another ruleset archive. The new ruleset archive is passed in the request body. If the repository does not contain the ruleset to update, the response body contains a specific error description and the HTTP status 202 is returned..
GET /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/signature Returns the signature of a ruleset, identified by its name and version number and by the name and version number of its RuleApp. If the repository does not contain such a ruleset, the response body is empty and the HTTP status 204 is returned.
POST /api/v1/ruleapps/{ruleappname}/{ruleappversion}/properties/{propertyname} Adds a new, named property to a RuleApp, identified by its name and version number. The property value is passed in the request body. If the repository does not contain such a RuleApp or the property already exists, the response body contains a specific error description and the HTTP status 202 is returned.
PUT /api/v1/ruleapps/{ruleappname}/{ruleappversion}/properties/{propertyname} Updates an existing property of a RuleApp identified by its name and version number. The new property value is passed in the request body. If the repository does not contain such a RuleApp or the property does not exist, the response body contains a specific error description and the HTTP status 202 is returned.
DELETE /api/v1/ruleapps/{ruleappname}/{ruleappversion}/properties/{propertyname} Removes a named property of a RuleApp identified by its name and version number. If the repository does not contain such a RuleApp or the property does not exist, the response body contains a specific error description and the HTTP status 202 is returned.
POST /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/properties/{propertyname} Adds a new, named property to a ruleset, identified by its name and version number, contained in a RuleApp identified by its name and version number. The property value is passed in the request body. If the repository does not contain such a ruleset or the property already exists, the response body contains a specific error description and the HTTP status 202 is returned.
PUT /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/properties/{propertyname} Updates an existing property of a ruleset, identified by its name and version number and by the name and version number of the RuleApp. The new property value is passed in the request body. If the repository does not contain such a ruleset or the property does not exist, the response body contains a specific error description and the HTTP status 202 is returned.
DELETE /api/v1/ruleapps/{ruleappname}/{ruleappversion}/{rulesetname}/{rulesetversion}/properties/{propertyname} Removes a named property of a ruleset identified by its name and version number, contained in a RuleApp identified by its name and version number. If the repository does not contain such a ruleset or the property does not exist, the response body contains a specific error description and the HTTP status 202 is returned.

Subtopics

The following subtopics describe the REST resources defined for this resource set:

Parent Topic: Decision Server REST Interface