DCOM Rule Engine Interface API

Base URL: dcom/v1/, Version:

This is the API that should be implemented by a software service to allow a DCOM Rule Engine to connect to it. version: '1.0.0'

Default request content-types: application/json, application/xml
Default response content-types: application/json, application/xml
Schemes: https

Summary

Path Operation Description
/v1/ GET

Retrieves the basic metadata about the data source component

/v1/{complianceCheckUID}/ GET

Enables the retrieval basic project information.

POST

Enables the submission of feedback from the rule engine to the implementing service.

/v1/{complianceCheckUID}/answer GET

Enables the retrieval of the answer to a question (or a set of questions) from the implementing service

/v1/{complianceCheckUID}/data GET

Enables the retrieval of an item or set of data from the implementing service

/v1/{complianceCheckUID}/retrieveAnswerJob/{jobId} GET

Enables the retrieval of the answer to a question that could not be provided immediately

/v1/{complianceCheckUID}/retrieveDataJob/{jobId} GET

Enables the retrieval of the data to a question that could not be provided immediately

Security

auth

Type: bearer
Description:

A bearer token to identify the connecting service as an authorizied DCOM accredited rule engine

Paths

Retrieves the basic metadata about the data source component

GET /v1/

Retrieves the basic metadata about the data source component

Uses default content-types: application/json application/xml

200 OK

Returns basic metadata about the data source component. Equivalent XML Response is returned if content type is set appropriately.

Enables the retrieval basic project information.

GET /v1/{complianceCheckUID}/

Enables the retrieval of basic project information and the set of unique identifiers of entities known by the implementing services

complianceCheckUID

The unique id of the compliance check being conducted

path string

Uses default content-types: application/json application/xml

200 OK

Returns the set of IDs that have been requested

projectName: string

A human readable name for the project

ids: string[]

The Set of IDs

string
auth
Enables the submission of feedback from the rule engine to the implementing service.

POST /v1/{complianceCheckUID}/

Enables the submission of feedback from the rule engine to the implementing service.

Uses default content-types: application/json application/xml

complianceCheckUID

The unique id of the compliance check being conducted

path string

Uses default content-types: application/json application/xml

200 OK
success: boolean
auth
Enables the retrieval of the answer to a question (or a set of questions) from the implementing service

GET /v1/{complianceCheckUID}/answer

Enables the retrieval of the answer to a question (or a set of questions) from the implementing service

complianceCheckUID

The unique id of the compliance check being conducted

path string
id

The set of IDs to retrieve data about.

query string
propertyName

The name of the property that we wish to retrieve

query string
comparator

The comparator used to test against the property - defaults to = if absent

query string , x ∈ { '=' , '!=' , '>' , '>=' , '<' , '<=' }
desiredAnswer

The desired answer - defaults to true if absent

query string
unit

The unit requested - defaults to unitless if absent

query string
complianceDocumentReference

A reference to the element in a compliance document the request is related to

query string

Uses default content-types: application/json application/xml

200 OK

Returns the set of answers that have been requested

answers: object[]

A set of answers submitted to the rule engine.

auth
Enables the retrieval of an item or set of data from the implementing service

GET /v1/{complianceCheckUID}/data

Enables the retrieval of an item or set of data from the implementing service

complianceCheckUID

The unique id of the compliance check being conducted

path string
id

The IDs to retrieve data about

query string
propertyName

The name of the property that we wish to retrieve

query string
unit

The unit of the property we wish to retrieve

query string
complianceDocumentReference

A reference to the element in a compliance document the request is related to

query string

Uses default content-types: application/json application/xml

200 OK

Returns the set of data that has been requested

data: string[]

A set of data, returned in the same order as the ids specified in the id query parameter

string
jobId: string

A Job ID representing the fact the service cannot reply in a timely manor and the rule engine should contact it later for a response.

auth
Enables the retrieval of the answer to a question that could not be provided immediately

GET /v1/{complianceCheckUID}/retrieveAnswerJob/{jobId}

Enables the retrieval of the answer to a question that could not be provided immediately

jobId

The unique job id being requested

paths string
id

The ID to retrieve data about

query string

Uses default content-types: application/json application/xml

200 OK

Returns the set of answers that have been requested

answers: object[]

A set of answers submitted to the rule engine.

auth
Enables the retrieval of the data to a question that could not be provided immediately

GET /v1/{complianceCheckUID}/retrieveDataJob/{jobId}

Enables the retrieval of the data to a question that could not be provided immediately

jobId

The unique job id being requested

paths string
id

The ID to retrieve data about

query string

Uses default content-types: application/json application/xml

200 OK

Returns the set of data that have been requested

data: string[]

A set of data, returned in the same order as the ids specified in the id query parameter

string
auth

Schema definitions

Answer: object

Represents an answer to questions posed by the rule engine

propertyId: string

The id of the property being answered

id: string

The Entity ID to which this answer is relevant

answer: object , x ∈ { true , false , unknown }

The actual answer

missValue: string

The optional miss value. This is an indication, if the answer is false, how far out of tolerance the value is.

supportingFileData: string

The BASE64 Encoded File Data that supports/evidences this answer

supportingFileContentType: string

The MIME Content Type of the Support file data (if present)

jobId: string

A Job ID representing the fact the service cannot reply in a timely manor and the rule engine should contact it later for a response.

FeedbackModel: object

Feedback items to be provided to the implementing service

complianceDocunentReference: string

An ID refering to a clause within a compliance document against which feedback is given

answer: string , x ∈ { true , false , unknown }

The result that has been computed

reasons: string[]

A set of free text reasons for the given answer from the rule engine

string

Identity: object

Represents the basic metadata of the data source

name: string

The name of this data source

description: string

The description of this data source

operator: string

The name of the organisation operating this data source