Skip to content

Commit b3de6b2

Browse files
committed
feat(integrations): cover the full Trigger.dev management API surface
Adds batch retrieve/results, run result/events/trace/tags, queue list and concurrency override/reset, deployments, TRQL query + schema, waitpoint tokens, env var import, and timezones (44 tools total). Marks deduplicationKey required on create schedule and switches list-run filters to the documented comma-separated form, both per the OpenAPI spec.
1 parent 2de4462 commit b3de6b2

30 files changed

Lines changed: 4153 additions & 66 deletions

apps/docs/content/docs/en/integrations/trigger_dev.mdx

Lines changed: 1085 additions & 22 deletions
Large diffs are not rendered by default.

apps/sim/blocks/blocks/trigger_dev.ts

Lines changed: 460 additions & 25 deletions
Large diffs are not rendered by default.

apps/sim/lib/integrations/integrations.json

Lines changed: 87 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2239,7 +2239,7 @@
22392239
{
22402240
"type": "calcom",
22412241
"slug": "cal-com",
2242-
"name": "Cal Com",
2242+
"name": "Cal.com",
22432243
"description": "Manage Cal.com bookings, event types, schedules, and availability",
22442244
"longDescription": "Integrate Cal.com into your workflow. Create and manage bookings, event types, schedules, and check availability slots. Supports creating, listing, rescheduling, and canceling bookings, as well as managing event types and schedules. Can also trigger workflows based on Cal.com webhook events (booking created, cancelled, rescheduled). Connect your Cal.com account via OAuth.",
22452245
"bgColor": "#292929",
@@ -14813,7 +14813,7 @@
1481314813
"slug": "trigger-dev",
1481414814
"name": "Trigger.dev",
1481514815
"description": "Trigger tasks and manage runs and schedules",
14816-
"longDescription": "Integrate Trigger.dev into the workflow. Trigger and batch trigger background tasks with a JSON payload, retrieve and list runs, cancel, replay, or reschedule runs, manage cron schedules, environment variables, and queues.",
14816+
"longDescription": "Integrate Trigger.dev into the workflow. Trigger and batch trigger background tasks, retrieve and control runs (cancel, replay, reschedule, tags, metadata, events, traces), manage cron schedules, environment variables, queues, deployments, and waitpoint tokens, and query run data with TRQL.",
1481714817
"bgColor": "#000000",
1481814818
"iconName": "TriggerDevIcon",
1481914819
"docsUrl": "https://docs.sim.ai/integrations/trigger_dev",
@@ -14826,10 +14826,30 @@
1482614826
"name": "Batch Trigger Task",
1482714827
"description": "Batch trigger a Trigger.dev task with up to 1,000 payloads. All items in the batch run the same task. Returns the batch ID and the created run IDs."
1482814828
},
14829+
{
14830+
"name": "Get Batch",
14831+
"description": "Retrieve a Trigger.dev batch by its ID, including its status, run IDs, and success and failure counts."
14832+
},
14833+
{
14834+
"name": "Get Batch Results",
14835+
"description": "Retrieve the execution results of every run in a Trigger.dev batch, including outputs and error details."
14836+
},
1482914837
{
1483014838
"name": "Get Run",
1483114839
"description": "Retrieve a Trigger.dev run by its ID, including status, payload, output, attempts, and timing details."
1483214840
},
14841+
{
14842+
"name": "Get Run Result",
14843+
"description": "Retrieve the result of a Trigger.dev run: whether it succeeded, its output, and error details. Lighter than Get Run when only the outcome is needed."
14844+
},
14845+
{
14846+
"name": "Get Run Events",
14847+
"description": "Retrieve the log and span events of a Trigger.dev run, including messages, levels, durations, and error events."
14848+
},
14849+
{
14850+
"name": "Get Run Trace",
14851+
"description": "Retrieve the OpenTelemetry trace of a Trigger.dev run as a tree of spans with timing, errors, and nested children."
14852+
},
1483314853
{
1483414854
"name": "List Runs",
1483514855
"description": "List Trigger.dev runs in the environment of the API key, with optional filters for status, task, version, tags, schedule, and creation time."
@@ -14846,6 +14866,10 @@
1484614866
"name": "Reschedule Run",
1484714867
"description": "Reschedule a delayed Trigger.dev run with a new delay. Only valid while the run is in the DELAYED state."
1484814868
},
14869+
{
14870+
"name": "Add Run Tags",
14871+
"description": "Add tags to an existing Trigger.dev run. Runs can have up to 10 tags."
14872+
},
1484914873
{
1485014874
"name": "Update Run Metadata",
1485114875
"description": "Replace the metadata of a Trigger.dev run with a new JSON object."
@@ -14898,20 +14922,80 @@
1489814922
"name": "Delete Env Var",
1489914923
"description": "Delete an environment variable from a Trigger.dev project environment."
1490014924
},
14925+
{
14926+
"name": "Import Env Vars",
14927+
"description": "Upload multiple environment variables to a Trigger.dev project environment in one request."
14928+
},
1490114929
{
1490214930
"name": "Get Queue",
1490314931
"description": "Retrieve a Trigger.dev queue by ID, task identifier, or custom queue name, including its running and queued counts."
1490414932
},
14933+
{
14934+
"name": "List Queues",
14935+
"description": "List the queues in the environment of the API key, including running and queued counts, with page-based pagination."
14936+
},
1490514937
{
1490614938
"name": "Pause Queue",
1490714939
"description": "Pause a Trigger.dev queue so no new runs start. Runs that are currently executing continue to completion."
1490814940
},
1490914941
{
1491014942
"name": "Resume Queue",
1491114943
"description": "Resume a paused Trigger.dev queue so new runs can start again."
14944+
},
14945+
{
14946+
"name": "Override Queue Concurrency",
14947+
"description": "Override the concurrency limit of a Trigger.dev queue with a new value."
14948+
},
14949+
{
14950+
"name": "Reset Queue Concurrency",
14951+
"description": "Reset the concurrency limit of a Trigger.dev queue back to its base value, removing any override."
14952+
},
14953+
{
14954+
"name": "List Deployments",
14955+
"description": "List Trigger.dev deployments in the environment of the API key, with optional status and creation-time filters."
14956+
},
14957+
{
14958+
"name": "Get Deployment",
14959+
"description": "Retrieve a Trigger.dev deployment by its ID, including its status, version, and registered tasks."
14960+
},
14961+
{
14962+
"name": "Get Latest Deployment",
14963+
"description": "Retrieve the latest Trigger.dev deployment in the environment of the API key."
14964+
},
14965+
{
14966+
"name": "Promote Deployment",
14967+
"description": "Promote a Trigger.dev deployment version so new runs execute on it (e.g., to roll back to a previous version)."
14968+
},
14969+
{
14970+
"name": "Execute Query",
14971+
"description": "Execute a TRQL (SQL-like) query against Trigger.dev run data for reporting and analytics."
14972+
},
14973+
{
14974+
"name": "Get Query Schema",
14975+
"description": "Retrieve the TRQL query schema: the tables and columns available for Execute Query, with types and allowed values."
14976+
},
14977+
{
14978+
"name": "Create Waitpoint Token",
14979+
"description": "Create a Trigger.dev waitpoint token that a task can wait on until it is completed from outside (e.g., a human approval)."
14980+
},
14981+
{
14982+
"name": "Complete Waitpoint Token",
14983+
"description": "Complete a Trigger.dev waitpoint token, resuming any task waiting on it and passing it optional JSON data."
14984+
},
14985+
{
14986+
"name": "Get Waitpoint Token",
14987+
"description": "Retrieve a Trigger.dev waitpoint token by its ID, including its status, timeout, and completion data."
14988+
},
14989+
{
14990+
"name": "List Waitpoint Tokens",
14991+
"description": "List Trigger.dev waitpoint tokens in the environment of the API key, with optional status, tag, and creation-time filters."
14992+
},
14993+
{
14994+
"name": "List Timezones",
14995+
"description": "List the IANA timezones supported by Trigger.dev schedules, for use as the timezone of a cron schedule."
1491214996
}
1491314997
],
14914-
"operationCount": 23,
14998+
"operationCount": 44,
1491514999
"triggers": [],
1491615000
"triggerCount": 0,
1491715001
"authType": "api-key",

