For the complete documentation index, see llms.txt. This page is also available as Markdown.

Implementations

List rule implementations

get

Retrieves rule implementations filtered by rule business concept or active status.

Query parameters
rule_business_concept_idintegerOptional

Filter by rule business concept ID

is_rule_activestringOptional

Filter by rule active status (true/false)

Responses
200

Implementations response

application/json
get/api/rule_implementations
GET /api/rule_implementations HTTP/1.1
Accept: */*
{
  "data": [
    {
      "id": 1,
      "implementation_key": "imp_123",
      "rule_id": 10,
      "status": "published",
      "version": 1
    }
  ]
}

Create rule implementation

post

Creates a new rule implementation, either cloned or based on the provided rule data.

Body
Responses
201

Implementation response

application/json
Other propertiesanyOptional
post/api/rule_implementations
POST /api/rule_implementations HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 119

{
  "rule_implementation": {
    "goal": 100,
    "implementation_key": "new_imp",
    "minimum": 50,
    "result_type": "percentage",
    "rule_id": 1
  }
}
{
  "id": 1,
  "implementation_status": "active",
  "rule_id": 11
}

Link data structure to implementation

post

Links a data structure to the specified implementation.

Path parameters
implementation_idintegerRequired

Implementation ID

Body
data_structure_idintegerRequired

ID of the data structure to link

typestringRequired

Link type (e.g., 'dataset', 'population')

Responses
201

Structure link response

application/json
post/api/rule_implementations/{implementation_id}/data_structures
POST /api/rule_implementations/{implementation_id}/data_structures HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 40

{
  "data_structure_id": 1,
  "type": "dataset"
}
{
  "data": {
    "data_structure_id": 5,
    "id": 1,
    "implementation_id": 10,
    "type": "dataset"
  }
}

Upload implementations from CSV

post

Uploads implementations data from a CSV file.

Body
auto_publishstring · nullableOptional

Auto-publish flag (true/false)

implementationsstring · binaryRequired

CSV file with implementations

langstring · nullableOptional

Language code (e.g., 'en', 'es')

Responses
200

Upload response

application/json
post/api/rule_implementations/upload
POST /api/rule_implementations/upload HTTP/1.1
Content-Type: multipart/form-data
Accept: */*
Content-Length: 69

{
  "auto_publish": "false",
  "implementations": "file content",
  "lang": "en"
}
{
  "data": {
    "errors": [],
    "ids": [
      1,
      2
    ]
  }
}

Get implementation filters

post

Retrieves available implementation filter values based on the provided search criteria.

Body
Other propertiesanyOptional
Responses
200

Filter response

application/json
post/api/rule_implementation_filters/search
POST /api/rule_implementation_filters/search HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 48

{
  "filters": {
    "implementation_status": [
      "active"
    ]
  }
}
{
  "filters": {
    "implementation_status": [
      {
        "count": 1,
        "key": "active"
      }
    ]
  }
}

Search rule implementations

post

Searches rule implementations based on filter criteria and pagination.

Query parameters
pageintegerOptional

Page number

sizeintegerOptional

Page size

Body
pageintegerOptional

Page number

Default: 0
sizeinteger · min: 1Optional

Page size

Default: 20
statusstring · nullableOptional

Filter by status (e.g., 'deleted')

Other propertiesanyOptional
Responses
200

Implementation search response

application/json
scroll_idstring · nullableOptional

Scroll ID for pagination

post/api/rule_implementations/search
POST /api/rule_implementations/search HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 90

{
  "filters": {
    "implementation_status": [
      "active"
    ]
  },
  "must": {
    "rule_id": 123
  },
  "page": 0,
  "size": 20
}
{
  "filters": {
    "implementation_status": [
      {
        "count": 1,
        "key": "active"
      }
    ]
  },
  "implementations": [
    {
      "id": 88,
      "implementation_status": "active",
      "rule_id": 11
    }
  ],
  "scroll_id": null
}

Search rule implementations by rule

post

Searches implementations by rule ID using the provided search criteria.

Body
pageintegerOptional

Page number

Default: 0
sizeinteger · min: 1Optional

Page size

Default: 20
statusstring · nullableOptional

Filter by status (e.g., 'deleted')

Other propertiesanyOptional
Responses
200

Implementation search response

application/json
scroll_idstring · nullableOptional

Scroll ID for pagination

post/api/rules/rule_implementations
POST /api/rules/rule_implementations HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 90

{
  "filters": {
    "implementation_status": [
      "active"
    ]
  },
  "must": {
    "rule_id": 123
  },
  "page": 0,
  "size": 20
}
{
  "filters": {
    "implementation_status": [
      {
        "count": 1,
        "key": "active"
      }
    ]
  },
  "implementations": [
    {
      "id": 88,
      "implementation_status": "active",
      "rule_id": 11
    }
  ],
  "scroll_id": null
}

Get rule implementation

get

Retrieves details for the specified rule implementation.

