POST /v1/execution-webhooks/{id}/enable
Enable an execution webhook endpoint

Path Parameters

id string required path
Webhook endpoint ID

Responses

200 OK
application/json
data object
hasMore boolean
items object[]
Array of:
archived boolean
category string
Deprecated: Use Tags instead
cooldownMs integer
createdAt string
createdBy string
definition object
Definition is the inline workflow graph to analyze. Same shape as a saved workflow's definition. Unlike the ephemeral-run endpoint there is no trigger restriction — analysis is read-only and method-agnostic.
blockExpansions object
Set on run snapshots only (not workflow DB)
inputSchema object[]
Array of:
description string
key string
required boolean
type string
"string", "number", "boolean", "object", "array"
nodes object REQUIRED
triggerNodeIds string[]
TriggerNodeIDs lists the node IDs that are trigger (root) nodes. Every workflow declares this — single-trigger workflows ship ["root"] (the legacy node id), multi-trigger workflows list every trigger node id. Treating single-trigger as a forest-of-1 removes the two-path branching throughout the BE + FE; older rows without the field are backfilled by migration 000282 and the field-missing path stays as a read-side safety net (see FindTriggerNodeIDs) but is no longer exercised by saves. "root" is also a runtime alias for "the trigger that fired this run" — {{root.X}} variable references resolve to the firing trigger regardless of which trigger fired. Don't repurpose the literal "root" as a trigger id on a multi-trigger workflow.
Array of:
variableDefs object[]
VariableDefs is a snapshot of the workflow's declared variables at run creation time. The canonical source lives on the workflows row (Workflow.VariableDefs column). Snapshotted into the run definition so the worker can resolve {{$vars.x}} lookups and route variable-action writes to the right scope without an extra DB round trip.
Array of:
default unknown
description string
lifetime string
Enum: persist, reset
name string
type string
Enum: number, text, boolean, list, object
description string
forkCount integer
generatedAppId string
Generated-app attachment (nil when the template ships no app). On adoption the referenced app is CLONED into the adopting org's new workflow. GeneratedAppVersionID optionally pins a specific version whose manifest is used as the clone source.
generatedAppVersionId string
id string
isPromoted boolean
maxRuns integer
moderationStatus string
Moderation fields (B3-4168). Only meaningful for public templates; org templates are always approved.
Enum: pending, approved, rejected
name string
organizationDescription string
organizationId string
Fields for user-generated templates (nil for built-in templates)
organizationName string
organizationPhoto string
promotedAt string
promotedBy string
promotedOrder integer
rejectionReason string
reviewedAt string
reviewedBy string
slug string
sourceWorkflowId string
Source workflow link (nil for built-in or legacy templates)
submittedAt string
tableSchemas object
tags object[]
Array of:
categories string[]
e.g., ["blockchain", "finance"]
Array of: ...
count integer
Scope-dependent: template, action, trigger, or connector count
createdAt string
description string
id string
imageUrl string
name string
promotedTemplateCount integer
publicTemplateCount integer
slug string
updatedAt string
weight integer
Higher weight = more prominent
templateProps object[]
Array of:
default unknown
description string
key string
name string
properties object
accountType string
AccountType filters the wallet picker by account type on inputType="walletConnector" fields (e.g. "polymarket_deposit_wallet").
allowWalletPicker boolean
allowedChannels string[]
...
autoFillFromWallet boolean
AutoFillFromWallet, when true, auto-fills this prop with the selected workflow wallet address and hides it from the form. Pointer so an explicit false survives the JSON round-trip (same rationale as AllowWalletPicker).
bindsConnectorNodes string[]
BindsConnectorNodes lists workflow node IDs whose wallet-type connector should be prefilled from this prop's picked wallet (inputType: "walletConnector"). The connector stays a plain, editable connector — this is a prefill, not a permanent bind.
...
chainId integer
For tokenAmount: hardcoded chain ID
chainPropKey string
For tokenSelector/tokenAmount: prop key providing chainId
columns object[]
Columns describes a csvTable prop (inputType: "csvTable"). The stored value is an object-of-columnar-arrays: {colKey: []value}. Payload templates reference each column via {{$props.<propKey>.<colKey>}}.
...
dex string
For hyperliquidAsset: hardcoded DEX name (fallback when no dexPropKey)
dexPropKey string
For hyperliquidAsset: prop key providing HIP-3 DEX name
enum unknown[]
...
enumLabels string[]
...
excludeNative boolean
For tokenSelector/multiTokenSelector: hide native tokens (field only accepts ERC-20 contract addresses)
groupKey string
Groups related props for unified UI rendering
inputType string
maxRows integer
csvTable: maximum allowed rows (0 = no cap)
maximum number
minRows integer
csvTable: minimum required rows (0 = default 1)
minimum number
pattern string
placeholder string
showWalletBalances boolean
For tokenSelector: show wallet balances (useful for "sell" tokens)
sources object[]
...
summary object
Summary drives the csvTable footer summary. Nil means no summary is rendered. See PropSchemaSummary for details.
...
tokenAddress string
For tokenAmount: hardcoded token address
tokenAddressPropKey string
For tokenAmount: prop key providing tokenAddress
visibleWhen object
VisibleWhen controls conditional visibility: show this prop only when the referenced prop has the specified value.
...
required boolean
sensitive boolean
type string
"string", "number", "integer", "boolean", "object" (for csvTable)
uiMetadata object
comments object[]
Array of:
createdAt string
createdBy object
...
id string
nodeId string
position object
...
replies object[]
...
resolved boolean
text string
updatedAt string
nodePositions object
stickyNotes object[]
Array of:
color string
createdAt string
createdBy object
...
id string
position object
...
size object
...
text string
updatedAt string
zIndex integer
updatedAt string
updatedBy string
version integer
visibility string
Enum: org, public, org, public
limit integer
offset integer
400 Bad Request
curl -X POST 'https://api.example.com/v1/execution-webhooks/string/enable' \  -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://api.example.com/v1/execution-webhooks/string/enable', {  method: 'POST',  headers: {      "Authorization": "Bearer YOUR_API_TOKEN"  }});const data = await response.json();console.log(data);
import requestsheaders = {    'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.post('https://api.example.com/v1/execution-webhooks/string/enable', headers=headers)print(response.json())
package mainimport (	"fmt"	"io"	"net/http")func main() {	req, _ := http.NewRequest("POST", "https://api.example.com/v1/execution-webhooks/string/enable", 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
{  "data": {    "hasMore": true,    "items": [      {        "archived": true,        "category": "<string>",        "cooldownMs": 123,        "createdAt": "<string>",        "createdBy": "<string>",        "definition": {          "blockExpansions": "<object>",          "inputSchema": [            {}          ],          "nodes": "<object>",          "triggerNodeIds": [            {}          ],          "variableDefs": [            {}          ]        },        "description": "<string>",        "forkCount": 123,        "generatedAppId": "<string>",        "generatedAppVersionId": "<string>",        "id": "<string>",        "isPromoted": true,        "maxRuns": 123,        "moderationStatus": "pending",        "name": "<string>",        "organizationDescription": "<string>",        "organizationId": "<string>",        "organizationName": "<string>",        "organizationPhoto": "<string>",        "promotedAt": "<string>",        "promotedBy": "<string>",        "promotedOrder": 123,        "rejectionReason": "<string>",        "reviewedAt": "<string>",        "reviewedBy": "<string>",        "slug": "<string>",        "sourceWorkflowId": "<string>",        "submittedAt": "<string>",        "tableSchemas": "<object>",        "tags": [          {            "categories": {},            "count": {},            "createdAt": {},            "description": {},            "id": {},            "imageUrl": {},            "name": {},            "promotedTemplateCount": {},            "publicTemplateCount": {},            "slug": {},            "updatedAt": {},            "weight": {}          }        ],        "templateProps": [          {            "default": {},            "description": {},            "key": {},            "name": {},            "properties": {},            "required": {},            "sensitive": {},            "type": {}          }        ],        "uiMetadata": {          "comments": [            {}          ],          "nodePositions": "<object>",          "stickyNotes": [            {}          ]        },        "updatedAt": "<string>",        "updatedBy": "<string>",        "version": 123,        "visibility": "org"      }    ],    "limit": 123,    "offset": 123  }}