apps/sim/tools/registry.ts

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3191,23 +3191,44 @@ import {
31913191
} from '@/tools/trello'
31923192
import {
31933193
triggerDevActivateScheduleTool,
3194+
triggerDevAddRunTagsTool,
31943195
triggerDevBatchTriggerTaskTool,
31953196
triggerDevCancelRunTool,
3197+
triggerDevCompleteWaitpointTokenTool,
31963198
triggerDevCreateEnvVarTool,
31973199
triggerDevCreateScheduleTool,
3200+
triggerDevCreateWaitpointTokenTool,
31983201
triggerDevDeactivateScheduleTool,
31993202
triggerDevDeleteEnvVarTool,
32003203
triggerDevDeleteScheduleTool,
3204+
triggerDevExecuteQueryTool,
3205+
triggerDevGetBatchResultsTool,
3206+
triggerDevGetBatchTool,
3207+
triggerDevGetDeploymentTool,
32013208
triggerDevGetEnvVarTool,
3209+
triggerDevGetLatestDeploymentTool,
3210+
triggerDevGetQuerySchemaTool,
32023211
triggerDevGetQueueTool,
3212+
triggerDevGetRunEventsTool,
3213+
triggerDevGetRunResultTool,
32033214
triggerDevGetRunTool,
3215+
triggerDevGetRunTraceTool,
32043216
triggerDevGetScheduleTool,
3217+
triggerDevGetWaitpointTokenTool,
3218+
triggerDevImportEnvVarsTool,
3219+
triggerDevListDeploymentsTool,
32053220
triggerDevListEnvVarsTool,
3221+
triggerDevListQueuesTool,
32063222
triggerDevListRunsTool,
32073223
triggerDevListSchedulesTool,
3224+
triggerDevListTimezonesTool,
3225+
triggerDevListWaitpointTokensTool,
3226+
triggerDevOverrideQueueConcurrencyTool,
32083227
triggerDevPauseQueueTool,
3228+
triggerDevPromoteDeploymentTool,
32093229
triggerDevReplayRunTool,
32103230
triggerDevRescheduleRunTool,
3231+
triggerDevResetQueueConcurrencyTool,
32113232
triggerDevResumeQueueTool,
32123233
triggerDevTriggerTaskTool,
32133234
triggerDevUpdateEnvVarTool,
@@ -5284,11 +5305,17 @@ export const tools: Record<string, ToolConfig> = {
52845305
trello_add_comment: trelloAddCommentTool,
52855306
trigger_dev_trigger_task: triggerDevTriggerTaskTool,
52865307
trigger_dev_batch_trigger_task: triggerDevBatchTriggerTaskTool,
5308+
trigger_dev_get_batch: triggerDevGetBatchTool,
5309+
trigger_dev_get_batch_results: triggerDevGetBatchResultsTool,
52875310
trigger_dev_get_run: triggerDevGetRunTool,
5311+
trigger_dev_get_run_result: triggerDevGetRunResultTool,
5312+
trigger_dev_get_run_events: triggerDevGetRunEventsTool,
5313+
trigger_dev_get_run_trace: triggerDevGetRunTraceTool,
52885314
trigger_dev_list_runs: triggerDevListRunsTool,
52895315
trigger_dev_cancel_run: triggerDevCancelRunTool,
52905316
trigger_dev_replay_run: triggerDevReplayRunTool,
52915317
trigger_dev_reschedule_run: triggerDevRescheduleRunTool,
5318+
trigger_dev_add_run_tags: triggerDevAddRunTagsTool,
52925319
trigger_dev_update_run_metadata: triggerDevUpdateRunMetadataTool,
52935320
trigger_dev_create_schedule: triggerDevCreateScheduleTool,
52945321
trigger_dev_get_schedule: triggerDevGetScheduleTool,
@@ -5302,9 +5329,24 @@ export const tools: Record<string, ToolConfig> = {
53025329
trigger_dev_get_env_var: triggerDevGetEnvVarTool,
53035330
trigger_dev_update_env_var: triggerDevUpdateEnvVarTool,
53045331
trigger_dev_delete_env_var: triggerDevDeleteEnvVarTool,
5332+
trigger_dev_import_env_vars: triggerDevImportEnvVarsTool,
53055333
trigger_dev_get_queue: triggerDevGetQueueTool,
5334+
trigger_dev_list_queues: triggerDevListQueuesTool,
53065335
trigger_dev_pause_queue: triggerDevPauseQueueTool,
53075336
trigger_dev_resume_queue: triggerDevResumeQueueTool,
5337+
trigger_dev_override_queue_concurrency: triggerDevOverrideQueueConcurrencyTool,
5338+
trigger_dev_reset_queue_concurrency: triggerDevResetQueueConcurrencyTool,
5339+
trigger_dev_list_deployments: triggerDevListDeploymentsTool,
5340+
trigger_dev_get_deployment: triggerDevGetDeploymentTool,
5341+
trigger_dev_get_latest_deployment: triggerDevGetLatestDeploymentTool,
5342+
trigger_dev_promote_deployment: triggerDevPromoteDeploymentTool,
5343+
trigger_dev_execute_query: triggerDevExecuteQueryTool,
5344+
trigger_dev_get_query_schema: triggerDevGetQuerySchemaTool,
5345+
trigger_dev_create_waitpoint_token: triggerDevCreateWaitpointTokenTool,
5346+
trigger_dev_complete_waitpoint_token: triggerDevCompleteWaitpointTokenTool,
5347+
trigger_dev_get_waitpoint_token: triggerDevGetWaitpointTokenTool,
5348+
trigger_dev_list_waitpoint_tokens: triggerDevListWaitpointTokensTool,
5349+
trigger_dev_list_timezones: triggerDevListTimezonesTool,
53085350
vercel_list_deployments: vercelListDeploymentsTool,
53095351
vercel_get_deployment: vercelGetDeploymentTool,
53105352
vercel_create_deployment: vercelCreateDeploymentTool,
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
import type {
2+
TriggerDevAddRunTagsParams,
3+
TriggerDevAddRunTagsResponse,
4+
} from '@/tools/trigger_dev/types'
5+
import {
6+
buildTriggerDevHeaders,
7+
splitCommaSeparated,
8+
TRIGGER_DEV_API_BASE,
9+
} from '@/tools/trigger_dev/utils'
10+
import type { ToolConfig } from '@/tools/types'
11+
12+
export const triggerDevAddRunTagsTool: ToolConfig<
13+
TriggerDevAddRunTagsParams,
14+
TriggerDevAddRunTagsResponse
15+
> = {
16+
id: 'trigger_dev_add_run_tags',
17+
name: 'Trigger.dev Add Run Tags',
18+
description: 'Add tags to an existing Trigger.dev run. Runs can have up to 10 tags.',
19+
version: '1.0.0',
20+
21+
params: {
22+
apiKey: {
23+
type: 'string',
24+
required: true,
25+
visibility: 'user-only',
26+
description: 'Trigger.dev secret API key (starts with tr_)',
27+
},
28+
runId: {
29+
type: 'string',
30+
required: true,
31+
visibility: 'user-or-llm',
32+
description: 'ID of the run to tag (starts with run_)',
33+
},
34+
tags: {
35+
type: 'string',
36+
required: true,
37+
visibility: 'user-or-llm',
38+
description:
39+
'Comma-separated tags to add to the run (max 10 total, each under 128 characters)',
40+
},
41+
},
42+
43+
request: {
44+
url: (params) =>
45+
`${TRIGGER_DEV_API_BASE}/api/v1/runs/${encodeURIComponent(params.runId.trim())}/tags`,
46+
method: 'POST',
47+
headers: (params) => buildTriggerDevHeaders(params.apiKey),
48+
body: (params) => ({ tags: splitCommaSeparated(params.tags) }),
49+
},
50+
51+
transformResponse: async (response) => {
52+
const data = await response.json()
53+
return {
54+
success: true,
55+
output: {
56+
message: data.message ?? '',
57+
},
58+
}
59+
},
60+
61+
outputs: {
62+
message: { type: 'string', description: 'Confirmation message for the added tags' },
63+
},
64+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
import type {
2+
TriggerDevCompleteWaitpointTokenParams,
3+
TriggerDevCompleteWaitpointTokenResponse,
4+
} from '@/tools/trigger_dev/types'
5+
import {
6+
buildTriggerDevHeaders,
7+
parseJsonInput,
8+
TRIGGER_DEV_API_BASE,
9+
} from '@/tools/trigger_dev/utils'
10+
import type { ToolConfig } from '@/tools/types'
11+
12+
export const triggerDevCompleteWaitpointTokenTool: ToolConfig<
13+
TriggerDevCompleteWaitpointTokenParams,
14+
TriggerDevCompleteWaitpointTokenResponse
15+
> = {
16+
id: 'trigger_dev_complete_waitpoint_token',
17+
name: 'Trigger.dev Complete Waitpoint Token',
18+
description:
19+
'Complete a Trigger.dev waitpoint token, resuming any task waiting on it and passing it optional JSON data.',
20+
version: '1.0.0',
21+
22+
params: {
23+
apiKey: {
24+
type: 'string',
25+
required: true,
26+
visibility: 'user-only',
27+
description: 'Trigger.dev secret API key (starts with tr_)',
28+
},
29+
waitpointId: {
30+
type: 'string',
31+
required: true,
32+
visibility: 'user-or-llm',
33+
description: 'ID of the waitpoint token to complete (starts with waitpoint_)',
34+
},
35+
data: {
36+
type: 'json',
37+
required: false,
38+
visibility: 'user-or-llm',
39+
description:
40+
'JSON data passed back to the waiting run as the token result. Example: {"status": "approved"}',
41+
},
42+
},
43+
44+
request: {
45+
url: (params) =>
46+
`${TRIGGER_DEV_API_BASE}/api/v1/waitpoints/tokens/${encodeURIComponent(params.waitpointId.trim())}/complete`,
47+
method: 'POST',
48+
headers: (params) => buildTriggerDevHeaders(params.apiKey),
49+
body: (params) => {
50+
const data = parseJsonInput(params.data, 'data')
51+
return data === undefined ? {} : { data }
52+
},
53+
},
54+
55+
transformResponse: async (response) => {
56+
const data = await response.json()
57+
return {
58+
success: true,
59+
output: {
60+
success: data.success ?? true,
61+
},
62+
}
63+
},
64+
65+
outputs: {
66+
success: { type: 'boolean', description: 'Whether the waitpoint token was completed' },
67+
},
68+
}

apps/sim/tools/trigger_dev/create_schedule.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export const triggerDevCreateScheduleTool: ToolConfig<
5454
},
5555
deduplicationKey: {
5656
type: 'string',
57-
required: false,
57+
required: true,
5858
visibility: 'user-or-llm',
5959
description:
6060
'Key that prevents duplicate schedules; creating again with the same key updates the existing schedule',
@@ -69,10 +69,10 @@ export const triggerDevCreateScheduleTool: ToolConfig<
6969
const body: Record<string, unknown> = {
7070
task: params.task,
7171
cron: params.cron,
72+
deduplicationKey: params.deduplicationKey,
7273
}
7374
if (params.timezone) body.timezone = params.timezone
7475
if (params.externalId) body.externalId = params.externalId
75-
if (params.deduplicationKey) body.deduplicationKey = params.deduplicationKey
7676
return body
7777
},
7878
},

0 commit comments

Comments
 (0)