Available Integrations
TopFormBuilder supports 8 powerful integrations to connect your forms with the tools you already use.Communication & Notifications
Slack- Send form submissions to Slack channels
- Real-time notifications
- Custom message formatting
- OAuth and webhook methods
- Post submissions to Discord channels
- Webhook-based integration
- Custom embed formatting
- Server and channel selection
- Send notifications to Teams channels
- Webhook integration
- Formatted card messages
- Team collaboration
- Send emails on form submission
- Customizable templates with variables
- Admin and respondent notifications
- SMTP support
Data & Spreadsheets
Google Sheets- Automatically add rows to spreadsheets
- OAuth authentication
- Spreadsheet and worksheet selection
- Real-time data sync
- Organized columns by question
- Send submissions to Airtable bases
- API key authentication
- Base and table selection
- Structured record creation
Project Management
Trello- Create cards from submissions
- OAuth authentication
- Board and list selection
- Custom card formatting
- Add labels and due dates
Payments
Stripe- Accept payments through forms
- Stripe Connect workspace integration
- Multiple currency support (140+)
- Test and live modes
- View Stripe Integration Guide
Custom Integrations
Webhooks- Send submission data to any URL
- JSON payload format
- HMAC signature verification
- Retry logic with exponential backoff
- View Webhooks Integration Guide
Integration Features
Common Features
All integrations include:- Easy Setup - Connect in minutes with step-by-step wizard
- Test Mode - Test integrations before going live
- Activity Logs - View integration history and debug issues
- Error Handling - Automatic retries and failure notifications
- Conditional Triggers - Send data based on form logic
- Field Mapping - Choose which form fields to send
OAuth vs API Key vs Webhook
OAuth (Google Sheets, Slack, Trello)- More secure
- No need to copy/paste keys
- One-click authorization
- Can be revoked anytime
- Simple setup
- Copy API key from service
- Paste into TopFormBuilder
- Works immediately
- Create webhook URL in service
- Paste URL into TopFormBuilder
- Instant connection
- No authentication needed
How Integrations Work
Setup Process
-
Navigate to Integrations
-
Choose Service
- Select from 8 available integrations
- Click integration card to begin setup
-
Authenticate
- OAuth: Click “Connect” and authorize
- API Key: Paste your API key
- Webhook: Paste webhook URL
-
Configure Settings
- Choose destination (channel, sheet, board)
- Map form fields
- Customize message format
- Set conditional triggers (optional)
-
Test Integration
- Click “Send Test” button
- Verify data appears correctly
- Check formatting and field mapping
-
Activate
- Toggle integration ON
- New submissions automatically sent
- View activity in integration logs
Data Flow
Conditional Integrations
Send data to integrations only when conditions are met. Example Use Cases: Priority RoutingIntegration Limits
By Plan
Free Plan- Email notifications only
- 1 webhook integration
- No OAuth integrations
- All 8 integrations
- Unlimited integrations per form
- OAuth support
- Conditional triggers
- Integration logs (30 days)
- Everything in Pro
- Priority support for integration issues
- Custom integration development
- Extended logs (90 days)
- Dedicated integration monitoring
Rate Limits
Per Integration Type:- Slack: 1 message per second
- Discord: 5 messages per 5 seconds
- Google Sheets: 60 writes per minute
- Airtable: 5 requests per second
- Webhooks: No limit (depends on receiving server)
- Stripe: Per Stripe limits
- Automatic queueing
- Retry with backoff
- Error notifications if limit exceeded
- Resume automatically when available
Integration Logs
Track all integration activity and troubleshoot issues.Accessing Logs
- Go to Form Builder
- Click Integrations tab
- Select integration
- Click “View Logs” button
Log Information
Each log entry shows:- Timestamp - When integration triggered
- Status - Success, Failed, Pending
- Service - Which integration (Slack, Sheets, etc.)
- Response - Server response or error message
- Payload - Data sent (click to expand)
- Retry Count - Number of retry attempts
- ✅ Success - Data sent successfully
- ❌ Failed - Integration failed (see error)
- 🔄 Pending - Queued for sending
- ⏱️ Retrying - Automatic retry in progress
Troubleshooting with Logs
Common Issues: Authentication FailedManaging Integrations
Edit Integration
- Navigate to Integrations tab
- Click integration card
- Click “Edit” button
- Update settings
- Click “Save”
- Destination (channel, sheet, etc.)
- Field mapping
- Message format
- Conditional triggers
- Active/Inactive status
Disconnect Integration
- Open integration settings
- Click “Disconnect” button
- Confirm disconnection
- Integration stops immediately
- Logs are preserved
- No more data sent to service
- OAuth tokens revoked
- Historical logs remain visible
- Can reconnect anytime
Duplicate Integration
Send to multiple destinations of the same service. Example:- Slack #general for all submissions
- Slack #urgent for high-priority only
- Slack #sales for sales inquiries
- Click “Add Integration”
- Select same service (e.g., Slack)
- Authenticate again (or use existing connection)
- Choose different destination
- Configure separately
Security & Privacy
Data Transmission
Security Measures:- HTTPS encryption for all integrations
- Webhook signature verification
- Secure OAuth token storage
- API keys encrypted in database
- No data stored in external logs
OAuth Security
Best Practices:- Revoke access from service if unused
- Reconnect if account credentials change
- Use workspace-specific accounts
- Review connected apps regularly
Webhook Security
HMAC Signature Verification: All webhooks include signature for verification. Example (Node.js):Data Privacy
GDPR Compliance:- Integration data follows form retention settings
- User can request data deletion
- Deleting form removes integration data
- External services follow their own retention
- Form responses only
- Submission metadata (time, ID)
- No user IP addresses (unless in form)
- No tracking cookies
Integration Best Practices
Do’s
✅ Test before activating - Always send test submission ✅ Use descriptive names - Name integrations clearly (e.g., “Slack - Sales Alerts”) ✅ Monitor logs regularly - Check for failures weekly ✅ Use conditional triggers - Reduce noise with filters ✅ Keep credentials secure - Don’t share API keys ✅ Document your setup - Note field mappings for team ✅ Set up fallbacks - Multiple notification channelsDon’ts
❌ Don’t use personal accounts - Use workspace/team accounts ❌ Don’t ignore failed integrations - Fix issues promptly ❌ Don’t send sensitive data - Be careful with PII ❌ Don’t create duplicate alerts - Review existing integrations ❌ Don’t forget to test - Test after any changes ❌ Don’t use free tier webhooks - May have uptime issuesPerformance Tips
Optimize Integration Speed:- Use webhooks for instant delivery
- Batch similar integrations when possible
- Avoid sending large file attachments via integrations
- Use conditional triggers to reduce volume
- Monitor rate limits
- Keep OAuth tokens refreshed
- Verify webhook URLs regularly
- Test field mapping with sample data
- Set up error notifications
- Use retry logic (enabled by default)
Common Integration Workflows
Lead Capture Workflow
Support Ticket Workflow
Event Registration Workflow
Customer Feedback Workflow
Troubleshooting
Integration Not Triggering
Check:- Integration is toggled ON
- Form has new submissions (after activation)
- Conditional logic allows trigger
- No errors in integration logs
- External service is operational
Data Not Appearing Correctly
Check:- Field mapping configuration
- Data format compatibility
- Required fields are mapped
- Character limits not exceeded
- Special characters handled properly
Authentication Errors
Solutions:- Disconnect and reconnect integration
- Verify credentials in external service
- Check OAuth app permissions
- Regenerate API keys if needed
- Clear browser cache and retry
Rate Limit Issues
Solutions:- Wait for rate limit window to reset
- Reduce submission frequency
- Use conditional triggers to filter
- Contact service provider for higher limits
- Implement queueing (automatic in TopFormBuilder)