Skip to main content

Flows API

Create, read, update, and delete automation flows programmatically.

List Flows

Retrieve all flows in your project.

GET /api/v1/flows

Query Parameters:

ParameterTypeDescription
limitintegerMax results per page (default: 10, max: 100)
cursorstringPagination cursor from previous response
statusstringFilter by status: ACTIVE, INACTIVE

Example:

curl -X GET "https://app.onflowstack.com/api/v1/flows?limit=20&status=ACTIVE" \
-H "Authorization: Bearer YOUR_API_KEY"

Response:

{
"data": [
{
"id": "flow_abc123",
"name": "Daily Sales Report",
"status": "ACTIVE",
"engine": "activepieces",
"triggerType": "SCHEDULE",
"runCount": 145,
"successRate": 98.6,
"lastRun": "2026-04-21T09:00:00Z",
"created": "2026-03-15T14:30:00Z",
"updated": "2026-04-20T11:00:00Z"
},
{
"id": "flow_def456",
"name": "Webhook Handler",
"status": "ACTIVE",
"engine": "n8n",
"triggerType": "WEBHOOK",
"runCount": 1023,
"successRate": 99.1,
"lastRun": "2026-04-21T10:29:55Z",
"created": "2026-02-01T08:00:00Z",
"updated": "2026-04-18T16:45:00Z"
}
],
"cursor": "eyJpZCI6ImZsb3dfZGVmNDU2In0=",
"hasMore": false
}

Get Flow

Retrieve a single flow by ID.

GET /api/v1/flows/{flowId}

Example:

curl -X GET "https://app.onflowstack.com/api/v1/flows/flow_abc123" \
-H "Authorization: Bearer YOUR_API_KEY"

Create Flow

Create a new automation flow.

POST /api/v1/flows

Request Body:

{
"name": "New Automation",
"engine": "activepieces",
"description": "Sends a daily sales report to Slack"
}

Response: 201 Created with the full flow object.

Update Flow

Update a flow's metadata.

POST /api/v1/flows/{flowId}

Request Body:

{
"name": "Updated Automation Name",
"description": "Updated description"
}

Enable / Disable Flow

Toggle a flow's active status.

POST /api/v1/flows/{flowId}/enable
POST /api/v1/flows/{flowId}/disable

Response: 200 OK with the updated flow object.

Delete Flow

Permanently delete a flow and all its run history.

DELETE /api/v1/flows/{flowId}

Response: 204 No Content

caution

This action is irreversible. All run history for this flow will be permanently deleted.