Skip to content

Commit ca468dc

Browse files
authored
Merge branch 'main' into staging
2 parents fe82166 + 21ffa50 commit ca468dc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+196
-647
lines changed

apps/docs/content/docs/blocks/meta.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"parallel",
1111
"response",
1212
"router",
13+
"webhook_trigger",
1314
"workflow"
1415
]
1516
}
Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
---
2+
title: Webhook Trigger
3+
description: Trigger workflow execution from external webhooks
4+
---
5+
6+
import { Callout } from 'fumadocs-ui/components/callout'
7+
import { Step, Steps } from 'fumadocs-ui/components/steps'
8+
import { Tab, Tabs } from 'fumadocs-ui/components/tabs'
9+
import { Card, Cards } from 'fumadocs-ui/components/card'
10+
import { ThemeImage } from '@/components/ui/theme-image'
11+
12+
The Webhook Trigger block allows external services to trigger your workflow execution through HTTP webhooks. Unlike starter blocks, webhook triggers are pure input sources that start workflows without requiring manual intervention.
13+
14+
<ThemeImage
15+
lightSrc="/static/light/webhooktrigger-light.png"
16+
darkSrc="/static/dark/webhooktrigger-dark.png"
17+
alt="Webhook Trigger Block"
18+
width={350}
19+
height={175}
20+
/>
21+
22+
<Callout>
23+
Webhook triggers cannot receive incoming connections and do not expose webhook data to the workflow. They serve as pure execution triggers.
24+
</Callout>
25+
26+
## Overview
27+
28+
The Webhook Trigger block enables you to:
29+
30+
<Steps>
31+
<Step>
32+
<strong>Receive external triggers</strong>: Accept HTTP requests from external services
33+
</Step>
34+
<Step>
35+
<strong>Support multiple providers</strong>: Handle webhooks from Slack, Gmail, GitHub, and more
36+
</Step>
37+
<Step>
38+
<strong>Start workflows automatically</strong>: Execute workflows without manual intervention
39+
</Step>
40+
<Step>
41+
<strong>Provide secure endpoints</strong>: Generate unique webhook URLs for each trigger
42+
</Step>
43+
</Steps>
44+
45+
## How It Works
46+
47+
The Webhook Trigger block operates as a pure input source:
48+
49+
1. **Generate Endpoint** - Creates a unique webhook URL when configured
50+
2. **Receive Request** - Accepts HTTP POST requests from external services
51+
3. **Trigger Execution** - Starts the workflow when a valid request is received
52+
53+
## Configuration Options
54+
55+
### Webhook Provider
56+
57+
Choose from supported service providers:
58+
59+
<Cards>
60+
<Card title="Slack" href="#">
61+
Receive events from Slack apps and bots
62+
</Card>
63+
<Card title="Gmail" href="#">
64+
Handle email-based triggers and notifications
65+
</Card>
66+
<Card title="Airtable" href="#">
67+
Respond to database changes
68+
</Card>
69+
<Card title="Telegram" href="#">
70+
Process bot messages and updates
71+
</Card>
72+
<Card title="WhatsApp" href="#">
73+
Handle messaging events
74+
</Card>
75+
<Card title="GitHub" href="#">
76+
Process repository events and pull requests
77+
</Card>
78+
<Card title="Discord" href="#">
79+
Respond to Discord server events
80+
</Card>
81+
<Card title="Stripe" href="#">
82+
Handle payment and subscription events
83+
</Card>
84+
</Cards>
85+
86+
### Generic Webhooks
87+
88+
For custom integrations or services not listed above, use the **Generic** provider. This option accepts HTTP POST requests from any client and provides flexible authentication options:
89+
90+
- **Optional Authentication** - Configure Bearer token or custom header authentication
91+
- **IP Restrictions** - Limit access to specific IP addresses
92+
- **Request Deduplication** - Automatic duplicate request detection using content hashing
93+
- **Flexible Headers** - Support for custom authentication header names
94+
95+
The Generic provider is ideal for internal services, custom applications, or third-party tools that need to trigger workflows via standard HTTP requests.
96+
97+
### Webhook Configuration
98+
99+
Configure provider-specific settings:
100+
101+
- **Webhook URL** - Automatically generated unique endpoint
102+
- **Provider Settings** - Authentication and validation options
103+
- **Security** - Built-in rate limiting and provider-specific authentication
104+
105+
## Best Practices
106+
107+
- **Use unique webhook URLs** for each integration to maintain security
108+
- **Configure proper authentication** when supported by the provider
109+
- **Keep workflows independent** of webhook payload structure
110+
- **Test webhook endpoints** before deploying to production
111+
- **Monitor webhook delivery** through provider dashboards
112+
113+

apps/docs/content/docs/execution/basics.mdx

Lines changed: 28 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -161,9 +161,13 @@ Run workflows on-demand through the Sim Studio interface by clicking the "Run" b
161161
- One-off tasks
162162
- Workflows that need human supervision
163163

164-
<div className="mx-auto w-full overflow-hidden rounded-lg">
165-
<video autoPlay loop muted playsInline className="w-full -mb-2 rounded-lg" src="/input-format.mp4"></video>
166-
</div>
164+
<ThemeImage
165+
lightSrc="/static/light/manual-execution-light.png"
166+
darkSrc="/static/dark/manual-execution-dark.png"
167+
alt="Manual Execution"
168+
width={600}
169+
height={400}
170+
/>
167171

168172
### Scheduled Execution
169173

@@ -174,9 +178,13 @@ Configure workflows to run automatically on a specified schedule:
174178
- Configure timezone settings
175179
- Set minimum and maximum execution intervals
176180