Path parameters
idintegerRequired

Implementation ID

Responses
200

Implementation response

application/json
get/api/rule_implementations/{id}
GET /api/rule_implementations/{id} HTTP/1.1
Accept: */*
{
  "_actions": {
    "autoPublish": {
      "href": "/api/rule_implementations/upload",
      "method": "POST"
    },
    "clone": {
      "method": "POST"
    },
    "delete": {
      "method": "POST"
    },
    "link_concept": {
      "method": "POST"
    },
    "link_structure": {
      "method": "POST"
    },
    "restore": {
      "method": "POST"
    },
    "view_approval_pending_concept": {
      "method": "POST"
    },
    "view_draft_concept": {
      "method": "POST"
    },
    "view_published_concept": {
      "method": "POST"
    }
  },
  "data": {
    "df_content": {
      "field": "value"
    },
    "executable": true,
    "goal": 100,
    "id": 1,
    "implementation_key": "imp_123",
    "inserted_at": "2026-06-10T10:00:00Z",
    "minimum": 50,
    "result_type": "percentage",
    "rule_id": 10,
    "status": "published",
    "updated_at": "2026-06-10T10:00:00Z",
    "version": 1
  }
}

Update rule implementation

put

Updates the specified rule implementation with the provided payload.

Path parameters
idintegerRequired

Implementation ID

Body
Responses
200

Implementation response

application/json
Other propertiesanyOptional
put/api/rule_implementations/{id}
PUT /api/rule_implementations/{id} HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 56

{
  "rule_implementation": {
    "goal": 90,
    "status": "published"
  }
}
{
  "id": 1,
  "implementation_status": "active",
  "rule_id": 11
}

Delete rule implementation

delete

Deletes the specified rule implementation.

Path parameters
idintegerRequired

Implementation ID

Responses
204

No content

No content

delete/api/rule_implementations/{id}
DELETE /api/rule_implementations/{id} HTTP/1.1
Accept: */*

No content

Update rule implementation

patch

Updates the specified rule implementation with the provided payload.

Path parameters
idintegerRequired

Implementation ID

Body
Responses
200

Implementation response

application/json
Other propertiesanyOptional
patch/api/rule_implementations/{id}
PATCH /api/rule_implementations/{id} HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 56

{
  "rule_implementation": {
    "goal": 90,
    "status": "published"
  }
}
{
  "id": 1,
  "implementation_status": "active",
  "rule_id": 11
}

Download implementations as XLSX

post

Downloads implementations matching the provided filters as an XLSX file.

Query parameters
pageintegerOptional

Page number

sizeintegerOptional

Page size

impl_statusstringOptional

Implementation status filter

header_labelsstringOptional

Header labels

content_labelsstringOptional

Content labels

langstringOptional

Language

Responses
200

XLSX file

application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
string · binaryOptionalExample: binary content
post/api/rule_implementations/xlsx/download
POST /api/rule_implementations/xlsx/download HTTP/1.1
Accept: */*
binary content

Reindex implementations

get

Triggers a full reindex of implementations.

Responses
202

Accepted

No content

get/api/rule_implementations/search/reindex_all
GET /api/rule_implementations/search/reindex_all HTTP/1.1
Accept: */*

No content

Unlink data structure from implementation

delete

Removes the link between the specified implementation and data structure.

Path parameters
idintegerRequired

Implementation structure ID

Responses
204

No content

No content

delete/api/rule_implementations/data_structures/{id}
DELETE /api/rule_implementations/data_structures/{id} HTTP/1.1
Accept: */*

No content

Upload implementations from XLSX

post

Uploads implementations from an XLSX file and enqueues processing.

Query parameters
langstringOptional

Language

auto_publishbooleanOptional

Auto publish implementations

Body
auto_publishstring · nullableOptional

Auto-publish flag (true/false)

implementationsstring · binaryRequired

XLSX file with implementations

langstring · nullableOptional

Language code (e.g., 'en', 'es')

Responses
200

Upload response

application/json
job_idintegerRequired

Job ID for tracking upload progress

post/api/rule_implementations/xlsx/upload
POST /api/rule_implementations/xlsx/upload HTTP/1.1
Content-Type: multipart/form-data
Accept: */*
Content-Length: 69

{
  "auto_publish": "false",
  "implementations": "file_content",
  "lang": "en"
}
{
  "job_id": 123
}

Create implementation result

post

Creates a result for the specified implementation.

Path parameters
implementation_idstringRequired

Implementation key

Body
Responses
201

Result response

application/json
post/api/rule_implementations/{implementation_id}/results
POST /api/rule_implementations/{implementation_id}/results HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 65

{
  "rule_result": {
    "errors": 2,
    "params": {
      "foo": "bar"
    },
    "records": 100
  }
}
{
  "data": {
    "id": 1,
    "params": {
      "foo": "bar"
    },
    "result": "98.00"
  }
}

Last updated