
Data Ingestion Use Cases
Webform Submissions
Problem: You need to capture leads from website forms, landing pages, or contact forms directly into Twenty. Solution: Use webhook triggers to automatically create records from form submissions. Setup:- Create a workflow with a Webhook trigger
- Configure the webhook to expect form data (name, email, company, etc.)
- Set the webhook method to POST
- Define the expected body structure in the trigger
- Search Records to check if person/company already exists
- Branch: If exists → Update Record, If not → Create Record
- Create Record for follow-up task assigned to sales rep
- Send Email notification to sales team
Product Data Synchronization
Problem: Your sales team needs visibility into product usage, billing, or feature adoption data stored in your data warehouse. Solution: Regularly sync product data into Twenty to give sellers context about their accounts. Trigger: On a Schedule (daily or weekly) Actions:- HTTP Request to your data warehouse API
- Code action to process and format the data
- Use the Iterator function for the following steps
- Search Records to find matching company records
- Update Record to add product usage metrics
- Create Record for tasks when usage drops below threshold
Meeting Notes from Call Recorders
Problem: Important insights from sales calls get lost or aren’t properly documented in the CRM. Solution: Automatically create notes and action items from call recording systems. Trigger: Webhook (from call recording platform) Actions:- Code action to extract meeting summary and action items
- Search Records to find the related opportunity or contact
- Create Record for a note with meeting summary
- Create Record for follow-up tasks based on action items
- Send Email to attendees with summary and next steps
Data Enrichment
Problem: Your contact and company records lack important demographic and firmographic information. Solution: Automatically enrich records using external data providers. Trigger: Record is Created (People or Companies object) Actions:- HTTP Request to enrichment API
- Code action to process enrichment response
- Use the Iterator function for the following steps
- Update Record with additional company/contact information
- Create Record for sales task if high-value prospect identified
- Send Email alert if enrichment reveals key buying signals
Data Distribution Use Cases
Newsletter Subscriber Management
Problem: You want to send marketing emails to specific segments of your CRM data using specialized email tools. Solution: Export subscriber lists to your email marketing platform when needed. Setup: Create a view in Twenty with all newsletter recipients Trigger: Launch Manually (when no record is selected) Actions:- Search Records using the newsletter view criteria
- Code action to format email addresses for your email platform
- HTTP Request to add subscribers to your email marketing tool
- Create Record for campaign tracking
- Send Email confirmation to marketing team
Email Sequence Triggers
Problem: You want to trigger sophisticated email sequences based on CRM events using dedicated email automation tools. Solution: Send new leads or customers to your email automation platform when specific events occur. Trigger: Record is Created (People object with specific criteria) Actions:- Code action to determine appropriate email sequence
- HTTP Request to add contact to email automation platform
- Update Record to track sequence enrollment
- Create Record for follow-up task to monitor engagement
Lead Scoring Integration
Problem: You need sophisticated lead scoring that combines CRM data with external signals. Solution: Send lead data to external scoring tools or implement scoring logic within workflows. Option 1 - External Tool: Trigger: Record is Updated (People object) Actions:- HTTP Request to send lead data to scoring platform
- Code action to process score response
- Update Record with lead score
- Create Record for sales task if score exceeds threshold
- Code action with scoring algorithm (company size, industry, behavior)
- Update Record with calculated score
- Send Email alert to sales rep for high-scoring leads
Invoice Generation
Problem: When deals close, your billing system needs to be updated with customer and deal information. Solution: Automatically send deal data to your invoicing system when opportunities are won. Trigger: Record is Updated (Opportunities object, Stage = “Closed Won”) Actions:- Search Records to get complete customer information
- Code action to format data for billing system
- HTTP Request to create customer in billing platform
- HTTP Request to generate invoice
- Update Record to store invoice reference
- Send Email to finance team with invoice details
Advanced Integration Patterns
Bi-directional Sync
Problem: You need to keep data synchronized between Twenty and another system in both directions. Solution: Combine scheduled workflows with webhook triggers for real-time sync. From Twenty to External System: Trigger: Record is Updated (any relevant object) Actions:- HTTP Request to update external system
- Update Record to track sync status and timestamp
- Search Records to find matching record
- Update Record with new data from external system
- Create Record for conflict resolution task if needed
Multi-step Data Processing
Problem: Data from external sources needs complex processing before it can be used in Twenty. Solution: Use Code actions for data transformation and validation. Trigger: Webhook or On a Schedule Actions:- Code action to validate incoming data format
- Code action to transform data structure
- Code action to apply business rules and calculations
- Search Records to check for duplicates
- Create or Update Record with processed data
- Send Email alert if data quality issues detected
Implementation Tips
- Store API keys securely in Settings → API & Webhooks
- Use HTTPS for all external API calls
- Be mindful of API rate limits - use scheduled workflows when possible
- Consider batch updates “On a Schedule” when real-time processing isn’t required
- Remember the 100 concurrent workflow limit per workspace - use “Bulk” availability for manual triggers when processing multiple records (see Workflow Features for details)
- Test with sample data before activating workflows