177-
<div className="mx-auto w-full overflow-hidden rounded-lg">
178-
<video autoPlay loop muted playsInline className="w-full -mb-2 rounded-lg" src="/configure-schedule.mp4"></video>
179-
</div>
181+
<ThemeImage
182+
lightSrc="/static/light/scheduled-execution-light.png"
183+
darkSrc="/static/dark/scheduled-execution-dark.png"
184+
alt="Scheduled Execution"
185+
width={600}
186+
height={400}
187+
/>
180188

181189
### API Endpoints
182190

@@ -187,19 +195,13 @@ Each workflow can be exposed as an API endpoint:
187195
- Send custom inputs via POST requests
188196
- Receive execution results as JSON responses
189197

190-
<div className="mx-auto w-full overflow-hidden rounded-lg">
191-
<video autoPlay loop muted playsInline className="w-full -mb-2 rounded-lg" src="/api-deployment.mp4"></video>
192-
</div>
193-
194-
#### Viewing Deployed APIs
195-
196-
Monitor your deployed workflow APIs and their current state:
197-
198-
<div className="mx-auto w-full overflow-hidden rounded-lg">
199-
<video autoPlay loop muted playsInline className="w-full -mb-2 rounded-lg" src="/api-redeployment.mp4"></video>
200-
</div>
201-
202-
This shows how to view the deployed state and compare with the original deployed API configuration.
198+
<ThemeImage
199+
lightSrc="/static/light/api-execution-light.png"
200+
darkSrc="/static/dark/api-execution-dark.png"
201+
alt="API Execution"
202+
width={600}
203+
height={400}
204+
/>
203205

204206
### Webhooks
205207

@@ -210,9 +212,13 @@ Configure workflows to execute in response to external events:
210212
- Configure webhook security settings
211213
- Support for specialized webhooks (GitHub, Stripe, etc.)
212214

213-
<div className="mx-auto w-full overflow-hidden rounded-lg">
214-
<video autoPlay loop muted playsInline className="w-full -mb-2 rounded-lg" src="/webhooks.mp4"></video>
215-
</div>
215+
<ThemeImage
216+
lightSrc="/static/light/webhook-execution-light.png"
217+
darkSrc="/static/dark/webhook-execution-dark.png"
218+
alt="Webhook Execution"
219+
width={600}
220+
height={400}
221+
/>
216222

217223
<Callout type="info">
218224
The execution method you choose depends on your workflow's purpose. Manual execution is great for

apps/docs/content/docs/meta.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
"./introduction/index",
66
"./getting-started/index",
77
"---Create---",
8-
"triggers",
98
"blocks",
109
"tools",
1110
"---Connections---",

apps/docs/content/docs/tools/exa.mdx

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -142,25 +142,6 @@ Get an AI-generated answer to a question with citations from the web using Exa A
142142
| `url` | string |
143143
| `text` | string |
144144

145-
### `exa_research`
146-
147-
Perform comprehensive research using AI to generate detailed reports with citations
148-
149-
#### Input
150-
151-
| Parameter | Type | Required | Description |
152-
| --------- | ---- | -------- | ----------- |
153-
| `query` | string | Yes | Research query or topic |
154-
| `includeText` | boolean | No | Include full text content in results |
155-
| `apiKey` | string | Yes | Exa AI API Key |
156-
157-
#### Output
158-
159-
| Parameter | Type |
160-
| --------- | ---- |
161-
| `taskId` | string |
162-
| `research` | string |
163-
164145

165146

166147
## Block Configuration
@@ -181,7 +162,6 @@ Perform comprehensive research using AI to generate detailed reports with citati
181162
| `similarLinks` | json | similarLinks output from the block |
182163
| `answer` | string | answer output from the block |
183164
| `citations` | json | citations output from the block |
184-
| `research` | json | research output from the block |
185165

186166

187167
## Notes

apps/docs/content/docs/tools/firecrawl.mdx

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -95,28 +95,6 @@ Search for information on the web using Firecrawl
9595
| `data` | string |
9696
| `warning` | string |
9797

98-
### `firecrawl_crawl`
99-
100-
Crawl entire websites and extract structured content from all accessible pages
101-
102-
#### Input
103-
104-
| Parameter | Type | Required | Description |
105-
| --------- | ---- | -------- | ----------- |
106-
| `url` | string | Yes | The website URL to crawl |
107-
| `limit` | number | No | Maximum number of pages to crawl \(default: 100\) |
108-
| `onlyMainContent` | boolean | No | Extract only main content from pages |
109-
| `apiKey` | string | Yes | Firecrawl API Key |
110-
111-
#### Output
112-
113-
| Parameter | Type |
114-
| --------- | ---- |
115-
| `jobId` | string |
116-
| `pages` | string |
117-
| `total` | string |
118-
| `creditsUsed` | string |
119-
12098

12199

122100
## Block Configuration
@@ -138,9 +116,6 @@ Crawl entire websites and extract structured content from all accessible pages
138116
| `metadata` | json | metadata output from the block |
139117
| `data` | json | data output from the block |
140118
| `warning` | any | warning output from the block |
141-
| `pages` | json | pages output from the block |
142-
| `total` | number | total output from the block |
143-
| `creditsUsed` | number | creditsUsed output from the block |
144119

145120

146121
## Notes

apps/docs/content/docs/tools/meta.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
"qdrant",
3838
"reddit",
3939
"s3",
40-
"schedule",
4140
"serper",
4241
"slack",
4342
"stagehand",
@@ -51,7 +50,6 @@
5150
"typeform",
5251
"vision",
5352
"wealthbox",
54-
"webhook",
5553
"whatsapp",
5654
"x",
5755
"youtube"

0 commit comments

Comments
 (0)