Webhook: Zapier
Connect budget alerts to 7,000+ apps via Zapier webhooks.
Overview
Zapier lets you route Grafient budget alerts to thousands of apps — Slack, Discord, PagerDuty, Google Sheets, email, SMS, and more. Instead of configuring each service individually, you create a Zap that listens for a webhook and forwards the alert wherever you need it.
Prerequisites
- A Zapier account (the free plan supports up to 5 Zaps).
- At least one budget alert configured in Grafient (see Budget Alerts).
Step 1: Create a New Zap
- Log in to Zapier and click Create a Zap (or the + button).
- For the Trigger, search for and select Webhooks by Zapier.
- Choose Catch Hook as the event type.
- Click Continue.
"Catch Hook" is the right trigger type. It gives you a URL that receives incoming POST requests — exactly what Grafient sends when an alert fires.
Step 2: Copy the Webhook URL
- Zapier will generate a unique webhook URL that looks like:
https://hooks.zapier.com/hooks/catch/123456/abcdef/
- Copy this URL.
Step 3: Add the URL to Your Alert
- In Grafient, go to Alerts in the sidebar.
- Click Add Alert (or edit an existing alert).
- Set your threshold and period as usual.
- Paste the Zapier webhook URL into the Webhook URL field.
- Click Create Alert.
Step 4: Test the Connection
- Back in Zapier, click Test trigger.
- Zapier will wait for a request. To send a test, you can temporarily set a very low threshold on your alert (e.g. $0.01) so it triggers on the next cron run — or wait for a real trigger.
- Once Zapier receives the webhook, it will show the parsed data:
| Field | Example Value |
|---|---|
text | Budget Alert: Your daily spend ($45.00) exceeded your $30.00 threshold |
alert.period | daily |
alert.threshold | 30 |
alert.currentSpend | 45 |
- Click Continue once you see the test data.
Step 5: Configure Your Action
Now add an Action step to do something with the alert. Common examples:
Send to a Slack Channel
- Choose Slack as the action app.
- Select Send Channel Message.
- Map the
textfield to the message body.
Send an SMS via Twilio
- Choose Twilio as the action app.
- Select Send SMS.
- Use the
textfield as the message content.
Log to Google Sheets
- Choose Google Sheets as the action app.
- Select Create Spreadsheet Row.
- Map
alert.period,alert.threshold, andalert.currentSpendto columns.
Post to Discord
- Choose Discord as the action app.
- Select Send Channel Message.
- Map the
textfield to the message body.
You can chain multiple actions in a single Zap — for example, send a Slack message and log to Google Sheets from the same alert.
Payload Reference
Every webhook POST from Grafient sends this JSON body:
{
"text": "Budget Alert: Your daily spend ($45.00) exceeded your $30.00 threshold",
"alert": {
"period": "daily",
"threshold": 30.00,
"currentSpend": 45.00
}
}
| Field | Type | Description |
|---|---|---|
text | string | Human-readable alert message |
alert.period | string | "daily", "monthly", or "spike" |
alert.threshold | number | The configured threshold in USD |
alert.currentSpend | number | The actual spend that triggered the alert |
Troubleshooting
Zapier says "waiting for a hook"
The webhook URL only becomes active after Zapier receives at least one request. Either wait for a real alert to trigger, or temporarily lower your threshold so the next cron run sends a test payload.
Zap doesn't fire
- Check Zap status: Make sure the Zap is turned on (published). Draft Zaps don't execute.
- Verify the URL: Ensure the full Zapier webhook URL was pasted correctly in Grafient, starting with
https://hooks.zapier.com/. - Check alert status: Go to the Alerts page in Grafient and confirm the alert is Active and has a "Last triggered" timestamp.