Skip to content

Triggers API

Endpoints Triggers управляют trigger definitions, drafts, bulk operations и test helpers.

GET /api/v2/triggers

Возвращает triggers с опциональными filters.

Аргументы:

АргументГдеОписание
projectQueryФильтр по project fullname.
workspaceQueryФильтр по workspace fullname.

Тело запроса: нет.

Ответ: TriggerView[].

GET /api/v2/triggers/:fullname

Возвращает trigger.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname.

Тело запроса: нет.

Ответ: TriggerDraftView.

PUT /api/v2/triggers/:fullname

Создает или полностью сохраняет trigger.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname. Должен совпадать с payload.fullname.

Тело запроса:

ПолеОбязательноеОписание
nameДаИмя trigger внутри project.
fullnameДаTrigger fullname.
projectДаProject fullname.
workspaceДаWorkspace fullname.
backendДаBackend object. Обычно { type: "sdk", trigger, values }.
inputsДаInput schema.
meta.titleДаВидимое название.
meta.descriptionНетОписание.
defaultsНетNotification defaults.
outputНетLegacy output schema.
triggerSpecНетSource matching spec или null.
providersНетМассив provider definitions.
filtersSchemaНетОпциональная filters schema.
outputSchemaНетHuman/raw output schema.
transformНетJavaScript transform или null.
activationНетJavaScript activation condition или null.
executionPolicyНетОбъект runtime limits override или null.
statusНет{ status, issue, source, updatedAt }.
tagsНетTags.
labelsНетLabels.

Ответ: TriggerDraftView.

PATCH /api/v2/triggers/:fullname

Частично изменяет trigger.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname.

Тело запроса:

ПолеОбязательноеОписание
setОдин из вариантовОбъект с dotted paths и значениями для установки.
unsetОдин из вариантовМассив dotted paths для удаления.
dryRunНетЕсли true, проверяет patch без сохранения.

Ответ: TriggerPatchResult.

DELETE /api/v2/triggers/:fullname

Удаляет trigger.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname.

Тело запроса: нет.

Ответ: OperationResult.

POST /api/v2/triggers/patch

Массово изменяет несколько triggers.

Аргументы: нет.

Тело запроса:

ПолеОбязательноеОписание
itemsДаМассив { fullname, set?, unset? }.
dryRunНетПроверить без сохранения.

Ответ: TriggerBulkPatchResult.

POST /api/v2/triggers/remove

Массово удаляет несколько triggers.

Аргументы: нет.

Тело запроса:

ПолеОбязательноеОписание
fullnamesДаМассив trigger fullnames.
dryRunНетПроверить без удаления.

Ответ: TriggerBulkRemoveResult.

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

Возвращает draft view trigger.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname.

Тело запроса: нет.

Ответ: TriggerDraftView.

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

Сохраняет draft trigger.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname.

Тело запроса: такая же структура, как в PUT /api/v2/triggers/:fullname.

Ответ: TriggerDraftView.

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

Проверяет draft trigger без финального сохранения.

Аргументы:

АргументГдеОписание
fullnamePathTrigger fullname.

Тело запроса: такая же структура, как у payload сохранения trigger.

Ответ: TriggerValidationResult.

POST /api/v2/triggers/preview

Показывает preview output для transform/providers без сохранения trigger.

Аргументы: нет.

Тело запроса:

ПолеОбязательноеОписание
providersДаProvider definitions.
transformДаJavaScript transform object.
inputДаSource item/input для preview.
inputsНетЗначения trigger inputs.
outputSchemaНетOutput schema, используемая для форматирования.

Ответ: TriggerPreviewResult.

POST /api/v2/triggers/test

Тестирует trigger definition на sample source item.

Аргументы: нет.

Тело запроса:

ПолеОбязательноеОписание
triggerSpecДаSource matching spec.
providersДаProvider definitions.
transformДаJavaScript transform.
outputSchemaДаOutput schema.
activationНетActivation condition.
inputsНетЗначения inputs.
inputОдин из вариантовDirect test input.
testОдин из вариантовTest source/match object.

Ответ: TriggerTestResult.

POST /api/v2/triggers/test-block

Тестирует trigger на конкретном block.

Аргументы: нет.

Тело запроса:

ПолеОбязательноеОписание
triggerSpecДаSource matching spec.
providersДаProvider definitions.
transformДаJavaScript transform.
outputSchemaДаOutput schema.
blockДаНомер block.
itemIndexНетИндекс source item внутри block.
activationНетActivation condition.
filtersSchemaНетFilters schema.
inputsНетЗначения inputs.

Ответ: TriggerTestResult.

POST /api/v2/triggers/providers/test

Тестирует один provider.

Аргументы: нет.

Тело запроса:

ПолеОбязательноеОписание
triggerSpecДаSource matching spec.
providerДаProvider definition.
projectНетProject fullname.
workspaceНетWorkspace fullname.
templateValuesНетTemplate values для provider placeholders.

Ответ: ProviderTestResult.

GET /api/v2/triggers/runtime-sources

Возвращает runtime data sources, доступные для trigger builder.

Аргументы: нет.

Тело запроса: нет.

Ответ: RuntimeSource[].

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

Находит latest block/test input для trigger testing.

Аргументы: нет.

Тело запроса: trigger/source-specific search object.

Ответ: LatestBlockResult.

Trigger Spec

triggerSpec описывает source matching.

Поддерживаемые варианты:

ТипОбязательные поляОпциональные поля
evm_logtype, dataSourcecontract, event, abiFragment, topicsCount, dataBytes, testInput
evm_transactiontype, dataSourcetestInput
substrate_eventtype, dataSourcepallet, event, testInput
timertype, intervaltestInput

Provider Definition

У каждого provider есть id, type, опциональный weight, опциональный timeoutMs и опциональный outputSchema.

Поддерживаемые типы providers:

ТипОбязательные поляОсновные опциональные поля
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