Workflow endpoints expose metadata, readiness, and controlled lifecycle actions without returning raw graph secrets. Use readiness before publish or run so API clients get the same guardrails as the builder.
Endpoints
GET/api/v1/workflows?limit=10
List workflow summaries with active state, node count, timestamps, and links.
Required scope: workflows:read
curl https://www.finkmesh.com/api/v1/workflows?limit=10 \
-H "Authorization: Bearer $FINKMESH_TOKEN"
{
"data": [
{
"id": "wf_123",
"name": "Lead routing",
"active": true,
"nodeCount": 4
}
],
"pagination": { "limit": 10, "hasMore": false, "nextCursor": null },
"requestId": "req_...",
"apiVersion": "2026-07-01"
}GET/api/v1/workflows/{workflowId}
Fetch one curated workflow summary. Secrets and raw node payloads are not returned.
Required scope: workflows:read
curl https://www.finkmesh.com/api/v1/workflows/{workflowId} \
-H "Authorization: Bearer $FINKMESH_TOKEN"{
"data": {
"id": "wf_123",
"name": "Lead routing",
"active": true,
"errorGuardrail": {
"threshold": 5,
"consecutiveErrorCount": 0
}
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}POST/api/v1/workflows/{workflowId}/readinessIdempotency-Key
Evaluate persisted or supplied draft workflow readiness for publish, run, webhook, or schedule actions.
Required scope: workflows:read
curl -X POST https://www.finkmesh.com/api/v1/workflows/{workflowId}/readiness \
-H "Authorization: Bearer $FINKMESH_TOKEN" \
-H "Idempotency-Key: readiness-$(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"action":"api_run"}'{
"data": {
"ok": true,
"action": "api_run",
"blockingIssueCount": 0,
"warningCount": 0,
"issues": []
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}GET/api/v1/workflows/{workflowId}/readiness?action=api_run
Evaluate the saved workflow graph without sending a draft graph body.
Required scope: workflows:read
curl https://www.finkmesh.com/api/v1/workflows/{workflowId}/readiness?action=api_run \
-H "Authorization: Bearer $FINKMESH_TOKEN"{
"data": {
"ok": true,
"action": "api_run",
"blockingIssueCount": 0,
"warningCount": 0
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}POST/api/v1/workflows/{workflowId}/runIdempotency-Key
Queue an API-triggered workflow run after readiness, plan, quota, and rate-limit checks.
Required scope: workflows:run
curl -X POST https://www.finkmesh.com/api/v1/workflows/{workflowId}/run \
-H "Authorization: Bearer $FINKMESH_TOKEN" \
-H "Idempotency-Key: run-$(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"triggerData":{"source":"api-smoke"}}'{
"data": {
"runId": "run_123",
"status": "queued",
"links": { "run": "/api/v1/runs/run_123" }
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}POST/api/v1/workflows/{workflowId}/publishIdempotency-Key
Publish a workflow only after readiness and entitlement checks pass.
Required scope: workflows:publish
curl -X POST https://www.finkmesh.com/api/v1/workflows/{workflowId}/publish \
-H "Authorization: Bearer $FINKMESH_TOKEN" \
-H "Idempotency-Key: publish-$(uuidgen)"{
"data": {
"workflow": { "id": "wf_123", "active": true },
"readiness": { "ok": true, "blockingIssueCount": 0 }
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}POST/api/v1/workflows/{workflowId}/pauseIdempotency-Key
Pause a published workflow without changing its saved graph.
Required scope: workflows:pause
curl -X POST https://www.finkmesh.com/api/v1/workflows/{workflowId}/pause \
-H "Authorization: Bearer $FINKMESH_TOKEN" \
-H "Idempotency-Key: pause-$(uuidgen)"{
"data": {
"workflow": { "id": "wf_123", "active": false },
"readiness": { "ok": true, "blockingIssueCount": 0 }
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}POST/api/v1/workflows/{workflowId}/resumeIdempotency-Key
Resume a paused or auto-paused workflow after readiness and entitlement checks pass.
Required scope: workflows:resume
curl -X POST https://www.finkmesh.com/api/v1/workflows/{workflowId}/resume \
-H "Authorization: Bearer $FINKMESH_TOKEN" \
-H "Idempotency-Key: resume-$(uuidgen)"{
"data": {
"workflow": { "id": "wf_123", "active": true },
"readiness": { "ok": true, "blockingIssueCount": 0 }
},
"requestId": "req_...",
"apiVersion": "2026-07-01"
}