What Are Integrations?
Integrations connect Decisional to external services, allowing your agents to send emails, update CRMs, post to Slack, query databases, and more.Why Integrations Matter
Agents without integrations can only work with worksheet data. Integrations let agents interact with the real world - sending emails, updating records, fetching live data.
Available Integrations
Communication
Gmail
What it does:
- Send emails
- Read inbox
- Search messages
- Attach files
- Send quotes to customers
- Email notifications
- Process incoming requests
Outlook
What it does:
- Send emails (Office 365)
- Access calendar
- Read messages
- Corporate email automation
- Meeting scheduling
- Email-based workflows
Slack
What it does:
- Post messages to channels
- Send direct messages
- Create threads
- Upload files
- Team notifications
- Alert on errors
- Share reports
Discord
What it does:
- Post to channels
- Send messages
- Create embeds
- Community updates
- Bot interactions
- Notifications
Microsoft Teams
What it does:
- Post to channels
- Send messages
- Create adaptive cards
- Enterprise notifications
- Team collaboration
- Workflow updates
Telegram
What it does:
- Send messages
- Create bots
- Notifications
- Personal notifications
- Bot commands
- Alerts
CRM & Sales
HubSpot
What it does:
- Create/update contacts
- Manage deals
- Log activities
- Custom properties
- Auto-update deal stages
- Enrich contact data
- Log quote sent activities
Salesforce
What it does:
- CRUD operations on objects
- Query SOQL
- Update opportunities
- Custom fields
- Sync quotes to opportunities
- Update account data
- Log interactions
Attio
What it does:
- Manage records
- Update lists
- Custom fields
- Modern CRM automation
- Flexible data models
Pipedrive
What it does:
- Manage deals
- Update stages
- Add activities
- Sales pipeline automation
- Deal tracking
Close
What it does:
- Manage leads
- Log calls
- Send emails
- Sales automation
- Lead tracking
Storage & Files
Google Drive
What it does:
- Upload files
- Read files
- Organize folders
- Share links
- Save generated reports
- Read source documents
- Backup data
OneDrive
What it does:
- Upload/download files
- SharePoint access
- Folder management
- Corporate file storage
- SharePoint integration
Dropbox
What it does:
- File operations
- Folder sync
- File storage
- Team folders
Amazon S3
What it does:
- Upload objects
- Download files
- Bucket operations
- Large file storage
- Data archiving
- Static hosting
Databases
PostgreSQL
What it does:
- Run SQL queries
- Insert/update records
- Read tables
- Sync to production DB
- Query live data
- Write results
MySQL
What it does:
- Execute queries
- CRUD operations
- Legacy system integration
- Data sync
Snowflake
What it does:
- Data warehouse queries
- Large dataset operations
- Analytics queries
- Data pipeline
BigQuery
What it does:
- Run queries
- Access datasets
- Google Cloud data
- Analytics
Microsoft SQL Server
What it does:
- T-SQL queries
- Stored procedures
- Enterprise databases
- Windows environments
Payments & Finance
Stripe
What it does:
- Create invoices
- Process payments
- Manage customers
- Auto-invoice customers
- Payment tracking
Bill.com
What it does:
- Create bills
- Manage vendors
- Approve payments
- AP automation
- Vendor management
Calendar
Google Calendar
What it does:
- Create events
- Check availability
- Send invites
- Schedule meetings
- Block time
Outlook Calendar
What it does:
- Manage events
- Corporate calendars
- Meeting automation
- Enterprise scheduling
Custom
Webhooks
What it does:
- Trigger agents from external events
- Send data to your API
- Custom integrations
- Real-time triggers
REST API
What it does:
- Call any HTTP API
- Custom headers/auth
- Internal tools
- Third-party APIs
Connecting an Integration
1
Navigate to Integrations
Go to Settings → Integrations from the sidebar
2
Find Your Service
Browse or search for the integration you want (e.g., “Gmail”)
3
Click Add Integration
Click the Add Integration button
4
Authorize Access
For OAuth (Gmail, Slack, HubSpot, etc.):
- A popup window opens
- Sign in to the service
- Review permissions
- Click “Allow” or “Authorize”
- Enter your API key, host, credentials
- Test connection
- Save
5
Configure Settings
Some integrations have additional settings:
- Gmail: Choose which email to send from
- Slack: Select default workspace
- Database: Set connection pool size
6
Test Connection
Click Test Connection to verify it worksSuccess: Green checkmark, “Connected”Failure: Error message with details
Using Integrations in Agents
Once connected, reference integrations in your agent instructions.Email Example
- Use your connected Gmail account
- Compose the email
- Attach files
- Send it
- Handle errors (e.g., invalid email address)
CRM Example
Slack Example
Integration Settings
Manage integration-specific settings.Access Control
- Workspace-Wide
- Private
Everyone in the workspace can use this integrationBest for:
- Shared team accounts (e.g., company Gmail)
- Company Slack workspace
- Shared CRM
- Toggle “Share with workspace” ON
Rate Limits
Some integrations have rate limits:| Integration | Limit | What Happens When Exceeded |
|---|---|---|
| Gmail | 500 emails/day (free accounts) | Error: “Rate limit exceeded” |
| HubSpot | 100 API calls/10 sec | Automatic retry with backoff |
| Slack | 1 message/second per channel | Queued and sent when available |
| Databases | Varies by plan | Connection pool exhaustion |
- Batch operations when possible
- Add delays between API calls
- Monitor usage in integration settings
Advanced Configuration
Custom API Integration
For services without native integration:1
Add Custom API
Click Add Integration → Custom API
2
Configure Endpoint
Basic settings:
- Name: “My Internal API”
- Base URL: https://api.mycompany.com
- Authentication: Bearer token, API key, or OAuth
3
Test Request
Make a test API call:Verify you get expected response.
4
Use in Agent
Database Connections
For secure database access:PostgreSQL Setup
PostgreSQL Setup
Connection details:In agent instructions:
- Host: db.mycompany.com
- Port: 5432
- Database: production
- User: decisional_agent
- Password: [secure password]
- SSL: Required (recommended)
MySQL Setup
MySQL Setup
Connection string:Best practices:
- Use read-only user for queries
- Create dedicated user for Decisional
- Enable SSL
- Whitelist Decisional IPs (Enterprise)
Snowflake Setup
Snowflake Setup
Account details:
- Account: xyz12345.us-east-1
- Username: DECISIONAL_AGENT
- Password: [secure password]
- Warehouse: DECISIONAL_WH
- Database: ANALYTICS
- Role: DECISIONAL_ROLE
Webhook Setup
Create custom event triggers:1
Create Webhook
Go to Integrations → Add Integration → Webhook
2
Copy Webhook URL
You’ll get a unique URL:
3
Configure Source
In the external service (Typeform, Stripe, etc.):
- Add webhook URL
- Select events to send
- Configure payload
- Event:
invoice.payment_succeeded - Endpoint: [your webhook URL]
4
Set Trigger
In your agent:
- Trigger: Webhook
- Webhook: [select the one you created]
Troubleshooting
Integration disconnected
Integration disconnected
Symptoms:
- “Integration not found” error
- “Authentication expired” message
- Token expired (OAuth)
- Password changed
- Integration deleted
- Permissions revoked
- Go to Settings → Integrations
- Find the disconnected integration (red warning icon)
- Click Reconnect
- Re-authorize
Permission denied
Permission denied
Error:
Permission denied: Cannot send emailsCauses:- Integration not shared with workspace
- Your account lacks permissions in the service
- OAuth scope missing
- Check workspace sharing: Integration owner should enable “Share with workspace”
- Check service permissions: Ensure your account has required permissions (e.g., can send emails in Gmail)
- Re-authorize with correct scopes: Disconnect and reconnect, ensuring all permissions are granted
Rate limit exceeded
Rate limit exceeded
Error:
Rate limit exceeded: 100 calls/minuteCauses:- Too many API calls in short time
- Multiple agents using same integration
- Exceeding service’s free tier limits
- Add delays: In instructions, add “Wait 1 second between each email”
- Batch operations: Process fewer items per run
- Upgrade plan: Service may have higher limits on paid tiers
- Use multiple accounts: Distribute load across accounts
API error: 400/401/403/500
API error: 400/401/403/500
400 Bad Request:
- Invalid data format
- Fix: Check payload structure, required fields
- Invalid credentials
- Fix: Reconnect integration
- Insufficient permissions
- Fix: Grant required permissions in the service
- Service is down
- Fix: Wait and retry, or contact service support
Webhook not triggering
Webhook not triggering
Symptoms:
- Event happens in external service
- Agent doesn’t run
- Check webhook URL: Ensure it’s correctly configured in external service
- Check webhook logs: Settings → Integrations → [Webhook] → View Logs
- Verify event type: Make sure you’re listening to correct events
- Test webhook: Use external service’s “Test webhook” feature
- Webhook URL copied incorrectly
- Event type mismatch (listening to
payment_succeededbut service sendspayment.succeeded) - Firewall blocking incoming requests (Enterprise: whitelist Decisional IPs)
Security Best Practices
Use least privilege: Grant only necessary permissions (e.g., read-only for data queries)
Create dedicated accounts: Use service accounts, not personal accounts, for integrations
Enable 2FA: On all connected accounts where possible
Rotate credentials: Change API keys and passwords periodically
Audit access: Review integration logs monthly for unexpected activity
Revoke unused integrations: Disconnect integrations you’re no longer using
Use SSL/TLS: Always enable encrypted connections for databases
Integration Limits by Plan
| Feature | Free | Professional | Enterprise |
|---|---|---|---|
| Max integrations | 5 | Unlimited | Unlimited |
| Custom API | ❌ | ✅ | ✅ |
| Database connections | ❌ | ✅ | ✅ |
| Webhooks | 1 | 10 | Unlimited |
| OAuth apps | Standard | Standard | Custom (white-label) |
| IP whitelisting | ❌ | ❌ | ✅ |
| Dedicated credentials | ❌ | ❌ | ✅ |
Request New Integrations
Don’t see the integration you need?Request Integration
Email us at [email protected] with:
- Service name
- What you want to automate
- API documentation link (if available)
- Airtable
- Notion
- QuickBooks
- NetSuite
- Zendesk
- Intercom