Integrations are advanced workflows that execute automatically based on call events. Different from webhooks which send data to a single endpoint.
What are Integrations?
Integrations allow user to:- Connect to external APIs
- Trigger multi-step workflows
- Transform and route data
- Integrate with CRM, calendar, email
- Automate business processes
- Build custom logic flows
- Update CRM after calls
- Send emails to leads
- Create calendar appointments
- Post to Slack/Teams
- Update databases
- Trigger marketing automation
- Sync with helpdesk systems
Integrations vs Webhooks
Webhooks:- Simple POST request
- Single endpoint
- One-way data send
- User handles all logic
- Good for simple cases
- Multi-step workflows
- Multiple actions
- Built-in transformations
- No-code logic builder
- Good for complex automation
Create Integration
User can create integration:- Navigate to Integrations section
- Click “Create Integration” button
- Configure integration steps
Step 1: Integration Configuration
User must configure integration basics:
Integration Name:
- Enter descriptive name
- Example: “Update CRM on Call End”
- Example: “Send Welcome Email”
- Example: “Create Support Ticket”
- Helps identify integration
User selects which event triggers integration:
Call Started:
- Fires when call begins
- Use for: Call notifications, live updates
- Available data: Caller info, agent info
- Fires when contact answers
- Use for: Answer tracking, real-time alerts
- Available data: Call start time, caller info
- Fires when call completes (most common)
- Use for: CRM updates, follow-ups
- Available data: Full call details, outcomes
- Fires when outcomes processed
- Use for: Data routing, conditional logic
- Available data: Extracted outcomes, transcript
- Fires when voicemail detected
- Use for: Voicemail notifications
- Available data: Voicemail status
- Fires when call transferred
- Use for: Transfer tracking
- Available data: Transfer details
User can filter which calls trigger integration:
By Campaign:
- Select specific campaigns
- Example: Only “Sales Outbound”
- Narrows trigger scope
- Select specific agents
- Example: Only “Support Agent”
- Filters by agent type
- Filter by call outcomes
- Example: Only if
interested == true - Conditional execution
- Filter by call length
- Example: Only calls > 60 seconds
- Excludes short/dropped calls
- Filter by caller/recipient number
- Example: Only specific area codes
- Geographic filtering
Step 2: Add Actions
User must add actions to execute:
Action Types:
HTTP Request:
- Call external API
- POST/GET/PUT/DELETE
- Send data to any endpoint
- Most flexible option
- Send email notification
- To customer or team
- Use templates
- Include call data
- Post message to Slack
- Specific channel
- Rich formatting
- Team notifications
- Update Salesforce
- Update HubSpot
- Create/update records
- Sync call data
- Create calendar event
- Update appointment
- Send invites
- Book meetings
- Insert record
- Update record
- Query data
- Store call info
- If/then/else branches
- Multiple conditions
- Different actions per outcome
- Complex workflows
Configure Action: HTTP Request
User configures HTTP request action:
Request URL:
- Enter endpoint URL
- Example:
https://api.crm.com/leads - Must be valid URL
- HTTPS recommended
- GET: Retrieve data
- POST: Create resource (most common)
- PUT: Update resource
- DELETE: Remove resource
- PATCH: Partial update
- Add HTTP headers
- Authorization tokens
- Content-Type
- Custom headers
{{call_id}}- Unique call ID{{caller_number}}- Caller phone number{{duration}}- Call duration (seconds){{timestamp}}- Call timestamp{{agent_name}}- Agent name{{campaign_name}}- Campaign name{{transcript}}- Call transcript{{recording_url}}- Recording URL{{outcome.field_name}}- Extracted outcomes{{contact.field_name}}- Contact data
- Save response data
- Use in subsequent actions
- Error handling
- Retry logic
Add Multiple Actions
User can add multiple sequential actions:
Click “Add Action”:
- Add another action
- Executes after previous
- Can use previous response data
- Build complex workflows
Conditional Actions
User can add conditional logic:
If/Then/Else Branches:
Condition:
- Check outcome value
- Example:
outcome.interested == true - Example:
duration > 180 - Example:
outcome.appointment_booked == true
- Execute if condition true
- Example: Send to sales team
- Can have multiple actions
- Execute if condition false
- Example: Add to nurture campaign
- Optional branch
- AND logic: All must be true
- OR logic: Any can be true
- Nested conditions
- Complex decision trees
Step 3: Review and Test
User reviews integration configuration:
Review Summary:
- Integration name
- Trigger event
- Filter conditions
- All actions listed
- Action sequence
- Click “Test” button
- Uses sample data
- Executes all actions
- Shows results
- Verifies connectivity
- Each action status
- HTTP response codes
- Error messages (if any)
- Execution time
- Success/failure indicators
- Click “Create” to save
- Integration activates immediately
- Triggers on matching calls
- Logs all executions
Integration Examples
Example 1: CRM Lead Creation
Goal: Create lead in CRM when interested prospect calls Configuration:Example 2: Appointment Booking
Goal: Create calendar event when appointment booked Configuration:Example 3: Support Ticket Creation
Goal: Create support ticket for issues reported during call Configuration:Example 4: Multi-Step Sales Workflow
Goal: Complex workflow with multiple systems Configuration:Managing Integrations
View Integrations:- Navigate to Integrations section
- See all active integrations
- Filter by trigger event
- Search by name
- Click integration name
- Modify any settings
- Update actions
- Change conditions
- Save changes
- Toggle integration on/off
- Keeps configuration
- Stops execution
- Can re-enable anytime
- Permanently removes
- Cannot be undone
- Execution logs preserved
- Copy existing integration
- Modify for new use case
- Saves configuration time
Integration Logs
User can view execution logs: Log Information:- Timestamp of execution
- Trigger event details
- Call information
- Each action result
- Success/failure status
- Error messages
- Execution time
- Response data
- By integration
- By status (success/failed)
- By date range
- By campaign
- View error details
- Check request/response
- Identify issues
- Test fixes
Variables Reference
Call Variables:{{call_id}}- Unique call identifier{{caller_number}}- Caller phone number{{recipient_number}}- Recipient phone number{{duration}}- Call duration in seconds{{timestamp}}- ISO 8601 timestamp{{call_status}}- answered/no-answer/voicemail{{recording_url}}- Call recording URL{{transcript}}- Full call transcript
{{agent_id}}- Agent identifier{{agent_name}}- Agent name{{agent_language}}- Agent language
{{campaign_id}}- Campaign identifier{{campaign_name}}- Campaign name{{campaign_type}}- inbound/outbound
{{contact.first_name}}- Contact first name{{contact.last_name}}- Contact last name{{contact.email}}- Contact email{{contact.company}}- Contact company{{contact.*}}- Any custom contact field
{{outcome.field_name}}- Any extracted outcome- Example:
{{outcome.interested}} - Example:
{{outcome.appointment_date}} - Example:
{{outcome.notes}}
{{variable_name}}- Agent dynamic variables- Populated from contact mapping
- Used during call
{{workspace_id}}- Workspace identifier{{workspace_name}}- Workspace name{{execution_id}}- Integration execution ID
Best Practices
Integration Design:- Keep integrations focused
- One clear purpose per integration
- Use descriptive names
- Document complex logic
- Test thoroughly
- Add retry logic for failures
- Handle API errors gracefully
- Log all errors
- Set up error notifications
- Monitor execution logs
- Minimize API calls
- Use batch operations when possible
- Avoid long-running actions
- Optimize request payloads
- Cache data when appropriate
- Use HTTPS for all requests
- Store API keys securely
- Rotate credentials regularly
- Follow least privilege principle
- Audit integration access
- Review logs regularly
- Monitor success rates
- Update API endpoints as needed
- Test after changes
- Keep documentation current
Troubleshooting
Integration not triggering:- Is integration enabled?
- Do filter conditions match?
- Is trigger event correct?
- Check integration logs
- Verify call matches filters
- Is API endpoint correct?
- Are credentials valid?
- Is request format correct?
- Check API rate limits
- Review error in logs
- Is variable name correct?
- Does field exist in call data?
- Check variable syntax (double braces)
- Review outcome extraction
- Test with sample data
- Check API response times
- Reduce number of actions
- Optimize request payloads
- Remove unnecessary steps
- Check external service status
Advanced Topics
Transformations:- Format data before sending
- Convert timestamps
- Calculate values
- String manipulations
- Data mapping
- Iterate over arrays
- Process multiple items
- Batch operations
- Repeat actions
- Automatic retries
- Fallback actions
- Error notifications
- Graceful degradation
- Respect API limits
- Queue actions
- Throttle requests
- Batch when possible
- Use test mode
- Sample data testing
- Dry run executions
- Validate before production
Integration Templates
Callab provides pre-built templates: CRM Templates:- Salesforce lead creation
- HubSpot contact update
- Pipedrive deal creation
- Slack notifications
- Email workflows
- SMS follow-ups
- Google Calendar booking
- Outlook appointment
- Calendly integration
- Save your integrations as templates
- Share with team
- Reuse across workspaces
Next Steps
After creating integration:- Test thoroughly - Verify all actions work
- Monitor logs - Check execution success
- Optimize performance - Improve speed
- Document workflow - Record integration purpose
- Train team - Ensure team understands flow
Related Documentation
- Setup Inbound Agent - Configure inbound campaigns
- Setup Outbound Agent - Configure outbound campaigns
- Webhooks Documentation - Simple webhook setup
- API Reference - Callab API details