client.workflows manages the Imbrace flow engine: create and trigger automation flows, inspect run history, organize with folders, manage app connections and MCP servers, and access workflow tables.
For a guided walkthrough, see Workflows in the SDK guide .
Schema
Flow
Field Type Description idstring Unique flow ID createdstring ISO 8601 creation timestamp updatedstring ISO 8601 last-updated timestamp projectIdstring Project this flow belongs to externalIdstring Optional external identifier status"ENABLED" | "DISABLED"Whether the flow is active operationStatusstring Current operation state versionFlowVersion Active version object
FlowVersion
Field Type Description idstring Unique version ID createdstring ISO 8601 creation timestamp updatedstring ISO 8601 last-updated timestamp flowIdstring Flow this version belongs to displayNamestring Human-readable flow name triggerobject Trigger configuration stepsobject? Optional step configuration validboolean? Whether the version is valid
FlowRun
Field Type Description idstring Unique run ID createdstring ISO 8601 creation timestamp updatedstring ISO 8601 last-updated timestamp projectIdstring Project ID flowIdstring Flow that was executed flowVersionIdstring Specific version that ran status"RUNNING" | "SUCCEEDED" | "FAILED" | "TIMEOUT" | "PAUSED" | "STOPPED"Run outcome environment"PRODUCTION" | "TESTING"Execution environment startTimestring? When the run started finishTimestring? When the run finished failParentOnFailureboolean Whether failure propagates to parent flow tagsstring[]? Tags attached to this run
AppConnection
Field Type Description idstring Unique connection ID createdstring ISO 8601 creation timestamp updatedstring ISO 8601 last-updated timestamp externalIdstring External identifier displayNamestring Human-readable name pieceNamestring The piece (integration) this connection is for projectIdstring Project ID type"SECRET_TEXT" | "OAUTH2" | "CLOUD_OAUTH2" | "PLATFORM_OAUTH2" | "BASIC_AUTH" | "CUSTOM_AUTH"Connection auth type
McpServer
Field Type Description idstring Unique MCP server ID createdstring ISO 8601 creation timestamp updatedstring ISO 8601 last-updated timestamp projectIdstring Project ID namestring? Server name
Methods
Flows
Method TypeScript Python Description List flows listFlowslist_flowsPaginated list of flows Get flow getFlowget_flowGet a single flow by ID Create flow createFlowcreate_flowCreate a new flow Delete flow deleteFlowdelete_flowDelete a flow Apply flow operation applyFlowOperationapply_flow_operationApply an operation (e.g. publish, enable) to a flow Trigger flow triggerFlowtrigger_flowTrigger a flow asynchronously Trigger flow sync triggerFlowSynctrigger_flow_syncTrigger a flow and wait for result
Flow Runs
Method TypeScript Python Description List runs listRunslist_runsList run history Get run getRunget_runGet a single run by ID
Folders
Method TypeScript Python Description List folders listFolderslist_foldersList flow folders Get folder getFolderget_folderGet a folder by ID Create folder createFoldercreate_folderCreate a folder Update folder updateFolderupdate_folderRename a folder Delete folder deleteFolderdelete_folderDelete a folder
App Connections
Method TypeScript Python Description List connections listConnectionslist_connectionsList app connections Get connection getConnectionget_connectionGet a connection by ID Upsert connection upsertConnectionupsert_connectionCreate or update a connection Delete connection deleteConnectiondelete_connectionRemove a connection
MCP Servers
Method TypeScript Python Description List MCP servers listMcpServerslist_mcp_serversList MCP servers Get MCP server getMcpServerget_mcp_serverGet a server by ID Create MCP server createMcpServercreate_mcp_serverRegister a new MCP server Delete MCP server deleteMcpServerdelete_mcp_serverRemove a server Rotate token rotateMcpTokenrotate_mcp_tokenRotate the server’s auth token
listFlows / list_flows
const page = await client . workflows . listFlows ( {
for ( const flow of page . data ) {
console . log (flow . id , flow . version ?. displayName );
page = client.workflows. list_flows ( limit = 10 , status = " ENABLED " , folder_id = " folder_id " )
for flow in page. get ( " data " , [] ):
createFlow / create_flow
const flow = await client . workflows . createFlow ( {
displayName: " New Lead Notification " ,
flow = client.workflows. create_flow (
display_name = " New Lead Notification " ,
triggerFlow / trigger_flow
Trigger a flow asynchronously with an optional payload.
await client . workflows . triggerFlow ( " flow_id " , {
contact_id: " contact_123 " ,
client.workflows. trigger_flow ( " flow_id " , {
" contact_id " : " contact_123 " ,
listRuns / list_runs
const page = await client . workflows . listRuns ( {
page = client.workflows. list_runs (
upsertConnection / upsert_connection
Create or update an app connection (e.g. API key for a third-party service).
const conn = await client . workflows . upsertConnection ( {
displayName: " Slack Workspace " ,
value: { api_key: " xoxb-... " },
conn = client.workflows. upsert_connection ( {
" displayName " : " Slack Workspace " ,
" projectId " : " project_id " ,
" value " : { " api_key " : " xoxb-... " },
createMcpServer / create_mcp_server
const server = await client . workflows . createMcpServer ( {
server = client.workflows. create_mcp_server ( {
" projectId " : " project_id " ,