Skip to content

Triggers API

Trigger endpoints 用于管理 trigger definitions、drafts、bulk operations 和 test helpers。

GET /api/v2/triggers

返回带 optional filters 的 triggers。

Arguments:

ArgumentLocationDescription
projectQueryProject fullname filter.
workspaceQueryWorkspace fullname filter.

Payload: 无。

响应:TriggerView[]

GET /api/v2/triggers/:fullname

返回 trigger。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname.

Payload: 无。

响应:TriggerDraftView

PUT /api/v2/triggers/:fullname

创建或完整保存 trigger。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname. 必须与 payload.fullname 一致。

Payload:

FieldRequiredDescription
nameproject 内的 Trigger name。
fullnameTrigger fullname.
projectProject fullname.
workspaceWorkspace fullname.
backendBackend object。通常是 { type: "sdk", trigger, values }
inputsInput schema.
meta.title可见标题。
meta.description描述。
defaultsNotification defaults.
outputLegacy output schema.
triggerSpecSource matching spec 或 null
providersArray of provider definitions.
filtersSchemaOptional filters schema.
outputSchemaHuman/raw output schema.
transformJavaScript transform 或 null
activationJavaScript activation condition 或 null
executionPolicyRuntime limits override object 或 null
status{ status, issue, source, updatedAt }.
tagsTags.
labelsLabels.

响应:TriggerDraftView

PATCH /api/v2/triggers/:fullname

部分修改 trigger。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname.

Payload:

FieldRequiredDescription
setOne ofObject with dotted paths and values to set.
unsetOne ofArray of dotted paths to remove.
dryRunIf true, validate patch without saving.

响应:TriggerPatchResult

DELETE /api/v2/triggers/:fullname

删除 trigger。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname.

Payload: 无。

响应:OperationResult

POST /api/v2/triggers/patch

对多个 triggers 执行 bulk patch。

Arguments: 无。

Payload:

FieldRequiredDescription
itemsArray of { fullname, set?, unset? }.
dryRunValidate without saving.

响应:TriggerBulkPatchResult

POST /api/v2/triggers/remove

对多个 triggers 执行 bulk remove。

Arguments: 无。

Payload:

FieldRequiredDescription
fullnamesArray of trigger fullnames.
dryRunValidate without deleting.

响应:TriggerBulkRemoveResult

GET /api/v2/triggers/:fullname/draft

返回 trigger draft view。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname.

Payload: 无。

响应:TriggerDraftView

PUT /api/v2/triggers/:fullname/draft

保存 trigger draft。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname.

Payload: same shape as PUT /api/v2/triggers/:fullname.

响应:TriggerDraftView

POST /api/v2/triggers/:fullname/draft/validate

验证 trigger draft,但不执行最终保存。

Arguments:

ArgumentLocationDescription
fullnamePathTrigger fullname.

Payload: same shape as trigger save payload.

响应:TriggerValidationResult

POST /api/v2/triggers/preview

在不保存 trigger 的情况下 preview transform/providers output。

Arguments: 无。

Payload:

FieldRequiredDescription
providersProvider definitions.
transformJavaScript transform object.
inputSource item/input for preview.
inputsTrigger input values.
outputSchemaOutput schema used for formatting.

响应:TriggerPreviewResult

POST /api/v2/triggers/test

在 sample source item 上测试 trigger definition。

Arguments: 无。

Payload:

FieldRequiredDescription
triggerSpecSource matching spec.
providersProvider definitions.
transformJavaScript transform.
outputSchemaOutput schema.
activationActivation condition.
inputsInput values.
inputOne ofDirect test input.
testOne ofTest source/match object.

响应:TriggerTestResult

POST /api/v2/triggers/test-block

在指定 block 上测试 trigger。

Arguments: 无。

Payload:

FieldRequiredDescription
triggerSpecSource matching spec.
providersProvider definitions.
transformJavaScript transform.
outputSchemaOutput schema.
blockBlock number.
itemIndexSource item index inside block.
activationActivation condition.
filtersSchemaFilters schema.
inputsInput values.

响应:TriggerTestResult

POST /api/v2/triggers/providers/test

测试一个 provider。

Arguments: 无。

Payload:

FieldRequiredDescription
triggerSpecSource matching spec.
providerProvider definition.
projectProject fullname.
workspaceWorkspace fullname.
templateValuesTemplate values for provider placeholders.

响应:ProviderTestResult

GET /api/v2/triggers/runtime-sources

返回 trigger builder 可用的 runtime data sources。

Arguments: 无。

Payload: 无。

响应:RuntimeSource[]

POST /api/v2/triggers/find-latest-block

为 trigger testing 查找 latest block/test input。

Arguments: 无。

Payload: trigger/source-specific search object.

响应:LatestBlockResult

Trigger Spec

triggerSpec describes source matching.

Supported variants:

TypeRequired fieldsOptional fields
evm_logtype, dataSourcecontract, event, abiFragment, topicsCount, dataBytes, testInput
evm_transactiontype, dataSourcetestInput
substrate_eventtype, dataSourcepallet, event, testInput
timertype, intervaltestInput

Provider Definition

Each provider has id, type, optional weight, optional timeoutMs, and optional outputSchema.

Supported provider types:

TypeRequired fieldsMain optional fields
httpid, type, urlmethod, headers, queryParams, body
graphqlid, type, url, queryheaders, variables
rpc with transport: "endpoint"id, type, url, methodheaders, params, body
rpc with transport: "source"id, type, transport, methodparams
substrate_storageid, type, module, entrysource, args, block
evm_readid, type, contract, method, abiFragmentsource, abiContract, args
state_windowid, type, dedupeBy, value, keepLastpartitionBy, valueType, aggregate
javascriptid, type, sourcevariables