MCPcopy Index your code
hub / github.com/simstudioai/sim / fetchActiveWebhooks

Function fetchActiveWebhooks

apps/sim/lib/webhooks/polling/utils.ts:73–102  ·  view source on GitHub ↗
(
  provider: string
)

Source from the content-addressed store, hash-verified

71
72/** Fetch all active webhooks for a provider, joined with their workflow. */
73export async function fetchActiveWebhooks(
74 provider: string
75): Promise<{ webhook: WebhookRecord; workflow: WorkflowRecord }[]> {
76 const rows = await db
77 .select({ webhook, workflow })
78 .from(webhook)
79 .innerJoin(workflow, eq(webhook.workflowId, workflow.id))
80 .leftJoin(
81 workflowDeploymentVersion,
82 and(
83 eq(workflowDeploymentVersion.workflowId, workflow.id),
84 eq(workflowDeploymentVersion.isActive, true)
85 )
86 )
87 .where(
88 and(
89 eq(webhook.provider, provider),
90 eq(webhook.isActive, true),
91 isNull(webhook.archivedAt),
92 eq(workflow.isDeployed, true),
93 isNull(workflow.archivedAt),
94 or(
95 eq(webhook.deploymentVersionId, workflowDeploymentVersion.id),
96 and(isNull(workflowDeploymentVersion.id), isNull(webhook.deploymentVersionId))
97 )
98 )
99 )
100
101 return rows
102}
103
104/**
105 * Run an async function over entries with bounded concurrency.

Callers 2

pollProviderFunction · 0.90
fireTableTriggerFunction · 0.85

Calls 1

eqFunction · 0.50

Tested by

no test coverage detected