A Slack app that adds a native "Send to Webhook" step to Workflow Builder. Fill out a form in Slack, and the app POSTs the data as JSON to any webhook URL.
Built on the Deno Slack SDK — Slack hosts the runtime, no server required.
Adds a shortcut to Slack that opens a form with two fields:
- Webhook URL — the target endpoint
- Payload — comma-separated values (e.g.
https://linkedin.com/in/bobafett/, Boba Fett)
The app splits the payload on commas and converts it to a numbered JSON object before sending:
{"1": "https://linkedin.com/in/bobafett/", "2": "Boba Fett"}You handle field mapping on the receiving end.
curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bashcurl -fsSL https://deno.land/install.sh | shAdd to your PATH:
echo 'export DENO_INSTALL="$HOME/.deno"' >> ~/.zshrc
echo 'export PATH="$DENO_INSTALL/bin:$PATH"' >> ~/.zshrc
source ~/.zshrcslack create my-app --template https://github.com/TefaTBob/slack-send-to-clay-webhook
cd my-appslack loginslack runThe app will install to your workspace as slack-send-to-clay-webhook (local). You'll be prompted to create a trigger — select triggers/send_webhook_trigger.ts.
Paste the generated shortcut URL into any Slack channel. Click it to open the form.
Local mode only runs while slack run is active and is only visible to you.
slack deployOnce deployed, the app is available to your entire workspace without needing your machine running. You'll be prompted to create a new trigger for the deployed version.
By default, the workflow step is only visible to app collaborators in Workflow Builder. To make it available to everyone in your workspace, run this after deploying:
slack function access --name send_webhook --everyone --grantThis only needs to be run once. No redeploy required.
Slack requires webhook target domains to be whitelisted in manifest.ts:
outgoingDomains: ["api.clay.com"],Add any additional domains you need and redeploy.
functions/
send_webhook.ts # Parses payload and POSTs to webhook
workflows/
send_webhook_workflow.ts # Form + function wired together
triggers/
send_webhook_trigger.ts # Shortcut trigger
manifest.ts # App config, scopes, outgoing domains
slack activity --tail