GET /v1/workflows
Get all workflows
GET
/v1/workflows
Get all workflows
Query Parameters
limit
integer
optional
query
Number of items (default 20, max 100)
offset
integer
optional
query
Offset for pagination (default 0)
q
string
optional
query
Search in name + description (ILIKE, max 256 chars)
status
string
optional
query
Filter by status (active|paused|draft|archived)
type
string
optional
query
Filter by trigger type
actions
string[]
optional
query
Filter by node types (any-match, max 50). Repeat or comma-join.
connectors
string[]
optional
query
Filter by connector types (any-match, max 50). Repeat or comma-join.
sort
string
optional
query
Sort: updatedAt:desc (default) | name:asc | createdAt:desc | runs:desc
owner
string
optional
query
Owner scope: yours | org | public
madeByMe
boolean
optional
query
Restrict to workflows created_by the caller
Responses
200
OK
application/jsoncode
integer
data
object
hasMore
boolean
items
object[]
Array of:
chainIds
integer[]
Array of:
connectors
object[]
Array of:
type
string
cooldownMs
integer
createdAt
string
createdBy
string
definitionSummary
object
nodes
object
description
string
hasDraft
boolean
hasLiveVersion
boolean
id
string
inputCount
integer
Count of definition.inputSchema entries — powers the "N inputs"
badge in WorkflowSelector without a detail fetch.
lastTriggeredAt
string
linkedWorkflowIds
string[]
IDs referenced by any trigger-workflow node — lets useLinkedWorkflows
build the incoming/outgoing link graph from the slim list.
Array of:
maxRuns
integer
name
string
nodeCount
integer
organizationId
string
ownerUserId
string
publicWidgetEnabled
boolean
remainRuns
integer
status
string
Enum:
draft, active, paused, archivedtriggerName
string
triggerType
string
Pre-extracted fields (avoid FE parsing full definition).
type
string
Enum:
token-price-cexes, evm-log, cronjob, schedule, manual, telegram-channel, polymarket-user-bet, polymarket-market-trade, polymarket-new-market, polymarket-market-close, slack-mentions, erc20-receive, erc20-send, anyspend, shopify-order-created, shopify-order-paid, shopify-inventory-level-updated, ramp-new-transaction, ramp-transaction-status-updated, ramp-transfer-payment-updated, slack-new-reaction-added, slack-new-message-in-channels, slack-new-channel-created, slack-new-direct-message, slack-new-keyword-mention, slack-new-user-added, slack-new-user-mention, slack-new-interaction-event, telegram-new-interaction-event, email-new-email-received, email-new-email-matching-criteria, gmail-new-email-received, gmail-new-email-matching-search, stripe-payment-receive, eth-receive, eth-send, farcaster-new-cast, farcaster-new-follower, farcaster-new-reaction, x-new-tweet, exchange-listing, coinbase-payment-received, coinbase-checkout-received, solana-transaction, hyperliquid-price-alert, hyperliquid-trade, hyperliquid-user-fill, hyperliquid-liquidation, hyperliquid-position-change, options-flow-alerts, market-newsupdatedAt
string
version
integer
visibility
string
Enum:
private, org, public_view, public_executelimit
integer
offset
integer
message
string
requestId
string
curl -X GET 'https://api.example.com/v1/workflows' \ -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/workflows', { method: 'GET', headers: { "Authorization": "Bearer YOUR_API_TOKEN" }});const data = await response.json();console.log(data);
import requestsheaders = { 'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.get('https://api.example.com/v1/workflows', headers=headers)print(response.json())
package mainimport ( "fmt" "io" "net/http")func main() { req, _ := http.NewRequest("GET", "https://api.example.com/v1/workflows", nil) req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN") resp, _ := http.DefaultClient.Do(req) defer resp.Body.Close() result, _ := io.ReadAll(resp.Body) fmt.Println(string(result))}
200
Response
{ "code": 200, "data": { "hasMore": true, "items": [ { "chainIds": [ 123 ], "connectors": [ { "type": {} } ], "cooldownMs": 123, "createdAt": "<string>", "createdBy": "<string>", "definitionSummary": { "nodes": "<object>" }, "description": "<string>", "hasDraft": true, "hasLiveVersion": true, "id": "<string>", "inputCount": 123, "lastTriggeredAt": "<string>", "linkedWorkflowIds": [ "<string>" ], "maxRuns": 123, "name": "<string>", "nodeCount": 123, "organizationId": "<string>", "ownerUserId": "<string>", "publicWidgetEnabled": true, "remainRuns": 123, "status": "draft", "triggerName": "<string>", "triggerType": "<string>", "type": "token-price-cexes", "updatedAt": "<string>", "version": 123, "visibility": "private" } ], "limit": 123, "offset": 123 }, "message": "success", "requestId": "abc-123"}
API Playground
Try this endpoint
GET
/v1/workflows
