This trigger generates a unique URL. When an external system sends an HTTP POST to it, the workflow runs.Documentation Index
Fetch the complete documentation index at: https://help.teable.ai/llms.txt
Use this file to discover all available pages before exploring further.
Build with AI
Open the AI Chat in your table’s right sidebar and describe what you want. AI handles everything: it chooses the right trigger, maps the relevant fields, and sets up all actions automatically. Describe the goal once, and the workflow is ready — no manual setup needed. Example: “When I receive a Stripe payment webhook, create an order record.”Configuration
| Setting | Required | Description |
|---|---|---|
| Authorization | No | None (public — anyone with the URL can trigger it) or Bearer Token (auto-generated token required in the request header) |
How to set it up
- Open your automation and add a new trigger.
- Select When webhook received.
- The trigger immediately generates a unique webhook URL. Copy this URL — you will need it for the external system.
- (Optional but recommended) Click Generate Token to enable Bearer Token authorization. This produces a token that must be included in the
Authorizationheader of incoming requests. - Save and activate the automation.
- Configure your external system to send a POST request to the webhook URL. Include the token in the header if you enabled authorization.
- Send a test request (see examples below). Check the automation’s run history to verify it received the data correctly.
- Add your action steps. Click + in any action field to reference values from the webhook’s JSON body.
What data is available to next steps
The entire JSON body of the incoming POST request is available as variables. For example, if you send:order_id, customer, and amount individually by clicking + and navigating to the trigger’s output fields.
Teable automatically parses the JSON and creates named variables for each top-level key. Nested objects are also accessible.
Testing your webhook
The easiest way to test is withcurl from the command line:
Without authorization:
Rate limits
| Scope | Limit |
|---|---|
| Per base | 50 requests / second |
| Per workflow | 2 requests / second |
Security best practices
- Always use Bearer Token authorization for production webhooks. A public webhook URL can be triggered by anyone who discovers the URL.
- Keep your webhook URL private. Treat it like a password. Do not commit it to public repositories or share it in open channels.
- Regenerate the token if you suspect it has been compromised. You can generate a new token from the trigger panel at any time.
- Validate data in your workflow. Do not assume the incoming data is well-formed. Use filters or script steps to verify required fields are present before processing.
- Monitor run history. Regularly check your automation’s run logs to spot unexpected or unauthorized requests.
When to use
- Receive payment events from Stripe or PayPal. Configure a Stripe webhook to send
invoice.paidevents to your Teable automation, creating or updating order records automatically. - Accept form submissions from your website. Point your website’s contact or signup form to the webhook URL to create records directly in Teable.
- Ingest data from IoT devices. Sensors or devices that can send HTTP requests can push data into Teable for monitoring and alerting.
- Connect CI/CD pipelines. Trigger workflows when a build succeeds or fails — create records, send notifications, or update project status.
- Receive events from any SaaS tool. Many tools (GitHub, Jira, Shopify, Twilio, etc.) support webhook notifications. Point them at your Teable webhook to automate cross-tool workflows.
Tips
- The webhook only accepts POST requests. GET, PUT, and other methods will not trigger the automation.
- Always send a
Content-Type: application/jsonheader. If the body is not valid JSON, the trigger may not parse the data correctly. - If you need to send data from a system that does not support custom headers (for Bearer auth), consider using the public mode but adding a secret key in the JSON body that your workflow validates with a filter or script.
- For debugging, you can use services like webhook.site to inspect what your external system is actually sending before pointing it at Teable.
Related
- HTTP request action — the outbound counterpart: call external APIs from your workflow
- Run script guide — for advanced webhook payload processing
- Loop (batch) action — process arrays in webhook payloads

