Search Workflows
POST/workflows/search
Find workflows in a sub-account by name, status, folder or timestamp. Returns summaries only — pass an ID to Get Workflow Definition for the full definition.
Filters are combined with AND. Page with offset for the first few pages and switch to the searchAfter cursor for deeper paging; sending both is rejected.
Request
API Version
v4Sub-account (location) ID the workflow belongs to
- application/json
- Body
- Example (auto)
Bodyrequired
Filters, combined with AND. Max 20. Omit to match every workflow in the sub-account.
To fetch a known set of workflows, filter workflowId with in. The sub-account scope still applies, so an id from another sub-account simply matches nothing.
Sort order. Defaults to most recently updated first.
Page size
20Result offset. Cannot be combined with searchAfter. Deep paging is expensive — prefer searchAfter past the first few pages.
Cursor from a previous response, for stable paging through a large result set. Send it back verbatim; do not construct one.
{
"filters": [
{
"field": "name",
"operator": "contains",
"value": "onboarding"
}
],
"sort": [
{
"field": "updatedAt",
"direction": "desc"
}
],
"limit": 20,
"offset": 0,
"searchAfter": [
"1735689600000"
]
}
Successful response
- application/json
- Schema
- Example (auto)
Schema
Total matches, ignoring paging
Number returned in this response
The offset this page started at — echoed back so a caller paging through can tell which slice it received without tracking the request. 0 when no offset was sent. Absent when the page was fetched with searchAfter, where a numeric position is not known.
The matching workflows
Cursor to pass as searchAfter for the next page. Absent on the last page.
{
"total": 137,
"count": 20,
"offset": 0,
"workflows": [
{
"workflowId": "b1b0de82-3efb-4d63-83f6-13c50aef208c",
"version": "3"
}
],
"searchAfter": [
"1735689600000"
]
}