List Rule/Workflow API
Fetch a catalog of rules or workflows in your Nected workspace, with powerful filtering, sorting, and pagination so you can build admin tables, sync catalogs to other systems, or quickly separate published vs draft entities.
Authentication
All requests require your Nected API key:
Nected-API-Key: <YOUR_API_KEY>Endpoint
GET https://api.nected.ai/dev/{entityType}Path Parameters
entityType
string
Yes
rule or workflow
Headers
Nected-API-Key
Your API key string
Yes
Query Parameters (Filtering, Sorting, Pagination)
Use these parameters to narrow the list and control the order/page size.
Pagination
page
number
1
1-based page index
perPage
number
10
Items per page (use sensible bounds)
Sorting
sortBy
string
name, status, updatedAt, createdAt, version
Field to sort on
sortDir
string
asc | desc
Sort direction
Common Filters
name
string
Exact or prefix match (e.g., name=Order*)
status
string | array
draft | published (single) or comma-separated list (e.g., status=draft,published)
type
string
For rules, e.g., decisionTable, ruleset; for workflows: workflow
version
string
E.g., v1, v2
q
string
Free-text search across name/description (lightweight search)
tags
string
Comma-separated tags; returns entities having any of the tags
createdBy
string (UUID)
Filter by creator
updatedBy
string (UUID)
Filter by last updater
createdAtFrom
ISO8601 datetime
Lower bound for creation time (createdAt>=…)
createdAtTo
ISO8601 datetime
Upper bound for creation time (createdAt<=…)
updatedAtFrom
ISO8601 datetime
Lower bound for last update (updatedAt>=…)
updatedAtTo
ISO8601 datetime
Upper bound for last update (updatedAt<=…)
Notes
Unless noted otherwise, multiple filters are AND-ed.
statusandtagsaccept comma-separated values to represent OR within that field.
namesupports prefix wildcard via*at the end (implementation detail: treat as “starts with”).Date-time values should be RFC 3339/ISO 8601 (e.g.,
2025-10-16T10:00:00Z).
Examples
1) List all published rules, newest first
cURL
curl --location "https://api.nected.ai/dev/rule?status=published&sortBy=updatedAt&sortDir=desc&page=1&perPage=20" \
--header "Nected-API-Key: <YOUR_API_KEY>"JavaScript (fetch)
const url = new URL("https://api.nected.ai/dev/rule");
url.search = new URLSearchParams({
status: "published",
sortBy: "updatedAt",
sortDir: "desc",
page: "1",
perPage: "20",
}).toString();
const res = await fetch(url, { headers: { "Nected-API-Key": "<YOUR_API_KEY>" }});
const data = await res.json();2) Find drafts whose name starts with “Order”, updated in last 7 days
# Assume "now" is 2025-10-16T00:00:00Z
curl --location "https://api.nected.ai/dev/rule?status=draft&name=Order*&updatedAtFrom=2025-10-09T00:00:00Z" \
--header "Nected-API-Key: <YOUR_API_KEY>"3) Workflow catalog with free-text search and tags
curl --location "https://api.nected.ai/dev/workflow?q=discount&tags=seasonal,promo&sortBy=name&sortDir=asc" \
--header "Nected-API-Key: <YOUR_API_KEY>"4) Multi-status filter and version pin
curl --location "https://api.nected.ai/dev/rule?status=draft,published&version=v2" \
--header "Nected-API-Key: <YOUR_API_KEY>"Sample Response
{
"data": {
"Pagination": {
"perPage": 10,
"totalPage": 4,
"currentPage": 1,
"totalRecord": 34
},
"entities": [
{
"entityId": "11111111-aaaa-bbbb-cccc-222222222222",
"name": "OrderValidationRules",
"description": "Rules for validating customer orders",
"type": "decisionTable",
"status": "draft",
"version": "v1",
"endpoints": "https://nected.ai/nected/rule/11111111-aaaa-bbbb-cccc-222222222222",
"tags": ["orders","validation"],
"createdAt": "2025-09-04T10:22:18Z",
"updatedAt": "2025-10-12T15:03:42Z",
"createdBy": "5c0d...c2e",
"updatedBy": "8a11...9fd"
}
]
},
"code": "success",
"message": "Success."
}Field notes
tags,createdAt,updatedAt,createdBy,updatedBymay appear if available for your entities.
Field Reference
data.Pagination
data.PaginationperPage(number): Items per page.totalPage(number): Total pages.currentPage(number): Current 1-based page.totalRecord(number): Total matching records.
data.entities[]
data.entities[]entityId(string): Unique ID.name(string): Display name.description(string): Short description.type(string): For rules, e.g.,decisionTable,ruleset; for workflows:workflow.status(string):draft|published.version(string): Version label.endpoints(string): Console URL for the entity.tags(string[]): Optional labels.createdAt,updatedAt(ISO8601): Timestamps.createdBy,updatedBy(string): User IDs.
Error Codes
401
UNAUTHORIZED
Missing/invalid API key
Check Nected-API-Key.
404
NOT_FOUND
Unknown entityType
Use rule or workflow.
429
TOO_MANY_REQUESTS
Rate limit exceeded
Backoff + retry with jitter.
500
INTERNAL_SERVER_ERROR
Unexpected error
Retry; contact support if persistent.
Tips & Best Practices
Paginate aggressively in UI tables (
perPage=20/50) and sort byupdatedAt descto surface the most recent edits first.Use free-text
qfor quick searches and pair with exact filters (status,version) for precision.For audits, filter by
updatedAtFrom/Toand/orupdatedByto see who changed what recently.Cache list responses by filter set and invalidate on create/update to keep dashboards snappy.
Last updated