Skip to main content

Overview

Webhook Integrations enable your Utari workers to respond automatically to events from external applications. When something happens in a third-party app—like a meeting ending, a form submission, or a payment completing—that app can trigger your Utari worker to process the information and take action, creating powerful automated workflows.

How Webhook Integrations Work

1

Event Occurs in External App

Something happens in the third-party application:
  • Meeting recording completes (Fathom, Zoom)
  • Form submitted (Typeform, Google Forms)
  • Payment received (Stripe, PayPal)
  • Email received (Gmail, SendGrid)
  • Calendar event created (Google Calendar)
2

App Sends Webhook

The external app sends data to your Utari webhook URL with information about what happened.
3

Utari Worker Activated

Your configured worker receives the webhook data and executes your custom prompt.
4

Worker Takes Action

The worker processes the information and performs configured tasks:
  • Extract and analyze data
  • Update other systems
  • Send notifications
  • Create documents
  • Trigger workflows
Webhooks enable real-time automation—workers respond immediately when events occur, without manual intervention or scheduled checking.

Setting Up Webhook Integrations

Part 1: Configure Utari Worker

1

Choose or Create Worker

Select a worker for handling webhook events:Option A: Use Existing Worker
  • Good for general-purpose automation
  • Can handle multiple webhook types
Option B: Create Dedicated Worker (Recommended)
  • Specialized for specific webhook events
  • Tailored instructions for consistent handling
  • Easier to track and manage
2

Add Required Integration (If Needed)

If the webhook source requires API access:
Not all webhooks require integration. Some only send data without needing API access back to the service.
3

Create Webhook Trigger

Set up the webhook endpoint:Method 1: From Worker
Method 2: From Triggers Dashboard
4

Configure Webhook Details

Trigger Name:Give your webhook a descriptive nameExamples: “Fathom Meeting Processor” or “Typeform Submission Handler”Description (Optional):Brief description of what this webhook handlesSecurity:Toggle “Require Secret Token” (Recommended)
  • Enables security verification
  • Ensures data comes from legitimate source
  • Prevents unauthorized webhook calls
Webhook calls must include a secret token for authentication
5

Configure Prompt Template

Agent Instructions:Define what your agent should do when a webhook is receivedBasic Structure:
Available Variables:Use these placeholders in your template - they’ll be replaced with actual webhook data:
  • {{payload}} - Full webhook payload as JSON
  • {{payload.field}} - Specific field from payload (e.g., payload.title)
  • {{payload.nested.field}} - Nested field access
  • {{timestamp}} - When the webhook was received
  • {{trigger_name}} - Name of this trigger
Example Template:
Model Selection:Choose which model to use for processing webhooks
  • Utari Basic (Recommended for most webhook processing tasks)
6

Create Trigger

Click “Create Trigger”You’ll receive:
  • Webhook URL: Starts with https://utari.up.railway.app/v1/triggers/...
  • Secret Token: One-time display (if enabled)
IMPORTANT: Copy both immediately!Example webhook URL:
The secret token should be included in the x-webhook-secret header
Save the secret token now! It won’t be shown again. You’ll need to include it in the x-webhook-secret header when the third-party service calls your webhook.

Webhook URL and Secret Token

After creating your webhook trigger, you’ll receive: Webhook URL: Configure your external service to send POST requests to this URL:
Copy this URL and paste it into the webhook configuration of your third-party service (Fathom, Typeform, Stripe, etc.) Secret Token: If you enabled “Require Secret Token”, include this in the x-webhook-secret header: Example Request:

Part 2: Configure Third-Party App

1

Find Webhook Settings

In the third-party application:
2

Create New Webhook

3

Select Trigger Events

Choose which events should activate the webhook:
4

Add Secret Token (If Required)

5

Configure Data Scope

Select what data to send:
6

Save and Activate

Example Webhook Integrations

Meeting Recording Automation (Fathom Example)

Fathom Meeting Processor

Setup:
Agent Instructions:
Result: Every meeting automatically processed and documented

Form Submission Processing

Typeform Lead Capture

Setup:
Agent Instructions:
Result: Instant lead qualification and routing

Payment Processing

Stripe Payment Automation

