Endpoint
GET https://workflows.eachlabs.run/api/v1/workflows/{workflowID}/executions
This public URL uses a deprecated compatibility host outside the api-service host. It remains supported for now, but will soon move under
https://api.eachlabs.ai. Keep integrations configurable and switch to the api-service URL once it is published.Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
workflowID | string | Yes | Workflow UUID or slug |
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
bulk_id | string (UUID) | No | - | Filter by bulk operation ID |
offset | integer | No | 0 | Number of items to skip |
limit | integer | No | 50 | Max results per page (1–100) |
Code Examples
# List all executions
curl "https://workflows.eachlabs.run/api/v1/workflows/WF_ID/executions?limit=10" \
-H "X-API-Key: YOUR_API_KEY"
# Filter by bulk ID
curl "https://workflows.eachlabs.run/api/v1/workflows/WF_ID/executions?bulk_id=BULK_ID" \
-H "X-API-Key: YOUR_API_KEY"
import requests
response = requests.get(
"https://workflows.eachlabs.run/api/v1/workflows/WF_ID/executions",
params={"limit": 10},
headers={"X-API-Key": "YOUR_API_KEY"}
)
data = response.json()
for exec in data["executions"]:
print(f"{exec['execution_id']} | {exec['status']}")
print(f"Total: {data['total_count']}")
const response = await fetch(
"https://workflows.eachlabs.run/api/v1/workflows/WF_ID/executions?limit=10",
{ headers: { "X-API-Key": "YOUR_API_KEY" } }
);
const data = await response.json();
data.executions.forEach((e) => {
console.log(`${e.execution_id} | ${e.status}`);
});
console.log(`Total: ${data.total_count}`);
Response
{
"executions": [
{
"execution_id": "exec-1",
"flow_id": "wf-123",
"flow_name": "Text to Image Generator",
"version_id": "v1",
"status": "completed",
"started_at": "2025-12-20T10:00:00Z",
"ended_at": "2025-12-20T10:05:00Z",
"created_at": "2025-12-20T10:00:00Z",
"updated_at": "2025-12-20T10:05:00Z"
},
{
"execution_id": "exec-2",
"flow_id": "wf-123",
"flow_name": "Text to Image Generator",
"version_id": "v1",
"status": "running",
"started_at": "2025-12-20T10:10:00Z",
"created_at": "2025-12-20T10:10:00Z",
"updated_at": "2025-12-20T10:10:00Z"
}
],
"offset": 2,
"total_count": 142
}
Execution Summary Fields
| Field | Type | Description |
|---|---|---|
execution_id | string | Unique execution ID |
flow_id | string | Workflow UUID |
flow_name | string | Workflow name |
version_id | string | Version used |
status | string | running, completed, failed, or cancelled |
started_at | string | When execution started |
ended_at | string | null | When execution ended |
total_count | integer | Total matching executions |
Error Responses
| Status | Body | Description |
|---|---|---|
400 | {"error": "invalid bulk_id format"} | Invalid UUID format |
401 | {"error": "Invalid or missing API key"} | Authentication failure |
404 | {"error": "workflow not found"} | Invalid workflow ID |