Setup:
Agent Instructions:
Result: Automatic payment processing and customer communication

Calendar Event Automation

Meeting Preparation Assistant

Setup:
Agent Instructions:
Result: Automatic meeting preparation and briefings

Monitoring and Managing Webhooks

Viewing Webhook Activity

1

Access Trigger History

2

Review Recent Runs

3

Examine Run Details

Refining Webhook Prompts

Vague: “Process this data”Specific:

Webhook Security

Use Secret Tokens

Always enable secret token requirement to verify webhook authenticity

Validate Payload

Configure worker to validate expected data structure

Monitor Activity

Regularly review webhook logs for unusual patterns

Limit Scope

Only subscribe to events you actually need to process

HTTPS Only

Webhook URLs use HTTPS by default (utari.up.railway.app)

Error Handling

Include error handling in prompts for failed operations

Common Webhook Providers

Supported Services:
  • Fathom: Meeting recordings and transcripts
  • Zoom: Meeting completed, recording available
  • Google Meet: Recording uploaded
  • Slack: Message posted, file shared
  • Discord: Message sent, member joined
  • Microsoft Teams: Meeting ended
Common Use Cases:
  • Transcription and summarization
  • Action item extraction
  • Meeting notes distribution
  • CRM updates from call notes

Troubleshooting

Check:
  • Webhook URL copied correctly to third-party app
  • URL starts with https://utari.up.railway.app/v1/triggers/
  • Third-party app webhook is enabled/active
  • Event type selected in third-party app
  • Test webhook manually in third-party settings
  • Check third-party app webhook logs for errors
  • Verify worker is active in Utari
Fix prompt to be more directive:❌ Current: “What should I do with this data?”✅ Updated: “Process automatically without confirmation. Execute these steps immediately: [specific steps]”Add explicit instruction to not ask questions
Debug payload structure:
  1. Check a recent webhook run in trigger history
  2. View the raw payload received
  3. Identify correct field names
  4. Update prompt with correct variable syntax
Examples:
  • {{payload.field}} for top-level fields
  • {{payload.nested.field}} for nested fields
Note: If payload shows transcriptId but you used transcript_id, match the exact field name
Verify:
  • Integration is connected in worker
  • API key is valid and active
  • Required tools are enabled
  • Worker has permission to use integration
  • Integration connection wasn’t disconnected
Consider:
  • Some webhooks fire before data fully processed
  • Add wait time: “Wait 30 seconds after receiving webhook”
  • Implement retry logic for data retrieval
  • Check if third-party offers “processing complete” event
Verify:
  • Secret token is included in x-webhook-secret header
  • Token was copied correctly (no extra spaces)
  • Third-party service supports custom headers
  • Token hasn’t expired or been regenerated
If you lost the token, you’ll need to create a new webhook trigger
Optimize:
  • Filter events more specifically in third-party app
  • Add conditional logic to prompt: “Only process if status equals completed”
  • Consider batching: Process every N minutes instead of real-time
  • Disable webhook temporarily if testing

Best Practices

Dedicated Workers

Create specialized workers for each webhook type for better control

Detailed Prompts

Write comprehensive prompts that handle all scenarios

Test Thoroughly

Test webhooks multiple times with different data before production

Monitor Regularly

Review webhook execution logs to catch issues early

Error Handling

Include fallback actions for when operations fail

Document Workflow

Keep notes on what each webhook does and why

Use Secret Tokens

Always enable secret token authentication

Iterative Improvement

Refine prompts based on actual execution results

Summary

You’ve successfully learned how to:
Set up webhook integrations between third-party apps and Utari
Configure workers to process webhook events automatically
Write effective webhook processing prompts with payload variables
Monitor and troubleshoot webhook executions
Apply security best practices with secret tokens
Create automated workflows triggered by external events
Webhook integrations transform Utari workers into event-driven automation engines that respond immediately to real-world triggers, creating seamless workflows across your entire application ecosystem.

Next Steps

Triggers & Automation

Learn about other trigger types beyond webhooks

Integrations

Explore available app integrations

Agent Configuration

Optimize workers for webhook processing

MCP Servers

Connect additional services for webhook workflows